chore: pretty up with alejandra

This commit is contained in:
Peritia 2025-09-22 16:16:02 +02:00
parent 7bbda6140f
commit 37b85877bb
75 changed files with 584 additions and 452 deletions

View file

@ -14,13 +14,14 @@
# - Default extensions include uBlock Origin, Proton Pass, Proton VPN
# - Extra extensions must be specified by Chrome Web Store ID
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.brave;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.brave;
in {
options.nyx-module.home.brave = {
enable = lib.mkEnableOption "Enable Brave (home module)";
@ -30,7 +31,7 @@ in
extra = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [];
example = [ "abcdefghijklmnop" "qrstuvwxyz123456" ];
example = ["abcdefghijklmnop" "qrstuvwxyz123456"];
description = "List of additional Brave extension IDs to install.";
};
};
@ -43,11 +44,11 @@ in
extensions = lib.optionals cfg.extensions.enable (
(lib.optionals cfg.extensions.standard [
{ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # uBlock Origin
{ id = "ghmbeldphafepmbegfdlkpapadhbakde"; } # Proton Pass
{ id = "jplgfhpmjnbigmhklmmbgecoobifkmpa"; } # Proton VPN
]) ++
(map (id: { inherit id; }) cfg.extensions.extra)
{id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";} # uBlock Origin
{id = "ghmbeldphafepmbegfdlkpapadhbakde";} # Proton Pass
{id = "jplgfhpmjnbigmhklmmbgecoobifkmpa";} # Proton VPN
])
++ (map (id: {inherit id;}) cfg.extensions.extra)
);
commandLineArgs = [

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./brave.nix
];

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./signal-desktop.nix
./vesktop.nix

View file

@ -7,13 +7,14 @@
# - enable → Enable Signal Desktop
# - package → Override package (default: pkgs.signal-desktop)
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.signal-desktop;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.signal-desktop;
in {
options.nyx-module.home.signal-desktop = {
enable = lib.mkEnableOption "Enable signal-desktop (home) module";
@ -25,6 +26,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -7,13 +7,14 @@
# - enable → Enable Vesktop client
# - package → Override package (default: pkgs.vesktop)
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.vesktop;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.vesktop;
in {
options.nyx-module.home.vesktop = {
enable = lib.mkEnableOption "Enable vesktop (home) module";
@ -25,6 +26,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./rustdesk.nix
];

View file

@ -10,20 +10,21 @@
# Notes:
# - Estimated build time: ~? Long....
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.rustdesk;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.rustdesk;
in {
options.nyx-module.home.rustdesk = {
enable = lib.mkEnableOption "Enable rustdesk (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.rustdesk;
description = ''
description = ''
Package to install for RustDesk.
You can override this if you want to pin a version or use a fork.
'';
@ -32,6 +33,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./Messaging
./Remote-Support

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./vscodium.nix
];

View file

@ -13,14 +13,14 @@
# Notes:
# - Some Microsoft extensions may be broken (e.g., ms-python.python)
#
{ config, pkgs, lib, ... }:
let
cfg = config.nyx-module.home.vscodium;
in
{
config,
pkgs,
lib,
...
}: let
cfg = config.nyx-module.home.vscodium;
in {
options.nyx-module.home.vscodium = {
enable = lib.mkEnableOption "Enable VSCodium with extensions";
@ -32,7 +32,7 @@ in
extra = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [];
example = [ pkgs.vscode-extensions.ms-python.python ];
example = [pkgs.vscode-extensions.ms-python.python];
description = "List of extra VSCodium extensions to install.";
};
};
@ -43,16 +43,15 @@ in
enable = true;
package = pkgs.vscodium;
profiles.default.extensions =
lib.optionals cfg.extensions.enable (
(lib.optionals cfg.extensions.standard (with pkgs.vscode-extensions; [
catppuccin.catppuccin-vsc
jnoortheen.nix-ide
ms-azuretools.vscode-docker
# ms-python.python # currently broken (pygls failure)
]))
++ cfg.extensions.extra
);
profiles.default.extensions = lib.optionals cfg.extensions.enable (
(lib.optionals cfg.extensions.standard (with pkgs.vscode-extensions; [
catppuccin.catppuccin-vsc
jnoortheen.nix-ide
ms-azuretools.vscode-docker
# ms-python.python # currently broken (pygls failure)
]))
++ cfg.extensions.extra
);
};
};
}

View file

@ -15,13 +15,14 @@
# Options:
# - enable → Enable the Classic Game Collection
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.classic-game-collection;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.classic-game-collection;
in {
options.nyx-module.home.classic-game-collection = {
enable = lib.mkEnableOption "Enable the Classic Game Collection (home module)";
};

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./classic-game-collection.nix
./prismlauncher.nix

View file

@ -14,13 +14,14 @@
# - Installed via home.packages
# - JDKs are added to PATH so PrismLauncher can discover them
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.prismlauncher;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.prismlauncher;
in {
options.nyx-module.home.prismlauncher = {
enable = lib.mkEnableOption "Enable PrismLauncher (Minecraft launcher)";
@ -28,16 +29,16 @@ in
jdks = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [ pkgs.jdk17 ];
example = [ pkgs.jdk8 pkgs.jdk17 pkgs.jdk21 ];
default = [pkgs.jdk17];
example = [pkgs.jdk8 pkgs.jdk17 pkgs.jdk21];
description = "List of Java runtimes to make available for PrismLauncher.";
};
};
config = lib.mkIf cfg.enable {
home.packages =
[ pkgs.prismlauncher ]
++ lib.optionals cfg.includeFfmpeg [ pkgs.ffmpeg ]
[pkgs.prismlauncher]
++ lib.optionals cfg.includeFfmpeg [pkgs.ffmpeg]
++ cfg.jdks;
};
}

View file

@ -20,13 +20,14 @@
# settings.general.framerate = 120;
# settings.input.method = "pulse";
# };
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.cava;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.cava;
in {
options.nyx-module.home.cava = {
enable = lib.mkEnableOption "Enable CAVA (home) module";
@ -42,7 +43,7 @@ in
};
};
description = ''
Declarative CAVA settings, written to `~/.config/cava/config`.
Declarative CAVA settings, written to `~/.config/cava/config`.
Ignored if `configText` is set.
'';
example = {
@ -56,7 +57,7 @@ in
type = lib.types.nullOr lib.types.lines;
default = null;
description = ''
Raw CAVA configuration file contents.
Raw CAVA configuration file contents.
If set, overrides `settings` and is written directly to `~/.config/cava/config`.
'';
example = ''
@ -64,7 +65,7 @@ in
framerate = 120
[input]
method = pulse
'';
'';
};
};
@ -73,11 +74,9 @@ in
enable = true;
package = pkgs.cava;
settings = lib.mkIf (cfg.configText == null) cfg.settings;
};
xdg.configFile."cava/config" = lib.mkIf (cfg.configText != null) {
text = cfg.configText;
};

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./cava.nix
./spotify.nix

View file

@ -7,13 +7,14 @@
# Notes:
# - Installs into home.packages
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.spotify;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.spotify;
in {
options.nyx-module.home.spotify = {
enable = lib.mkEnableOption "Enable Spotify (home) module";
@ -30,6 +31,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -7,13 +7,14 @@
# Notes:
# - You can override the GUI package with another (e.g., cheese, kamoso)
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.camera;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.camera;
in {
options.nyx-module.home.camera = {
enable = lib.mkEnableOption "Enable camera (home) module";

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./camera.nix
];

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./image-viewer.nix
./krita.nix

View file

@ -6,13 +6,14 @@
# Notes:
# - Defaults to Gwenview
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.image-viewer;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.image-viewer;
in {
options.nyx-module.home.image-viewer = {
enable = lib.mkEnableOption "Enable image viewer (home module)";
@ -25,6 +26,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -6,13 +6,14 @@
# Notes:
# - Installed via home.packages
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.krita;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.krita;
in {
options.nyx-module.home.krita = {
enable = lib.mkEnableOption "Enable Krita (home) module";
};

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./kdenlive.nix
./video-player.nix

View file

@ -9,13 +9,14 @@
# * pkgs.kdePackages.kdenlive (preferred, modern KDE split)
# * pkgs.libsForQt5.kdenlive (older releases, fallback)
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.kdenlive;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.kdenlive;
in {
options.nyx-module.home.kdenlive = {
enable = lib.mkEnableOption "Enable Kdenlive (home) module";
};

View file

@ -6,20 +6,21 @@
# Notes:
# - Defaults to [ vlc ]
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.video-player;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.video-player;
in {
options.nyx-module.home.video-player = {
enable = lib.mkEnableOption "Enable video players (home module)";
packages = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [ pkgs.vlc ];
example = [ pkgs.vlc pkgs.mpv pkgs.celluloid ];
default = [pkgs.vlc];
example = [pkgs.vlc pkgs.mpv pkgs.celluloid];
description = "List of video/media players to install (e.g. vlc, mpv, celluloid).";
};
};
@ -28,12 +29,11 @@ in
home.packages = cfg.packages;
};
}
##########
# Example
##########
# nyx-module.home.video-player = {
# enable = true;
# packages = [ pkgs.vlc pkgs.mpv ];
# };

View file

@ -9,13 +9,14 @@
# Notes:
# - Installed via home.packages
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.zoom;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.zoom;
in {
options.nyx-module.home.zoom = {
enable = lib.mkEnableOption "Enable Zoom (home) module";
@ -27,6 +28,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./Audio
./Capture

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./obsidian.nix
];

View file

@ -7,18 +7,19 @@
# - Consider adding theming support later
# (e.g., https://github.com/jackiejude/obsidian-temple-os)
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.obsidian;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.obsidian;
in {
options.nyx-module.home.obsidian = {
enable = lib.mkEnableOption "Enable Obsidian (home module)";
};
config = lib.mkIf cfg.enable {
home.packages = [ pkgs.obsidian ];
home.packages = [pkgs.obsidian];
};
}

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./libreoffice.nix
./pdf-reader.nix

View file

@ -6,18 +6,19 @@
# Notes:
# - Simple module, just adds LibreOffice to the user environment
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.libreoffice;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.libreoffice;
in {
options.nyx-module.home.libreoffice = {
enable = lib.mkEnableOption "Enable LibreOffice (home module)";
};
config = lib.mkIf cfg.enable {
home.packages = [ pkgs.libreoffice ];
home.packages = [pkgs.libreoffice];
};
}

View file

@ -6,13 +6,14 @@
# Notes:
# - Defaults to Okular
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.pdf-viewer;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.pdf-viewer;
in {
options.nyx-module.home.pdf-viewer = {
enable = lib.mkEnableOption "Enable PDF (home module)";
@ -25,6 +26,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -7,13 +7,14 @@
# - Default is `simple-scan` (GNOME Document Scanner)
# - Can be overridden with another package such as `system-config-printer`
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.printer;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.printer;
in {
options.nyx-module.home.printer = {
enable = lib.mkEnableOption "Enable printer GUI (home module)";
@ -26,6 +27,6 @@ in
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
home.packages = [cfg.package];
};
}

View file

@ -6,18 +6,19 @@
# Notes:
# - Simple module, just adds Thunderbird to the user environment
#
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.thunderbird;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.thunderbird;
in {
options.nyx-module.home.thunderbird = {
enable = lib.mkEnableOption "Enable Thunderbird (home module)";
};
config = lib.mkIf cfg.enable {
home.packages = [ pkgs.thunderbird ];
home.packages = [pkgs.thunderbird];
};
}

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./Knowledge
./Productivity

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./protonvpn.nix
];

View file

@ -8,14 +8,14 @@
#
# Notes:
# - GUI only by default (CLI version available as pkgs.protonvpn-cli)
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.protonvpn;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.protonvpn;
in {
options.nyx-module.home.protonvpn = {
enable = lib.mkEnableOption "Enable ProtonVPN (home module)";
};

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./Browsers
./Communication

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./tools.nix
];

View file

@ -7,34 +7,36 @@
# Options:
# - enable → Enable CLI tools collection
# - extra → List of extra packages to install
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.cli-tools;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.cli-tools;
in {
options.nyx-module.home.cli-tools = {
enable = lib.mkEnableOption "Enable CLI tools (home module)";
extra = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [];
example = [ pkgs.ripgrep pkgs.htop ];
example = [pkgs.ripgrep pkgs.htop];
description = "Extra CLI tools to install in addition to the defaults.";
};
};
config = lib.mkIf cfg.enable {
home.packages = with pkgs; [
fastfetch
hyfetch
bat
fzf
tree
lsd
tmux
] ++ cfg.extra;
home.packages = with pkgs;
[
fastfetch
hyfetch
bat
fzf
tree
lsd
tmux
]
++ cfg.extra;
};
}

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./cli-tools
./zsh

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./zsh.nix
];

View file

@ -6,13 +6,14 @@
#
# Options:
# - enable → Enable Zsh in the user profile
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.zsh;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.zsh;
in {
options.nyx-module.home.zsh = {
enable = lib.mkEnableOption "Enable Zsh (home module)";
};

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./private-webapps.nix
./work-webapps.nix

View file

@ -12,13 +12,14 @@
# Notes:
# - Uses --app mode to create minimal browser windows
# - Additional services can be added following the same pattern
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.private-webapps;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.private-webapps;
in {
options.nyx-module.home.private-webapps = {
enable = lib.mkEnableOption "Enable private webapps (home module)";

View file

@ -18,13 +18,14 @@
# Notes:
# - Uses --app mode for minimal windows (like PWAs)
# - Outlook entry uses a custom profile directory for isolation
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.work-webapps;
in
{
config,
lib,
pkgs,
...
}: let
cfg = config.nyx-module.home.work-webapps;
in {
options.nyx-module.home.work-webapps = {
enable = lib.mkEnableOption "Enable work webapps (home module)";

View file

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}: {
imports = [
./GUI-Apps
./Shell