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
|
@ -6,5 +6,6 @@
|
|||
./i18n.nix
|
||||
./openssh.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