From d6ae95ef9b3cddec43561b521ecea11824a04932 Mon Sep 17 00:00:00 2001 From: Lucy Hochkamp Date: Sun, 26 Jan 2025 09:26:39 +0100 Subject: [PATCH] meow --- flake.lock | 263 +++++++++++---------------------- flake.nix | 8 +- hm-modules/helix/default.nix | 27 +++- hm-modules/nushell/default.nix | 125 +++++++--------- hosts/theseus/default.nix | 62 ++++++-- hosts/theseus/kmonad.nix | 4 +- hosts/theseus/razer.kbd | 2 +- hosts/theseus/river.nix | 55 +++++-- hosts/theseus/swaycfg.nix | 2 +- hosts/theseus/work.nix | 2 +- 10 files changed, 256 insertions(+), 294 deletions(-) diff --git a/flake.lock b/flake.lock index 56e445ae..b3e15ccd 100644 --- a/flake.lock +++ b/flake.lock @@ -10,11 +10,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1723293904, - "narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=", + "lastModified": 1736955230, + "narHash": "sha256-uenf8fv2eG5bKM8C/UvFaiJMZ4IpUFaQxk9OH5t/1gA=", "owner": "ryantm", "repo": "agenix", - "rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41", + "rev": "e600439ec4c273cf11e06fe4d9d906fb98fa097c", "type": "github" }, "original": { @@ -26,11 +26,11 @@ }, "crane": { "locked": { - "lastModified": 1727974419, - "narHash": "sha256-WD0//20h+2/yPGkO88d2nYbb23WMWYvnRyDQ9Dx4UHg=", + "lastModified": 1737563566, + "narHash": "sha256-GLJvkOG29XCynQm8XWPyykMRqIhxKcBARVu7Ydrz02M=", "owner": "ipetkov", "repo": "crane", - "rev": "37e4f9f0976cb9281cd3f0c70081e5e0ecaee93f", + "rev": "849376434956794ebc7a6b487d31aace395392ba", "type": "github" }, "original": { @@ -68,11 +68,11 @@ ] }, "locked": { - "lastModified": 1733570843, - "narHash": "sha256-sQJAxY1TYWD1UyibN/FnN97paTFuwBw3Vp3DNCyKsMk=", + "lastModified": 1737504076, + "narHash": "sha256-/B4XJnzYU/6K1ZZOBIgsa3K4pqDJrnC2579c44c+4rI=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "a35b08d09efda83625bef267eb24347b446c80b8", + "rev": "65cc1fa8e36ceff067daf6cfb142331f02f524d3", "type": "github" }, "original": { @@ -105,11 +105,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { @@ -156,14 +156,14 @@ }, "flake-utils_4": { "inputs": { - "systems": "systems_6" + "systems": "systems_5" }, "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -187,40 +187,6 @@ "type": "github" } }, - "freetype2": { - "flake": false, - "locked": { - "lastModified": 1687587065, - "narHash": "sha256-+Fh+/k+NWL5Ow9sDLtp8Cv/8rLNA1oByQQCIQS/bysY=", - "owner": "wez", - "repo": "freetype2", - "rev": "e4586d960f339cf75e2e0b34aee30a0ed8353c0d", - "type": "github" - }, - "original": { - "owner": "wez", - "repo": "freetype2", - "rev": "e4586d960f339cf75e2e0b34aee30a0ed8353c0d", - "type": "github" - } - }, - "harfbuzz": { - "flake": false, - "locked": { - "lastModified": 1711722720, - "narHash": "sha256-GdxcAPx5QyniSHPAN1ih28AD9JLUPR0ItqW9JEsl3pU=", - "owner": "harfbuzz", - "repo": "harfbuzz", - "rev": "63973005bc07aba599b47fdd4cf788647b601ccd", - "type": "github" - }, - "original": { - "owner": "harfbuzz", - "ref": "8.4.0", - "repo": "harfbuzz", - "type": "github" - } - }, "helix": { "inputs": { "crane": "crane", @@ -229,16 +195,17 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1734381868, - "narHash": "sha256-SqXMB68qrba1lgQNy8M2DDnleT5wwUaCVht5Ko34KMQ=", - "owner": "helix-editor", - "repo": "helix", - "rev": "67535804a585f54613ed485f780687d79a4e0fef", + "lastModified": 1737712207, + "narHash": "sha256-giqE4cwl2CohY4bHhxLSRxfZYHSH/9cRM5Vx9Vr1Va0=", + "owner": "SofusA", + "repo": "helix-pull-diagnostics", + "rev": "c13d3225783ffcec56b6bcd63616236eddaefad5", "type": "github" }, "original": { - "owner": "helix-editor", - "repo": "helix", + "owner": "SofusA", + "ref": "pull-diagnostics", + "repo": "helix-pull-diagnostics", "type": "github" } }, @@ -270,11 +237,11 @@ ] }, "locked": { - "lastModified": 1734366194, - "narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=", + "lastModified": 1736373539, + "narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=", "owner": "nix-community", "repo": "home-manager", - "rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f", + "rev": "bd65bc3cde04c16755955630b344bc9e35272c56", "type": "github" }, "original": { @@ -286,11 +253,11 @@ }, "impermanence": { "locked": { - "lastModified": 1734200366, - "narHash": "sha256-0NursoP4BUdnc+wy+Mq3icHkXu/RgP1Sjo0MJxV2+Dw=", + "lastModified": 1737831083, + "narHash": "sha256-LJggUHbpyeDvNagTUrdhe/pRVp4pnS6wVKALS782gRI=", "owner": "nix-community", "repo": "impermanence", - "rev": "c6323585fa0035d780e3d8906eb1b24b65d19a48", + "rev": "4b3e914cdf97a5b536a889e939fb2fd2b043a170", "type": "github" }, "original": { @@ -307,11 +274,11 @@ }, "locked": { "dir": "nix", - "lastModified": 1732049875, - "narHash": "sha256-uJZ8YkouJj1PxEgfH6DtG2lrDUQrtT2YC0S7MYpsdVM=", + "lastModified": 1736194159, + "narHash": "sha256-YGwh6ntcQdE8vE3F5NYM4q1nroJZOtzZed2eWgCqCW0=", "ref": "feat-tap-overlap", - "rev": "e49f7cf18bce17642bb096dd5c2332c8d77068fa", - "revCount": 875, + "rev": "7fc983117bfd39c8e0225fa0ae20293c8248dba5", + "revCount": 901, "type": "git", "url": "https://github.com/jokesper/kmonad" }, @@ -322,23 +289,6 @@ "url": "https://github.com/jokesper/kmonad" } }, - "libpng": { - "flake": false, - "locked": { - "lastModified": 1549245649, - "narHash": "sha256-1+cRp0Ungme/OGfc9kGJbklYIWAFxk8Il1M+NV4KSgw=", - "owner": "glennrp", - "repo": "libpng", - "rev": "8439534daa1d3a5705ba92e653eda9251246dd61", - "type": "github" - }, - "original": { - "owner": "glennrp", - "repo": "libpng", - "rev": "8439534daa1d3a5705ba92e653eda9251246dd61", - "type": "github" - } - }, "lix": { "flake": false, "locked": { @@ -363,15 +313,15 @@ ] }, "locked": { - "lastModified": 1729360442, - "narHash": "sha256-6U0CyPycIBc04hbYy2hBINnVso58n/ZyywY2BD3hu+s=", - "rev": "9098ac95768f7006d7e070b88bae76939f6034e6", + "lastModified": 1732605668, + "narHash": "sha256-DN5/166jhiiAW0Uw6nueXaGTueVxhfZISAkoxasmz/g=", + "rev": "f19bd752910bbe3a861c9cad269bd078689d50fe", "type": "tarball", - "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/9098ac95768f7006d7e070b88bae76939f6034e6.tar.gz?rev=9098ac95768f7006d7e070b88bae76939f6034e6" + "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/f19bd752910bbe3a861c9cad269bd078689d50fe.tar.gz?rev=f19bd752910bbe3a861c9cad269bd078689d50fe" }, "original": { "type": "tarball", - "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-1.tar.gz" + "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz" } }, "lolpizza": { @@ -409,11 +359,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1734352517, - "narHash": "sha256-mfv+J/vO4nqmIOlq8Y1rRW8hVsGH3M+I2ESMjhuebDs=", + "lastModified": 1737751639, + "narHash": "sha256-ZEbOJ9iT72iwqXsiEMbEa8wWjyFvRA9Ugx8utmYbpz4=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "b12e314726a4226298fe82776b4baeaa7bcf3dcd", + "rev": "dfad538f751a5aa5d4436d9781ab27a6128ec9d4", "type": "github" }, "original": { @@ -425,11 +375,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1728018373, - "narHash": "sha256-NOiTvBbRLIOe5F6RbHaAh6++BNjsb149fGZd1T4+KBg=", + "lastModified": 1737469691, + "narHash": "sha256-nmKOgAU48S41dTPIXAq0AHZSehWUn6ZPrUKijHAMmIk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bc947f541ae55e999ffdb4013441347d83b00feb", + "rev": "9e4d5190a9482a1fb9d18adf0bdb83c6e506eaab", "type": "github" }, "original": { @@ -441,11 +391,11 @@ }, "nixpkgs-darwin": { "locked": { - "lastModified": 1734259898, - "narHash": "sha256-Wh+8OtXTflLZ7tibB+xGAkTeurccRbsdqQgGIKlRTV8=", + "lastModified": 1735564410, + "narHash": "sha256-HB/FA0+1gpSs8+/boEavrGJH+Eq08/R2wWNph1sM1Dg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f35b6bd990d9f48462ce43e2d57a0a91b645d4fa", + "rev": "1e7a8f391f1a490460760065fa0630b5520f9cf8", "type": "github" }, "original": { @@ -469,11 +419,11 @@ }, "nixpkgs-master": { "locked": { - "lastModified": 1734391385, - "narHash": "sha256-qySKxm95i2LwZ9bsuGI++01DXVVwX/D+MX5HMsn4Saw=", + "lastModified": 1737879851, + "narHash": "sha256-H+FXIKj//kmFHTTW4DFeOjR7F1z2/3eb2iwN6Me4YZk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c16f43f97c059903ac4d07ad5c5e193beeaf1f7b", + "rev": "5d3221fd57cc442a1a522a15eb5f58230f45a304", "type": "github" }, "original": { @@ -501,11 +451,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1734083684, - "narHash": "sha256-5fNndbndxSx5d+C/D0p/VF32xDiJCJzyOqorOYW4JEo=", + "lastModified": 1737672001, + "narHash": "sha256-YnHJJ19wqmibLQdUeq9xzE6CjrMA568KN/lFPuSVs4I=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "314e12ba369ccdb9b352a4db26ff419f7c49fa84", + "rev": "035f8c0853c2977b24ffc4d0a42c74f00b182cd8", "type": "github" }, "original": { @@ -534,11 +484,11 @@ "pandoc-latex-template": { "flake": false, "locked": { - "lastModified": 1727958771, - "narHash": "sha256-CC0FGyuzuP3WV6x5HP0xwAhTvofCIYzF3IOqM84zOrM=", + "lastModified": 1737226534, + "narHash": "sha256-jwGQMlEGcCOhlHnYAcatJBxB5bquQGLW0U0s8vjf5rI=", "owner": "Wandmalfarbe", "repo": "pandoc-latex-template", - "rev": "24a8c009368843605c212159ad8449476db87d20", + "rev": "d22cbd7c28e24ba7a0e4d0da46ffd6732c57d800", "type": "github" }, "original": { @@ -585,14 +535,35 @@ "nixpkgs-darwin": "nixpkgs-darwin", "nixpkgs-master": "nixpkgs-master", "pandoc-latex-template": "pandoc-latex-template", + "roslyn-language-server": "roslyn-language-server", "spoons": "spoons", "utils": "utils", - "wezterm": "wezterm", "wired": "wired", "x": "x", "xynoblog": "xynoblog" } }, + "roslyn-language-server": { + "inputs": { + "flake-utils": "flake-utils_4", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1737351724, + "narHash": "sha256-CdRXZaEAXurgO6sGl5akhW+LuwhMvY90ToPlk1h+QcA=", + "owner": "sofusa", + "repo": "roslyn-language-server", + "rev": "8f237c172dbb52ab763fefa757a7350cf074dbec", + "type": "github" + }, + "original": { + "owner": "sofusa", + "repo": "roslyn-language-server", + "type": "github" + } + }, "rust-overlay": { "inputs": { "nixpkgs": [ @@ -601,11 +572,11 @@ ] }, "locked": { - "lastModified": 1728268235, - "narHash": "sha256-lJMFnMO4maJuNO6PQ5fZesrTmglze3UFTTBuKGwR1Nw=", + "lastModified": 1737599167, + "narHash": "sha256-S2rHCrQWCDVp63XxL/AQbGr1g5M8Zx14C7Jooa4oM8o=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "25685cc2c7054efc31351c172ae77b21814f2d42", + "rev": "38374302ae9edf819eac666d1f276d62c712dd06", "type": "github" }, "original": { @@ -615,27 +586,6 @@ } }, "rust-overlay_2": { - "inputs": { - "nixpkgs": [ - "wezterm", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1729477859, - "narHash": "sha256-r0VyeJxy4O4CgTB/PNtfQft9fPfN1VuGvnZiCxDArvg=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "ada8266712449c4c0e6ee6fcbc442b3c217c79e1", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_3": { "inputs": { "nixpkgs": "nixpkgs_4" }, @@ -761,7 +711,7 @@ }, "utils": { "inputs": { - "systems": "systems_5" + "systems": "systems_6" }, "locked": { "lastModified": 1731533236, @@ -777,41 +727,13 @@ "type": "github" } }, - "wezterm": { - "inputs": { - "flake-utils": "flake-utils_4", - "freetype2": "freetype2", - "harfbuzz": "harfbuzz", - "libpng": "libpng", - "nixpkgs": [ - "nixpkgs" - ], - "rust-overlay": "rust-overlay_2", - "zlib": "zlib" - }, - "locked": { - "dir": "nix", - "lastModified": 1733412933, - "narHash": "sha256-2OPDEgUEh0B6OIcSWtBbkw/zFi8r2VfluLj7FebTaVA=", - "owner": "wez", - "repo": "wezterm", - "rev": "6f375e29a2c4d70b8b51956edd494693196c6692", - "type": "github" - }, - "original": { - "dir": "nix", - "owner": "wez", - "repo": "wezterm", - "type": "github" - } - }, "wired": { "inputs": { "flake-parts": "flake-parts", "nixpkgs": [ "nixpkgs" ], - "rust-overlay": "rust-overlay_3" + "rust-overlay": "rust-overlay_2" }, "locked": { "lastModified": 1730615238, @@ -866,23 +788,6 @@ "repo": "blog", "type": "github" } - }, - "zlib": { - "flake": false, - "locked": { - "lastModified": 1484501380, - "narHash": "sha256-j5b6aki1ztrzfCqu8y729sPar8GpyQWIrajdzpJC+ww=", - "owner": "madler", - "repo": "zlib", - "rev": "cacf7f1d4e3d44d871b605da3b647f07d718623f", - "type": "github" - }, - "original": { - "owner": "madler", - "ref": "v1.2.11", - "repo": "zlib", - "type": "github" - } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 0c1a0e4a..cc8cb0b7 100644 --- a/flake.nix +++ b/flake.nix @@ -17,7 +17,7 @@ darwin.url = "github:lnl7/nix-darwin/master"; darwin.inputs.nixpkgs.follows = "nixpkgs"; lix-module = { - url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-1.tar.gz"; + url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -26,11 +26,11 @@ xynoblog.inputs.nixpkgs.follows = "nixpkgs"; x.url = "github:thexyno/x"; x.inputs.nixpkgs.follows = "nixpkgs"; - helix.url = "github:helix-editor/helix"; - wezterm.url = "github:wez/wezterm?dir=nix"; - wezterm.inputs.nixpkgs.follows = "nixpkgs"; + helix.url = "github:SofusA/helix-pull-diagnostics/pull-diagnostics"; wired.inputs.nixpkgs.follows = "nixpkgs"; wired.url = "github:Toqozz/wired-notify"; + roslyn-language-server.url = "github:sofusa/roslyn-language-server"; + roslyn-language-server.inputs.nixpkgs.follows = "nixpkgs"; kmonad = { diff --git a/hm-modules/helix/default.nix b/hm-modules/helix/default.nix index 0298b861..f6a19ca4 100644 --- a/hm-modules/helix/default.nix +++ b/hm-modules/helix/default.nix @@ -11,7 +11,7 @@ in nixpkgs-fmt # omnisharp-roslyn ## ts - nodePackages_latest.prettier + # nodePackages_latest.prettier typescript dprint nodePackages_latest.typescript-language-server @@ -19,31 +19,36 @@ in ## python ruff-lsp # nodePackages_latest.pyright + inputs.roslyn-language-server.packages.${pkgs.system}.roslyn-language-server + netcoredbg ]; programs.helix = { package = inputs.helix.packages.${pkgs.system}.default; enable = true; defaultEditor = true; settings = { - theme = "gruvbox"; + theme = "gruvbox_dark_hard"; editor = { line-number = "relative"; lsp.display-messages = true; }; }; languages = { - language-server.pyright.config.python.analysis.typeCheckingMode = "basic"; - language-server.ruff = { - command = "ruff-lsp"; - config.settings.args = ["--ignore" "E501"]; - }; + language-server.pyright.config.python.analysis.typeCheckingMode = "basic"; + language-server.ruff = { + command = "ruff-lsp"; + config.settings.args = [ "--ignore" "E501" ]; + }; + language-server.roslyn = { + command = "roslyn-language-server"; + }; language = lib.flatten [ (map (x: { name = x; language-servers = [ "typescript-language-server" "eslint" ]; #formatter = { command = "dprint"; args = [ "fmt" "--stdin" x ]; }; - formatter = { command = "prettier"; args = ["--parser" "typescript"]; }; + # formatter = { command = "prettier"; args = [ "--parser" "typescript" ]; }; }) [ "typescript" "javascript" "jsx" "tsx" ]) { name = "nix"; @@ -53,6 +58,12 @@ in name = "python"; language-servers = [ "pyright" "ruff" ]; } + { + name = "c-sharp"; + language-servers = [ "roslyn" ]; + formatter = { command = "dotnet"; args = [ "csharpier" ]; }; + + } ]; }; }; diff --git a/hm-modules/nushell/default.nix b/hm-modules/nushell/default.nix index b83a8d17..5ab2fbb6 100644 --- a/hm-modules/nushell/default.nix +++ b/hm-modules/nushell/default.nix @@ -14,6 +14,7 @@ in programs.nushell = { enable = true; extraConfig = '' + $env.CARAPACE_BRIDGES = 'zsh,fish,bash,inshellisense' let carapace_completer = {|spans: list| carapace $spans.0 nushell ...$spans | from json @@ -107,63 +108,41 @@ in programs.starship = { enable = true; settings = { - "add_newline" = true; - "aws" = { - "disabled" = true; - "format" = " [aws](italic) [$symbol $profile $region]($style)"; - "style" = "bold blue"; - "symbol" = "▲ "; - }; - "battery" = { - "charging_symbol" = "[↑](italic bold green)"; - "discharging_symbol" = "↓"; - "display" = [ - { - "style" = "italic bold red"; - "threshold" = 20; - } - { - "style" = "italic dimmed bright-purple"; - "threshold" = 60; - } - { - "style" = "italic dimmed yellow"; - "threshold" = 70; - } - ]; - "empty_symbol" = "▃"; - "format" = "[ $percentage $symbol]($style)"; - "full_symbol" = "█"; - "unknown_symbol" = "░"; - }; + "add_newline" = false; + # "format" = "($direnv$nix_shell$container$fill$git_metrics\n)$cmd_duration$hostname$localip$shlvl$shell$env_var$jobs$username$directory "; + "format" = "$cmd_duration$status$hostname$localip$shlvl$shell$env_var$jobs$username$directory"; + "right_format" = "$nix_shell$git_branch$git_commit$git_state$git_status$package$custom$os$battery$time"; + aws.disabled = true; + status.disabled = false; + battery.disabled = true; "buf" = { "format" = " [buf](italic) [$symbol $version $buf_version]($style)"; - "symbol" = "■ "; + # "symbol" = "■ "; }; "c" = { "format" = " [$symbol($version(-$name))]($style)"; - "symbol" = "ℂ "; + # "symbol" = "ℂ "; }; "character" = { - "error_symbol" = "[○](italic purple)"; + "error_symbol" = "[:](italic purple)"; "format" = "$symbol "; - "success_symbol" = "[◎](bold italic bright-yellow)"; - "vimcmd_replace_one_symbol" = "◌"; - "vimcmd_replace_symbol" = "□"; - "vimcmd_symbol" = "[■](italic dimmed green)"; - "vimcmd_visual_symbol" = "▼"; + "success_symbol" = "[:](bold italic bright-yellow)"; + "vimcmd_replace_one_symbol" = "r"; + "vimcmd_replace_symbol" = "R"; + "vimcmd_symbol" = "[>](italic dimmed green)"; + "vimcmd_visual_symbol" = "SEL"; }; "cmd_duration" = { - "format" = "[◄ $duration ](italic white)"; + "format" = "[$duration](italic white) "; }; "conda" = { "format" = " conda [$symbol$environment]($style)"; - "symbol" = "◯ "; + # "symbol" = "◯ "; }; "continuation_prompt" = "[▸▹ ](dimmed white)"; "dart" = { "format" = " dart [$symbol($version )]($style)"; - "symbol" = "◁◅ "; + # "symbol" = "◁◅ "; }; "deno" = { "format" = " [deno](italic) [∫ $version](green bold)"; @@ -171,26 +150,29 @@ in }; "directory" = { "format" = "[$path]($style)[$read_only]($read_only_style)"; - "home_symbol" = "⌂"; - "read_only" = " ◈"; - "repo_root_format" = "[$before_root_path]($before_repo_root_style)[$repo_root]($repo_root_style)[$path]($style)[$read_only]($read_only_style) [△](bold bright-blue)"; + "home_symbol" = "~"; + "read_only" = " (ro) "; + "repo_root_format" = "[$before_root_path]($before_repo_root_style)[$repo_root]($repo_root_style)[$path]($style)[$read_only]($read_only_style)"; "repo_root_style" = "bold blue"; "style" = "italic blue"; - "truncation_length" = 2; - "truncation_symbol" = "□ "; + "truncation_length" = 50; + "truncation_symbol" = "⋯"; "use_os_path_sep" = true; }; "docker_context" = { "format" = " docker [$symbol$context]($style)"; - "symbol" = "◧ "; + # "symbol" = "◧ "; + }; + direnv = { + disabled = false; }; "elixir" = { "format" = " exs [$symbol $version OTP $otp_version ]($style)"; - "symbol" = "△ "; + # "symbol" = "△ "; }; "elm" = { "format" = " elm [$symbol($version )]($style)"; - "symbol" = "◩ "; + # "symbol" = "◩ "; }; "env_var" = { "VIMSHELL" = { @@ -201,7 +183,6 @@ in "fill" = { "symbol" = " "; }; - "format" = "($nix_shell$container$fill$git_metrics\n)$cmd_duration$hostname$localip$shlvl$shell$env_var$jobs$sudo$username$character"; "git_branch" = { "format" = " [$branch(:$remote_branch)]($style)"; "ignore_branches" = [ @@ -210,8 +191,9 @@ in ]; "only_attached" = true; "style" = "italic bright-blue"; - "symbol" = "[△](bold italic bright-blue)"; - "truncation_length" = 11; + "symbol" = "(bold italic bright-blue)"; + # "symbol" = "[△](bold italic bright-blue)"; + "truncation_length" = 13; "truncation_symbol" = "⋯"; }; "git_metrics" = { @@ -237,15 +219,15 @@ in }; "golang" = { "format" = " go [$symbol($version )]($style)"; - "symbol" = "∩ "; + # "symbol" = "∩ "; }; "haskell" = { "format" = " hs [$symbol($version )]($style)"; - "symbol" = "❯λ "; + # "symbol" = "❯λ "; }; "java" = { "format" = " java [\${symbol}(\${version} )]($style)"; - "symbol" = "∪ "; + # "symbol" = "∪ "; }; "jobs" = { "format" = "[$symbol$number]($style) "; @@ -276,12 +258,12 @@ in "symbol" = "▴▲▴ "; }; "nix_shell" = { - "format" = "[$symbol nix⎪$state⎪]($style) [$name](italic dimmed white)"; - "impure_msg" = "[⌽](bold dimmed red)"; - "pure_msg" = "[⌾](bold dimmed green)"; + "format" = "[$symbol]($style) [$name](italic dimmed white)"; + "impure_msg" = "[impure](bold dimmed red)"; + "pure_msg" = "[pure](bold dimmed green)"; "style" = "bold italic dimmed blue"; - "symbol" = "✶"; - "unknown_msg" = "[◌](bold dimmed ellow)"; + "symbol" = "󱄅"; + "unknown_msg" = "[unknown](bold dimmed ellow)"; }; "nodejs" = { "detect_extensions" = [ @@ -289,56 +271,57 @@ in "detect_files" = [ "package-lock.json" "yarn.lock" + "pnpm-lock.yaml" ]; "detect_folders" = [ "node_modules" ]; - "format" = " [node](italic) [◫ ($version)](bold bright-green)"; + "format" = " [node](italic) [($version)](bold bright-green)"; "version_format" = "\${raw}"; }; "package" = { "format" = " [pkg](italic dimmed) [$symbol$version]($style)"; "style" = "dimmed yellow italic bold"; - "symbol" = "◨ "; + # "symbol" = "◨ "; "version_format" = "\${raw}"; }; "python" = { "format" = " [py](italic) [\${symbol}\${version}]($style)"; "style" = "bold bright-yellow"; - "symbol" = "[⌉](bold bright-blue)⌊ "; + # "symbol" = "[⌉](bold bright-blue)⌊ "; "version_format" = "\${raw}"; }; - "right_format" = "$singularity$kubernetes$directory$vcsh$fossil_branch$git_branch$git_commit$git_state$git_status$hg_branch$pijul_channel$docker_context$package$c$cmake$cobol$daml$dart$deno$dotnet$elixir$elm$erlang$fennel$golang$guix_shell$haskell$haxe$helm$java$julia$kotlin$gradle$lua$nim$nodejs$ocaml$opa$perl$php$pulumi$purescript$python$raku$rlang$red$ruby$rust$scala$solidity$swift$terraform$vlang$vagrant$zig$buf$conda$meson$spack$memory_usage$aws$gcloud$openstack$azure$crystal$custom$status$os$battery$time"; "ruby" = { + disabled = true; "format" = " [rb](italic) [\${symbol}\${version}]($style)"; "style" = "bold red"; - "symbol" = "◆ "; + # "symbol" = "◆ "; "version_format" = "\${raw}"; }; "rust" = { "format" = " [rs](italic) [$symbol$version]($style)"; "style" = "bold red"; - "symbol" = "⊃ "; + # "symbol" = "⊃ "; "version_format" = "\${raw}"; }; "spack" = { "format" = " spack [$symbol$environment]($style)"; - "symbol" = "◇ "; + # "symbol" = "◇ "; }; "sudo" = { - "disabled" = false; + "disabled" = true; "format" = "[$symbol]($style)"; "style" = "bold italic bright-purple"; - "symbol" = "⋈┈"; + "symbol" = "sudo"; }; "swift" = { "format" = " [sw](italic) [\${symbol}\${version}]($style)"; "style" = "bold bright-red"; - "symbol" = "◁ "; + # "symbol" = "◁ "; "version_format" = "\${raw}"; }; "time" = { - "disabled" = false; + "disabled" = true; "format" = "[ $time]($style)"; "style" = "italic dimmed white"; "time_format" = "%R"; @@ -346,7 +329,7 @@ in }; "username" = { "disabled" = false; - "format" = "[⭘ $user]($style) "; + "format" = "[$user]($style) "; "show_always" = false; "style_root" = "purple bold italic"; "style_user" = "bright-yellow bold italic"; diff --git a/hosts/theseus/default.nix b/hosts/theseus/default.nix index c6c26e05..ded81068 100644 --- a/hosts/theseus/default.nix +++ b/hosts/theseus/default.nix @@ -78,12 +78,13 @@ services.avahi = { enable = true; nssmdns4 = true; + nssmdns6 = true; openFirewall = true; }; - - services.printing.enable = true; + + # end printing programs.light.enable = true; # networking.networkmanager.enable = true; @@ -101,7 +102,7 @@ services.displayManager.defaultSession = "river"; programs.river.enable = true; services.upower.enable = true; - users.users.ragon.extraGroups = [ "networkmanager" "video" "netdev" ]; + users.users.ragon.extraGroups = [ "networkmanager" "video" "netdev" "plugdev" "dialout" "tape" "uucp" ]; fonts.packages = with pkgs; [ nerdfonts cantarell-fonts @@ -187,15 +188,18 @@ services.syncthing.enable = true; services.syncthing.tray.enable = true; services.syncthing.tray.command = "syncthingtray --wait"; + programs.firefox.nativeMessagingHosts = [ pkgs.unstable.firefoxpwa ]; + programs.firefox.enable = true; + home.packages = with pkgs; [ - inputs.wezterm.packages.${pkgs.system}.default + # inputs.wezterm.packages.${pkgs.system}.default element-desktop # this is not a place of honor discord # shitcord unstable.signal-desktop - unstable.feishin + unstable.firefoxpwa unstable.plexamp - firefox + # firefox obsidian thunderbird orca-slicer @@ -213,18 +217,17 @@ easyeffects dune3d ptyxis + appimage-run -filezilla + # filezilla broot ]; home.file.".zshrc".text = lib.mkForce '' - exec nu + # we're using nushell as our interactive shell + # so if zsh gets spawned by our terminal emulator, exec nu + cat /proc/$PPID/cmdline | grep -q alacritty && exec nu ''; - programs.nushell.extraConfig = '' - harsh l - ''; - services.kdeconnect = { enable = true; indicator = true; @@ -257,6 +260,41 @@ filezilla # }; programs.home-manager.enable = true; home.stateVersion = "24.05"; + programs.alacritty = { + enable = true; + settings = { + font.normal.family = "JetBrainsMono NerdFont"; + colors = { + primary = { + # hard contrast + background = "#1d2021"; + # normal background = "#282828"; + # soft contrast background = = "#32302f" + foreground = "#ebdbb2"; + }; + normal = { + black = "#282828"; + red = "#cc241d"; + green = "#98971a"; + yellow = "#d79921"; + blue = "#458588"; + magenta = "#b16286"; + cyan = "#689d6a"; + white = "#a89984"; + }; + bright = { + black = "#928374"; + red = "#fb4934"; + green = "#b8bb26"; + yellow = "#fabd2f"; + blue = "#83a598"; + magenta = "#d3869b"; + cyan = "#8ec07c"; + white = "#ebdbb2"; + }; + }; + }; + }; programs.borgmatic = { enable = true; backups.system = { diff --git a/hosts/theseus/kmonad.nix b/hosts/theseus/kmonad.nix index 85c87093..004e1382 100644 --- a/hosts/theseus/kmonad.nix +++ b/hosts/theseus/kmonad.nix @@ -6,8 +6,8 @@ device = "/dev/input/by-path/platform-i8042-serio-0-event-kbd"; config = builtins.readFile ./builtin.kbd; }; - razerbuero = { - device = "/dev/input/by-id/usb-Razer_Razer_BlackWidow_Tournament_Edition_Chroma-event-kbd"; + k70-office = { + device = "/dev/input/by-id/usb-Corsair_CORSAIR_K70_CORE_RGB_TKL_Mechanical_Gaming_Keyboard_599A4D472DCAC05584072AFB922E3BFB-event-kbd"; config = builtins.readFile ./razer.kbd; }; diff --git a/hosts/theseus/razer.kbd b/hosts/theseus/razer.kbd index 9f5dac99..e3d3ca99 100644 --- a/hosts/theseus/razer.kbd +++ b/hosts/theseus/razer.kbd @@ -1,6 +1,6 @@ (defcfg ;; ** For Linux ** - input (device-file "/dev/input/by-id/usb-Razer_Razer_BlackWidow_Tournament_Edition_Chroma-event-kbd") + input (device-file "/dev/input/by-id/usb-Corsair_CORSAIR_K70_CORE_RGB_TKL_Mechanical_Gaming_Keyboard_599A4D472DCAC05584072AFB922E3BFB-event-kbd") ;; input (device-file "/dev/input/by-path/platform-i8042-serio-0-event-kbd") output (uinput-sink "KMonad output razer") diff --git a/hosts/theseus/river.nix b/hosts/theseus/river.nix index 1cf2e7f6..a7b78ff1 100644 --- a/hosts/theseus/river.nix +++ b/hosts/theseus/river.nix @@ -5,6 +5,11 @@ let # sha256 = "1zw1a8x20bp9mn9lx18mxzgzvzi02ss57r4q1lc9f14fsmzphnlq"; # }; backgroundImage = "/home/ragon/Pictures/background.jpg"; + pow = n: i: + if i == 1 then n + else if i == 0 then 1 + else n * pow n (i - 1); + tag = n: toString (pow 2 (n - 1)); in { home.packages = with pkgs; [ @@ -19,6 +24,7 @@ in playerctl pwvucontrol # networkmanagerapplet + mako iwgtk libnotify ]; @@ -31,6 +37,14 @@ in }; }; + home.file.".config/mako/config".text = '' + font=Source Sans Pro Nerd Font + background-color=#1d2021ff + border-color=#3c3836FF + text-color=#ebdbb2ff + progress-color=over #928374FF + ''; + gtk = { enable = true; gtk4.extraConfig.gtk-application-prefer-dark-theme = 1; @@ -61,7 +75,7 @@ window#waybar { /* background-color: rgba(43, 48, 59, 0.5); border-bottom: 3px solid rgba(100, 114, 125, 0.5);*/ color: #a89984; - background-color: #282828; + background-color: #1d2021; /* transition-property: background-color; transition-duration: .5s;*/ } @@ -90,7 +104,7 @@ window#waybar.chromium { #tags button { padding: 0 2px; - background-color: #282828; + background-color: #1d2021; color: #ebdbb2; /* Use box-shadow instead of border so the text isn't offset */ box-shadow: inset 0 -3px transparent; @@ -144,7 +158,7 @@ window#waybar.chromium { #custom-suspend, #mpd { padding: 0 2px; - background-color: #282828; + background-color: #1d2021; color: #ebdbb2; } @@ -181,7 +195,7 @@ window#waybar.chromium { } #battery.critical:not(.charging) { - background-color: #282828; + background-color: #1d2021; color: #d3869b; animation-name: blink; animation-duration: 0.5s; @@ -214,10 +228,10 @@ label:focus { color: #FFFFFF; /* enby white */ } #network { - color: #9C59D1; /* enby purple */ + color: #b8bb26; /* enby green */ } #clock { - color: #000000; + color: #9C59D1; /* enby purple */ /*color: #2C2C2C; enby black */ } @@ -241,7 +255,7 @@ label:focus { } #idle_inhibitor { - background-color: #282828; + background-color: #1d2021; color: #ebdbb2; } @@ -431,12 +445,14 @@ label:focus { ${pkgs.wl-clipboard}/bin/wl-copy < $IMG_FILE ${pkgs.libnotify}/bin/notify-send -i $IMG_FILE -e -t 10000 "Screenshot Saved" $IMG_FILE ''; + in { "Super+Alt 4" = "spawn '${slurpscrn}'"; "Super+Alt 1" = "spawn '${scrn}'"; "Super+Shift Space" = "spawn 'rofi -show drun'"; - "Super+Shift Return" = "spawn ptyxis"; + "Super+Shift A" = "spawn alacritty"; + "Super+Shift F" = "spawn nautilus"; "Super Q" = "close"; "Super J" = "focus-view next"; "Super K" = "focus-view previous"; @@ -457,8 +473,8 @@ label:focus { "Super Right" = ''send-layout-cmd rivertile "main-ratio +0.05"''; "Super+Shift H" = ''send-layout-cmd rivertile "main-count -1"''; "Super+Shift L" = ''send-layout-cmd rivertile "main-count +1"''; - "Super+Shift Left" = ''send-layout-cmd rivertile main-count -1"''; - "Super+Shift Right" = ''send-layout-cmd rivertile main-count +1"''; + "Super+Shift Left" = ''send-layout-cmd rivertile "main-count -1"''; + "Super+Shift Right" = ''send-layout-cmd rivertile "main-count +1"''; # Super+Alt+{H,J,K,L} to move views "Super+Alt H" = "move left 100"; "Super+Alt J" = "move down 100"; @@ -480,10 +496,6 @@ label:focus { } // (lib.zipAttrs (map (x_int: let - pow = n: i: - if i == 1 then n - else if i == 0 then 1 - else n * pow n (i - 1); tags = toString (pow 2 (x_int - 1)); x = toString x_int; @@ -549,9 +561,16 @@ label:focus { rule-add = { "-title 'Picture-in-Picture'" = "float"; "-app-id 'com.saivert.pwvucontrol'" = "float"; + "-app-id 'org.gnome.NautilusPreviewer'" = "float"; + "-app-id 'Signal'" = "tags ${tag 9}"; # signal + "-app-id 'Cinny'" = "tags ${tag 9}"; # cinny + "-app-id 'FFPWA-01JHNYASHBQB122KMCDPEZ65JA'" = "tags ${tag 9}"; # yt music + "-app-id 'org.gnome.evolution'" = "tags ${tag 8}"; # evolution + "-app-id 'obsidian'" = "tags ${tag 1}"; # obsidian }; }; extraConfig = '' + export XDG_CURRENT_DESKTOP=river rivertile -view-padding 0 -outer-padding 0 & swayidle \ timeout 300 'swaylock -i ${backgroundImage}' \ @@ -560,7 +579,13 @@ label:focus { swaybg -i ${backgroundImage} & shikane & ${pkgs.mako}/bin/mako & - iwgtk -i & + # iwgtk likes to crash when restarting iwd + (while true; do iwgtk -i; sleep 10; done) & + # now autostarting stuff thats always open anyways + obsidian & + signal-desktop & + cinny-desktop & + evolution & ''; }; # services.wired = { diff --git a/hosts/theseus/swaycfg.nix b/hosts/theseus/swaycfg.nix index b20226f5..02b7b9d5 100644 --- a/hosts/theseus/swaycfg.nix +++ b/hosts/theseus/swaycfg.nix @@ -4,7 +4,7 @@ slurp grim # mako - firefox + # firefox # light installed via programs.light playerctl jq diff --git a/hosts/theseus/work.nix b/hosts/theseus/work.nix index 794c864a..0d3747fa 100644 --- a/hosts/theseus/work.nix +++ b/hosts/theseus/work.nix @@ -4,7 +4,7 @@ pkgs.unstable.dotnet-sdk_9 pkgs.unstable.jetbrains.rider # pkgs.jetbrains.datagrip - (pkgs.firefox-devedition.overrideAttrs (super: self: { meta.priority = 1; })) + (pkgs.unstable.firefox-devedition.overrideAttrs (super: self: { meta.priority = 1; })) ]; }