add new external flake to provide helper functions
This commit is contained in:
18 files changed
+73
-163
No files matched your search
@@ -2,13 +2,7 @@
|
||||
flake.nixosModules.global = { pkgs, lib, config, ... }: {
|
||||
options.features.applications.cli.fastfetch.enable = lib.mkEnableOption "fastfetch";
|
||||
|
||||
config = let
|
||||
mkIfElse = with lib; p: yes: no:
|
||||
mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in lib.mkIf (config.features.applications.cli.fastfetch.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
config = lib.mkIf (config.features.applications.cli.fastfetch.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.cli.fastfetch.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = [ pkgs.fastfetch ];
|
||||
|
||||
@@ -2,12 +2,7 @@
|
||||
flake.nixosModules.graphics = { pkgs, lib, config, ...}: {
|
||||
options.features.applications.gui.equibop.enable = lib.mkEnableOption "equibop";
|
||||
|
||||
config = let
|
||||
mkIfElse = with lib; p: yes: no: mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in lib.mkIf (config.features.applications.gui.equibop.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
config = lib.mkIf (config.features.applications.gui.equibop.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.equibop.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = [ pkgs.equibop ];
|
||||
@@ -21,19 +16,19 @@
|
||||
programs.equibop.enable = true;
|
||||
|
||||
home.activation = {
|
||||
linkEquibopConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/equibop/settings.json";
|
||||
source = "dotfiles/${config.info.hostName}/equibop/settings.json";
|
||||
linkEquibopConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||
target = "${config.home.homeDirectory}/.config/equibop/settings.json";
|
||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/settings.json";
|
||||
});
|
||||
|
||||
linkEquibopConfigEquicordSettings = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/equibop/settings/settings.json";
|
||||
source = "dotfiles/${config.info.hostName}/equibop/equicord-settings.json";
|
||||
linkEquibopConfigEquicordSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||
target = "${config.home.homeDirectory}/.config/equibop/settings/settings.json";
|
||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/equicord-settings.json";
|
||||
});
|
||||
|
||||
linkEquibopConfigQuickCss = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/equibop/settings/quickCss.css";
|
||||
source = "dotfiles/${config.info.hostName}/equibop/quickCss.css";
|
||||
linkEquibopConfigQuickCss = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||
target = "${config.home.homeDirectory}/.config/equibop/settings/quickCss.css";
|
||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/equibop/quickCss.css";
|
||||
});
|
||||
};
|
||||
};
|
||||
|
||||
@@ -2,12 +2,7 @@
|
||||
flake.nixosModules.graphics = { pkgs, lib, config, ... }: {
|
||||
options.features.applications.gui.floorp.enable = lib.mkEnableOption "floorp";
|
||||
|
||||
config = let
|
||||
mkIfElse = with lib; p: yes: no: mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in lib.mkIf (config.features.applications.gui.floorp.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
config = lib.mkIf (config.features.applications.gui.floorp.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.floorp.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = [ pkgs.floorp-bin ];
|
||||
|
||||
@@ -63,11 +63,6 @@
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
};
|
||||
mkIfElse = with lib; p: yes: no:
|
||||
mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in {
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui = {
|
||||
@@ -75,13 +70,13 @@ in {
|
||||
fluxer-canary.enable = lib.mkEnableOption "fluxer-canary";
|
||||
};
|
||||
|
||||
config = lib.mkIf (config.features.applications.gui.fluxer.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
config = lib.mkIf (config.features.applications.gui.fluxer.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.fluxer.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = [
|
||||
(pkgs.callPackage (fluxer-package) {})
|
||||
];
|
||||
}) // lib.mkIf (config.features.applications.gui.fluxer-canary.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
}) // lib.mkIf (config.features.applications.gui.fluxer-canary.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.fluxer-canary.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = [
|
||||
|
||||
@@ -3,11 +3,7 @@
|
||||
options.features.applications.gui.kitty.enable = lib.mkEnableOption "kitty";
|
||||
|
||||
config = let
|
||||
mkIfElse = with lib; p: yes: no: mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in lib.mkIf (config.features.applications.gui.kitty.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
in lib.mkIf (config.features.applications.gui.kitty.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.kitty.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = [ pkgs.kitty ];
|
||||
|
||||
@@ -2,13 +2,7 @@
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui.remmina.enable = lib.mkEnableOption "remmina";
|
||||
|
||||
config = let
|
||||
mkIfElse = with lib; p: yes: no:
|
||||
mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in lib.mkIf (config.features.applications.gui.remmina.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
config = lib.mkIf (config.features.applications.gui.remmina.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.remmina.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = with pkgs; [
|
||||
@@ -27,9 +21,9 @@
|
||||
freerdp
|
||||
];
|
||||
|
||||
home.activation.linkRemminaPresets = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript {
|
||||
target = ".local/share/remmina";
|
||||
source = "dotfiles/${config.info.hostName}/remmina";
|
||||
home.activation.linkRemminaPresets = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||
target = "${config.home.homeDirectory}/.local/share/remmina";
|
||||
source = "${config.info.rootPath}/dotfiles/${config.info.hostName}/remmina";
|
||||
isDir = true;
|
||||
});
|
||||
};
|
||||
|
||||
@@ -5,13 +5,7 @@
|
||||
spicetify.enable = lib.mkEnableOption "spicetify";
|
||||
};
|
||||
|
||||
config = let
|
||||
mkIfElse = with lib; p: yes: no:
|
||||
mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in lib.mkIf (config.features.applications.gui.spotify.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
config = lib.mkIf (config.features.applications.gui.spotify.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.spotify = {
|
||||
enable = lib.mkDefault true;
|
||||
spicetify.enable = lib.mkDefault config.features.applications.gui.spotify.spicetify.enable;
|
||||
|
||||
@@ -2,12 +2,7 @@
|
||||
flake.nixosModules.graphics = { config, pkgs, lib, ... }: {
|
||||
options.features.applications.gui.vscode.enable = lib.mkEnableOption "vscode";
|
||||
|
||||
config = let
|
||||
mkIfElse = with lib; p: yes: no: mkMerge [
|
||||
(mkIf p yes)
|
||||
(mkIf (!p) no)
|
||||
];
|
||||
in lib.mkIf (config.features.applications.gui.vscode.enable) (mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
config = lib.mkIf (config.features.applications.gui.vscode.enable) (inputs.helpers.mkIfElse (config.features.nixos.home-manager.enable) {
|
||||
home-manager.users.grey.features.applications.gui.vscode.enable = lib.mkDefault true;
|
||||
} {
|
||||
environment.systemPackages = [ pkgs.vscode ];
|
||||
@@ -21,14 +16,14 @@
|
||||
home.packages = [ pkgs.vscode ];
|
||||
|
||||
home.activation = {
|
||||
linkVsCodeConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/Code/User/settings.json";
|
||||
source = "dotfiles/global/vscode/settings.json";
|
||||
linkVsCodeConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||
target = "${config.home.homeDirectory}/.config/Code/User/settings.json";
|
||||
source = "${config.info.rootPath}/dotfiles/global/vscode/settings.json";
|
||||
});
|
||||
|
||||
linkVsCodeConfigKeybindings = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/Code/User/keybindings.json";
|
||||
source = "dotfiles/global/vscode/keybindings.json";
|
||||
linkVsCodeConfigKeybindings = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
|
||||
target = "${config.home.homeDirectory}/.config/Code/User/keybindings.json";
|
||||
source = "${config.info.rootPath}/dotfiles/global/vscode/keybindings.json";
|
||||
});
|
||||
};
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user