From f522a597dcf699ab159c0ab6cc2cdd960a88d80e Mon Sep 17 00:00:00 2001 From: cswimr Date: Fri, 11 Apr 2025 21:29:46 -0500 Subject: [PATCH] bunch of stuff --- flake.lock | 41 +++++++++++++++------- flake.nix | 6 ++++ home-manager/browser.nix | 56 ++++++++++++++++++++++--------- home-manager/vscode.nix | 25 +++++++------- nixos/gaming.nix | 1 + nixos/gui-pkgs.nix | 1 + nixos/nvim/plugins/cmp.nix | 9 +++++ nixos/nvim/plugins/lsp.nix | 2 ++ nixos/nvim/plugins/treesitter.nix | 4 +++ 9 files changed, 106 insertions(+), 39 deletions(-) diff --git a/flake.lock b/flake.lock index 7b90311..cc773b2 100644 --- a/flake.lock +++ b/flake.lock @@ -38,6 +38,22 @@ "type": "github" } }, + "copilot-lsp-fix": { + "locked": { + "lastModified": 1743090131, + "narHash": "sha256-KX93oOSbZPmn+F7oJioH40zaNLEygzO5bnOCSKuEpEQ=", + "owner": "arunoruto", + "repo": "nixpkgs", + "rev": "05a75f2097ed97c121f149e5bbfc1f04884d9d21", + "type": "github" + }, + "original": { + "owner": "arunoruto", + "ref": "copilot-language-server-fhs", + "repo": "nixpkgs", + "type": "github" + } + }, "cosmic": { "inputs": { "flake-compat": "flake-compat", @@ -342,11 +358,11 @@ ] }, "locked": { - "lastModified": 1743259333, - "narHash": "sha256-2Fi3K++co4IGbeOLGXdRA6VEfbzQzMgcuBaPTyjfj0s=", + "lastModified": 1743267068, + "narHash": "sha256-G7866vbO5jgqMcYJzgbxej40O6mBGQMGt6gM0himjoA=", "owner": "nix-community", "repo": "home-manager", - "rev": "1f679ed2a2ebe3894bad9f89fb0bd9f141c28a68", + "rev": "b431496538b0e294fbe44a1441b24ae8195c63f0", "type": "github" }, "original": { @@ -623,11 +639,11 @@ "nuschtosSearch": "nuschtosSearch" }, "locked": { - "lastModified": 1743157969, - "narHash": "sha256-ldlSyVKNaXL7ys7Jr7mLhlpGDE4VPVcWmV7Odupn5TY=", + "lastModified": 1743288994, + "narHash": "sha256-hUlfAcIUnS8/eSFq+uzOHPZO1p8QgBTAoqhDWzEkUto=", "owner": "nix-community", "repo": "nixvim", - "rev": "95573411bc9be155a93b0f15d2bad62c6b43b3cc", + "rev": "81fdde9fc529e0a5f9ff0d570f31acfe85fd20ac", "type": "github" }, "original": { @@ -645,11 +661,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1743248707, - "narHash": "sha256-ja4k4iNBzU4TbbDu9qoIDoc6MdW8pTa8zQjCy26KPBw=", + "lastModified": 1743285136, + "narHash": "sha256-x5a/2rh++gnkEe1CoGSJ24dHqydoGNJrmNYKxSiWd7Q=", "owner": "nix-community", "repo": "NUR", - "rev": "851424d4299116e87df3b1f74f4a5e7f8cc623d1", + "rev": "5cff75c20f69e7ed9889349f54e085f382c8b6ff", "type": "github" }, "original": { @@ -757,6 +773,7 @@ "inputs": { "catppuccin-vsc": "catppuccin-vsc", "compose2nix": "compose2nix", + "copilot-lsp-fix": "copilot-lsp-fix", "cosmic": "cosmic", "forgejo-cli": "forgejo-cli", "gauntlet": "gauntlet", @@ -854,11 +871,11 @@ }, "staging-next": { "locked": { - "lastModified": 1743249938, - "narHash": "sha256-Y4TBDRPA79OsCRSRzPTQ7HhwnvaimBbqm+fUD4+id8I=", + "lastModified": 1743271459, + "narHash": "sha256-/Aq6qHF/5fk78t71UvJ6MvD0kW0L0e4FFSNq1WuRgY0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "df53b48adfbd1be9d30243499a22df7fa651d1af", + "rev": "fe1b054fd1a289a48aa160d022caf38c9e53a5a2", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 84b6ab4..b866457 100644 --- a/flake.nix +++ b/flake.nix @@ -4,6 +4,7 @@ stable.url = "github:NixOS/nixpkgs/nixos-24.11"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; staging-next.url = "github:NixOS/nixpkgs/staging-next"; + copilot-lsp-fix.url = "github:arunoruto/nixpkgs/copilot-language-server-fhs"; cosmic.url = "github:lilyinstarlight/nixos-cosmic"; home-manager = { url = "github:nix-community/home-manager/master"; @@ -61,6 +62,10 @@ inherit system; config.allowUnfree = true; }; + copilot-lsp-fix = import inputs.copilot-lsp-fix { + inherit system; + config.allowUnfree = true; + }; in { nixosConfigurations = { @@ -69,6 +74,7 @@ specialArgs = { inherit inputs; inherit stablePkgs; + inherit copilot-lsp-fix; system = system; hostname = "eclipse"; user = user; diff --git a/home-manager/browser.nix b/home-manager/browser.nix index d60a26f..b6bbe0f 100644 --- a/home-manager/browser.nix +++ b/home-manager/browser.nix @@ -56,12 +56,13 @@ in "floorp.extensions.allowPrivateBrowsingByDefault.is.enabled" = true; }; search = { - default = "DuckDuckGo"; + default = "ddg"; force = true; order = [ - "DuckDuckGo" + "ddg" "Google (udm14)" "YouTube" + "CoastalCommits" "Codeberg" "GitHub" "Catppuccin Ports" @@ -77,14 +78,14 @@ in "CurseForge (Minecraft)" ]; engines = { - "Bing".metaData.hidden = true; - "Google".metaData.hidden = true; + "bing".metaData.hidden = true; + "google".metaData.hidden = true; "Startpage".metaData.hidden = true; "You.com".metaData.hidden = true; "Google (udm14)" = { urls = [ { template = "https://google.com/search?q={searchTerms}&udm14"; } ]; - iconUpdateURL = "https://google.com/favicon.ico"; + icon = "https://google.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@g" @@ -94,7 +95,7 @@ in }; "YouTube" = { urls = [ { template = "https://www.youtube.com/results?search_query={searchTerms}"; } ]; - iconUpdateURL = "https://www.youtube.com/favicon.ico"; + icon = "https://www.youtube.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@yt" @@ -156,9 +157,17 @@ in "@nw" ]; }; + "CoastalCommits" = { + urls = [ { template = "https://c.csw.im/explore/repos?sq={searchTerms}"; } ]; + icon = "https://c.csw.im/favicon.ico"; + updateInterval = 24 * 60 * 60 * 1000; # every day + definedAliases = [ + "@cc" + ]; + }; "Codeberg" = { urls = [ { template = "https://codeberg.org/explore/repos?q={searchTerms}"; } ]; - iconUpdateURL = "https://codeberg.org/assets/img/favicon.png"; + icon = "https://codeberg.org/assets/img/favicon.png"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@cb" @@ -166,15 +175,32 @@ in }; "GitHub" = { urls = [ { template = "https://github.com/search?q={searchTerms}"; } ]; - iconUpdateURL = "https://github.com/favicon.ico"; + icon = "https://github.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@gh" ]; }; + "PyPI" = { + urls = [ { template = "https://pypi.org/search/?q={searchTerms}"; } ]; + icon = "https://pypi.org/favicon.ico"; + updateInterval = 24 * 60 * 60 * 1000; # every day + definedAliases = [ + "@pypi" + "@pip" + ]; + }; + "npm" = { + urls = [ { template = "https://www.npmjs.com/search?q={searchTerms}"; } ]; + icon = "https://favicons.teamtailor-cdn.com/icon?size=80..120..200&url=https%3a%2f%2fwww.npmjs.com%2f"; + updateInterval = 24 * 60 * 60 * 1000; # every day + definedAliases = [ + "@npm" + ]; + }; "ProtonDB" = { urls = [ { template = "https://www.protondb.com/search?q={searchTerms}"; } ]; - iconUpdateURL = "https://www.protondb.com/favicon.ico"; + icon = "https://www.protondb.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@pd" @@ -182,7 +208,7 @@ in }; "Catppuccin Ports" = { urls = [ { template = "https://catppuccin.com/ports/?q={searchTerms}"; } ]; - iconUpdateURL = "https://catppuccin.com/favicon.png"; + icon = "https://catppuccin.com/favicon.png"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@cat" @@ -190,7 +216,7 @@ in }; "Modrinth Mods" = { urls = [ { template = "https://modrinth.com/mods?q={searchTerms}"; } ]; - iconUpdateURL = "https://modrinth.com/favicon.ico"; + icon = "https://modrinth.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@mm" @@ -198,7 +224,7 @@ in }; "Modrinth Modpacks" = { urls = [ { template = "https://modrinth.com/modpacks?q={searchTerms}"; } ]; - iconUpdateURL = "https://modrinth.com/favicon.ico"; + icon = "https://modrinth.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@mmp" @@ -206,7 +232,7 @@ in }; "Modrinth Plugins" = { urls = [ { template = "https://modrinth.com/plugins?q={searchTerms}"; } ]; - iconUpdateURL = "https://modrinth.com/favicon.ico"; + icon = "https://modrinth.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@mp" @@ -214,7 +240,7 @@ in }; "Modrinth Datapacks" = { urls = [ { template = "https://modrinth.com/datapacks?q={searchTerms}"; } ]; - iconUpdateURL = "https://modrinth.com/favicon.ico"; + icon = "https://modrinth.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@md" @@ -222,7 +248,7 @@ in }; "CurseForge (Minecraft)" = { urls = [ { template = "https://www.curseforge.com/minecraft/search?search={searchTerms}"; } ]; - iconUpdateURL = "https://www.curseforge.com/favicon.ico"; + icon = "https://www.curseforge.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@cf" diff --git a/home-manager/vscode.nix b/home-manager/vscode.nix index f9e0cb4..a11c16c 100644 --- a/home-manager/vscode.nix +++ b/home-manager/vscode.nix @@ -79,18 +79,18 @@ rec { catppuccin.catppuccin-vsc-icons # C# - pkgs.vscode-extensions.ms-dotnettools.csharp - pkgs.vscode-extensions.ms-dotnettools.csdevkit - pkgs.vscode-extensions.ms-dotnettools.vscodeintellicode-csharp - pkgs.vscode-extensions.ms-dotnettools.vscode-dotnet-runtime - csharpier.csharpier-vscode - patcx.vscode-nuget-gallery - corylulu.csharp-interpolated-string-converter - adrianwilczynski.asp-net-core-switcher - kevin-chatham.aspnetcorerazor-html-css-class-completion - adrianwilczynski.blazor-snippet-pack - adrianwilczynski.csharp-to-typescript - adrianwilczynski.namespace + # pkgs.vscode-extensions.ms-dotnettools.csharp + # pkgs.vscode-extensions.ms-dotnettools.csdevkit + # pkgs.vscode-extensions.ms-dotnettools.vscodeintellicode-csharp + # pkgs.vscode-extensions.ms-dotnettools.vscode-dotnet-runtime + # csharpier.csharpier-vscode + # patcx.vscode-nuget-gallery + # corylulu.csharp-interpolated-string-converter + # adrianwilczynski.asp-net-core-switcher + # kevin-chatham.aspnetcorerazor-html-css-class-completion + # adrianwilczynski.blazor-snippet-pack + # adrianwilczynski.csharp-to-typescript + # adrianwilczynski.namespace # Python ms-python.python @@ -105,6 +105,7 @@ rec { yoavbls.pretty-ts-errors gregorbiswanger.json2ts vendicated.vencord-companion + svelte.svelte-vscode # Lua sumneko.lua diff --git a/nixos/gaming.nix b/nixos/gaming.nix index 6740e39..bec6396 100644 --- a/nixos/gaming.nix +++ b/nixos/gaming.nix @@ -55,6 +55,7 @@ # (pkgs.callPackage ../packages/ftb-app.nix { inherit pkgs; }) (pkgs.callPackage ../packages/svc.nix { inherit pkgs; }) lunar-client + lutris stablePkgs.heroic dolphin-emu ryujinx-greemdev diff --git a/nixos/gui-pkgs.nix b/nixos/gui-pkgs.nix index b194634..f3937cb 100644 --- a/nixos/gui-pkgs.nix +++ b/nixos/gui-pkgs.nix @@ -23,6 +23,7 @@ let ytmdesktop ktailctl wl-clipboard + qbittorrent blockbench jetbrains.idea-community-bin # we install xdg-desktop-portal-gtk so GTK theming works in KDE Plasma diff --git a/nixos/nvim/plugins/cmp.nix b/nixos/nvim/plugins/cmp.nix index da99742..557ed6e 100644 --- a/nixos/nvim/plugins/cmp.nix +++ b/nixos/nvim/plugins/cmp.nix @@ -1,5 +1,12 @@ +{ + pkgs, + copilot-lsp-fix, + lib, + ... +}: { programs.nixvim = { + extraPackages = with copilot-lsp-fix; [ copilot-language-server-fhs ]; plugins = { cmp = { enable = true; @@ -39,9 +46,11 @@ }; copilot-lua = { enable = true; + nodePackage = pkgs.nodejs_22; settings = { suggestion.enabled = false; panel.enabled = false; + lsp_binary = lib.getExe copilot-lsp-fix.copilot-language-server-fhs; }; }; copilot-cmp.enable = true; diff --git a/nixos/nvim/plugins/lsp.nix b/nixos/nvim/plugins/lsp.nix index 240da96..a8e9ac1 100644 --- a/nixos/nvim/plugins/lsp.nix +++ b/nixos/nvim/plugins/lsp.nix @@ -59,6 +59,8 @@ ts_ls.enable = true; denols.enable = true; # JavaScript / TypeScript (Deno) eslint.enable = true; # JavaScript / TypeScript + astro.enable = true; + svelte.enable = true; slint_lsp.enable = true; typos_lsp.enable = true; }; diff --git a/nixos/nvim/plugins/treesitter.nix b/nixos/nvim/plugins/treesitter.nix index e7b43b9..c424c5d 100644 --- a/nixos/nvim/plugins/treesitter.nix +++ b/nixos/nvim/plugins/treesitter.nix @@ -42,6 +42,9 @@ enable = true; }; }; + languageRegister = { + mdx = "markdown"; + }; grammarPackages = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [ bash c @@ -61,6 +64,7 @@ regex ruby rust + astro svelte toml typescript