From 78afacde791d9f29f826d93a2ce05c09db04c9e3 Mon Sep 17 00:00:00 2001 From: DashieTM Date: Fri, 16 May 2025 21:52:32 +0200 Subject: [PATCH] superfreq: init --- flake.nix | 5 ++++- lib/default.nix | 1 + modules/programs/default.nix | 1 + modules/programs/hypr/hyprland.nix | 1 + modules/programs/oxi/default.nix | 14 +++++++++++++- modules/programs/superfreq.nix | 28 ++++++++++++++++++++++++++++ 6 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 modules/programs/superfreq.nix diff --git a/flake.nix b/flake.nix index 893527f..6f639c7 100644 --- a/flake.nix +++ b/flake.nix @@ -49,10 +49,13 @@ oxidash.url = "github:Xetibo/OxiDash"; oxipaste.url = "github:Xetibo/OxiPaste"; oxirun.url = "github:Xetibo/OxiRun"; - hyprdock.url = "github:Xetibo/hyprdock"; + # For now until merged into Xetibo + hyprdock.url = "github:DashieTM/hyprdock"; reset.url = "github:Xetibo/ReSet"; reset-plugins.url = "github:Xetibo/ReSet-Plugins"; + superfreq.url = "github:NotAShelf/superfreq"; + # absolute insanity chaoticNyx.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; diff --git a/lib/default.nix b/lib/default.nix index 40a924a..1f7d151 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -49,6 +49,7 @@ inputs.home-manager.nixosModules.home-manager inputs.stylix.nixosModules.stylix inputs.disko.nixosModules.disko + inputs.superfreq.nixosModules.default ../base ../home ../modules diff --git a/modules/programs/default.nix b/modules/programs/default.nix index 5ad3e09..ebc1ff4 100644 --- a/modules/programs/default.nix +++ b/modules/programs/default.nix @@ -41,6 +41,7 @@ ./starship.nix ./streamcontroller.nix ./stylix.nix + ./superfreq.nix ./supersonic.nix ./sway.nix ./teams.nix diff --git a/modules/programs/hypr/hyprland.nix b/modules/programs/hypr/hyprland.nix index 334a9ad..1e1725d 100644 --- a/modules/programs/hypr/hyprland.nix +++ b/modules/programs/hypr/hyprland.nix @@ -417,6 +417,7 @@ in { # other programs "${browserName}" + (lib.mkIf config.mods.oxi.hyprdock.enable "hyprdock --server") (lib.mkIf config.mods.hypr.hyprpaper.enable "hyprpaper") (lib.mkIf config.mods.hypr.hyprland.useIronbar "ironbar") (lib.mkIf config.mods.oxi.oxipaste.enable "oxipaste_daemon") diff --git a/modules/programs/oxi/default.nix b/modules/programs/oxi/default.nix index 9c3ac57..99de567 100644 --- a/modules/programs/oxi/default.nix +++ b/modules/programs/oxi/default.nix @@ -34,6 +34,12 @@ type = lib.types.bool; description = "Enables hyprdock"; }; + settings = lib.mkOption { + default = {}; + example = {}; + type = with lib.types; attrsOf anything; + description = "settings for hyprdock"; + }; }; oxicalc = { enable = lib.mkOption { @@ -47,7 +53,10 @@ config = lib.mkIf config.mods.oxi.enable ( lib.optionalAttrs (options ? home.packages) { programs = { - hyprdock.enable = lib.mkIf config.mods.oxi.hyprdock.enable true; + hyprdock = { + enable = config.mods.oxi.hyprdock.enable; + settings = config.mods.oxi.hyprdock.settings; + }; oxicalc.enable = lib.mkIf config.mods.oxi.oxicalc.enable true; ReSet = lib.mkIf config.mods.oxi.ReSet.enable { enable = true; @@ -65,5 +74,8 @@ }; }; } + // lib.optionalAttrs (options ? services.logind) { + services.logind.lidSwitchExternalPower = "ignore"; + } ); } diff --git a/modules/programs/superfreq.nix b/modules/programs/superfreq.nix new file mode 100644 index 0000000..f031e2f --- /dev/null +++ b/modules/programs/superfreq.nix @@ -0,0 +1,28 @@ +{ + lib, + options, + config, + ... +}: { + options.mods.superfreq = { + enable = lib.mkOption { + default = false; + example = true; + type = lib.types.bool; + description = ''Enables superfreq''; + }; + settings = lib.mkOption { + default = {}; + example = {}; + type = with lib.types; attrsOf anything; + description = ''Superfreq config''; + }; + }; + + config = lib.optionalAttrs (options ? services.superfreq) { + services.superfreq = { + enable = config.mods.superfreq.enable; + settings = config.mods.superfreq.settings; + }; + }; +}