2023-01-29 15:47:50 +00:00
|
|
|
#pragma once
|
|
|
|
#include <string>
|
|
|
|
#include <vector>
|
|
|
|
|
|
|
|
class Config
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
std::string cpuThermalZone = ""; // idk, no standard way of doing this.
|
|
|
|
std::string suspendCommand = "systemctl suspend";
|
|
|
|
std::string lockCommand = ""; // idk, no standard way of doing this.
|
|
|
|
std::string exitCommand = ""; // idk, no standard way of doing this.
|
|
|
|
std::string batteryFolder = ""; // this can be BAT0, BAT1, etc. Usually in /sys/class/power_supply
|
|
|
|
std::vector<std::string> workspaceSymbols = std::vector<std::string>(9, "");
|
|
|
|
std::string defaultWorkspaceSymbol = "";
|
|
|
|
|
2023-01-29 20:31:00 +00:00
|
|
|
bool centerTime = true;
|
2023-02-04 14:07:05 +00:00
|
|
|
bool audioRevealer = false;
|
2023-01-29 15:47:50 +00:00
|
|
|
|
|
|
|
static void Load();
|
|
|
|
static const Config& Get();
|
|
|
|
};
|
2023-01-30 15:57:15 +00:00
|
|
|
|
|
|
|
// Configs, that rely on specific files to be available(e.g. Hyprland running)
|
|
|
|
class RuntimeConfig
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
#ifdef WITH_NVIDIA
|
|
|
|
bool hasNvidia = true;
|
|
|
|
#else
|
|
|
|
bool hasNvidia = false;
|
|
|
|
#endif
|
2023-01-30 16:23:28 +00:00
|
|
|
#ifdef WITH_AMD
|
|
|
|
bool hasAMD = true;
|
|
|
|
#else
|
|
|
|
bool hasAMD = false;
|
|
|
|
#endif
|
2023-01-30 15:57:15 +00:00
|
|
|
|
|
|
|
#ifdef WITH_HYPRLAND
|
|
|
|
bool hasHyprland = true;
|
|
|
|
#else
|
|
|
|
bool hasHyprland = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef WITH_BLUEZ
|
|
|
|
bool hasBlueZ = true;
|
|
|
|
#else
|
|
|
|
bool hasBlueZ = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
static RuntimeConfig& Get();
|
|
|
|
};
|