refactor(home:options): move modules/options -> ../options
This commit is contained in:
parent
1ac90d7985
commit
7755141752
26 changed files with 1 additions and 70 deletions
29
home/options/appearance/cursor.nix
Normal file
29
home/options/appearance/cursor.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption mkOption types;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.cursor = {
|
||||
enable = mkEnableOption "Enable cursor module";
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = null;
|
||||
description = "Package for cursor";
|
||||
example = "pkgs.bibata-cursors";
|
||||
};
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = "Name of cursor";
|
||||
example = "Bibata-Modern-Ice";
|
||||
};
|
||||
size = lib.mkOption {
|
||||
type = types.int;
|
||||
default = 22;
|
||||
description = "Size of cursor";
|
||||
example = "22";
|
||||
};
|
||||
};
|
||||
}
|
||||
25
home/options/appearance/fonts.nix
Normal file
25
home/options/appearance/fonts.nix
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
mkFontOption = kind: {
|
||||
family = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "";
|
||||
description = "Family name for ${kind} font profile";
|
||||
example = "Fira Code";
|
||||
};
|
||||
package = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = null;
|
||||
description = "Package for ${kind} font profile";
|
||||
example = "pkgs.fira-code";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
options.ooknet.theme.fonts = {
|
||||
enable = lib.mkEnableOption "Whether to enable font profiles";
|
||||
monospace = mkFontOption "monospace";
|
||||
regular = mkFontOption "regular";
|
||||
};
|
||||
}
|
||||
9
home/options/appearance/gtk.nix
Normal file
9
home/options/appearance/gtk.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.gtk.enable = mkEnableOption;
|
||||
}
|
||||
9
home/options/appearance/qt.nix
Normal file
9
home/options/appearance/qt.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.qt.enable = mkEnableOption "";
|
||||
}
|
||||
13
home/options/appearance/theme.nix
Normal file
13
home/options/appearance/theme.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{ lib, config, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkOption;
|
||||
inherit (lib.types) nullOr enum;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.theme = mkOption {
|
||||
type = nullOr (enum [ "minimal" "phone" ]);
|
||||
default = null;
|
||||
};
|
||||
}
|
||||
16
home/options/appearance/wallpaper.nix
Normal file
16
home/options/appearance/wallpaper.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) types mkEnableOption mkOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.wallpaper = {
|
||||
enable = mkEnableOption "";
|
||||
path = mkOption {
|
||||
type = types.path;
|
||||
default = null;
|
||||
description = "Wallpaper Path";
|
||||
};
|
||||
};
|
||||
}
|
||||
12
home/options/console/editor.nix
Normal file
12
home/options/console/editor.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.editor = {
|
||||
helix.enable = mkEnableOption "";
|
||||
nvim.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
12
home/options/console/multiplexer.nix
Normal file
12
home/options/console/multiplexer.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.multiplexer = {
|
||||
zellij.enable = mkEnableOption "";
|
||||
tmux.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
13
home/options/console/shell.nix
Normal file
13
home/options/console/shell.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{ lib , ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.shell = {
|
||||
fish.enable = mkEnableOption "";
|
||||
zsh.enable = mkEnableOption "";
|
||||
bash.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
21
home/options/console/tools.nix
Normal file
21
home/options/console/tools.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.tools = {
|
||||
btop.enable = mkEnableOption "";
|
||||
eza.enable = mkEnableOption "";
|
||||
bat.enable = mkEnableOption "";
|
||||
direnv.enable = mkEnableOption "";
|
||||
fzf.enable = mkEnableOption "";
|
||||
git.enable = mkEnableOption "";
|
||||
ssh.enable = mkEnableOption "";
|
||||
nixIndex.enable = mkEnableOption "";
|
||||
starship.enable = mkEnableOption "";
|
||||
utils.enable = mkEnableOption "";
|
||||
ffmpeg.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
39
home/options/desktop/binds.nix
Normal file
39
home/options/desktop/binds.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{ lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
mkBind = message: lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "${pkgs.libnotify}/bin/notify-send --urgency=normal 'Warning' '${message}'";
|
||||
};
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.binds = {
|
||||
browser = mkBind "No browser is enabled";
|
||||
terminal = mkBind "No terminal is enabled";
|
||||
terminalLaunch = mkBind "Failed to launch tui";
|
||||
fileManager = mkBind "No file manager is enabled.";
|
||||
notes = mkBind "No Notes app is enabled";
|
||||
discord = mkBind "No Discord app is enabled";
|
||||
steam = mkBind "Steam is not enabled";
|
||||
powerMenu = mkBind "No power menu is enabled";
|
||||
lock = mkBind "No screen locker enabled";
|
||||
password = mkBind "No password manager enabled";
|
||||
zellijMenu = mkBind "Zellij Menu is not enabled";
|
||||
volume = {
|
||||
up = mkBind "Volume binding not found...";
|
||||
down = mkBind "Volume binding not found...";
|
||||
mute = mkBind "Volume binding not found...";
|
||||
};
|
||||
brightness = {
|
||||
up = mkBind "Brightness binding not found...";
|
||||
down = mkBind "Brightness binding not found...";
|
||||
};
|
||||
spotify = {
|
||||
launch = mkBind "Spotify is not enabled";
|
||||
next = mkBind "Spotify is not enabled";
|
||||
previous = mkBind "Spotify is not enabled";
|
||||
play = mkBind "Spotify is not enabled";
|
||||
};
|
||||
};
|
||||
}
|
||||
12
home/options/desktop/browser.nix
Normal file
12
home/options/desktop/browser.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.browser = {
|
||||
firefox.enable = mkEnableOption "";
|
||||
brave.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
11
home/options/desktop/communication.nix
Normal file
11
home/options/desktop/communication.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.communication = {
|
||||
discord.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
12
home/options/desktop/creative.nix
Normal file
12
home/options/desktop/creative.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.creative = {
|
||||
inkscape.enable = mkEnableOption "";
|
||||
audacity.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
13
home/options/desktop/gaming.nix
Normal file
13
home/options/desktop/gaming.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.gaming = {
|
||||
factorio.enable = mkEnableOption "";
|
||||
bottles.enable = mkEnableOption "";
|
||||
lutris.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
21
home/options/desktop/media.nix
Normal file
21
home/options/desktop/media.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.media = {
|
||||
image = {
|
||||
imv.enable = mkEnableOption "";
|
||||
};
|
||||
video = {
|
||||
mpv.enable = mkEnableOption "";
|
||||
jellyfinPlayer.enable = mkEnableOption "";
|
||||
youtube.enable = mkEnableOption "";
|
||||
};
|
||||
music = {
|
||||
tui.enable = mkEnableOption "";
|
||||
};
|
||||
};
|
||||
}
|
||||
19
home/options/desktop/productivity.nix
Normal file
19
home/options/desktop/productivity.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.productivity = {
|
||||
notes = {
|
||||
obsidian.enable = mkEnableOption "";
|
||||
};
|
||||
office = {
|
||||
libreoffice.enable = mkEnableOption "";
|
||||
};
|
||||
pdf = {
|
||||
zathura.enable = mkEnableOption "";
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home/options/desktop/security.nix
Normal file
14
home/options/desktop/security.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkOption types;
|
||||
inherit (types) nullOr enum;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.security.polkit = mkOption {
|
||||
type = nullOr (enum ["gnome" "pantheon"]); # TODO: add kde agent
|
||||
default = "gnome";
|
||||
description = "Type of polkit agent module to use";
|
||||
};
|
||||
}
|
||||
11
home/options/desktop/terminal.nix
Normal file
11
home/options/desktop/terminal.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.terminal = {
|
||||
foot.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
11
home/options/desktop/tools.nix
Normal file
11
home/options/desktop/tools.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkEnableOption;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.tools = {
|
||||
kdeconnect.enable = mkEnableOption "";
|
||||
};
|
||||
}
|
||||
31
home/options/desktop/wayland.nix
Normal file
31
home/options/desktop/wayland.nix
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkOption mkEnableOption types;
|
||||
inherit (types) nullOr enum;
|
||||
in
|
||||
|
||||
{
|
||||
ooknet.wayland = {
|
||||
enable = mkEnableOption "";
|
||||
compositor = mkOption {
|
||||
type = nullOr (enum [ "hyprland" ]);
|
||||
};
|
||||
launcher = mkOption {
|
||||
type = nullOr (enum [ "rofi" "tofi" ]);
|
||||
default = null;
|
||||
};
|
||||
locker = mkOption {
|
||||
type = nullOr (enum [ "hyprlock" "swaylock" ]);
|
||||
default = null;
|
||||
};
|
||||
notification = mkOption {
|
||||
type = nullOr (enum [ "mako" ]);
|
||||
default = null;
|
||||
};
|
||||
bar = mkOption {
|
||||
type = nullOr (enum [ "waybar" ]);
|
||||
default = null;
|
||||
};
|
||||
};
|
||||
}
|
||||
23
home/options/profiles/console.nix
Normal file
23
home/options/profiles/console.nix
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkOption types;
|
||||
inherit (types) nullOr enum;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.console = {
|
||||
editor = mkOption {
|
||||
type = nullOr (enum ["helix" "nvim"]);
|
||||
default = "helix";
|
||||
};
|
||||
multiplexer = mkOption {
|
||||
type = nullOr (enum ["tmux" "zellij"]);
|
||||
default = null;
|
||||
};
|
||||
fileManager = mkOption {
|
||||
type = nullOr (enum ["yazi" "ranger" "lf"]);
|
||||
default = null;
|
||||
};
|
||||
};
|
||||
}
|
||||
51
home/options/profiles/desktop.nix
Normal file
51
home/options/profiles/desktop.nix
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{ lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkOption types;
|
||||
inherit (types) enum nullOr listOf;
|
||||
in
|
||||
|
||||
{
|
||||
options.ooknet.desktop = {
|
||||
|
||||
environment = mkOption {
|
||||
type = nullOr (enum [ "hyprland" ]);
|
||||
default = "hyprland";
|
||||
};
|
||||
|
||||
browser = mkOption {
|
||||
type = nullOr (enum [ "firefox" "brave" ]);
|
||||
default = null;
|
||||
};
|
||||
|
||||
terminal = mkOption {
|
||||
type = nullOr (enum [ "foot" "kitty" "wezterm" ]);
|
||||
default = "foot";
|
||||
};
|
||||
|
||||
fileManager = mkOption {
|
||||
type = nullOr (enum [ "nemo" ]);
|
||||
default = null;
|
||||
};
|
||||
|
||||
notes = mkOption {
|
||||
type = nullOr (enum [ "obsidian" ]);
|
||||
default = null;
|
||||
};
|
||||
|
||||
pdf = mkOption {
|
||||
type = nullOr (enum [ "zathura" ]);
|
||||
default = null;
|
||||
};
|
||||
|
||||
discord = mkOption {
|
||||
type = nullOr (enum [ "vesktop" ]);
|
||||
default = null;
|
||||
};
|
||||
|
||||
suites = mkOption {
|
||||
type = listOf (enum [ "gaming" "tools" "media" "creative" ]);
|
||||
default = [ ];
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue