From 52c30a5d289dd3e1747373e5b322a71ced8c274c Mon Sep 17 00:00:00 2001 From: ChUrl Date: Wed, 26 Apr 2023 12:56:31 +0200 Subject: [PATCH] Reformat --- derivations/dell-b1160w/default.nix | 92 ++++---- derivations/spotdl-4_1_6/default.nix | 17 +- .../default.nix | 58 ++--- env/latex.nix | 1 - home/christoph/default.nix | 35 +-- home/christoph/nixinator/default.nix | 16 +- home/christoph/nixtop/default.nix | 4 +- home/modules/audio/default.nix | 2 +- home/modules/audio/options.nix | 7 +- home/modules/emacs/default.nix | 2 +- home/modules/emacs/options.nix | 7 +- home/modules/email/default.nix | 2 +- home/modules/email/options.nix | 7 +- home/modules/firefox/default.nix | 2 +- home/modules/firefox/options.nix | 7 +- home/modules/fish/default.nix | 10 +- home/modules/fish/options.nix | 7 +- home/modules/flatpak/default.nix | 2 +- home/modules/flatpak/options.nix | 7 +- home/modules/gaming/default.nix | 2 +- home/modules/gaming/options.nix | 7 +- home/modules/gnome/default.nix | 2 +- home/modules/gnome/options.nix | 35 ++- home/modules/hyprland/default.nix | 208 +++++++++--------- home/modules/hyprland/options.nix | 9 +- home/modules/kitty/default.nix | 2 +- home/modules/kitty/options.nix | 7 +- home/modules/misc/default.nix | 2 +- home/modules/misc/options.nix | 7 +- home/modules/neovim/default.nix | 2 +- home/modules/neovim/options.nix | 7 +- home/modules/nextcloud/default.nix | 2 +- home/modules/nextcloud/options.nix | 7 +- home/modules/plasma/default.nix | 2 +- home/modules/plasma/options.nix | 7 +- home/modules/ranger/default.nix | 2 +- home/modules/ranger/options.nix | 7 +- system/default.nix | 20 +- system/nixinator/hardware-configuration.nix | 2 +- 39 files changed, 308 insertions(+), 316 deletions(-) diff --git a/derivations/dell-b1160w/default.nix b/derivations/dell-b1160w/default.nix index 281f1b61..5728170e 100644 --- a/derivations/dell-b1160w/default.nix +++ b/derivations/dell-b1160w/default.nix @@ -4,59 +4,59 @@ fetchurl, autoPatchelfHook, cups, - libusb1 + libusb1, }: stdenv.mkDerivation rec { - pname = "B1160_B1160w_UnifiedLinuxDriver"; - version = "1.01"; + pname = "B1160_B1160w_UnifiedLinuxDriver"; + version = "1.01"; - src = fetchurl { - url = "https://dl.dell.com/FOLDER00947576M/1/${pname}_${version}.tar.gz"; - sha256 = "10b75a899ba7aff3b95158f6fc49f09d6eef670608480ee48c179337c5337375"; - curlOptsList = ["--user-agent" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:89.0) Gecko/20100101 Firefox/89.0"]; - }; + src = fetchurl { + url = "https://dl.dell.com/FOLDER00947576M/1/${pname}_${version}.tar.gz"; + sha256 = "10b75a899ba7aff3b95158f6fc49f09d6eef670608480ee48c179337c5337375"; + curlOptsList = ["--user-agent" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:89.0) Gecko/20100101 Firefox/89.0"]; + }; - # https://nixos.org/manual/nixpkgs/unstable/#setup-hook-autopatchelfhook - # https://nixos.wiki/wiki/Packaging/Binaries - # https://unix.stackexchange.com/questions/522822/different-methods-to-run-a-non-nixos-executable-on-nixos/522823#522823 - # TODO: This step does not work - nativeBuildInputs = [ - cups - stdenv.cc.cc.lib - libusb1 - autoPatchelfHook - ]; + # https://nixos.org/manual/nixpkgs/unstable/#setup-hook-autopatchelfhook + # https://nixos.wiki/wiki/Packaging/Binaries + # https://unix.stackexchange.com/questions/522822/different-methods-to-run-a-non-nixos-executable-on-nixos/522823#522823 + # TODO: This step does not work + nativeBuildInputs = [ + cups + stdenv.cc.cc.lib + libusb1 + autoPatchelfHook + ]; - unpackCmd = '' - mkdir -p root - tar xvf $curSrc --directory=root - ''; + unpackCmd = '' + mkdir -p root + tar xvf $curSrc --directory=root + ''; - # This is already built - dontBuild = true; + # This is already built + dontBuild = true; - installPhase = '' - runHook preInstall + installPhase = '' + runHook preInstall - mkdir -p $out - mkdir -p $out/cups - mkdir -p $out/lib - mkdir -p $out/lib64 - mkdir -p $out/sbin + mkdir -p $out + mkdir -p $out/cups + mkdir -p $out/lib + mkdir -p $out/lib64 + mkdir -p $out/sbin - cp -r cdroot/Linux/x86_64/at_root/usr/sbin/* $out/sbin/ - cp -r cdroot/Linux/x86_64/at_root/usr/lib64/*.so.* $out/lib64/ - cp -r cdroot/Linux/x86_64/at_root/usr/lib64/cups/* $out/cups/ - cp -r cdroot/Linux/x86_64/at_root/opt/smfp-common/lib/* $out/lib/ - - runHook postInstall - ''; + cp -r cdroot/Linux/x86_64/at_root/usr/sbin/* $out/sbin/ + cp -r cdroot/Linux/x86_64/at_root/usr/lib64/*.so.* $out/lib64/ + cp -r cdroot/Linux/x86_64/at_root/usr/lib64/cups/* $out/cups/ + cp -r cdroot/Linux/x86_64/at_root/opt/smfp-common/lib/* $out/lib/ - meta = with lib; { - description = "CUPS driver for the Dell B1160w printer."; - longDescription = "CUPS driver for the Dell B1160w printer."; - homepage = "https://www.dell.com/support/home/de-de/drivers/driversdetails?driverid=1m4pc"; - license = licenses.unfree; - platforms = ["x86_64-linux"]; - }; - } + runHook postInstall + ''; + + meta = with lib; { + description = "CUPS driver for the Dell B1160w printer."; + longDescription = "CUPS driver for the Dell B1160w printer."; + homepage = "https://www.dell.com/support/home/de-de/drivers/driversdetails?driverid=1m4pc"; + license = licenses.unfree; + platforms = ["x86_64-linux"]; + }; +} diff --git a/derivations/spotdl-4_1_6/default.nix b/derivations/spotdl-4_1_6/default.nix index 35e41bbc..6ae27383 100644 --- a/derivations/spotdl-4_1_6/default.nix +++ b/derivations/spotdl-4_1_6/default.nix @@ -1,9 +1,9 @@ -{ lib -, python310 -, fetchFromGitHub -, ffmpeg +{ + lib, + python310, + fetchFromGitHub, + ffmpeg, }: - python310.pkgs.buildPythonApplication rec { pname = "spotdl"; version = "4.1.6"; @@ -83,7 +83,10 @@ python310.pkgs.buildPythonApplication rec { ]; makeWrapperArgs = [ - "--prefix" "PATH" ":" (lib.makeBinPath [ ffmpeg ]) + "--prefix" + "PATH" + ":" + (lib.makeBinPath [ffmpeg]) ]; meta = with lib; { @@ -91,6 +94,6 @@ python310.pkgs.buildPythonApplication rec { homepage = "https://github.com/spotDL/spotify-downloader"; changelog = "https://github.com/spotDL/spotify-downloader/releases/tag/v${version}"; license = licenses.mit; - maintainers = with maintainers; [ dotlambda ]; + maintainers = with maintainers; [dotlambda]; }; } diff --git a/derivations/xdg-desktop-portal-termfilechooser/default.nix b/derivations/xdg-desktop-portal-termfilechooser/default.nix index e4bd1ab5..162034e3 100644 --- a/derivations/xdg-desktop-portal-termfilechooser/default.nix +++ b/derivations/xdg-desktop-portal-termfilechooser/default.nix @@ -1,25 +1,25 @@ # NOTE: Adapted from nixpkgs xdg-desktop-portal-wlr derivation -{ lib -, stdenv -, fetchFromGitHub -, fetchpatch -, makeWrapper -, meson -, ninja -, pkg-config -, wayland-protocols -, wayland-scanner -# , grim -, inih -, libdrm -, mesa -, pipewire -, scdoc -# , slurp -, systemd -, wayland +{ + lib, + stdenv, + fetchFromGitHub, + fetchpatch, + makeWrapper, + meson, + ninja, + pkg-config, + wayland-protocols, + wayland-scanner, + # , grim + inih, + libdrm, + mesa, + pipewire, + scdoc, + # , slurp + systemd, + wayland, }: - stdenv.mkDerivation rec { pname = "xdg-desktop-portal-termfilechooser"; version = "0.1.0"; @@ -39,15 +39,17 @@ stdenv.mkDerivation rec { # })]; # Add hyprland to portal metainformation - patches = [(fetchpatch { - url = "https://patch-diff.githubusercontent.com/raw/GermainZ/xdg-desktop-portal-termfilechooser/pull/6.patch"; - hash = "sha256-GjK6GL15liHYm5U0XBSIf5H8Cc4RIWBD0O47lLWcep0="; - })]; + patches = [ + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/GermainZ/xdg-desktop-portal-termfilechooser/pull/6.patch"; + hash = "sha256-GjK6GL15liHYm5U0XBSIf5H8Cc4RIWBD0O47lLWcep0="; + }) + ]; strictDeps = true; - depsBuildBuild = [ pkg-config ]; - nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-scanner makeWrapper ]; - buildInputs = [ inih libdrm mesa pipewire systemd wayland wayland-protocols ]; + depsBuildBuild = [pkg-config]; + nativeBuildInputs = [meson ninja pkg-config scdoc wayland-scanner makeWrapper]; + buildInputs = [inih libdrm mesa pipewire systemd wayland wayland-protocols]; mesonFlags = [ "-Dsd-bus-provider=libsystemd" @@ -62,4 +64,4 @@ stdenv.mkDerivation rec { platforms = platforms.linux; license = licenses.mit; }; -} \ No newline at end of file +} diff --git a/env/latex.nix b/env/latex.nix index 51746569..cf840f03 100644 --- a/env/latex.nix +++ b/env/latex.nix @@ -17,7 +17,6 @@ config.allowUnfree = true; overlays = [devshell.overlays.default]; }; - # TODO: Custom LaTeX "distribution"? With curated packages? in { devShell = pkgs.devshell.mkShell { diff --git a/home/christoph/default.nix b/home/christoph/default.nix index 8aaf93f9..492389f1 100644 --- a/home/christoph/default.nix +++ b/home/christoph/default.nix @@ -196,8 +196,9 @@ rec { home.file.".local/share/navi/cheats/christoph.cheat".source = ../../config/navi/christoph.cheat; home.activation = { - linkObsidianLatexSnippets = lib.hm.dag.entryAfter ["writeBoundary"] - (mylib.modules.mkLink "~/NixFlake/config/obsidian/latex_snippets.json" "~/Notes/Obsidian/Chriphost/latex_snippets.json"); + linkObsidianLatexSnippets = + lib.hm.dag.entryAfter ["writeBoundary"] + (mylib.modules.mkLink "~/NixFlake/config/obsidian/latex_snippets.json" "~/Notes/Obsidian/Chriphost/latex_snippets.json"); }; xdg.mime.enable = true; @@ -428,7 +429,7 @@ rec { enable = true; enableFishIntegration = true; }; - + btop.enable = true; chromium = { @@ -438,12 +439,12 @@ rec { # package = pkgs.ungoogled-chromium; extensions = [ - { id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # UBlock Origin - { id = "oboonakemofpalcgghocfoadofidjkkk"; } # KeepassXC Browser - { id = "pkehgijcmpdhfbdbbnkijodmdjhbjlgp"; } # Privacy Badger - { id = "lckanjgmijmafbedllaakclkaicjfmnk"; } # ClearURLs - { id = "njdfdhgcmkocbgbhcioffdbicglldapd"; } # LocalCDN - { id = "jaoafjdoijdconemdmodhbfpianehlon"; } # Skip Redirect + {id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";} # UBlock Origin + {id = "oboonakemofpalcgghocfoadofidjkkk";} # KeepassXC Browser + {id = "pkehgijcmpdhfbdbbnkijodmdjhbjlgp";} # Privacy Badger + {id = "lckanjgmijmafbedllaakclkaicjfmnk";} # ClearURLs + {id = "njdfdhgcmkocbgbhcioffdbicglldapd";} # LocalCDN + {id = "jaoafjdoijdconemdmodhbfpianehlon";} # Skip Redirect ]; }; @@ -554,7 +555,7 @@ rec { }; nnn = { - package = pkgs.nnn.override { withNerdIcons = true; }; + package = pkgs.nnn.override {withNerdIcons = true;}; enable = true; extraPackages = with pkgs; [ @@ -586,12 +587,14 @@ rec { v = "imgview"; }; - src = (pkgs.fetchFromGitHub { - owner = "jarun"; - repo = "nnn"; - rev = "6a8d74a43a2135a186dc59c5a1f561444ca098e4"; - sha256 = "sha256-jxPfaHRPWy1L87YkK1G/9cBgUwjyJyPXM2jG4VE4+kQ="; - }) + "/plugins"; + src = + (pkgs.fetchFromGitHub { + owner = "jarun"; + repo = "nnn"; + rev = "6a8d74a43a2135a186dc59c5a1f561444ca098e4"; + sha256 = "sha256-jxPfaHRPWy1L87YkK1G/9cBgUwjyJyPXM2jG4VE4+kQ="; + }) + + "/plugins"; }; }; diff --git a/home/christoph/nixinator/default.nix b/home/christoph/nixinator/default.nix index b1c21f3c..205c64d7 100644 --- a/home/christoph/nixinator/default.nix +++ b/home/christoph/nixinator/default.nix @@ -19,37 +19,37 @@ rec { modules = { audio = { enable = false; - + carla.enable = false; bitwig.enable = true; # TODO: Check what happens when upgrade plan ends, do I need to pin the version then? tenacity.enable = true; - + faust.enable = true; bottles.enable = false; yabridge.enable = true; yabridge.autoSync = true; - + noisesuppression = { noisetorch.enable = false; noisetorch.autostart = false; easyeffects.enable = false; easyeffects.autostart = false; }; - + cardinal.enable = true; distrho.enable = true; }; - + gaming = { enable = true; - + prism.enable = true; bottles.enable = false; # TODO: Webcord # discordChromium.enable = false; # discordElectron.enable = false; # This is the nixpkgs version, prefer the one from flatpak module # dwarffortress.enable = false; - + steam = { enable = true; gamescope = true; @@ -58,7 +58,7 @@ rec { }; }; }; - + home.packages = with pkgs; [ quartus-prime-lite # Intel FPGA design software ]; diff --git a/home/christoph/nixtop/default.nix b/home/christoph/nixtop/default.nix index 5aaa4145..eb870d10 100644 --- a/home/christoph/nixtop/default.nix +++ b/home/christoph/nixtop/default.nix @@ -17,11 +17,9 @@ rec { config = { modules = { - }; - + home.packages = with pkgs; [ - ]; }; } diff --git a/home/modules/audio/default.nix b/home/modules/audio/default.nix index a06a6f52..58d58828 100644 --- a/home/modules/audio/default.nix +++ b/home/modules/audio/default.nix @@ -15,7 +15,7 @@ in { ../flatpak ]; - options.modules.audio = import ./options.nix { inherit lib mylib; }; + options.modules.audio = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { assertions = [ diff --git a/home/modules/audio/options.nix b/home/modules/audio/options.nix index 2b7f3f96..80c453a0 100644 --- a/home/modules/audio/options.nix +++ b/home/modules/audio/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Audio module"; # TODO: Group these in categories (like instruments/VSTs or sth) @@ -45,4 +44,4 @@ with mylib.modules; autostart = mkBoolOpt false "Autoload EasyEffects suppression profile"; }; }; -} \ No newline at end of file +} diff --git a/home/modules/emacs/default.nix b/home/modules/emacs/default.nix index d2dff8f3..2bf65f2c 100644 --- a/home/modules/emacs/default.nix +++ b/home/modules/emacs/default.nix @@ -18,7 +18,7 @@ in { # Options is a vector of options this module defines # This module defines only the "emacs" option and suboptions "enable" and "doom" - options.modules.emacs = import ./options.nix { inherit lib mylib; }; + options.modules.emacs = import ./options.nix {inherit lib mylib;}; # Config is the merged set of all module configurations # Here we define what happens to the config if the module is active (but only if the module is active) diff --git a/home/modules/emacs/options.nix b/home/modules/emacs/options.nix index f9baf506..4e72cf30 100644 --- a/home/modules/emacs/options.nix +++ b/home/modules/emacs/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Emacs module"; # TODO: Use an enum for this not individual options @@ -17,4 +16,4 @@ with mylib.modules; autoSync = mkBoolOpt false "Sync Doom Emacs on nixos-rebuild"; autoUpgrade = mkBoolOpt false "Upgrade Doom Emacs on nixos-rebuild"; }; -} \ No newline at end of file +} diff --git a/home/modules/email/default.nix b/home/modules/email/default.nix index e43aef59..f89f2909 100644 --- a/home/modules/email/default.nix +++ b/home/modules/email/default.nix @@ -14,7 +14,7 @@ with lib; with mylib.modules; let cfg = config.modules.email; in { - options.modules.email = import ./options.nix { inherit lib mylib; }; + options.modules.email = import ./options.nix {inherit lib mylib;}; # TODO: Add Maildir to nextcloud sync config = mkIf cfg.enable { diff --git a/home/modules/email/options.nix b/home/modules/email/options.nix index 9943d62e..a7bb0853 100644 --- a/home/modules/email/options.nix +++ b/home/modules/email/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Email"; autosync = mkEnableOpt "Automatically call \"notmuch new\" via systemd timer"; imapnotify = mkEnableOpt "Use imapnotify to sync and index mail automatically"; @@ -13,4 +12,4 @@ with mylib.modules; enable = mkEnableOpt "Kmail"; autostart = mkEnableOpt "Autostart Kmail"; }; -} \ No newline at end of file +} diff --git a/home/modules/firefox/default.nix b/home/modules/firefox/default.nix index 4dbfb37e..ab61fadf 100644 --- a/home/modules/firefox/default.nix +++ b/home/modules/firefox/default.nix @@ -12,7 +12,7 @@ with lib; with mylib.modules; let cfg = config.modules.firefox; in { - options.modules.firefox = import ./options.nix { inherit lib mylib; }; + options.modules.firefox = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { home.packages = with pkgs; diff --git a/home/modules/firefox/options.nix b/home/modules/firefox/options.nix index 1f7565af..a485c87e 100644 --- a/home/modules/firefox/options.nix +++ b/home/modules/firefox/options.nix @@ -1,14 +1,13 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Firefox"; wayland = mkBoolOpt false "Enable firefox wayland support"; vaapi = mkBoolOpt false "Enable firefox vaapi support"; disableTabBar = mkBoolOpt false "Disable the firefox tab bar (for TST)"; defaultBookmarks = mkBoolOpt false "Preset standard bookmarks and folders"; gnomeTheme = mkBoolOpt false "Use Firefox gnome theme (rafaelmardojai)"; -} \ No newline at end of file +} diff --git a/home/modules/fish/default.nix b/home/modules/fish/default.nix index 0905f3e5..6407dc87 100644 --- a/home/modules/fish/default.nix +++ b/home/modules/fish/default.nix @@ -10,7 +10,7 @@ with lib; with mylib.modules; let cfg = config.modules.fish; in { - options.modules.fish = import ./options.nix { inherit lib mylib; }; + options.modules.fish = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { programs.fish = { @@ -27,7 +27,7 @@ in { echo "nnn is already running" return end - + # The behaviour is set to cd on quit (nnn checks if NNN_TMPFILE is set) # If NNN_TMPFILE is set to a custom path, it must be exported for nnn to # see. To cd on quit only on ^G, remove the "-x" from both lines below, @@ -37,17 +37,17 @@ in { else set -x NNN_TMPFILE "$HOME/.config/nnn/.lastd" end - + # Unmask ^Q (, ^V etc.) (if required, see `stty -a`) to Quit nnn # stty start undef # stty stop undef # stty lwrap undef # stty lnext undef - + # The command function allows one to alias this function to `nnn` without # making an infinitely recursive alias command nnn $argv - + if test -e $NNN_TMPFILE source $NNN_TMPFILE rm $NNN_TMPFILE diff --git a/home/modules/fish/options.nix b/home/modules/fish/options.nix index 1be55290..440ea634 100644 --- a/home/modules/fish/options.nix +++ b/home/modules/fish/options.nix @@ -1,9 +1,8 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Fish"; -} \ No newline at end of file +} diff --git a/home/modules/flatpak/default.nix b/home/modules/flatpak/default.nix index d9fe2c73..16b8cca4 100644 --- a/home/modules/flatpak/default.nix +++ b/home/modules/flatpak/default.nix @@ -14,7 +14,7 @@ with mylib.modules; let cfg = config.modules.flatpak; in { - options.modules.flatpak = import ./options.nix { inherit lib mylib; }; + options.modules.flatpak = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { assertions = [ diff --git a/home/modules/flatpak/options.nix b/home/modules/flatpak/options.nix index 1b5ddca2..9149bb1c 100644 --- a/home/modules/flatpak/options.nix +++ b/home/modules/flatpak/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Flatpak module"; fontFix = mkBoolOpt true "Link fonts to ~/.local/share/fonts so flatpak apps can find them"; iconFix = mkBoolOpt true "Link icons to ~/.local/share/icons so flatpak apps can find them"; @@ -52,4 +51,4 @@ with mylib.modules; example = ["\${config.home.homeDirectory}/Documents:ro"]; description = "Additional global overrides"; }; -} \ No newline at end of file +} diff --git a/home/modules/gaming/default.nix b/home/modules/gaming/default.nix index aa092a6f..9792218f 100644 --- a/home/modules/gaming/default.nix +++ b/home/modules/gaming/default.nix @@ -19,7 +19,7 @@ in { # TODO: SteamTinkerLaunch option # TODO: Dolphin + SteamRomManager option - options.modules.gaming = import ./options.nix { inherit lib mylib; }; + options.modules.gaming = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { assertions = [ diff --git a/home/modules/gaming/options.nix b/home/modules/gaming/options.nix index d5f949e2..a70f1d36 100644 --- a/home/modules/gaming/options.nix +++ b/home/modules/gaming/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Gaming module"; # discordElectron.enable = mkEnableOpt "Discord (Electron) (nixpkgs)"; @@ -19,4 +18,4 @@ with mylib.modules; adwaita = mkBoolOpt false "Enable the adwaita-for-steam skin"; protonup = mkBoolOpt false "Enable ProtonUP-QT"; }; -} \ No newline at end of file +} diff --git a/home/modules/gnome/default.nix b/home/modules/gnome/default.nix index 567e2961..d75a11c4 100644 --- a/home/modules/gnome/default.nix +++ b/home/modules/gnome/default.nix @@ -10,7 +10,7 @@ with lib; with mylib.modules; let cfg = config.modules.gnome; in { - options.modules.gnome = import ./options.nix { inherit lib mylib; }; + options.modules.gnome = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { assertions = [ diff --git a/home/modules/gnome/options.nix b/home/modules/gnome/options.nix index 62669421..f15798b0 100644 --- a/home/modules/gnome/options.nix +++ b/home/modules/gnome/options.nix @@ -1,25 +1,24 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ - enable = mkEnableOpt "Gnome Desktop"; - # TODO: Add option for dash-to-dock - extensions = mkBoolOpt false "Enable Gnome shell-extensions"; +with mylib.modules; { + enable = mkEnableOpt "Gnome Desktop"; + # TODO: Add option for dash-to-dock + extensions = mkBoolOpt false "Enable Gnome shell-extensions"; - # TODO: Add other themes, whitesur for example - theme = { - papirusIcons = mkBoolOpt false "Enable the Papirus icon theme"; - numixCursor = mkBoolOpt false "Enable the Numix cursor theme"; - wallpaper = mkOption { - type = types.str; - default = "constructionsite"; - description = "What wallpaper to use"; - }; + # TODO: Add other themes, whitesur for example + theme = { + papirusIcons = mkBoolOpt false "Enable the Papirus icon theme"; + numixCursor = mkBoolOpt false "Enable the Numix cursor theme"; + wallpaper = mkOption { + type = types.str; + default = "constructionsite"; + description = "What wallpaper to use"; }; + }; - settings = { - }; -} \ No newline at end of file + settings = { + }; +} diff --git a/home/modules/hyprland/default.nix b/home/modules/hyprland/default.nix index b6ced42f..58374ce7 100644 --- a/home/modules/hyprland/default.nix +++ b/home/modules/hyprland/default.nix @@ -10,7 +10,7 @@ with lib; with mylib.modules; let cfg = config.modules.hyprland; in { - options.modules.hyprland = import ./options.nix { inherit lib mylib; }; + options.modules.hyprland = import ./options.nix {inherit lib mylib;}; config = let # Taken from https://github.com/Ruixi-rebirth/flakes/blob/main/modules/programs/wayland/waybar/workspace-patch.nix @@ -37,124 +37,126 @@ in { }; waybar-hyprland = pkgs.waybar.overrideAttrs (oldAttrs: { - mesonFlags = oldAttrs.mesonFlags ++ [ "-Dexperimental=true" ]; - patches = (oldAttrs.patches or [ ]) ++ [ workspaces-patch ]; + mesonFlags = oldAttrs.mesonFlags ++ ["-Dexperimental=true"]; + patches = (oldAttrs.patches or []) ++ [workspaces-patch]; }); - in mkIf cfg.enable { - assertions = [ - { - assertion = nixosConfig.programs.hyprland.enable; - message = "Can't enable Hyprland module with Hyprland disabled!"; - } - ]; + in + mkIf cfg.enable { + assertions = [ + { + assertion = nixosConfig.programs.hyprland.enable; + message = "Can't enable Hyprland module with Hyprland disabled!"; + } + ]; - gtk = { - enable = true; - iconTheme.package = pkgs.papirus-icon-theme; - iconTheme.name = "Papirus"; - }; + gtk = { + enable = true; + iconTheme.package = pkgs.papirus-icon-theme; + iconTheme.name = "Papirus"; + }; - home.pointerCursor = { - gtk.enable = true; - x11.enable = true; - package = pkgs.bibata-cursors; - name = "Bibata-Modern-Classic"; - size = 16; - }; + home.pointerCursor = { + gtk.enable = true; + x11.enable = true; + package = pkgs.bibata-cursors; + name = "Bibata-Modern-Classic"; + size = 16; + }; - home.sessionVariables = { - # QT_QPA_PLATFORMTHEME = "qt5ct"; - }; + home.sessionVariables = { + # QT_QPA_PLATFORMTHEME = "qt5ct"; + }; - # Polkit - home.file.".config/hypr/polkit.conf".text = ''exec-once = ${pkgs.libsForQt5.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1''; + # Polkit + home.file.".config/hypr/polkit.conf".text = ''exec-once = ${pkgs.libsForQt5.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1''; - home.file.".config/hypr/waybar-reload.conf".text = let - waybar-reload = pkgs.writeScript "waybar-reload" '' - #! ${pkgs.bash}/bin/bash + home.file.".config/hypr/waybar-reload.conf".text = let + waybar-reload = pkgs.writeScript "waybar-reload" '' + #! ${pkgs.bash}/bin/bash - trap "${pkgs.procps}/bin/pkill waybar" EXIT + trap "${pkgs.procps}/bin/pkill waybar" EXIT - while true; do - ${waybar-hyprland}/bin/waybar -c $HOME/NixFlake/config/waybar/config -s $HOME/NixFlake/config/waybar/style.css & - ${pkgs.inotifyTools}/bin/inotifywait -e create,modify $HOME/NixFlake/config/waybar/config $HOME/NixFlake/config/waybar/style.css - ${pkgs.procps}/bin/pkill waybar - done + while true; do + ${waybar-hyprland}/bin/waybar -c $HOME/NixFlake/config/waybar/config -s $HOME/NixFlake/config/waybar/style.css & + ${pkgs.inotifyTools}/bin/inotifywait -e create,modify $HOME/NixFlake/config/waybar/config $HOME/NixFlake/config/waybar/style.css + ${pkgs.procps}/bin/pkill waybar + done + ''; + in '' + exec-once = ${waybar-reload} ''; - in '' - exec-once = ${waybar-reload} - ''; - home.file.".config/hypr/hyprpaper.conf".text = '' - preload = ~/NixFlake/wallpapers/${cfg.theme}.png - wallpaper = HDMI-A-1, ~/NixFlake/wallpapers/${cfg.theme}.png - wallpaper = HDMI-A-2, ~/NixFlake/wallpapers/${cfg.theme}.png - ''; + home.file.".config/hypr/hyprpaper.conf".text = '' + preload = ~/NixFlake/wallpapers/${cfg.theme}.png + wallpaper = HDMI-A-1, ~/NixFlake/wallpapers/${cfg.theme}.png + wallpaper = HDMI-A-2, ~/NixFlake/wallpapers/${cfg.theme}.png + ''; - home.activation = { - # NOTE: Keep the hyprland/waybar config symlinked, to allow easy changes with hotreload - # TODO: Don't symlink at all, why not just tell Hyprland where the config is? Much easier - # TODO: Use this approach for every program that supports it, makes things much easier, - # as everything can just stay in ~/NixFlake/config - linkHyprlandConfig = hm.dag.entryAfter ["writeBoundary"] - (mkLink "~/NixFlake/config/hyprland/hyprland.conf" "~/.config/hypr/hyprland.conf"); + home.activation = { + # NOTE: Keep the hyprland/waybar config symlinked, to allow easy changes with hotreload + # TODO: Don't symlink at all, why not just tell Hyprland where the config is? Much easier + # TODO: Use this approach for every program that supports it, makes things much easier, + # as everything can just stay in ~/NixFlake/config + linkHyprlandConfig = + hm.dag.entryAfter ["writeBoundary"] + (mkLink "~/NixFlake/config/hyprland/hyprland.conf" "~/.config/hypr/hyprland.conf"); - # linkWaybarConfig = hm.dag.entryAfter ["writeBoundary"] - # (mkLink "~/NixFlake/config/waybar/config" "~/.config/waybar/config"); - # linkWaybarStyle = hm.dag.entryAfter ["writeBoundary"] - # (mkLink "~/NixFlake/config/waybar/style.css" "~/.config/waybar/style.css"); - # linkWaybarColors = hm.dag.entryAfter ["writeBoundary"] - # (mkLink "~/NixFlake/config/waybar/colors" "~/.config/waybar/colors"); - }; - - home.packages = with pkgs; [ - hyprpaper # Wallpaper setter - hyprpicker # Color picker - - wl-clipboard - clipman # Clipboard manager (wl-paste) - - imv # Image viewer - moc # Audio player - ncpamixer # ncurses pavucontrol - slurp # Region selector for screensharing - grim # Grab images from compositor - - xfce.thunar - xfce.tumbler # Thunar thumbnails - libsForQt5.polkit-kde-agent - ]; - - services = { - # Notification service - dunst = { - enable = true; - }; - }; - - programs = { - rofi = { - enable = true; - package = pkgs.rofi-wayland; - plugins = [ - pkgs.keepmenu # TODO: Rofi KeepassXC frontend - ]; - - # NOTE: Don't use this, use the configfile for hot-reload - # terminal = "${pkgs.kitty}/bin/kitty"; - # font = "JetBrains Mono 14"; - # theme = - # extraConfig = ''''; + # linkWaybarConfig = hm.dag.entryAfter ["writeBoundary"] + # (mkLink "~/NixFlake/config/waybar/config" "~/.config/waybar/config"); + # linkWaybarStyle = hm.dag.entryAfter ["writeBoundary"] + # (mkLink "~/NixFlake/config/waybar/style.css" "~/.config/waybar/style.css"); + # linkWaybarColors = hm.dag.entryAfter ["writeBoundary"] + # (mkLink "~/NixFlake/config/waybar/colors" "~/.config/waybar/colors"); }; - waybar = { - enable = true; - package = waybar-hyprland; + home.packages = with pkgs; [ + hyprpaper # Wallpaper setter + hyprpicker # Color picker - systemd = { - enable = false; # Gets started by hyprland + wl-clipboard + clipman # Clipboard manager (wl-paste) + + imv # Image viewer + moc # Audio player + ncpamixer # ncurses pavucontrol + slurp # Region selector for screensharing + grim # Grab images from compositor + + xfce.thunar + xfce.tumbler # Thunar thumbnails + libsForQt5.polkit-kde-agent + ]; + + services = { + # Notification service + dunst = { + enable = true; + }; + }; + + programs = { + rofi = { + enable = true; + package = pkgs.rofi-wayland; + plugins = [ + pkgs.keepmenu # TODO: Rofi KeepassXC frontend + ]; + + # NOTE: Don't use this, use the configfile for hot-reload + # terminal = "${pkgs.kitty}/bin/kitty"; + # font = "JetBrains Mono 14"; + # theme = + # extraConfig = ''''; + }; + + waybar = { + enable = true; + package = waybar-hyprland; + + systemd = { + enable = false; # Gets started by hyprland + }; }; }; }; - }; } diff --git a/home/modules/hyprland/options.nix b/home/modules/hyprland/options.nix index 4ef35c4d..ccef4192 100644 --- a/home/modules/hyprland/options.nix +++ b/home/modules/hyprland/options.nix @@ -1,14 +1,13 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Hyprland Window Manager + Compositor"; theme = mkOption { type = types.str; description = "Wallpaper and colorscheme to use"; - }; -} \ No newline at end of file + }; +} diff --git a/home/modules/kitty/default.nix b/home/modules/kitty/default.nix index c96007e0..cc7f928f 100644 --- a/home/modules/kitty/default.nix +++ b/home/modules/kitty/default.nix @@ -11,7 +11,7 @@ with mylib.modules; let cfg = config.modules.kitty; # cfgnv = config.modules.neovim; in { - options.modules.kitty = import ./options.nix { inherit lib mylib; }; + options.modules.kitty = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { programs.kitty = { diff --git a/home/modules/kitty/options.nix b/home/modules/kitty/options.nix index 823c41d6..60c60ef3 100644 --- a/home/modules/kitty/options.nix +++ b/home/modules/kitty/options.nix @@ -1,9 +1,8 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Kitty"; -} \ No newline at end of file +} diff --git a/home/modules/misc/default.nix b/home/modules/misc/default.nix index 28a80142..c22c0732 100644 --- a/home/modules/misc/default.nix +++ b/home/modules/misc/default.nix @@ -10,7 +10,7 @@ with lib; with mylib.modules; let cfg = config.modules.misc; in { - options.modules.misc = import ./options.nix { inherit lib mylib; }; + options.modules.misc = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { home.packages = with pkgs; diff --git a/home/modules/misc/options.nix b/home/modules/misc/options.nix index 31db80ab..fb2ef345 100644 --- a/home/modules/misc/options.nix +++ b/home/modules/misc/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Misc module"; keepass = { @@ -16,4 +15,4 @@ with mylib.modules; enable = mkEnableOpt "ProtonMail"; autostart = mkBoolOpt false "Autostart ProtonMail Bridge"; }; -} \ No newline at end of file +} diff --git a/home/modules/neovim/default.nix b/home/modules/neovim/default.nix index ef5f74bd..4eed1ba0 100644 --- a/home/modules/neovim/default.nix +++ b/home/modules/neovim/default.nix @@ -10,7 +10,7 @@ with lib; with mylib.modules; let cfg = config.modules.neovim; in { - options.modules.neovim = import ./options.nix { inherit lib mylib; }; + options.modules.neovim = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { # TODO: Configure by option diff --git a/home/modules/neovim/options.nix b/home/modules/neovim/options.nix index 6583f285..79e51714 100644 --- a/home/modules/neovim/options.nix +++ b/home/modules/neovim/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "NeoVim"; alias = mkBoolOpt false "Link nvim to vim/vi"; -} \ No newline at end of file +} diff --git a/home/modules/nextcloud/default.nix b/home/modules/nextcloud/default.nix index 9ce7f240..2e7bed95 100644 --- a/home/modules/nextcloud/default.nix +++ b/home/modules/nextcloud/default.nix @@ -13,7 +13,7 @@ with lib; with mylib.modules; let cfg = config.modules.nextcloud; in { - options.modules.nextcloud = import ./options.nix { inherit lib mylib; }; + options.modules.nextcloud = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { assertions = [ diff --git a/home/modules/nextcloud/options.nix b/home/modules/nextcloud/options.nix index 3b62bbc2..78aa06a5 100644 --- a/home/modules/nextcloud/options.nix +++ b/home/modules/nextcloud/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Nextcloud Client"; autostart = mkBoolOpt false "Autostart the Nextcloud client (systemd)"; -} \ No newline at end of file +} diff --git a/home/modules/plasma/default.nix b/home/modules/plasma/default.nix index 0b5df80d..b806fa45 100644 --- a/home/modules/plasma/default.nix +++ b/home/modules/plasma/default.nix @@ -11,7 +11,7 @@ with lib; with mylib.modules; let cfg = config.modules.plasma; in { - options.modules.plasma = import ./options.nix { inherit lib mylib; }; + options.modules.plasma = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { assertions = [ diff --git a/home/modules/plasma/options.nix b/home/modules/plasma/options.nix index 927b8d46..cd6c9cde 100644 --- a/home/modules/plasma/options.nix +++ b/home/modules/plasma/options.nix @@ -1,9 +1,8 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Plasma Desktop"; -} \ No newline at end of file +} diff --git a/home/modules/ranger/default.nix b/home/modules/ranger/default.nix index 5887a953..9d7a3f2f 100644 --- a/home/modules/ranger/default.nix +++ b/home/modules/ranger/default.nix @@ -10,7 +10,7 @@ with lib; with mylib.modules; let cfg = config.modules.ranger; in { - options.modules.ranger = import ./options.nix { inherit lib mylib; }; + options.modules.ranger = import ./options.nix {inherit lib mylib;}; config = mkIf cfg.enable { home.packages = with pkgs; diff --git a/home/modules/ranger/options.nix b/home/modules/ranger/options.nix index 8e54e6c7..ba07ea48 100644 --- a/home/modules/ranger/options.nix +++ b/home/modules/ranger/options.nix @@ -1,10 +1,9 @@ { lib, - mylib + mylib, }: with lib; -with mylib.modules; -{ +with mylib.modules; { enable = mkEnableOpt "Ranger"; preview = mkBoolOpt false "Enable Ranger image preview"; -} \ No newline at end of file +} diff --git a/system/default.nix b/system/default.nix index 2bf9b07c..cc90a9a3 100644 --- a/system/default.nix +++ b/system/default.nix @@ -116,7 +116,7 @@ # TODO: Networking system module # NOTE: The systemd networking options are not very flexible, so this will be a problem for the laptop. (=> Use IWD for WiFi) systemd = { - network = let + network = let eth-interface = "enp0s31f6"; wireless-interface = ""; in { @@ -154,7 +154,7 @@ # TODO: WiFi Hotspot? }; - services = let + services = let # TODO: IPv6 Configuration wgup = interface: privatekey: publickey: endpoint: '' #! ${pkgs.bash}/bin/bash @@ -180,8 +180,8 @@ # This namespace contains the WireGuard virtual network device, because this should be the only interface available for apps that should run through VPN netns-vpn = { description = "Network namespace for ProtonVPN using Wireguard"; - wantedBy = [ "default.target" ]; - before = [ "display-manager.service" "network.target" ]; + wantedBy = ["default.target"]; + before = ["display-manager.service" "network.target"]; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -201,8 +201,8 @@ # - The endpoints/public keys should be in a map? wg0-de-115 = { description = "Wireguard ProtonVPN Server DE-115"; - requires = [ "netns-vpn.service" ]; - after = [ "netns-vpn.service" ]; + requires = ["netns-vpn.service"]; + after = ["netns-vpn.service"]; serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -245,7 +245,7 @@ "podman0" "docker0" ]; - + allowedTCPPorts = [ 22 # SSH 80 # HTTP @@ -259,7 +259,7 @@ # 32400 # Plex ]; allowedTCPPortRanges = []; - + allowedUDPPorts = [ 9918 # Wireguard 18000 # Anno 1800 @@ -569,7 +569,7 @@ # enable = true; # openFirewall = true; # }; - + udev = { packages = with pkgs; [ usb-blaster-udev-rules # For Intel Quartus @@ -641,7 +641,7 @@ homeassistant = { image = "homeassistant/home-assistant"; autoStart = false; - + ports = [ "8123:8123" ]; diff --git a/system/nixinator/hardware-configuration.nix b/system/nixinator/hardware-configuration.nix index db0a907d..53cd01f2 100644 --- a/system/nixinator/hardware-configuration.nix +++ b/system/nixinator/hardware-configuration.nix @@ -22,7 +22,7 @@ # extraModprobeConfig = '' # options iwlwifi 11n_disable=1 wd_disable=0 # ''; - + # Specific to used kernel (currently linux_zen) extraModulePackages = with config.boot.kernelPackages; [ new-lg4ff # Logitech force feedback