forked from jan-leila/nix-config
created program option entries for all packages that needs continual state
This commit is contained in:
parent
5484f9ba04
commit
9fe35e74ad
21 changed files with 374 additions and 63 deletions
|
@ -12,41 +12,47 @@ in {
|
||||||
# See https://search.nixos.org/packages for all options
|
# See https://search.nixos.org/packages for all options
|
||||||
home.packages = lib.lists.optionals userConfig.isDesktopUser (
|
home.packages = lib.lists.optionals userConfig.isDesktopUser (
|
||||||
with pkgs; [
|
with pkgs; [
|
||||||
firefox
|
|
||||||
bitwarden
|
|
||||||
discord
|
|
||||||
makemkv
|
|
||||||
signal-desktop-bin
|
|
||||||
ungoogled-chromium
|
ungoogled-chromium
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
# Packages that need to be installed with some extra configuration
|
# Packages that need to be installed with some extra configuration
|
||||||
# See https://home-manager-options.extranix.com/ for all options
|
# See https://home-manager-options.extranix.com/ for all options
|
||||||
programs = {
|
programs = lib.mkMerge [
|
||||||
# Let Home Manager install and manage itself.
|
{
|
||||||
home-manager.enable = true;
|
# Let Home Manager install and manage itself.
|
||||||
|
home-manager.enable = true;
|
||||||
|
}
|
||||||
|
(lib.mkIf (config.user.isDesktopUser || config.user.isTerminalUser) {
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
|
userName = "Eve";
|
||||||
|
userEmail = "evesnrobins@gmail.com";
|
||||||
|
extraConfig.init.defaultBranch = "main";
|
||||||
|
};
|
||||||
|
|
||||||
git = {
|
openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "Eve";
|
hostKeys = [
|
||||||
userEmail = "evesnrobins@gmail.com";
|
{
|
||||||
extraConfig.init.defaultBranch = "main";
|
type = "ed25519";
|
||||||
};
|
path = "${config.home.username}_${osConfig.networking.hostName}_ed25519";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
})
|
||||||
|
(lib.mkIf userConfig.isDesktopUser {
|
||||||
|
vscode = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.vscodium;
|
||||||
|
};
|
||||||
|
|
||||||
vscode = {
|
firefox.enable = true;
|
||||||
enable = true;
|
bitwarden.enable = true;
|
||||||
package = pkgs.vscodium;
|
discord.enable = true;
|
||||||
};
|
makemkv.enable = true;
|
||||||
|
signal-desktop-bin.enable = true;
|
||||||
openssh = {
|
})
|
||||||
hostKeys = [
|
];
|
||||||
{
|
|
||||||
type = "ed25519";
|
|
||||||
path = "${config.home.username}_${osConfig.networking.hostName}_ed25519";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,10 +45,6 @@ in {
|
||||||
++ (
|
++ (
|
||||||
lib.lists.optionals hardware.directAccess.enable (with pkgs; [
|
lib.lists.optionals hardware.directAccess.enable (with pkgs; [
|
||||||
#foss platforms
|
#foss platforms
|
||||||
# TODO: move signal to package with impermanence
|
|
||||||
signal-desktop-bin
|
|
||||||
# TODO: move bitwarden to package with impermanence
|
|
||||||
bitwarden
|
|
||||||
ungoogled-chromium
|
ungoogled-chromium
|
||||||
libreoffice
|
libreoffice
|
||||||
inkscape
|
inkscape
|
||||||
|
@ -57,42 +53,25 @@ in {
|
||||||
freecad
|
freecad
|
||||||
# cura
|
# cura
|
||||||
# kicad-small
|
# kicad-small
|
||||||
# TODO: move makemkv to package with configs set and impermanence
|
|
||||||
makemkv
|
|
||||||
onionshare
|
onionshare
|
||||||
# rhythmbox
|
# rhythmbox
|
||||||
|
|
||||||
# TODO: move obs to package with impermanence
|
|
||||||
(lib.mkIf hardware.graphicsAcceleration.enable obs-studio)
|
|
||||||
# wireshark
|
# wireshark
|
||||||
# rpi-imager
|
# rpi-imager
|
||||||
# fritzing
|
# fritzing
|
||||||
mfoc
|
mfoc
|
||||||
tor-browser
|
tor-browser
|
||||||
anki
|
|
||||||
pdfarranger
|
pdfarranger
|
||||||
calibre
|
|
||||||
qbittorrent
|
|
||||||
picard
|
picard
|
||||||
|
|
||||||
# proprietary platforms
|
# proprietary platforms
|
||||||
# TODO: move discord to package with impermanence
|
|
||||||
discord
|
|
||||||
# TODO: move obsidian to package with impermanence
|
|
||||||
obsidian
|
|
||||||
# TODO: move prostudiomasters to package with impermanence
|
|
||||||
prostudiomasters
|
|
||||||
(lib.mkIf hardware.graphicsAcceleration.enable davinci-resolve)
|
(lib.mkIf hardware.graphicsAcceleration.enable davinci-resolve)
|
||||||
|
|
||||||
# development tools
|
# development tools
|
||||||
# androidStudioPackages.canary
|
# androidStudioPackages.canary
|
||||||
# TODO: move idea to package with impermanence and installed extensions
|
|
||||||
jetbrains.idea-community
|
|
||||||
qFlipper
|
qFlipper
|
||||||
|
|
||||||
# system tools
|
# system tools
|
||||||
# TODO: move protonvpn to package with impermanence and installed extensions
|
|
||||||
protonvpn-gui
|
|
||||||
openvpn
|
openvpn
|
||||||
noisetorch
|
noisetorch
|
||||||
|
|
||||||
|
@ -103,12 +82,35 @@ in {
|
||||||
])
|
])
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
programs = {
|
programs = lib.mkMerge [
|
||||||
# Let Home Manager install and manage itself.
|
{
|
||||||
home-manager.enable = true;
|
# Let Home Manager install and manage itself.
|
||||||
|
home-manager.enable = true;
|
||||||
bash.enable = true;
|
bash.enable = true;
|
||||||
};
|
}
|
||||||
|
(lib.mkIf (config.user.isDesktopUser || config.user.isTerminalUser) {
|
||||||
|
git.enable = true;
|
||||||
|
openssh.enable = true;
|
||||||
|
})
|
||||||
|
(lib.mkIf hardware.directAccess.enable {
|
||||||
|
anki.enable = true;
|
||||||
|
bitwarden.enable = true;
|
||||||
|
signal-desktop-bin.enable = true;
|
||||||
|
makemkv.enable = true;
|
||||||
|
obs-studio.enable = hardware.graphicsAcceleration.enable;
|
||||||
|
calibre.enable = true;
|
||||||
|
qbittorrent.enable = true;
|
||||||
|
discord.enable = true;
|
||||||
|
obsidian.enable = true;
|
||||||
|
prostudiomasters.enable = true;
|
||||||
|
jetbrains.idea-community.enable = true;
|
||||||
|
protonvpn-gui.enable = true;
|
||||||
|
})
|
||||||
|
(lib.mkIf (hardware.directAccess.enable && config.user.isDesktopUser) {
|
||||||
|
vscode.enable = true;
|
||||||
|
firefox.enable = true;
|
||||||
|
})
|
||||||
|
];
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,12 +2,10 @@
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
inputs,
|
inputs,
|
||||||
config,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
config = {
|
config = {
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = config.user.isDesktopUser;
|
|
||||||
profiles.leyla = {
|
profiles.leyla = {
|
||||||
settings = {
|
settings = {
|
||||||
"browser.search.defaultenginename" = "Searx";
|
"browser.search.defaultenginename" = "Searx";
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
{config, ...}: {
|
{...}: {
|
||||||
config = {
|
config = {
|
||||||
programs = {
|
programs = {
|
||||||
git = {
|
git = {
|
||||||
enable = config.user.isDesktopUser || config.user.isTerminalUser;
|
|
||||||
userName = "Leyla Becker";
|
userName = "Leyla Becker";
|
||||||
userEmail = "git@jan-leila.com";
|
userEmail = "git@jan-leila.com";
|
||||||
extraConfig.init.defaultBranch = "main";
|
extraConfig.init.defaultBranch = "main";
|
||||||
|
|
|
@ -6,7 +6,6 @@
|
||||||
config = {
|
config = {
|
||||||
programs = {
|
programs = {
|
||||||
openssh = {
|
openssh = {
|
||||||
enable = config.user.isDesktopUser;
|
|
||||||
authorizedKeys = [
|
authorizedKeys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJHeItmt8TRW43uNcOC+eIurYC7Eunc0V3LGocQqLaYj leyla@horizon"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJHeItmt8TRW43uNcOC+eIurYC7Eunc0V3LGocQqLaYj leyla@horizon"
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIILimFIW2exEH/Xo7LtXkqgE04qusvnPNpPWSCeNrFkP leyla@defiant"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIILimFIW2exEH/Xo7LtXkqgE04qusvnPNpPWSCeNrFkP leyla@defiant"
|
||||||
|
@ -20,6 +19,5 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# TODO: impermanence module, prob in home-manager-modules?
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,8 +26,6 @@ in {
|
||||||
open-vsx = extensions.open-vsx;
|
open-vsx = extensions.open-vsx;
|
||||||
vscode-marketplace = extensions.vscode-marketplace;
|
vscode-marketplace = extensions.vscode-marketplace;
|
||||||
in {
|
in {
|
||||||
enable = true;
|
|
||||||
|
|
||||||
package = pkgs.vscodium;
|
package = pkgs.vscodium;
|
||||||
|
|
||||||
mutableExtensionsDir = false;
|
mutableExtensionsDir = false;
|
||||||
|
|
|
@ -6,5 +6,6 @@
|
||||||
./i18n.nix
|
./i18n.nix
|
||||||
./openssh.nix
|
./openssh.nix
|
||||||
./continue.nix
|
./continue.nix
|
||||||
|
./programs
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
24
modules/home-manager-modules/programs/anki.nix
Normal file
24
modules/home-manager-modules/programs/anki.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.anki = {
|
||||||
|
enable = lib.mkEnableOption "enable anki";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.anki.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
anki
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for anki
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/bitwarden.nix
Normal file
24
modules/home-manager-modules/programs/bitwarden.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.bitwarden = {
|
||||||
|
enable = lib.mkEnableOption "enable bitwarden";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.bitwarden.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
bitwarden
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for bitwarden
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/calibre.nix
Normal file
24
modules/home-manager-modules/programs/calibre.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.calibre = {
|
||||||
|
enable = lib.mkEnableOption "enable calibre";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.calibre.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
calibre
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for calibre
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
17
modules/home-manager-modules/programs/default.nix
Normal file
17
modules/home-manager-modules/programs/default.nix
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
./firefox.nix
|
||||||
|
./signal.nix
|
||||||
|
./bitwarden.nix
|
||||||
|
./makemkv.nix
|
||||||
|
./obs.nix
|
||||||
|
./anki.nix
|
||||||
|
./qbittorrent.nix
|
||||||
|
./discord.nix
|
||||||
|
./obsidian.nix
|
||||||
|
./prostudiomasters.nix
|
||||||
|
./idea.nix
|
||||||
|
./protonvpn.nix
|
||||||
|
./calibre.nix
|
||||||
|
];
|
||||||
|
}
|
24
modules/home-manager-modules/programs/discord.nix
Normal file
24
modules/home-manager-modules/programs/discord.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.discord = {
|
||||||
|
enable = lib.mkEnableOption "enable discord";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.discord.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
discord
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for discord
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
3
modules/home-manager-modules/programs/firefox.nix
Normal file
3
modules/home-manager-modules/programs/firefox.nix
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
{...}: {
|
||||||
|
# TODO: map firefox impermanence
|
||||||
|
}
|
24
modules/home-manager-modules/programs/idea.nix
Normal file
24
modules/home-manager-modules/programs/idea.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.jetbrains.idea-community = {
|
||||||
|
enable = lib.mkEnableOption "enable idea-community";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.jetbrains.idea-community.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
jetbrains.idea-community
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for idea-community
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
25
modules/home-manager-modules/programs/makemkv.nix
Normal file
25
modules/home-manager-modules/programs/makemkv.nix
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.makemkv = {
|
||||||
|
enable = lib.mkEnableOption "enable makemkv";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.makemkv.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
makemkv
|
||||||
|
];
|
||||||
|
# TODO: write config file for makemkv
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for makemkv
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/obs.nix
Normal file
24
modules/home-manager-modules/programs/obs.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.obs-studio = {
|
||||||
|
# enable = lib.mkEnableOption "enable obs";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.obs-studio.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
obs-studio
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for obs
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/obsidian.nix
Normal file
24
modules/home-manager-modules/programs/obsidian.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.obsidian = {
|
||||||
|
# enable = lib.mkEnableOption "enable obsidian";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.obsidian.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
obsidian
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for obsidian
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/prostudiomasters.nix
Normal file
24
modules/home-manager-modules/programs/prostudiomasters.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.prostudiomasters = {
|
||||||
|
enable = lib.mkEnableOption "enable prostudiomasters";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.prostudiomasters.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
prostudiomasters
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for prostudiomasters
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/protonvpn.nix
Normal file
24
modules/home-manager-modules/programs/protonvpn.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.protonvpn-gui = {
|
||||||
|
enable = lib.mkEnableOption "enable protonvpn";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.protonvpn-gui.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
protonvpn-gui
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for protonvpn
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/qbittorrent.nix
Normal file
24
modules/home-manager-modules/programs/qbittorrent.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.qbittorrent = {
|
||||||
|
enable = lib.mkEnableOption "enable qbittorrent";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.qbittorrent.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
qbittorrent
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for qbittorrent
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
24
modules/home-manager-modules/programs/signal.nix
Normal file
24
modules/home-manager-modules/programs/signal.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
osConfig,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options.programs.signal-desktop-bin = {
|
||||||
|
enable = lib.mkEnableOption "enable signal";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.programs.signal-desktop-bin.enable (lib.mkMerge [
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
signal-desktop-bin
|
||||||
|
];
|
||||||
|
}
|
||||||
|
(
|
||||||
|
lib.mkIf osConfig.host.impermanence.enable {
|
||||||
|
# TODO: map impermanence for signal
|
||||||
|
}
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue