From 7dd785b1005aec643004c06eaa7af690b00cb48f Mon Sep 17 00:00:00 2001 From: seraphim <18ycm9tx@anonaddy.me> Date: Sun, 16 Aug 2026 21:55:33 +0700 Subject: . --- nixos/modules/features/appimage/default.nix | 15 -------- nixos/modules/features/audio-tools/default.nix | 13 ------- nixos/modules/features/binary-compat/default.nix | 23 ------------ nixos/modules/features/browsers/default.nix | 10 ----- nixos/modules/features/cli-tools/default.nix | 26 ------------- nixos/modules/features/desktop-apps/default.nix | 6 --- nixos/modules/features/dev-tools/default.nix | 26 ------------- nixos/modules/features/editors/default.nix | 12 ------ nixos/modules/features/file-managers/default.nix | 21 ----------- nixos/modules/features/fonts/default.nix | 20 ---------- nixos/modules/features/gaming/default.nix | 15 -------- nixos/modules/features/gst-codecs/default.nix | 12 ------ nixos/modules/features/language-tools/default.nix | 7 ---- nixos/modules/features/media-tools/default.nix | 7 ---- nixos/modules/features/messaging/default.nix | 9 ----- nixos/modules/features/monitoring/default.nix | 12 ------ nixos/modules/features/mouse/default.nix | 10 ----- nixos/modules/features/mpd/default.nix | 43 ---------------------- nixos/modules/features/niri/default.nix | 19 ---------- .../modules/features/noctalia-greeter/default.nix | 20 ---------- nixos/modules/features/noctalia-shell/default.nix | 12 ------ nixos/modules/features/nvidia/default.nix | 24 ------------ nixos/modules/features/p2p/default.nix | 7 ---- nixos/modules/features/productivity/default.nix | 11 ------ nixos/modules/features/security/default.nix | 8 ---- nixos/modules/features/swingmusic/default.nix | 21 ----------- nixos/modules/features/terminals/default.nix | 10 ----- nixos/modules/features/vpn-utils/default.nix | 33 ----------------- nixos/modules/features/wayland-tools/default.nix | 14 ------- nixos/modules/features/wireshark/default.nix | 14 ------- 30 files changed, 480 deletions(-) delete mode 100644 nixos/modules/features/appimage/default.nix delete mode 100644 nixos/modules/features/audio-tools/default.nix delete mode 100644 nixos/modules/features/binary-compat/default.nix delete mode 100644 nixos/modules/features/browsers/default.nix delete mode 100644 nixos/modules/features/cli-tools/default.nix delete mode 100644 nixos/modules/features/desktop-apps/default.nix delete mode 100644 nixos/modules/features/dev-tools/default.nix delete mode 100644 nixos/modules/features/editors/default.nix delete mode 100644 nixos/modules/features/file-managers/default.nix delete mode 100644 nixos/modules/features/fonts/default.nix delete mode 100644 nixos/modules/features/gaming/default.nix delete mode 100644 nixos/modules/features/gst-codecs/default.nix delete mode 100644 nixos/modules/features/language-tools/default.nix delete mode 100644 nixos/modules/features/media-tools/default.nix delete mode 100644 nixos/modules/features/messaging/default.nix delete mode 100644 nixos/modules/features/monitoring/default.nix delete mode 100644 nixos/modules/features/mouse/default.nix delete mode 100644 nixos/modules/features/mpd/default.nix delete mode 100644 nixos/modules/features/niri/default.nix delete mode 100644 nixos/modules/features/noctalia-greeter/default.nix delete mode 100644 nixos/modules/features/noctalia-shell/default.nix delete mode 100644 nixos/modules/features/nvidia/default.nix delete mode 100644 nixos/modules/features/p2p/default.nix delete mode 100644 nixos/modules/features/productivity/default.nix delete mode 100644 nixos/modules/features/security/default.nix delete mode 100644 nixos/modules/features/swingmusic/default.nix delete mode 100644 nixos/modules/features/terminals/default.nix delete mode 100644 nixos/modules/features/vpn-utils/default.nix delete mode 100644 nixos/modules/features/wayland-tools/default.nix delete mode 100644 nixos/modules/features/wireshark/default.nix (limited to 'nixos/modules/features') diff --git a/nixos/modules/features/appimage/default.nix b/nixos/modules/features/appimage/default.nix deleted file mode 100644 index e16189b..0000000 --- a/nixos/modules/features/appimage/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ pkgs, ... }: - -{ - # AppImage support: binfmt registers the interpreter so you can run - # AppImages directly. The override pulls in WebKit for GUI AppImages. - programs.appimage = { - enable = true; - binfmt = true; - package = pkgs.appimage-run.override { - extraPkgs = pkgs: [ - pkgs.webkitgtk_4_1 - ]; - }; - }; -} \ No newline at end of file diff --git a/nixos/modules/features/audio-tools/default.nix b/nixos/modules/features/audio-tools/default.nix deleted file mode 100644 index fa550d8..0000000 --- a/nixos/modules/features/audio-tools/default.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ pkgs, ... }: - -{ - # User-facing audio/media clients (the MPD *server* lives in the `mpd` module) - environment.systemPackages = with pkgs; [ - mpc - mpd - mpd-mpris - mpv - rmpc - pavucontrol - ]; -} \ No newline at end of file diff --git a/nixos/modules/features/binary-compat/default.nix b/nixos/modules/features/binary-compat/default.nix deleted file mode 100644 index 56212e1..0000000 --- a/nixos/modules/features/binary-compat/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ pkgs, ... }: - -{ - # Runtime libraries so non-Nix binaries (AppImages, dynamically linked - # programs loaded via envfs/nix-ld) can resolve their shared-object deps. - environment.systemPackages = with pkgs; [ - cacert - libGL - nss - cups - libdrm - glib - pango - gtk3 - zlib - expat - alsa-lib - libxkbcommon - atk - pkg-config - cmake - ]; -} diff --git a/nixos/modules/features/browsers/default.nix b/nixos/modules/features/browsers/default.nix deleted file mode 100644 index 620734c..0000000 --- a/nixos/modules/features/browsers/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ pkgs, inputs, ... }: - -{ - environment.systemPackages = with pkgs; [ - inputs.helium-browser.packages.${pkgs.stdenv.hostPlatform.system}.helium - chromium - tor-browser - mullvad-browser - ]; -} diff --git a/nixos/modules/features/cli-tools/default.nix b/nixos/modules/features/cli-tools/default.nix deleted file mode 100644 index 55237c4..0000000 --- a/nixos/modules/features/cli-tools/default.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - tree - pkgs.libsixel - fd - fzf - eza - stow - util-linux - nftables - pkgs.rsync - cryptsetup - yt-dlp - caligula - fetch - smartmontools - secretspec - claude-code - opencode - ]; - - # Cross-shell prompt; its config lives in the dotfiles repo, not NixOS. - programs.starship.enable = true; -} diff --git a/nixos/modules/features/desktop-apps/default.nix b/nixos/modules/features/desktop-apps/default.nix deleted file mode 100644 index b74384f..0000000 --- a/nixos/modules/features/desktop-apps/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ pkgs, inputs, ... }: - -{ - environment.systemPackages = with pkgs; [ - ]; -} diff --git a/nixos/modules/features/dev-tools/default.nix b/nixos/modules/features/dev-tools/default.nix deleted file mode 100644 index 7613495..0000000 --- a/nixos/modules/features/dev-tools/default.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ pkgs, ... }: - -{ - # Compilers, language tooling, and IDEs for development - environment.systemPackages = with pkgs; [ - black - cargo - clang - clippy - gcc - git - gnumake - nodejs - pyright - (python3.withPackages (ps: with ps; [ pip ])) - rust-analyzer - rustc - lua5_4 - tree-sitter - jetbrains.rust-rover - jetbrains.pycharm - ]; - environment.sessionVariables = { - RUST_SRC_PATH = "${pkgs.rustPlatform.rustLibSrc}"; - }; -} diff --git a/nixos/modules/features/editors/default.nix b/nixos/modules/features/editors/default.nix deleted file mode 100644 index 5cec5da..0000000 --- a/nixos/modules/features/editors/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs, ... }: - -{ - # Text editors / IDEs - environment.systemPackages = with pkgs; [ - micro - neovim - (emacs.override { withNativeCompilation = true; }) - # IME input method integration for the Vim/Neovim ecosystem. - pkgs.vimPlugins.im-select-nvim - ]; -} diff --git a/nixos/modules/features/file-managers/default.nix b/nixos/modules/features/file-managers/default.nix deleted file mode 100644 index f3ad4b3..0000000 --- a/nixos/modules/features/file-managers/default.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - file-roller - kdePackages.ark - kdePackages.qt6ct - loupe - nautilus - sushi - yazi - # Drag & drop file transfer (yazi plugin + standalone helpers) - yaziPlugins.drag - ripdrag - dragon-drop - ]; - - # yazi (terminal file manager) and its drag-and-drop helpers; the module - # also registers yazi's shell integration. - programs.yazi.enable = true; -} \ No newline at end of file diff --git a/nixos/modules/features/fonts/default.nix b/nixos/modules/features/fonts/default.nix deleted file mode 100644 index c49876c..0000000 --- a/nixos/modules/features/fonts/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ pkgs, ... }: - -{ - # Fonts: installed under fonts.packages (NOT environment.systemPackages) so - # they land in the fontconfig cache instead of just the PATH. - fonts.fontconfig.enable = true; - - fonts.packages = with pkgs; [ - font-awesome - nerd-fonts.jetbrains-mono - nerd-fonts.symbols-only - jetbrains-mono - noto-fonts-color-emoji - adwaita-fonts - cozette - roboto - nerd-fonts.open-dyslexic - open-dyslexic - ]; -} diff --git a/nixos/modules/features/gaming/default.nix b/nixos/modules/features/gaming/default.nix deleted file mode 100644 index fe3938a..0000000 --- a/nixos/modules/features/gaming/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ pkgs, ... }: - -{ - programs.steam = { - enable = true; - remotePlay.openFirewall = true; - dedicatedServer.openFirewall = true; - }; - - environment.systemPackages = with pkgs; [ - pkgs.lutris - pkgs.prismlauncher - pkgs.bottles - ]; -} diff --git a/nixos/modules/features/gst-codecs/default.nix b/nixos/modules/features/gst-codecs/default.nix deleted file mode 100644 index c3decb8..0000000 --- a/nixos/modules/features/gst-codecs/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs, ... }: - -{ - # GStreamer plugin set so apps (e.g. mpv, totem, browsers) can decode media. - # Installed system-wide so anything linking GStreamer picks them up. - environment.systemPackages = with pkgs; [ - gst_all_1.gst-plugins-bad - gst_all_1.gst-plugins-base - gst_all_1.gst-plugins-good - gst_all_1.gst-plugins-ugly - ]; -} diff --git a/nixos/modules/features/language-tools/default.nix b/nixos/modules/features/language-tools/default.nix deleted file mode 100644 index 338d26b..0000000 --- a/nixos/modules/features/language-tools/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - hunspellDicts.ru_RU - ]; -} diff --git a/nixos/modules/features/media-tools/default.nix b/nixos/modules/features/media-tools/default.nix deleted file mode 100644 index 00a16da..0000000 --- a/nixos/modules/features/media-tools/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - obs-studio - ]; -} diff --git a/nixos/modules/features/messaging/default.nix b/nixos/modules/features/messaging/default.nix deleted file mode 100644 index 55354c2..0000000 --- a/nixos/modules/features/messaging/default.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - pkgs.ayugram-desktop - pkgs.legcord - pkgs.vesktop - ]; -} diff --git a/nixos/modules/features/monitoring/default.nix b/nixos/modules/features/monitoring/default.nix deleted file mode 100644 index 942e95e..0000000 --- a/nixos/modules/features/monitoring/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - # System monitors / fetch tools - (btop.override { cudaSupport = true; }) - duf - fastfetch - ghfetch - hyfetch - ]; -} \ No newline at end of file diff --git a/nixos/modules/features/mouse/default.nix b/nixos/modules/features/mouse/default.nix deleted file mode 100644 index c984fbb..0000000 --- a/nixos/modules/features/mouse/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ config, pkgs, ... }: - -{ - # Input remapping service (mouse buttons/keys) + its configuration GUI. - services.input-remapper.enable = true; - environment.systemPackages = with pkgs; [ - piper - input-remapper - ]; -} diff --git a/nixos/modules/features/mpd/default.nix b/nixos/modules/features/mpd/default.nix deleted file mode 100644 index a339622..0000000 --- a/nixos/modules/features/mpd/default.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ pkgs, ... }: - -{ - # MPD server (music player daemon). The audio_output points at PipeWire - # through its PulseAudio compatibility layer, since desktop audio is handled - # by modules/system/audio. - services.mpd = { - enable = true; - user = "seraphim"; - openFirewall = false; - settings = { - music_directory = "/mnt/giga/music"; - bind_to_address = "any"; - port = 6600; - auto_update = "yes"; - audio_output = [ - { - type = "pulse"; - name = "PipeWire Output"; - mixer_type = "hardware"; - } - ]; - }; - }; - - # MPD runs as a system service, so it needs the per-user runtime dir to - # reach the PipeWire socket. - systemd.services.mpd.environment = { - XDG_RUNTIME_DIR = "/run/user/1000"; - }; - - # mpd-mpris bridges MPD to the MPRIS media control interface (used by - # Waybar/media keys). Lives here because it only matters when MPD is on. - systemd.user.services.mpd-mpris = { - description = "MPD MPRIS Service for Waybar"; - wantedBy = [ "default.target" ]; - after = [ "graphical-session.target" ]; - serviceConfig = { - ExecStart = "${pkgs.mpd-mpris}/bin/mpd-mpris -network tcp -host 127.0.0.1 -port 6600"; - Restart = "on-failure"; - }; - }; -} \ No newline at end of file diff --git a/nixos/modules/features/niri/default.nix b/nixos/modules/features/niri/default.nix deleted file mode 100644 index 8c1a651..0000000 --- a/nixos/modules/features/niri/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ pkgs, ... }: - -{ - # niri: scrollable-tiling Wayland compositor. - # enableDefaultPath = false stops the bundled unit pre-setting PATH, so the - # session uses the environment NixOS generates. - programs.niri.enable = true; - systemd.user.services.niri.enableDefaultPath = false; - - # Icon themes + cursors the compositor and its launchers rely on. - environment.systemPackages = with pkgs; [ - adwaita-icon-theme - bibata-cursors - - hicolor-icon-theme - # Shows polkit authentication dialogs as a layer-shell popup. - hyprpolkitagent - ]; -} diff --git a/nixos/modules/features/noctalia-greeter/default.nix b/nixos/modules/features/noctalia-greeter/default.nix deleted file mode 100644 index c65f806..0000000 --- a/nixos/modules/features/noctalia-greeter/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ pkgs, inputs, ... }: - -{ - # Noctalia greeter (display manager login screen). - # The module comes from the flake input rather than nixpkgs. - imports = [ - inputs.noctalia-greeter.nixosModules.default - ]; - - programs.noctalia-greeter = { - enable = true; - settings = { - cursor = { - theme = "Bibata-Modern-Ice"; - size = 24; - path = "${pkgs.bibata-cursors}/share/icons"; - }; - }; - }; -} \ No newline at end of file diff --git a/nixos/modules/features/noctalia-shell/default.nix b/nixos/modules/features/noctalia-shell/default.nix deleted file mode 100644 index c9bc20c..0000000 --- a/nixos/modules/features/noctalia-shell/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs, inputs, ... }: - -{ - # Noctalia shell (the desktop shell this configuration is named after). - # Two copies are installed: - # - inputs.noctalia: the project built straight from the flake input. - # - noctalia-shell: the packaged copy shipped in nixpkgs. - environment.systemPackages = with pkgs; [ - inputs.noctalia.packages.${stdenv.hostPlatform.system}.default - noctalia-shell - ]; -} diff --git a/nixos/modules/features/nvidia/default.nix b/nixos/modules/features/nvidia/default.nix deleted file mode 100644 index f5f4d8f..0000000 --- a/nixos/modules/features/nvidia/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ config, pkgs, ... }: - -{ - # NVIDIA GPU driver. `open = false` uses the proprietary blob; modesetting - # enables modeset + nvidia-drm for proper Wayland support. - hardware.nvidia = { - modesetting.enable = true; - powerManagement.enable = false; - open = false; - nvidiaSettings = true; - package = config.boot.kernelPackages.nvidiaPackages.latest; - }; - - environment.systemPackages = with pkgs; [ - # VA-API translation layer so NVIDIA can accelerate video decode. - nvidia-vaapi-driver - ]; - - environment.sessionVariables = { - LIBVA_DRIVER_NAME = "nvidia"; - __GLX_VENDOR_LIBRARY_NAME = "nvidia"; - NIXOS_OZONE_WL = "1"; - }; -} \ No newline at end of file diff --git a/nixos/modules/features/p2p/default.nix b/nixos/modules/features/p2p/default.nix deleted file mode 100644 index af05afe..0000000 --- a/nixos/modules/features/p2p/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - pkgs.qbittorrent - ]; -} diff --git a/nixos/modules/features/productivity/default.nix b/nixos/modules/features/productivity/default.nix deleted file mode 100644 index 2b14ff6..0000000 --- a/nixos/modules/features/productivity/default.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - libreoffice - obsidian - anytype - evince - pkgs.masterpdfeditor - ]; -} diff --git a/nixos/modules/features/security/default.nix b/nixos/modules/features/security/default.nix deleted file mode 100644 index 935ef22..0000000 --- a/nixos/modules/features/security/default.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - environment.systemPackages = with pkgs; [ - keepassxc - cryptomator - ]; -} diff --git a/nixos/modules/features/swingmusic/default.nix b/nixos/modules/features/swingmusic/default.nix deleted file mode 100644 index 389e3c8..0000000 --- a/nixos/modules/features/swingmusic/default.nix +++ /dev/null @@ -1,21 +0,0 @@ -#{ ... }: - -{ - # Swing Music: self-hosted local music server. Built separately and placed - # in the user's home; this unit just turns it into a managed session service. -# systemd.user.services.swingmusic = { -# description = "Swing Music Local Server"; -# wantedBy = [ "graphical-session.target" ]; -# after = [ "graphical-session.target" ]; -# serviceConfig = { -# ExecStart = "/home/seraphim/.swingmusic/swingmusic"; -# Restart = "on-failure"; -# WorkingDirectory = "/home/seraphim"; -# NoNewPrivileges = true; -# PrivateTmp = true; -# ProtectSystem = "strict"; -# ProtectHome = "false"; -# RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; -# }; -# }; -#} diff --git a/nixos/modules/features/terminals/default.nix b/nixos/modules/features/terminals/default.nix deleted file mode 100644 index ec7ead3..0000000 --- a/nixos/modules/features/terminals/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ pkgs, ... }: - -{ - programs.foot.settings.main.shell = "tmux"; - environment.systemPackages = with pkgs; [ - foot - ghostty - tmux - ]; -} diff --git a/nixos/modules/features/vpn-utils/default.nix b/nixos/modules/features/vpn-utils/default.nix deleted file mode 100644 index ed5bb8d..0000000 --- a/nixos/modules/features/vpn-utils/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ pkgs, ... }: - -{ - programs.throne = { - enable = true; - tunMode.enable = true; - }; - - programs.amnezia-vpn.enable = true; - - environment.systemPackages = with pkgs; [ - wireguard-tools - amneziawg-tools - amneziawg-go - ]; - - # Throne's sing-box core resolves its underlying DNS by running - # `resolvectl -i dns` and fails to parse the empty - # per-link output (enp42s0 has no per-link DNS; ours is global Mullvad - # in services.resolved). Push the same Mullvad servers per-link so the - # resolvectl parse succeeds and proxy hostnames can be looked up. - networking.networkmanager.dispatcherScripts = [ - { - type = "basic"; - source = pkgs.writeText "link-dns.sh" '' - #!/bin/sh - if [ "$1" = "enp42s0" ] && { [ "$2" = "up" ] || [ "$2" = "dhcp4-change" ]; }; then - ${pkgs.systemd}/bin/resolvectl dns enp42s0 194.242.2.2 194.242.2.4 || true - fi - ''; - } - ]; -} diff --git a/nixos/modules/features/wayland-tools/default.nix b/nixos/modules/features/wayland-tools/default.nix deleted file mode 100644 index 399fcb0..0000000 --- a/nixos/modules/features/wayland-tools/default.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ pkgs, ... }: - -{ - # Wayland clipboard, screenshot, launcher and input tooling - environment.systemPackages = with pkgs; [ - cliphist - fuzzel - grim - slurp - wl-clipboard - wtype - xwayland-satellite - ]; -} diff --git a/nixos/modules/features/wireshark/default.nix b/nixos/modules/features/wireshark/default.nix deleted file mode 100644 index afebd39..0000000 --- a/nixos/modules/features/wireshark/default.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ pkgs, ... }: - -{ - # Wireshark: packet capture/analysis. The `wireshark` group grants non-root - # capture permissions to the user (programs.wireshark sets up dumpcap). - programs.wireshark = { - enable = true; - package = pkgs.wireshark; - }; - - users.users.seraphim = { - extraGroups = [ "wireshark" ]; - }; -} \ No newline at end of file -- cgit v1.2.3