diff --git a/build.conf.nix b/build.conf.nix index 4b2cf12..a3978f9 100644 --- a/build.conf.nix +++ b/build.conf.nix @@ -4,8 +4,9 @@ input // rec { # should probably split plasma into plasma-x11 and plasma-wayland at some point # not all of these actually work btw - x11-wms = ["plasma" "xmonad" "i3"]; - wayland-wms = ["hyprland" "sway"]; + x11-wms = ["xmonad" "i3"]; + # v :o v + wayland-wms = ["hyprland" "sway" "plasma"]; wms = x11-wms ++ wayland-wms; # very, very non-exhaustive of course diff --git a/configuration.nix b/configuration.nix index 35779d6..0e28f27 100644 --- a/configuration.nix +++ b/configuration.nix @@ -76,7 +76,7 @@ in # x11 stuff services.xserver = { - enable = conf.is-x11; + enable = true; layout = "us"; xkbVariant = ""; @@ -84,7 +84,7 @@ in videoDrivers = ["nvidia"]; desktopManager = { - plasma5.enable = conf.wm == "plasma"; + plasma6.enable = conf.wm == "plasma"; xterm.enable = false; xfce = if conf.wm == "i3" then { enable = true; @@ -101,6 +101,10 @@ in }; }; + # services.xwayland = { + # enable = conf.is-wayland; + # }; + services.fstrim.enable = true; hardware = { diff --git a/flake.lock b/flake.lock index 7689485..596b024 100644 --- a/flake.lock +++ b/flake.lock @@ -71,11 +71,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1709126324, + "narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "d465f4819400de7c8d874d50b982301f28a84605", "type": "github" }, "original": { @@ -91,11 +91,11 @@ ] }, "locked": { - "lastModified": 1701728041, - "narHash": "sha256-x0pyrI1vC8evVDxCxyO6olOyr4wlFg9+VS3C3p4xFYQ=", + "lastModified": 1708988456, + "narHash": "sha256-RCz7Xe64tN2zgWk+MVHkzg224znwqknJ1RnB7rVqUWw=", "owner": "nix-community", "repo": "home-manager", - "rev": "ac7216918cd65f3824ba7817dea8f22e61221eaf", + "rev": "1d085ea4444d26aa52297758b333b449b2aa6fca", "type": "github" }, "original": { @@ -107,17 +107,18 @@ "hyprland": { "inputs": { "hyprland-protocols": "hyprland-protocols", + "hyprlang": "hyprlang", "nixpkgs": "nixpkgs_2", "systems": "systems_2", "wlroots": "wlroots", "xdph": "xdph" }, "locked": { - "lastModified": 1701819597, - "narHash": "sha256-X0K2v/SOMQj18/O9daDlizlnlGRDMWuuGoU3jm06b7k=", + "lastModified": 1709169683, + "narHash": "sha256-q3A8XOONAFks60pSTFqWivfTtQPOZvO0C531pVJnkKc=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "8bd86cf37e245088433156796f1bc72542ca09ad", + "rev": "4bff762d9733ba7334cd37b995cf51552cc80be0", "type": "github" }, "original": { @@ -151,6 +152,31 @@ "type": "github" } }, + "hyprlang": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1708787654, + "narHash": "sha256-7ACgM3ZuAhPqurXHUvR2nWMRcnmzGGPjLK6q4DSTelI=", + "owner": "hyprwm", + "repo": "hyprlang", + "rev": "0fce791ba2334aca183f2ed42399518947550d0d", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprlang", + "type": "github" + } + }, "naersk": { "inputs": { "nixpkgs": [ @@ -172,11 +198,11 @@ }, "nixlib": { "locked": { - "lastModified": 1693701915, - "narHash": "sha256-waHPLdDYUOHSEtMKKabcKIMhlUOHPOOPQ9UyFeEoovs=", + "lastModified": 1708821942, + "narHash": "sha256-jd+E1SD59qty65pwqad2mftzkT6vW5nNFWVuvayh4Zw=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "f5af57d3ef9947a70ac86e42695231ac1ad00c25", + "rev": "479831ed8b3c9c7b80533999f880c7d0bf6a491b", "type": "github" }, "original": { @@ -193,11 +219,11 @@ ] }, "locked": { - "lastModified": 1701689616, - "narHash": "sha256-ewnfgvRy73HoP5KnYmy1Rcr4m4yShvsb6TCCaKoW8pc=", + "lastModified": 1709167897, + "narHash": "sha256-UQVMLPVCo3wcQUYZfHnSoVVgi5RzfnaOm2z+aTlxf4A=", "owner": "nix-community", "repo": "nixos-generators", - "rev": "246219bc21b943c6f6812bb7744218ba0df08600", + "rev": "f34ad8b5445d3f0b72370eaae8687125fb736efa", "type": "github" }, "original": { @@ -221,11 +247,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1700612854, - "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", + "lastModified": 1708807242, + "narHash": "sha256-sRTRkhMD4delO/hPxxi+XwLqPn8BuUq6nnj4JqLwOu0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", + "rev": "73de017ef2d18a04ac4bfd0c02650007ccb31c2a", "type": "github" }, "original": { @@ -237,11 +263,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1701626906, - "narHash": "sha256-ugr1QyzzwNk505ICE4VMQzonHQ9QS5W33xF2FXzFQ00=", + "lastModified": 1709136964, + "narHash": "sha256-XD6GfVgSfWjqqWAuybkvaxS1/xrwTrh3V1dSkoYJW3Q=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0c6d8c783336a59f4c59d4a6daed6ab269c4b361", + "rev": "96990c69fd59e807cee8ff874d0526c70dffdf8f", "type": "github" }, "original": { @@ -334,18 +360,18 @@ "flake": false, "locked": { "host": "gitlab.freedesktop.org", - "lastModified": 1701368958, - "narHash": "sha256-7kvyoA91etzVEl9mkA/EJfB6z/PltxX7Xc4gcr7/xlo=", + "lastModified": 1708558866, + "narHash": "sha256-Mz6hCtommq7RQfcPnxLINigO4RYSNt23HeJHC6mVmWI=", "owner": "wlroots", "repo": "wlroots", - "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", + "rev": "0cb091f1a2d345f37d2ee445f4ffd04f7f4ec9e5", "type": "gitlab" }, "original": { "host": "gitlab.freedesktop.org", "owner": "wlroots", "repo": "wlroots", - "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", + "rev": "0cb091f1a2d345f37d2ee445f4ffd04f7f4ec9e5", "type": "gitlab" } }, @@ -355,6 +381,10 @@ "hyprland", "hyprland-protocols" ], + "hyprlang": [ + "hyprland", + "hyprlang" + ], "nixpkgs": [ "hyprland", "nixpkgs" @@ -365,11 +395,11 @@ ] }, "locked": { - "lastModified": 1700508250, - "narHash": "sha256-X4o/mifI7Nhu0UKYlxx53wIC+gYDo3pVM9L2u3PE2bE=", + "lastModified": 1708696469, + "narHash": "sha256-shh5wmpeYy3MmsBfkm4f76yPsBDGk6OLYRVG+ARy2F0=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "eb120ff25265ecacd0fc13d7dab12131b60d0f47", + "rev": "1b713911c2f12b96c2574474686e4027ac4bf826", "type": "github" }, "original": { diff --git a/home.nix b/home.nix index 8d1d3d4..a3719d1 100644 --- a/home.nix +++ b/home.nix @@ -25,7 +25,7 @@ in nethack angband brogue - cataclysm-dda + # cataclysm-dda openrct2 # not yet # celeste64 @@ -61,6 +61,7 @@ in rustfmt idris2 + haskell-language-server semgrep @@ -96,6 +97,7 @@ in hunspell aspell libsForQt5.krunner-symbols + libsForQt5.khotkeys mpv yt-dlp @@ -355,6 +357,11 @@ in slime general lispyville + + haskell-mode + lsp-haskell + + direnv ]; # apparently errors in the config matter? nvm? extraConfig = (import ./init.el.nix) pkgs; diff --git a/init.el.nix b/init.el.nix index e290a1f..306e840 100644 --- a/init.el.nix +++ b/init.el.nix @@ -1017,4 +1017,19 @@ If the new path's directories does not exist, create them." ; critical functionality (require 'zone) ;(setq zone-timer (run-with-idle-timer 120 t 'zone)) + +; hsk +(use-package direnv + :ensure t + :config + (direnv-mode)) + +(use-package lsp-mode + :ensure t + :hook ((haskell-mode . lsp-deferred)) + :commands (lsp lsp-deferred)) + +(use-package lsp-haskell + :ensure t) + '' diff --git a/vscode-settings.nix b/vscode-settings.nix index eff6a2e..d0d3130 100644 --- a/vscode-settings.nix +++ b/vscode-settings.nix @@ -82,7 +82,7 @@ "editor.suggest.showStatusBar" = true; "editor.tabSize" = 4; "editor.unicodeHighlight.invisibleCharacters" = false; - "editor.wordSeparators" = ''/\()"':,;<>~!@#$$%^&*|+=[]{}`?-''; + "editor.wordSeparators" = ''/\()"':.,;<>~!@#$$%^&*|+=[]{}`?-''; "editor.wordWrap" = "off"; "errorLens.excludeBySource" = [ "eslint(eqeqeq)" "ts(2551)" ]; "files.associations" = { @@ -110,8 +110,8 @@ "go.useLanguageServer" = true; "gruvboxMaterial.italicComments" = false; "haskell.formattingProvider" = "stylish-haskell"; - "haskell.ghcupExecutablePath" = "/home/mbk/.ghcup/bin/ghcup"; - "haskell.manageHLS" = "GHCup"; + # "haskell.ghcupExecutablePath" = "/home/mbk/.ghcup/bin/ghcup"; + "haskell.manageHLS" = "PATH"; "haskell.plugin.tactics.config.auto_gas" = 8; "idris.numbersOfContinuousTypechecking" = 50; "idris.warnPartial" = true;