mirror of
https://github.com/ItsDrike/nixdots
synced 2025-06-29 03:10:43 +00:00
Add preference options
This commit is contained in:
parent
32bebe0adc
commit
15ce6ea7d0
6 changed files with 228 additions and 212 deletions
|
@ -8,6 +8,7 @@ in
|
|||
./wms.nix
|
||||
./theme.nix
|
||||
./services.nix
|
||||
./preferences.nix
|
||||
];
|
||||
|
||||
options.myOptions.home-manager = {
|
||||
|
|
34
options/home/preferences.nix
Normal file
34
options/home/preferences.nix
Normal file
|
@ -0,0 +1,34 @@
|
|||
{ lib, ... }: let
|
||||
inherit (lib) mkOption types;
|
||||
|
||||
mkPreferenceCmdOption = name: commandDefault: mkOption {
|
||||
type = types.str;
|
||||
description = "The command to start your preferred ${name}.";
|
||||
default = commandDefault;
|
||||
};
|
||||
|
||||
mkPreferenceDesktopOption = name: desktopDefault: mkOption {
|
||||
type = types.str;
|
||||
description = "The desktop (application) file for your preferred ${name}.";
|
||||
default = desktopDefault;
|
||||
};
|
||||
|
||||
mkPreferenceOptions = name: commandDefault: desktopDefault: {
|
||||
command = mkPreferenceCmdOption name commandDefault;
|
||||
desktop = mkPreferenceDesktopOption name desktopDefault;
|
||||
};
|
||||
in
|
||||
{
|
||||
options.myOptions.home-manager.preferences = {
|
||||
browser = mkPreferenceOptions "browser" "firefox" "firefox.desktop";
|
||||
terminalEmulator = mkPreferenceOptions "terminal emulator" "kitty" "kitty.desktop";
|
||||
textEditor = mkPreferenceOptions "editor" "nvim" "nvim.desktop";
|
||||
fileManager = mkPreferenceOptions "file manager" "pcmanfm-qt" "pcmanfm-qt.desktop";
|
||||
imageViewer = mkPreferenceOptions "image viewer" "qimgv" "qimgv.desktop";
|
||||
mediaPlayer = mkPreferenceOptions "media player" "mpv" "mpv.desktop";
|
||||
archiveManager = mkPreferenceOptions "archive manager" "ark" "org.kde.ark.desktop";
|
||||
documentViewer = mkPreferenceOptions "document viewer" "firefox" "firefox.desktop"; # TODO: consider zathura (org.pwmt.zathura.desktop.desktop)
|
||||
emailClient = mkPreferenceOptions "email client" "firefox" "firefox.desktop";
|
||||
launcher.command = mkPreferenceCmdOption "launcher" "walker";
|
||||
};
|
||||
}
|
|
@ -49,25 +49,7 @@ in
|
|||
};
|
||||
|
||||
file-managers = {
|
||||
pcmanfm-qt = {
|
||||
enable = mkEnableOption "Pcmanfm-qt (extremely fast and lightweight file manager and the standard file manager of LXDE)";
|
||||
|
||||
terminalCmd = mkOption {
|
||||
type = types.str;
|
||||
default = "kitty";
|
||||
description = ''
|
||||
Command used to open the terminal emulator.
|
||||
'';
|
||||
};
|
||||
|
||||
archiverCmd = mkOption {
|
||||
type = types.str;
|
||||
default = "ark";
|
||||
description = ''
|
||||
Command used to open the archiver (zip/tar explorer).
|
||||
'';
|
||||
};
|
||||
};
|
||||
pcmanfm-qt.enable = mkEnableOption "Pcmanfm-qt (extremely fast and lightweight file manager and the standard file manager of LXDE)";
|
||||
};
|
||||
|
||||
tools = {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue