From 51f82ed57a2a759012e756ac167ee3da0f135a25 Mon Sep 17 00:00:00 2001 From: Felix Schulze Date: Thu, 19 Jun 2025 23:28:48 +0200 Subject: [PATCH] code-cursor config WIP wildfire: 209 current 2025-06-19 23:30:43 25.05.20250617.36ab78d 6.15.2 * wildfire: 210 current 2025-06-19 23:35:09 25.05.20250617.36ab78d 6.15.2 * --- modules/common.nix | 6 ++++ modules/home/code-cursor.nix | 61 ++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 modules/home/code-cursor.nix diff --git a/modules/common.nix b/modules/common.nix index f00d137..500946a 100644 --- a/modules/common.nix +++ b/modules/common.nix @@ -2,6 +2,7 @@ # This module contains the base settings that every system should have { pkgs, + pkgs-unstable, inputs, ... }: { @@ -20,6 +21,10 @@ # Use system packages instead of separate user packages (saves space) useGlobalPkgs = true; useUserPackages = true; + # Pass unstable packages to home-manager modules + extraSpecialArgs = { + pkgs-unstable = pkgs-unstable; + }; # User-specific Home Manager configurations users.schulze.imports = [ ./home/hyprland.nix # Hyprland window manager user config @@ -29,6 +34,7 @@ ./home/ghostty.nix # Ghostty config ./home/gtk.nix # GTK theme ./home/nextcloud.nix # Nextcloud autostart + ./home/code-cursor.nix # Cursor config ]; }; diff --git a/modules/home/code-cursor.nix b/modules/home/code-cursor.nix new file mode 100644 index 0000000..f5bf983 --- /dev/null +++ b/modules/home/code-cursor.nix @@ -0,0 +1,61 @@ +{ + pkgs, + pkgs-unstable, + ... +}: { + # Cursor configuration + programs.vscode = { + enable = true; + package = pkgs-unstable.code-cursor; + profiles.default.enableUpdateCheck = false; + profiles.default.enableExtensionUpdateCheck = false; + profiles.default.extensions = with pkgs.vscode-extensions; [ + ms-python.python # Python language + ms-python.vscode-pylance # Python LS + ms-python.black-formatter # Python formatter + + dbaeumer.vscode-eslint # ESLint JS + esbenp.prettier-vscode # Prettier code formatting + bradlc.vscode-tailwindcss # Tailwind IntelliSense + unifiedjs.vscode-mdx # MDX language + # csstools.postcss # PostCSS language # not available + + waderyan.gitblame # Git blame + + jdinhlife.gruvbox # Gruvbox theme + vscode-icons-team.vscode-icons # Icons + + golang.go # Go language + budparr.language-hugo-vscode # HUGO language + bungcip.better-toml # TOML + + jnoortheen.nix-ide # Nix language + + # pgourlain.erlang # Erlang language # not available + + redhat.vscode-yaml # YAML + ms-vscode.hexeditor # Hex editor + ]; + profiles.default.userSettings = { + "files.autoSave" = "onFocusChange"; + "editor.fontFamily" = "'Intel One Mono', 'Droid Sans Mono', 'monospace', monospace"; + "editor.tabSize" = 2; + "editor.wordWrap" = "on"; + "workbench.colorTheme" = "Gruvbox Dark Medium"; + "workbench.iconTheme" = "vscode-icons"; + "editor.defaultFormatter" = "esbenp.prettier-vscode"; + "editor.fontLigatures" = "'ss01'"; + "editor.formatOnSave" = true; + "prettier.printWidth" = 120; + "prettier.proseWrap" = "always"; + "vsicons.dontShowNewVersionMessage" = true; + "editor.minimap.enabled" = true; + "cursor.cpp.enablePartialAccepts" = true; + "cursor.diffs.useCharacterLevelDiffs" = true; + "nix.enableLanguageServer" = true; + "[nix]" = { + "editor.defaultFormatter" = "jnoortheen.nix-ide"; + }; + }; + }; +}