My personal nix config files. Feel free to import flake.

add pkgs from bubblegum

Changed files
+116 -36
hosts
modules
home-manager
nixos
by-category
+9 -1
hosts/bubblegum.nix
··· 31 31 # Needed for desktop environments to detect display orientation 32 32 hardware.sensor.iio.enable = lib.mkDefault true; 33 33 34 - environment.systemPackages = [ pkgs.framework-tool ]; 34 + environment.systemPackages = [ 35 + pkgs.framework-tool 36 + pkgs.btop-cuda 37 + ]; 35 38 # / From 36 39 boot = { 37 40 loader = { ··· 73 76 ]; 74 77 home-manager.users.teq.teq.home-manager.gui = true; 75 78 hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; 79 + hardware.graphics.extraPackages = with pkgs; [ 80 + vpl-gpu-rt 81 + vaapiIntel 82 + intel-media-driver 83 + ]; 76 84 teq.nixos = { 77 85 gui.enable = true; 78 86 gui.amd = false;
+22 -4
modules/home-manager/by-category/gui/applications.nix
··· 3 3 lib, 4 4 config, 5 5 ... 6 - }: { 6 + }: 7 + { 7 8 config = lib.mkIf config.teq.home-manager.gui { 8 9 home.packages = with pkgs; [ 9 10 bibata-cursors # 160MB ··· 23 24 kdePackages.wayland-protocols 24 25 # kde: 25 26 kdePackages.filelight # Disk usage analyzer 27 + moonlight-qt 28 + prismlauncher 29 + qalculate-qt 30 + kdePackages.kalk 31 + krita 32 + haruna 33 + digikam 34 + kdePackages.yakuake 35 + kdePackages.kcharselect 26 36 ]; 27 37 services = { 28 38 ### kde: ··· 34 44 settings = { 35 45 nocjk = true; 36 46 loglevel = 5; 37 - topdirs = ["~/_/Downloads" "~/_/Documents" "~/_/Repos"]; 47 + topdirs = [ 48 + "~/_/Downloads" 49 + "~/_/Documents" 50 + # "~/_/Repos" 51 + ]; 38 52 39 53 "~/_/Downloads" = { 40 - "skippedNames+" = ["*.iso"]; 54 + "skippedNames+" = [ "*.iso" ]; 41 55 }; 42 56 43 57 "~/_/Repos" = { 44 - "skippedNames+" = ["node_modules" "target" "result"]; 58 + "skippedNames+" = [ 59 + "node_modules" 60 + "target" 61 + "result" 62 + ]; 45 63 }; 46 64 }; 47 65 };
+28 -20
modules/home-manager/by-category/gui/browsers.nix
··· 3 3 lib, 4 4 config, 5 5 ... 6 - }: { 6 + }: 7 + { 7 8 config = lib.mkIf config.teq.home-manager.gui { 8 9 programs = { 9 10 chromium = { 10 11 enable = true; # 2GB / 600 MB 11 12 package = pkgs.brave; 12 - dictionaries = [pkgs.hunspellDictsChromium.en_US]; 13 + dictionaries = [ pkgs.hunspellDictsChromium.en_US ]; 13 14 extensions = [ 14 - {id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";} # ublock-origin 15 - {id = "ejddcgojdblidajhngkogefpkknnebdh";} # autoplaystopper 16 - {id = "mnjggcdmjocbbbhaepdhchncahnbgone";} # sponsorblock-for-youtube 17 - {id = "eimadpbcbfnmbkopoojfekhnkhdbieeh";} # dark reader 18 - {id = "enamippconapkdmgfgjchkhakpfinmaj";} # DeArrow 19 - {id = "amefmmaoenlhckgaoppgnmhlcolehkho";} # github-vscode-icons-updated 20 - {id = "lpnakhpaodhdkleejaehlapdhbgjbddp";} # Hide Files on GitHub 15 + { id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # ublock-origin 16 + { id = "ejddcgojdblidajhngkogefpkknnebdh"; } # autoplaystopper 17 + { id = "mnjggcdmjocbbbhaepdhchncahnbgone"; } # sponsorblock-for-youtube 18 + { id = "eimadpbcbfnmbkopoojfekhnkhdbieeh"; } # dark reader 19 + { id = "enamippconapkdmgfgjchkhakpfinmaj"; } # DeArrow 20 + { id = "amefmmaoenlhckgaoppgnmhlcolehkho"; } # github-vscode-icons-updated 21 + { id = "lpnakhpaodhdkleejaehlapdhbgjbddp"; } # Hide Files on GitHub 21 22 # {id = "fihnjjcciajhdojfnbdddfaoknhalnja";} # I don't care about cookies 22 - {id = "dneaehbmnbhcippjikoajpoabadpodje";} # old reddit redirect 23 - {id = "jmpmfcjnflbcoidlgapblgpgbilinlem";} # PixelBlock 24 - {id = "pkehgijcmpdhfbdbbnkijodmdjhbjlgp";} # Privacy Badger 23 + { id = "dneaehbmnbhcippjikoajpoabadpodje"; } # old reddit redirect 24 + { id = "jmpmfcjnflbcoidlgapblgpgbilinlem"; } # PixelBlock 25 + { id = "pkehgijcmpdhfbdbbnkijodmdjhbjlgp"; } # Privacy Badger 25 26 # {id = "einpaelgookohagofgnnkcfjbkkgepnp";} # Random User-Agent (Switcher) 26 - {id = "kbmfpngjjgdllneeigpgjifpgocmfgmb";} # Reddit Enhancement Suite 27 - {id = "hlepfoohegkhhmjieoechaddaejaokhf";} # Refined GitHub 27 + { id = "kbmfpngjjgdllneeigpgjifpgocmfgmb"; } # Reddit Enhancement Suite 28 + { id = "hlepfoohegkhhmjieoechaddaejaokhf"; } # Refined GitHub 28 29 # {id = "oiigbmnaadbkfbmpbfijlflahbdbdgdf";} # ScriptSafe 29 - {id = "cheogdcgfjpolnpnjijnjccjljjclplg";} # Showdown Randbats Tooltip 30 - {id = "dabpnahpcemkfbgfbmegmncjllieilai";} # Showdex 31 - {id = "oedncfcpfcmehalbpdnekgaaldefpaef";} # Substitoot 32 - {id = "fpnmgdkabkmnadcjpehmlllkndpkmiak";} # Wayback Machine 33 - {id = "cimiefiiaegbelhefglklhhakcgmhkai";} # Plasma Integration 30 + { id = "cheogdcgfjpolnpnjijnjccjljjclplg"; } # Showdown Randbats Tooltip 31 + { id = "dabpnahpcemkfbgfbmegmncjllieilai"; } # Showdex 32 + { id = "oedncfcpfcmehalbpdnekgaaldefpaef"; } # Substitoot 33 + { id = "fpnmgdkabkmnadcjpehmlllkndpkmiak"; } # Wayback Machine 34 + { id = "cimiefiiaegbelhefglklhhakcgmhkai"; } # Plasma Integration 34 35 ]; 35 36 commandLineArgs = [ 36 37 "--disable-features=WebRtcAllowInputVolumeAdjustment" 37 38 ]; 38 39 }; 39 - firefox.enable = true; # 1.6GB / 300MB 40 + firefox = { 41 + enable = true; 42 + nativeMessagingHosts = [ 43 + # pkgs.tridactyl 44 + pkgs.fx-cast-bridge 45 + # pkgs.ff2mpv 46 + ]; 47 + }; 40 48 }; 41 49 }; 42 50 }
+4 -2
modules/home-manager/by-category/gui/instant-messengers.nix
··· 3 3 lib, 4 4 config, 5 5 ... 6 - }: { 6 + }: 7 + { 7 8 config = lib.mkIf config.teq.home-manager.gui { 8 9 home.packages = with pkgs; [ 9 10 vesktop # 1.8GB / 8MB 10 - # discord # discocss 11 + discord-ptb # discocss 12 + betterdiscordctl 11 13 discord-krisp # 1.3GB / 300MB (mesa 800MB) 12 14 discover-overlay # 600MB / 15MB (gtk+3, gtk-layer-shell) 13 15 ];
+53 -9
modules/nixos/by-category/networking.nix
··· 3 3 lib, 4 4 config, 5 5 ... 6 - }: let 6 + }: 7 + let 7 8 inherit (lib) mkDefault; 8 - in { 9 + in 10 + { 9 11 config = lib.mkIf config.teq.nixos.enable { 10 12 services = { 11 13 tailscale.enable = true; ··· 37 39 mosh.enable = mkDefault true; 38 40 }; 39 41 environment.systemPackages = with pkgs; [ 42 + openfortivpn 40 43 cifs-utils 41 - kdePackages.kio-fuse #to mount remote filesystems via FUSE 42 - kdePackages.kio-extras #extra protocols support (sftp, fish and more) 43 - kdePackages.qtsvg #support for svg icons 44 + kdePackages.kio-fuse # to mount remote filesystems via FUSE 45 + kdePackages.kio-extras # extra protocols support (sftp, fish and more) 46 + kdePackages.qtsvg # support for svg icons 44 47 ]; 48 + # systemd.services.openfortivpn = { 49 + # description = "OpenFortiVPN Service"; 50 + # after = [ "network.target" ]; 51 + # wants = [ "network-online.target" "systemd-networkd-wait-online.service" ]; 52 + # documentation = ["https://github.com/adrienverge/openfortivpn#readme"]; 53 + # wantedBy = [ "multi-user.target" ]; 54 + # serviceConfig = { 55 + # Type = "notify"; 56 + # PrivateTmp = true; 57 + # ExecStart = "${pkgs.openfortivpn}/bin/openfortivpn"; 58 + # Restart = "no"; 59 + # RestartSec = "30s"; 60 + # User = "root"; 61 + # Sockets = [ "openfortivpn.socket" ]; 62 + # StandardInput = "socket"; 63 + # StandardOutput = "journal"; 64 + # StandardError = "journal"; 65 + # }; 66 + # }; 67 + # systemd.sockets.openfortivpn = { 68 + # description = "OpenFortiVPN Socket"; 69 + # socketConfig = { 70 + # ListenFIFO = "/run/openfortivpn.stdin"; 71 + # Service = "openfortivpn.service"; 72 + # Accept = "false"; 73 + # RemoveOnStop = "yes"; 74 + # SocketMode = "0660"; 75 + # }; 76 + # }; 45 77 networking = { 46 78 # nftables.enable = true; # Attempt to get ipv6 forwarding for tailscale exit nodes working 47 79 networkmanager.enable = lib.mkDefault true; ··· 61 93 enable = true; 62 94 checkReversePath = "loose"; 63 95 trustedInterfaces = [ "tailscale0" ]; 64 - allowedUDPPorts = [ 9000 config.services.tailscale.port 3000 ]; 65 - allowedTCPPorts = [ 9000 3000 ]; 96 + allowedUDPPorts = [ 97 + 9000 98 + config.services.tailscale.port 99 + 3000 100 + ]; 101 + allowedTCPPorts = [ 102 + 9000 103 + 3000 104 + ]; 66 105 allowedTCPPortRanges = [ 67 106 { 68 107 from = 1714; ··· 78 117 extraCommands = ''iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns''; 79 118 }; 80 119 hosts = { 81 - "10.0.0.12" = [ "dreamer.local" "pihole.shatteredsky.net" "cloud-aio.shatteredsky.net" "awx.shatteredsky.net" ]; 120 + "10.0.0.12" = [ 121 + "dreamer.local" 122 + "pihole.shatteredsky.net" 123 + "cloud-aio.shatteredsky.net" 124 + "awx.shatteredsky.net" 125 + ]; 82 126 }; 83 127 }; 84 128 }; 85 - 129 + 86 130 }