diff options
Diffstat (limited to 'modules')
27 files changed, 444 insertions, 82 deletions
diff --git a/modules/hm/sils/default.nix b/modules/hm/sils/default.nix index 46e0794..675500f 100644 --- a/modules/hm/sils/default.nix +++ b/modules/hm/sils/default.nix @@ -7,16 +7,23 @@ ./fastfetch.nix ./firefox ./foot.nix + ./ghostty.nix ./git.nix ./hyfetch.nix ./hyprland.nix + ./iamb.nix ./jameica.nix ./kdeconnect.nix ./mail.nix ./nextcloud.nix + ./poweralertd ./sway.nix + ./swaync ./theming.nix + ./vscodium.nix + ./wofi ./yt-dlp.nix ./zathura.nix + ./zellij.nix ]; } diff --git a/modules/hm/sils/firefox/default.nix b/modules/hm/sils/firefox/default.nix index b877c34..7e40c9b 100644 --- a/modules/hm/sils/firefox/default.nix +++ b/modules/hm/sils/firefox/default.nix @@ -17,29 +17,31 @@ in { enable = lib.mkEnableOption "opinionated firefox configuration"; }; config = lib.mkIf cfg.enable { + stylix.targets.firefox.profileNames = ["default"]; programs.firefox = { enable = true; + configPath = "${config.xdg.configHome}/mozilla/firefox"; profiles = { "default" = { containers = { banking = { color = "green"; icon = "dollar"; - id = 0; + id = 1; }; codeberg = { color = "orange"; icon = "briefcase"; - id = 1; + id = 2; }; }; extraConfig = builtins.readFile "${user-js}/user.js"; - id = 0; + id = 1; isDefault = true; name = "default"; search = { - default = "DuckDuckGo"; - privateDefault = "DuckDuckGo"; + default = "ddg"; + privateDefault = "ddg"; force = true; }; }; diff --git a/modules/hm/sils/firefox/user-overrides.js b/modules/hm/sils/firefox/user-overrides.js index f5ff8d6..331a506 100755 --- a/modules/hm/sils/firefox/user-overrides.js +++ b/modules/hm/sils/firefox/user-overrides.js @@ -3,7 +3,7 @@ user_pref("_user.js.parrot", "overrides section syntax error"); //Fingerprinting resistance doesn't make sense in any browser other than Tor. //user_pref("privacy.window.maxInnerWidth", 1000); //user_pref("privacy.window.maxInnerHeight", 1900); -user_pref("privacy.resistFingerprinting", true); +user_pref("privacy.resistFingerprinting", false); user_pref("privacy.resistFingerprinting.letterboxing", false); /* override recipe: enable session restore ***/ @@ -17,6 +17,7 @@ user_pref("privacy.clearOnShutdown.formdata", false); // 2803 optional user_pref("privacy.cpd.history", false); // 2804 to match when you use Ctrl-Shift-Del // user_pref("privacy.cpd.cookies", false); // 2804 optional // user_pref("privacy.cpd.formdata", false); // 2804 optional +user_pref("privacy.clearOnShutdown_v2.browsingHistoryAndDownloads", false); // 2812 FF136+ user_pref("network.cookie.lifetimePolicy", 0); // I want to use Google Earth sometimes. user_pref("webgl.disabled", false); diff --git a/modules/hm/sils/ghostty.nix b/modules/hm/sils/ghostty.nix new file mode 100644 index 0000000..cd871bc --- /dev/null +++ b/modules/hm/sils/ghostty.nix @@ -0,0 +1,15 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.ghostty; +in { + options.sils.ghostty.enable = lib.mkEnableOption "the ghostty terminal emulator"; + config = lib.mkIf cfg.enable { + programs.ghostty = { + enable = true; + enableZshIntegration = true; + }; + }; +} diff --git a/modules/hm/sils/git.nix b/modules/hm/sils/git.nix index 84a7d32..a17adfe 100644 --- a/modules/hm/sils/git.nix +++ b/modules/hm/sils/git.nix @@ -8,13 +8,48 @@ in { options.sils.git.enable = lib.mkEnableOption "sils git config"; config = lib.mkIf cfg.enable { - programs.git = { - enable = true; - package = pkgs.gitFull; - userName = "Silas Schöffel"; - userEmail = "sils@sils.li"; + programs = { + git = { + enable = true; + package = pkgs.gitFull; + settings = { + aliases = { + recommit = "commit --file=.git/COMMIT_EDITMSG --edit"; + }; + user = { + name = "Silas Schöffel"; + email = "sils@sils.li"; + }; + signing = { + key = "467B7D129EA73AC9"; + signByDefault = false; + }; + core = { + autocrlf = "input"; + }; + safe = { + directory = "/etc/nixos"; + }; + push = { + autoSetupRemote = true; + }; + init = { + defaultBranch = "main"; + }; + commit = { + verbose = true; + }; + sendemail = { + smtpserver = "mail.foss-syndicate.org"; + smtpuser = "sils@sils.li"; + smtpencryption = "ssl"; + smtpserverport = "465"; + }; + }; + }; delta = { enable = true; + enableGitIntegration = true; options = { decorations = { commit-decoration-style = "bold purple box ul"; @@ -25,36 +60,6 @@ in { whitespace-error-style = "22 reverse"; }; }; - signing = { - key = "467B7D129EA73AC9"; - signByDefault = true; - }; - extraConfig = { - core = { - autocrlf = "input"; - }; - safe = { - directory = "/etc/nixos"; - }; - push = { - autoSetupRemote = true; - }; - init = { - defaultBranch = "main"; - }; - commit = { - verbose = true; - }; - sendemail = { - smtpserver = "mail.foss-syndicate.org"; - smtpuser = "sils@sils.li"; - smtpencryption = "ssl"; - smtpserverport = "465"; - }; - }; - aliases = { - recommit = "commit --file=.git/COMMIT_EDITMSG --edit"; - }; }; }; } diff --git a/modules/hm/sils/hyfetch.nix b/modules/hm/sils/hyfetch.nix index b40a37e..e664e0e 100644 --- a/modules/hm/sils/hyfetch.nix +++ b/modules/hm/sils/hyfetch.nix @@ -13,7 +13,7 @@ in { programs.hyfetch = { enable = true; settings = { - preset = "rainbow"; + preset = "nonbinary"; mode = "rgb"; light_dark = "dark"; lightness = 0.5; @@ -22,9 +22,9 @@ in { custom_colors = []; fore_back = null; }; - backend = "neofetch"; + backend = "fastfetch"; distro = null; - pride_month_shown = []; + pride_month_disable = true; }; }; }; diff --git a/modules/hm/sils/hyprland.nix b/modules/hm/sils/hyprland.nix index 39f0920..b21aef2 100644 --- a/modules/hm/sils/hyprland.nix +++ b/modules/hm/sils/hyprland.nix @@ -9,6 +9,14 @@ in { options.sils.hyprland.enable = lib.mkEnableOption "sils hyprland config"; config = lib.mkIf cfg.enable { + home.pointerCursor = { + enable = true; + name = "Adwaita"; + gtk.enable = true; + x11.enable = true; + size = 24; + package = pkgs.adwaita-icon-theme; + }; wayland.windowManager.hyprland = { enable = true; settings = { @@ -23,6 +31,10 @@ in { # Source a file (multi-file configs) # source = ~/.config/hypr/myColors.conf + ecosystem = { + no_update_news = true; + }; + # Some default env vars. env = "XCURSOR_SIZE,24"; @@ -46,9 +58,9 @@ in { general = { # See https://wiki.hyprland.org/Configuring/Variables/ for more - gaps_in = "1"; - gaps_out = "2"; - border_size = "1"; + gaps_in = "5"; + gaps_out = "10"; + border_size = "3"; #"col.active_border" = "rgba(000000cc)"; #"col.inactive_border" = "rgba(595959aa)"; @@ -58,24 +70,25 @@ in { decoration = { # See https://wiki.hyprland.org/Configuring/Variables/ for more - inactive_opacity = "1"; + inactive_opacity = "0.8"; active_opacity = "1"; - rounding = "1"; + rounding = "10"; blur = { - enabled = false; - #size = "3"; - #passes = "1"; - #new_optimizations = "on"; + enabled = true; + size = "3"; + passes = "1"; + new_optimizations = "on"; }; - # drop_shadow = "yes"; - # shadow_range = "4"; - # shadow_render_power = "3"; + #drop_shadow = "yes"; + + #shadow_range = "4"; + #shadow_render_power = "3"; #"col.shadow" = "rgba(1a1a1aee)"; }; animations = { - enabled = "no"; + enabled = "yes"; # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more @@ -102,10 +115,9 @@ in { # new_is_master = "true"; #}; - gestures = { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - workspace_swipe = "off"; - }; + gesture = [ + "3, horizontal, workspace" + ]; # Example windowrule v1 # windowrule = float, ^(kitty)$ @@ -118,12 +130,12 @@ in { # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more bind = [ - "$mainMod, T, exec, foot" + "$mainMod, T, exec, ghostty" "$mainMod, C, killactive, " "$mainMod, M, exit, " "$mainMod, E, exec, dolphin " "$mainMod, V, togglefloating, " - "$mainMod, R, exec, rofi -show drun" + "$mainMod, R, exec, wofi --show drun" "$mainMod, P, pseudo, " # dwindle "$mainMod, J, togglesplit, " # dwindle "$mainMod, L, exec, swaylock" # screenlock @@ -138,16 +150,16 @@ in { "$mainMod, down, movefocus, d" # Switch workspaces with mainMod + [0-9] - "$mainMod, 1, focusworkspaceoncurrentmonitor, 1" - "$mainMod, 2, focusworkspaceoncurrentmonitor, 2" - "$mainMod, 3, focusworkspaceoncurrentmonitor, 3" - "$mainMod, 4, focusworkspaceoncurrentmonitor, 4" - "$mainMod, 5, focusworkspaceoncurrentmonitor, 5" - "$mainMod, 6, focusworkspaceoncurrentmonitor, 6" - "$mainMod, 7, focusworkspaceoncurrentmonitor, 7" - "$mainMod, 8, focusworkspaceoncurrentmonitor, 8" - "$mainMod, 9, focusworkspaceoncurrentmonitor, 9" - "$mainMod, 0, focusworkspaceoncurrentmonitor, 10" + "$mainMod, 1, workspace, 1" + "$mainMod, 2, workspace, 2" + "$mainMod, 3, workspace, 3" + "$mainMod, 4, workspace, 4" + "$mainMod, 5, workspace, 5" + "$mainMod, 6, workspace, 6" + "$mainMod, 7, workspace, 7" + "$mainMod, 8, workspace, 8" + "$mainMod, 9, workspace, 9" + "$mainMod, 0, workspace, 10" # Move active window to a workspace with mainMod + SHIFT + [0-9] "$mainMod SHIFT, 1, movetoworkspace, 1" @@ -186,10 +198,10 @@ in { #exec-once=bash ~/.config/hypr/start.sh #exec-once=swww init & exec-once = [ + "${pkgs.hyprland}/bin/hyprctl ${config.home.pointerCursor.name} ${toString config.home.pointerCursor.size}" #"${pkgs.nwg-panel}/bin/nwg-panel" - #"nm-applet --indicator" + "${pkgs.networkmanagerapplet}/bin/nm-applet --indicator" #"${pkgs.waybar}/bin/waybar" - "${pkgs.mako}/bin/mako" "${pkgs.swaybg}/bin/swaybg -i ${self}/files/wallpaper.jpg" ]; }; diff --git a/modules/hm/sils/iamb.nix b/modules/hm/sils/iamb.nix new file mode 100644 index 0000000..2c6932a --- /dev/null +++ b/modules/hm/sils/iamb.nix @@ -0,0 +1,38 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.iamb; +in { + options = { + sils.iamb.enable = lib.mkEnableOption "iamb, a matrix tui client"; + }; + config = lib.mkIf cfg.enable { + programs.iamb = { + enable = true; + settings = { + profiles = { + ljs = { + user_id = "@sils:linksjugend-solid.de"; + url = "https://matrix.bak-it.de"; + }; + vhack = { + user_id = "@sils:vhack.eu"; + url = "https://matrix.vhack.eu"; + }; + }; + settings = { + notifications.enabled = true; + image_preview.protocol = { + type = "kitty"; + size = { + height = 10; + width = 66; + }; + }; + }; + }; + }; + }; +} diff --git a/modules/hm/sils/poweralertd/default.nix b/modules/hm/sils/poweralertd/default.nix new file mode 100644 index 0000000..15cfdc9 --- /dev/null +++ b/modules/hm/sils/poweralertd/default.nix @@ -0,0 +1,14 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.poweralertd; +in { + options.sils.poweralertd.enable = lib.mkEnableOption "poweralertd"; + config = lib.mkIf cfg.enable { + services.poweralertd = { + enable = true; + }; + }; +} diff --git a/modules/hm/sils/swaync/default.nix b/modules/hm/sils/swaync/default.nix new file mode 100644 index 0000000..328888b --- /dev/null +++ b/modules/hm/sils/swaync/default.nix @@ -0,0 +1,32 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.sils.swaync; +in { + options.sils.swaync.enable = lib.mkEnableOption "swaync"; + config = lib.mkIf cfg.enable { + services.swaync = { + enable = true; + settings = { + positionX = "right"; + positionY = "top"; + layer = "overlay"; + control-center-layer = "top"; + layer-shell = true; + cssPriority = "application"; + control-center-margin-top = 0; + control-center-margin-bottom = 0; + control-center-margin-right = 0; + control-center-margin-left = 0; + notification-2fa-action = true; + notification-inline-replies = false; + notification-icon-size = 64; + notification-body-image-height = 100; + notification-body-image-width = 200; + }; + }; + }; +} diff --git a/modules/hm/sils/theming.nix b/modules/hm/sils/theming.nix index 958560d..9b7535c 100644 --- a/modules/hm/sils/theming.nix +++ b/modules/hm/sils/theming.nix @@ -19,6 +19,14 @@ in { accent = "mauve"; }; }; + targets = { + waybar = { + enableCenterBackColors = false; + enableLeftBackColors = false; + enableRightBackColors = false; + font = "sansSerif"; + }; + }; }; }; } diff --git a/modules/hm/sils/vscodium.nix b/modules/hm/sils/vscodium.nix new file mode 100644 index 0000000..ea048ed --- /dev/null +++ b/modules/hm/sils/vscodium.nix @@ -0,0 +1,29 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.sils.vscodium; +in { + options.sils.vscodium.enable = lib.mkEnableOption "vscodium editor"; + config = lib.mkIf cfg.enable { + programs.vscode = { + enable = true; + package = pkgs.vscodium; + profiles.default.extensions = with pkgs.vscode-extensions; [ + vscodevim.vim + ms-python.python + ms-python.debugpy + ms-python.pylint + ms-python.flake8 + ms-python.mypy-type-checker + ms-python.black-formatter + + jnoortheen.nix-ide + oops418.nix-env-picker + mkhl.direnv + ]; + }; + }; +} diff --git a/modules/hm/sils/wofi/default.nix b/modules/hm/sils/wofi/default.nix new file mode 100644 index 0000000..36f5916 --- /dev/null +++ b/modules/hm/sils/wofi/default.nix @@ -0,0 +1,14 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.wofi; +in { + options.sils.wofi.enable = lib.mkEnableOption "wofi"; + config = lib.mkIf cfg.enable { + programs.wofi = { + enable = true; + }; + }; +} diff --git a/modules/hm/sils/zellij.nix b/modules/hm/sils/zellij.nix new file mode 100644 index 0000000..1038a0c --- /dev/null +++ b/modules/hm/sils/zellij.nix @@ -0,0 +1,14 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.zellij; +in { + options.sils.zellij.enable = lib.mkEnableOption "zellij"; + config = lib.mkIf cfg.enable { + programs.zellij = { + enable = true; + }; + }; +} diff --git a/modules/nixos/sils/basesystem.nix b/modules/nixos/sils/basesystem.nix index aee4a67..0e9f6de 100644 --- a/modules/nixos/sils/basesystem.nix +++ b/modules/nixos/sils/basesystem.nix @@ -14,7 +14,7 @@ in { boot = { initrd = { - systemd.enable = false; + systemd.enable = true; availableKernelModules = ["xhci_pci" "nvme" "rtsx_pci_sdmmc"]; kernelModules = []; }; diff --git a/modules/nixos/sils/default.nix b/modules/nixos/sils/default.nix index 01870c8..db27868 100644 --- a/modules/nixos/sils/default.nix +++ b/modules/nixos/sils/default.nix @@ -10,6 +10,7 @@ ./firejail.nix ./font.nix ./fprintd.nix + ./gnome.nix ./graphics.nix ./hyprland.nix ./impermanence.nix @@ -17,12 +18,16 @@ ./networking.nix ./nix.nix ./pamconfig.nix + ./plasma.nix ./plymouth.nix ./printing.nix ./roles.nix ./sound.nix + ./steam.nix ./sudo.nix ./sway.nix ./theming + ./tailscale.nix + ./tor.nix ]; } diff --git a/modules/nixos/sils/docker.nix b/modules/nixos/sils/docker.nix index dd62d8a..7d6f046 100644 --- a/modules/nixos/sils/docker.nix +++ b/modules/nixos/sils/docker.nix @@ -7,7 +7,10 @@ in { options.sils.docker.enable = lib.mkEnableOption "docker"; config = lib.mkIf cfg.enable { - virtualisation.docker.enable = true; + virtualisation.docker = { + enable = true; + storageDriver = "btrfs"; + }; users.users.sils.extraGroups = ["docker"]; environment.persistence."/srv".directories = [ { diff --git a/modules/nixos/sils/gnome.nix b/modules/nixos/sils/gnome.nix new file mode 100644 index 0000000..7b798d9 --- /dev/null +++ b/modules/nixos/sils/gnome.nix @@ -0,0 +1,19 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.gnome; +in { + options.sils.gnome.enable = lib.mkEnableOption "The Gnome DE"; + config = lib.mkIf cfg.enable { + services = { + xserver.enable = true; + displayManager.gdm.enable = true; + desktopManager.gnome.enable = true; + tlp.enable = lib.mkForce false; + greetd.enable = lib.mkForce false; + gnome.gnome-keyring.enable = lib.mkForce false; + }; + }; +} diff --git a/modules/nixos/sils/networking.nix b/modules/nixos/sils/networking.nix index fed09f7..9ec34ab 100644 --- a/modules/nixos/sils/networking.nix +++ b/modules/nixos/sils/networking.nix @@ -1,6 +1,6 @@ { config, - self, + pkgs, lib, ... }: let @@ -8,10 +8,21 @@ in { options.sils.networking.enable = lib.mkEnableOption "networking"; config = lib.mkIf cfg.enable { + services.resolved.enable = true; networking = { enableIPv6 = false; + useNetworkd = false; #useDHCP = true; - networkmanager.enable = true; + networkmanager = { + enable = true; + plugins = with pkgs; [ + networkmanager-openvpn + ]; + }; + nftables.enable = true; + firewall = { + enable = true; + }; #nameservers = ["2620:fe::fe" "2620:fe::9" "9.9.9.9" "149.112.112.112"]; #wireless = { # enable = false; # TODO: Reenable diff --git a/modules/nixos/sils/nix.nix b/modules/nixos/sils/nix.nix index c23fdce..9d73fcd 100644 --- a/modules/nixos/sils/nix.nix +++ b/modules/nixos/sils/nix.nix @@ -14,8 +14,8 @@ in { config = { nix = { registry = { - nixpkgs.flake = nixpkgs; - n.flake = nixpkgs; + nixpkgs.flake = self.inputs.nixpkgs; + n.flake = self.inputs.nixpkgs; self.flake = self; s.flake = self; }; diff --git a/modules/nixos/sils/plasma.nix b/modules/nixos/sils/plasma.nix new file mode 100644 index 0000000..f196447 --- /dev/null +++ b/modules/nixos/sils/plasma.nix @@ -0,0 +1,29 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.sils.plasma; +in { + options.sils.plasma.enable = lib.mkEnableOption "KDE Plasma"; + config = lib.mkIf cfg.enable { + services = { + greetd.enable = lib.mkForce false; + tlp.enable = lib.mkForce false; + displayManager.sddm = { + enable = true; + settings.General.DisplayServer = "wayland"; + wayland.enable = true; + }; + desktopManager.plasma6 = { + enable = true; + }; + }; + environment.plasma6.excludePackages = with pkgs.kdePackages; [ + kwallet + kwallet-pam + kwalletmanager + ]; + }; +} diff --git a/modules/nixos/sils/printing.nix b/modules/nixos/sils/printing.nix index 9247146..44b2a10 100644 --- a/modules/nixos/sils/printing.nix +++ b/modules/nixos/sils/printing.nix @@ -11,6 +11,7 @@ in { services = { printing = { enable = true; + cups-pdf.enable = true; startWhenNeeded = true; webInterface = true; stateless = true; diff --git a/modules/nixos/sils/roles.nix b/modules/nixos/sils/roles.nix index 346149c..186b090 100644 --- a/modules/nixos/sils/roles.nix +++ b/modules/nixos/sils/roles.nix @@ -13,6 +13,7 @@ in { bluetooth.enable = lib.mkDefault true; bootloader = lib.mkDefault "lanzaboote"; disks.enable = lib.mkDefault true; + gnome.enable = lib.mkDefault true; graphics.enable = lib.mkDefault true; environment.enable = lib.mkDefault true; firejail.enable = false; @@ -22,11 +23,18 @@ in { networking.enable = lib.mkDefault true; nix-config.enable = lib.mkDefault true; pamconfig.enable = lib.mkDefault true; + plasma.enable = lib.mkDefault false; plymouth.enable = lib.mkDefault true; printing.enable = lib.mkDefault true; sound.enable = lib.mkDefault true; + steam.enable = lib.mkDefault true; sway.enable = lib.mkDefault false; theming.enable = lib.mkDefault true; + tailscale = { + enable = lib.mkDefault true; + role = "client"; + }; + tor.enable = lib.mkDefault true; } else if roleCmp "laptop-light" then { diff --git a/modules/nixos/sils/steam.nix b/modules/nixos/sils/steam.nix new file mode 100644 index 0000000..3c834a6 --- /dev/null +++ b/modules/nixos/sils/steam.nix @@ -0,0 +1,19 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.steam; +in { + options.sils.steam.enable = lib.mkEnableOption "Steam"; + config = lib.mkIf cfg.enable { + nixpkgs.config.allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) [ + "steam" + "steam-unwrapped" + ]; + programs.steam = { + enable = true; + }; + }; +} diff --git a/modules/nixos/sils/tailscale.nix b/modules/nixos/sils/tailscale.nix new file mode 100644 index 0000000..e1f49a4 --- /dev/null +++ b/modules/nixos/sils/tailscale.nix @@ -0,0 +1,52 @@ +{ + config, + lib, + ... +}: let + cfg = config.sils.tailscale; +in { + options.sils.tailscale = { + enable = lib.mkEnableOption "Tailscale"; + openFirewall = true; + role = lib.mkOption { + type = lib.types.enum [ + "client" + "server" + ]; + }; + }; + config = lib.mkIf cfg.enable { + services.tailscale = { + enable = true; + authKeyFile = config.age.secrets.tailscale.path; + useRoutingFeatures = cfg.role; + extraDaemonFlags = [ + "--no-logs-no-support" + ]; + extraSetFlags = [ + "--accept-routes" + ]; + }; + networking.firewall = { + trustedInterfaces = ["tailscale0"]; + allowedUDPPorts = [config.services.tailscale.port]; + checkReversePath = "loose"; + }; + systemd = { + services.tailscaled.serviceConfig.Environment = [ + "TS_DEBUG_FIREWALL_MODE=nftables" + ]; + network.wait-online.enable = false; + }; + boot.initrd.systemd.network.wait-online.enable = false; + + environment.persistence."/srv".directories = [ + { + directory = "/var/lib/tailscale"; + user = "root"; + group = "root"; + mode = "0700"; + } + ]; + }; +} diff --git a/modules/nixos/sils/theming/default.nix b/modules/nixos/sils/theming/default.nix index e8cf7bf..2d5d2fd 100644 --- a/modules/nixos/sils/theming/default.nix +++ b/modules/nixos/sils/theming/default.nix @@ -1,6 +1,7 @@ { config, lib, + pkgs, ... }: let cfg = config.sils.theming; @@ -9,7 +10,7 @@ in { config = lib.mkIf cfg.enable { stylix = { enable = true; - base16Scheme = ./tokyo-night-dark.yaml; + base16Scheme = "${pkgs.base16-schemes}/share/themes/ayu-dark.yaml"; image = ../../../../files/wallpaper.jpg; polarity = "dark"; }; diff --git a/modules/nixos/sils/tor.nix b/modules/nixos/sils/tor.nix new file mode 100644 index 0000000..01fdc1f --- /dev/null +++ b/modules/nixos/sils/tor.nix @@ -0,0 +1,23 @@ +{ + config, + pkgs, + lib, + ... +}: let + cfg = config.sils.tor; +in { + options.sils.tor.enable = lib.mkEnableOption "tor"; + config = lib.mkIf cfg.enable { + services = { + tor = { + enable = true; + torsocks.enable = true; + client.enable = true; + }; + snowflake-proxy = { + enable = true; + capacity = 5; + }; + }; + }; +} |
