diff --git a/flake.nix b/flake.nix index a044b04..1169a18 100644 --- a/flake.nix +++ b/flake.nix @@ -73,6 +73,9 @@ "ipu6-camera-bins-unstable" "ivsc-firmware" "ivsc-firmware-unstable" + "semshi" + "vim-polyglot" + "vim-trailing-whitespace" ]; android_sdk.accept_license = true; segger-jlink.acceptLicense = true; @@ -155,7 +158,6 @@ }; homeModules = { - cargo = ./home/modules/programs/cargo; colors = ./home/modules/colors.nix; direnv-auto-prune = ./home/modules/programs/direnv/auto-prune.nix; downloads-sorter = ./home/modules/services/downloads-sorter.nix; @@ -166,7 +168,6 @@ prism-launcher = ./home/modules/programs/prism-launcher; shellAliases = ./home/modules/shellAliases.nix; systemd-tmpfiles = ./home/modules/systemd-tmpfiles.nix; - uidGid = ./home/modules/uidGid.nix; }; homeConfigurations = { diff --git a/home/config/gtk.nix b/home/config/gtk.nix index 21dfd9b..e69792a 100644 --- a/home/config/gtk.nix +++ b/home/config/gtk.nix @@ -29,5 +29,7 @@ "work" "ctf" ]; + + gtk4.theme = config.gtk.theme; }; } diff --git a/home/config/xdg/default.nix b/home/config/xdg/default.nix index 3e2c945..c5ee353 100644 --- a/home/config/xdg/default.nix +++ b/home/config/xdg/default.nix @@ -13,11 +13,14 @@ in enable = true; userDirs = { enable = true; + setSessionVariables = true; + desktop = lib.mkDefault "${config.home.homeDirectory}/Desktop"; documents = lib.mkDefault "${config.home.homeDirectory}/documents"; download = lib.mkDefault "${config.home.homeDirectory}/downloads"; music = lib.mkDefault "${config.home.homeDirectory}/music"; pictures = lib.mkDefault "${config.home.homeDirectory}/pictures"; + projects = lib.mkDefault "${config.home.homeDirectory}/git"; publicShare = lib.mkDefault "${config.home.homeDirectory}/public"; templates = lib.mkDefault "${config.home.homeDirectory}/templates"; videos = lib.mkDefault "${config.home.homeDirectory}/videos"; diff --git a/home/modules/programs/cargo/default.nix b/home/modules/programs/cargo/default.nix deleted file mode 100644 index 2df4713..0000000 --- a/home/modules/programs/cargo/default.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ config, pkgs, lib, ... }: -let - cfg = config.programs.cargo; - format = pkgs.formats.toml { }; - cargoHome = config.systemd.user.sessionVariables.CARGO_HOME or "${config.home.homeDirectory}/.cargo"; - relativeCargoHome = lib.strings.removePrefix config.home.homeDirectory cargoHome; -in -{ - options.programs.cargo = { - enable = lib.mkEnableOption "cargo, the rust package manager and build tool"; - - package = lib.mkPackageOption pkgs "cargo" { }; - - addPackageToEnvironment = lib.mkOption { - description = "Whether to add cargo to the user's environment."; - type = lib.types.bool; - default = true; - example = false; - }; - - settings = lib.mkOption { - description = "cargo settings"; - type = lib.types.submodule { - freeformType = format.type; - }; - }; - }; - - config = lib.mkIf cfg.enable { - systemd.user.sessionVariables.CARGO_HOME = lib.mkIf config.home.preferXdgDirectories (lib.mkDefault "${config.xdg.dataHome}/cargo"); - - home = { - packages = lib.mkIf cfg.addPackageToEnvironment [ cfg.package ]; - - file."${relativeCargoHome}/config.toml" = lib.mkIf (cfg.settings != { }) { - source = format.generate "cargo-config.toml" cfg.settings; - }; - }; - }; -} diff --git a/home/modules/uidGid.nix b/home/modules/uidGid.nix deleted file mode 100644 index 422c9c3..0000000 --- a/home/modules/uidGid.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ lib, ... }: -{ - options.home = { - uid = lib.mkOption { - default = 1000; - type = lib.types.ints.between 0 60000; - }; - gid = lib.mkOption { - default = 1000; - type = lib.types.ints.between 0 60000; - }; - }; -} \ No newline at end of file diff --git a/home/packages.nix b/home/packages.nix index d7bc722..f58d552 100644 --- a/home/packages.nix +++ b/home/packages.nix @@ -80,11 +80,12 @@ zlib icu openssl - xorg.xprop + xprop ] ++ ( lib.optionals (!machineVars.headless) [ alsa-utils kdePackages.ark + brightnessctl calibre cool-retro-term darktable @@ -105,7 +106,6 @@ # kdePackages.ktouch libnotify libreoffice - light mission-center # mopidy # mopidy-mpd @@ -134,9 +134,9 @@ xcalib xclip xdotool - xorg.xmodmap - (xfce.thunar.override { - thunarPlugins = with xfce; [ + xmodmap + (thunar.override { + thunarPlugins = [ thunar-volman # thunar-dropbox-plugin thunar-archive-plugin diff --git a/home/programs/firefox.nix b/home/programs/firefox.nix index 607da04..f6cb37e 100644 --- a/home/programs/firefox.nix +++ b/home/programs/firefox.nix @@ -1,6 +1,7 @@ -{ lib, pkgs, ... }: +{ config, lib, pkgs, ... }: { programs.firefox = { + configPath = "${config.xdg.configHome}/mozilla/firefox"; profiles.h7x4 = { bookmarks = { force = true; diff --git a/home/programs/hyprland/hyprland.nix b/home/programs/hyprland/hyprland.nix index 6122716..4cfea4f 100644 --- a/home/programs/hyprland/hyprland.nix +++ b/home/programs/hyprland/hyprland.nix @@ -2,6 +2,7 @@ wayland.windowManager.hyprland = { systemd.enable = false; systemd.enableXdgAutostart = false; + configType = "lua"; settings = { exec-once = [ diff --git a/home/programs/neovim/default.nix b/home/programs/neovim/default.nix index 9918bb6..b4213e5 100644 --- a/home/programs/neovim/default.nix +++ b/home/programs/neovim/default.nix @@ -10,6 +10,9 @@ lib.mkIf cfg.enable { vimAlias = true; vimdiffAlias = true; + withPython3 = true; + withRuby = false; + plugins = with pkgs.vimPlugins; [ direnv-vim fzf-vim @@ -27,6 +30,7 @@ lib.mkIf cfg.enable { semshi { plugin = goyo-vim; + type = "viml"; # TODO: The mapleader definition should be in extraConfig, but setting # the mapleader before defining keymaps messes things up. @@ -73,21 +77,19 @@ lib.mkIf cfg.enable { vim-better-whitespace { plugin = nvim-treesitter.withAllGrammars; + type = "lua"; config = '' - packadd! nvim-treesitter - lua << EOF - require'nvim-treesitter.configs'.setup { + require('nvim-treesitter').setup { highlight = { enable = true, }, } - EOF ''; } { plugin = rainbow-delimiters-nvim; + type = "lua"; config = '' - lua << EOF local rainbow_delimiters = require 'rainbow-delimiters' vim.g.rainbow_delimiters = { ["highlight"] = { @@ -99,11 +101,11 @@ lib.mkIf cfg.enable { 'RainbowDelimiterCyan', }, } - EOF ''; } { plugin = vim-monokai; + type = "viml"; config = '' colorscheme monokai @@ -140,7 +142,7 @@ lib.mkIf cfg.enable { vnoremap :m '<-2gv=gv ''; - extraLuaConfig = '' + initLua = '' local function paste_buf() local content = os.getenv("NVIM_CLIPBOARD") diff --git a/home/programs/yazi.nix b/home/programs/yazi.nix index 034091c..41f56c4 100644 --- a/home/programs/yazi.nix +++ b/home/programs/yazi.nix @@ -1,6 +1,7 @@ { ... }: { programs.yazi = { + shellWrapperName = "y"; keymap = { manager.prepend_keymap = [ { diff --git a/home/services/tumblerd.nix b/home/services/tumblerd.nix index 4a39590..0fb327e 100644 --- a/home/services/tumblerd.nix +++ b/home/services/tumblerd.nix @@ -5,7 +5,7 @@ let in { options.services.tumblerd.enable = lib.mkEnableOption "tumblerd"; - options.services.tumblerd.package = lib.mkPackageOption pkgs [ "xfce" "tumbler" ] { }; + options.services.tumblerd.package = lib.mkPackageOption pkgs "tumbler" { }; config = lib.mkIf cfg.enable { systemd.user.services.tumblerd = { diff --git a/home/shell.nix b/home/shell.nix index 238745e..6e4434c 100644 --- a/home/shell.nix +++ b/home/shell.nix @@ -55,9 +55,6 @@ in { htop_ = p "htop"; htop = p "bottom"; - dig_ = p "dig"; - dig = p "dogdns"; - man_ = p "man"; man = "${pkgs.bat-extras.batman}/bin/batman"; diff --git a/hosts/common/default.nix b/hosts/common/default.nix index 6dcfa15..c591c10 100644 --- a/hosts/common/default.nix +++ b/hosts/common/default.nix @@ -41,7 +41,6 @@ in { ./services/uptimed.nix ./services/userborn.nix ./services/userdbd.nix - ./services/wpa_supplicant.nix ./services/xserver.nix ]; @@ -144,7 +143,6 @@ in { services = { udev.packages = with pkgs; [ yubikey-personalization - light ]; }; @@ -186,7 +184,7 @@ in { man.enable = true; nixos.enable = true; - man.generateCaches = true; + man.cache.enable = true; }; # security.lockKernelModules = true; diff --git a/hosts/common/packages.nix b/hosts/common/packages.nix index d030562..5cfdc0e 100644 --- a/hosts/common/packages.nix +++ b/hosts/common/packages.nix @@ -32,23 +32,21 @@ ghcid # haskellPackages.Cabal_3_6_3_0 maven - nixfmt-rfc-style + nixfmt nixpkgs-fmt # nixpkgs-hammering - nodePackages.node2nix - nodePackages.npm - nodePackages.sass - nodePackages.typescript - nodePackages.yarn nodejs plantuml python3 rustc rustc rustup + sass sqlcheck sqlint sqlite sqlite-web + typescript + yarn ]); } diff --git a/hosts/common/services/wpa_supplicant.nix b/hosts/common/services/wpa_supplicant.nix deleted file mode 100644 index 98df4d5..0000000 --- a/hosts/common/services/wpa_supplicant.nix +++ /dev/null @@ -1,63 +0,0 @@ -{ config, lib, ... }: -let - cfg = config.networking.wireless; -in -{ - systemd.services.wpa_supplicant.serviceConfig = lib.mkIf (cfg.enable || config.networking.hostName == "xps16") { - RuntimeDirectory = [ - "wpa_supplicant" - "wpa_supplicant/root-mnt" - ]; - RootDirectory = "/run/wpa_supplicant/root-mnt"; - BindPaths = [ - "/etc" - "/run/dbus/system_bus_socket" - "/tmp" - ]; - BindReadOnlyPaths = [ - # "/bin/sh" - builtins.storeDir - ]; - - # wpa_ctrl puts sockets in /tmp - PrivateTmp = false; - # PrivateTmp = lib.mkIf (configIsGenerated && !cfg.allowAuxiliaryImperativeNetworks) "disconnected"; - - CapabilityBoundingSet = [ - "CAP_NET_ADMIN" - "CAP_BLOCK_SUSPEND" - "CAP_NET_RAW" - "CAP_CHOWN" - ]; - RestrictNamespaces = true; - SystemCallFilter = [ - "@system-service" - "~@resources" - "@chown" - ]; - ProtectProc = "invisible"; - SystemCallArchitectures = "native"; - DeviceAllow = "/dev/rfkill"; - DevicePolicy = "closed"; - NoNewPrivileges = true; - ProtectKernelLogs = true; - ProtectControlGroups = true; - ProtectKernelModules = true; - ProtectSystem = true; - ProtectHome = true; - MemoryDenyWriteExecute = true; - ProtectHostname = true; - LockPersonality = true; - RestrictRealtime = true; - RestrictSUIDSGID = true; - RestrictAddressFamilies = [ - "AF_INET" - "AF_INET6" - "AF_NETLINK" - "AF_PACKET" - # "AF_ALG" # Used for 'linux' TLS backend - ] ++ lib.optionals cfg.dbusControlled [ - "AF_UNIX" - ]; - }; -} diff --git a/hosts/tsuki/configuration.nix b/hosts/tsuki/configuration.nix index 0307457..2ffb7b4 100644 --- a/hosts/tsuki/configuration.nix +++ b/hosts/tsuki/configuration.nix @@ -86,9 +86,7 @@ docker.enable = true; }; - services.resolved.extraConfig = '' - MulticastDNS=no - ''; + services.resolved.settings.Resolve.MulticastDNS = false; services.zfs.trim.enable = true; services.zfs.autoScrub.enable = true; diff --git a/hosts/tsuki/services/nginx/default.nix b/hosts/tsuki/services/nginx/default.nix index 8367a51..ee64851 100644 --- a/hosts/tsuki/services/nginx/default.nix +++ b/hosts/tsuki/services/nginx/default.nix @@ -7,7 +7,7 @@ defaults = { email = "h7x4@nani.wtf"; dnsProvider = "cloudflare"; - credentialsFile = config.sops.secrets."cloudflare/api-key".path; + credentialFiles.CLOUDFLARE_DNS_API_TOKEN_FILE = config.sops.secrets."cloudflare/api-key".path; dnsPropagationCheck = true; }; certs."nani.wtf" = { diff --git a/overlays/pcloud.nix b/overlays/pcloud.nix index c4365fb..46d7c8f 100644 --- a/overlays/pcloud.nix +++ b/overlays/pcloud.nix @@ -5,8 +5,8 @@ libappindicator libindicator libnotify - xorg.libXScrnSaver - xorg.libXtst + libXScrnSaver + libXtst ]); preFixup = ''