Skip to content

Commit 6dffd55

Browse files
committed
Clean up VSCode configuration
1 parent e810345 commit 6dffd55

File tree

5 files changed

+172
-183
lines changed

5 files changed

+172
-183
lines changed

modules/home/src/programs/rippkgs/default.nix

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,6 @@ in {
1313
description = "rippkgs package to install";
1414
};
1515

16-
# indexerPackage = mkOption {
17-
# type = types.package;
18-
# default = pkgs.rippkgs-index;
19-
# description = "rippkgs-index package to install";
20-
# };
21-
2216
indexLocation = mkOption {
2317
type = types.str;
2418
default = "$XDG_DATA_HOME/rippkgs-index.sqlite";
@@ -27,11 +21,10 @@ in {
2721
};
2822

2923
config = mkIf cfg.enable {
30-
home.packages = with cfg;
31-
[
32-
package
33-
# indexerPackage
34-
# indexerRunner
35-
];
24+
home.packages = let
25+
indexerRunner = pkgs.writeShellScriptBin "rippkgs-index-runner" ''
26+
${lib.getExe' cfg.package "rippkgs-index"} $@ -o ${cfg.indexLocation}
27+
'';
28+
in with cfg; [ package indexerRunner ];
3629
};
3730
}

modules/profiles/home/vscode/default.nix

Lines changed: 97 additions & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -5,143 +5,29 @@
55
package = pkgs.vscode;
66

77
mutableExtensionsDir = true;
8-
profiles.default.enableUpdateCheck = false;
9-
10-
profiles.default.userSettings = {
11-
# Workbench/frame settings
12-
"workbench.colorCustomizations"."tree.indentGuidesStroke" = "#21343C";
13-
# "workbench.colorTheme" = "Solarized Dark";
14-
"workbench.colorTheme" = "Nord";
15-
"workbench.startupEditor" = "none";
16-
"workbench.tree.indent" = 20;
17-
"workbench.welcomePage.walkthroughs.openOnInstall" = false;
18-
19-
# Editor settings
20-
"editor.fontFamily" = "PragmataPro Mono Liga, Operator Mono Lig, mono";
21-
"editor.fontLigatures" = true;
22-
"editor.fontSize" = 16;
23-
"editor.formatOnPaste" = true;
24-
"editor.inlineSuggest.enabled" = false;
25-
"editor.insertSpaces" = true;
26-
"editor.lineHeight" = 25;
27-
"editor.multiCursorModifier" = "ctrlCmd";
28-
"editor.rulers" = [ 120 ];
29-
"editor.tabSize" = 2;
30-
"editor.stickyScroll.enabled" = true;
31-
32-
# Terminal settings
33-
"terminal.integrated.fontSize" = 16;
34-
"terminal.integrated.fontWeightBold" = "600";
35-
"terminal.integrated.lineHeight" = 1.25;
36-
"terminal.integrated.shell.linux" = lib.getExe pkgs.fish;
37-
38-
# File explorer settings
39-
"explorer.compactFolders" = false;
40-
"explorer.fileNesting.enabled" = true;
41-
"explorer.fileNesting.patterns" = {
42-
"*.js" = "\${capture}.js.map, \${capture}.min.js, \${capture}.d.ts";
43-
"*.jsx" = "\${capture}.js";
44-
"*.ts" = "\${capture}.js";
45-
"*.tsx" = "\${capture}.ts";
46-
"package.json" = "package-lock.json, yarn.lock";
47-
"tsconfig.json" = "tsconfig.*.json";
48-
};
49-
50-
# File editing settings
51-
"files.insertFinalNewline" = true;
52-
"files.trimTrailingWhitespace" = true;
53-
54-
# Telemetry settings
55-
"telemetry.enableCrashReporter" = false;
56-
"telemetry.enableTelemetry" = false;
57-
"telemetry.telemetryLevel" = "off";
58-
59-
# Update settings
60-
"update.showReleaseNotes" = false;
61-
62-
# Filename associations
63-
"files.associations" = {
64-
"Brewfile" = "ruby";
65-
"Gemfile" = "ruby";
66-
"Steepfile" = "ruby";
67-
};
68-
69-
# Extension settings
70-
"extensions.ignoreRecommendations" = true;
71-
72-
# Chat
73-
"chat.commandCenter.enabled" = false;
74-
75-
# Copilot
76-
"github.copilot.enable" = {
77-
"*" = false;
78-
"plaintext" = false;
79-
"markdown" = false;
80-
"scminput" = false;
81-
};
82-
83-
# Ruby settings
84-
"ruby.intellisense" = "rubyLocate";
85-
"ruby.useBundler" = true;
86-
"ruby.useLanguageServer" = true;
87-
88-
# Nix settings
89-
"[nix]" = { "editor.defaultFormatter" = "brettm12345.nixfmt-vscode"; };
90-
"nixfmt.path" = lib.getExe pkgs.nixfmt-classic;
91-
92-
# JSON settings
93-
"[json]" = { "editor.defaultFormatter" = "esbenp.prettier-vscode"; };
948

95-
# TypeScript settings
96-
"[typescriptreact]" = {
97-
"editor.defaultFormatter" = "vscode.typescript-language-features";
98-
};
99-
};
9+
profiles.default = {
10+
enableUpdateCheck = false;
10011

101-
profiles.default.extensions =
102-
pkgs.vscode-utils.extensionsFromVscodeMarketplace [
12+
extensions = pkgs.vscode-utils.extensionsFromVscodeMarketplace [
10313
{
10414
name = "nix-ide";
10515
publisher = "jnoortheen";
106-
version = "0.3.5";
107-
sha256 = "jwOM+6LnHyCkvhOTVSTUZvgx77jAg6hFCCpBqY8AxIg=";
16+
version = "0.4.16";
17+
sha256 = "MdFDOg9uTUzYtRW2Kk4L8V3T/87MRDy1HyXY9ikqDFY=";
10818
}
10919
{
11020
name = "atom-keybindings";
11121
publisher = "ms-vscode";
11222
version = "3.3.0";
11323
sha256 = "vzOb/DUV44JMzcuQJgtDB6fOpTKzq298WSSxVKlYE4o=";
11424
}
115-
{
116-
name = "solarized";
117-
publisher = "ryanolsonx";
118-
version = "2.5.0";
119-
sha256 = "zhxiI7OHf8IzgIEXchA2k2bS30+BNPOUN8JrDFfjqzY=";
120-
}
121-
{
122-
name = "nixfmt-vscode";
123-
publisher = "brettm12345";
124-
version = "0.0.1";
125-
sha256 = "07w35c69vk1l6vipnq3qfack36qcszqxn8j3v332bl0w6m02aa7k";
126-
}
12725
{
12826
name = "alphabetical-sorter";
12927
publisher = "ue";
13028
version = "2.0.1";
13129
sha256 = "1djzba9c2p8h1mx2g104hbcm7fnh296d8j8grm9v3yws0rh2inrg";
13230
}
133-
{
134-
name = "vscode-ruby-syntax";
135-
publisher = "SarahRidge";
136-
version = "0.0.11";
137-
sha256 = "FbWBCACmCeS0douIR15WvI3/QVHlI8GTnLNdmTnehW0=";
138-
}
139-
{
140-
name = "ruby-lsp";
141-
publisher = "shopify";
142-
version = "0.7.20";
143-
sha256 = "cQPNd5u0QRBBEZpla4CavEKFwfxcS9itIdSoWhyP1Uc=";
144-
}
14531
{
14632
name = "bookmarks";
14733
publisher = "alefragnani";
@@ -155,5 +41,97 @@
15541
sha256 = "awbqFv6YuYI0tzM/QbHRTUl4B2vNUdy52F4nPmv+dRU=";
15642
}
15743
];
44+
45+
userSettings = {
46+
# Workbench/frame settings
47+
"workbench.colorCustomizations"."tree.indentGuidesStroke" = "#21343C";
48+
# "workbench.colorTheme" = "Solarized Dark";
49+
"workbench.colorTheme" = "Nord";
50+
"workbench.startupEditor" = "none";
51+
"workbench.tree.indent" = 20;
52+
"workbench.welcomePage.walkthroughs.openOnInstall" = false;
53+
54+
# Editor settings
55+
"editor.fontFamily" = "PragmataPro Mono Liga, Operator Mono Lig, mono";
56+
"editor.fontLigatures" = true;
57+
"editor.fontSize" = 16;
58+
"editor.formatOnPaste" = true;
59+
"editor.inlineSuggest.enabled" = false;
60+
"editor.insertSpaces" = true;
61+
"editor.lineHeight" = 25;
62+
"editor.multiCursorModifier" = "ctrlCmd";
63+
"editor.rulers" = [ 120 ];
64+
"editor.tabSize" = 2;
65+
"editor.stickyScroll.enabled" = true;
66+
67+
# Terminal settings
68+
"terminal.integrated.fontSize" = 16;
69+
"terminal.integrated.fontWeightBold" = "600";
70+
"terminal.integrated.lineHeight" = 1.25;
71+
"terminal.integrated.shell.linux" = lib.getExe pkgs.fish;
72+
73+
# File explorer settings
74+
"explorer.compactFolders" = false;
75+
"explorer.fileNesting.enabled" = true;
76+
"explorer.fileNesting.patterns" = {
77+
"*.js" = "\${capture}.js.map, \${capture}.min.js, \${capture}.d.ts";
78+
"*.jsx" = "\${capture}.js";
79+
"*.ts" = "\${capture}.js";
80+
"*.tsx" = "\${capture}.ts";
81+
"package.json" = "package-lock.json, yarn.lock";
82+
"tsconfig.json" = "tsconfig.*.json";
83+
};
84+
85+
# File editing settings
86+
"files.insertFinalNewline" = true;
87+
"files.trimTrailingWhitespace" = true;
88+
89+
# Telemetry settings
90+
"telemetry.enableCrashReporter" = false;
91+
"telemetry.enableTelemetry" = false;
92+
"telemetry.telemetryLevel" = "off";
93+
94+
# Update settings
95+
"update.showReleaseNotes" = false;
96+
97+
# Filename associations
98+
"files.associations" = {
99+
"Brewfile" = "ruby";
100+
"Gemfile" = "ruby";
101+
"Steepfile" = "ruby";
102+
};
103+
104+
# Extension settings
105+
"extensions.ignoreRecommendations" = true;
106+
107+
# Chat
108+
"chat.commandCenter.enabled" = false;
109+
110+
# Copilot
111+
"github.copilot.enable" = {
112+
"*" = false;
113+
"plaintext" = false;
114+
"markdown" = false;
115+
"scminput" = false;
116+
};
117+
118+
# Ruby settings
119+
"ruby.intellisense" = "rubyLocate";
120+
"ruby.useBundler" = true;
121+
"ruby.useLanguageServer" = true;
122+
123+
# Nix settings
124+
"[nix]" = { "editor.defaultFormatter" = "brettm12345.nixfmt-vscode"; };
125+
"nixfmt.path" = lib.getExe pkgs.nixfmt-classic;
126+
127+
# JSON settings
128+
"[json]" = { "editor.defaultFormatter" = "esbenp.prettier-vscode"; };
129+
130+
# TypeScript settings
131+
"[typescriptreact]" = {
132+
"editor.defaultFormatter" = "vscode.typescript-language-features";
133+
};
134+
};
135+
};
158136
};
159137
}

users/ethan/home.nix

Lines changed: 1 addition & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
profiles.tools.media-management
55
profiles.ghostty.default
66
profiles.zed.default
7-
];
7+
] ++ [ ./profiles/tmuxp.nix ./profiles/vscode.nix ];
88

99
home.packages = with pkgs; [ borgbackup nixd ];
1010

@@ -20,57 +20,6 @@
2020
userName = "Ethan Turkeltaub";
2121
signing.key = config.tilde.home.gpg.keyId;
2222
};
23-
24-
tmuxp.workspaces = {
25-
tilde = {
26-
session_name = "tilde";
27-
windows = [{
28-
focus = true;
29-
layout = "c5e0,212x37,0,0,3";
30-
options = { };
31-
panes = [{
32-
focus = true;
33-
shell_command = "direnv reload";
34-
}];
35-
start_directory = "/Users/ethan/Workspace/tilde";
36-
window_name = "fish";
37-
}];
38-
};
39-
40-
e10 = {
41-
session_name = "e10";
42-
windows = [{
43-
focus = true;
44-
layout = "c5e0,212x37,0,0,3";
45-
options = { };
46-
panes = [{
47-
focus = true;
48-
shell_command = "direnv reload";
49-
}];
50-
start_directory = "/Users/ethan/Workspace/e10";
51-
window_name = "fish";
52-
}];
53-
};
54-
55-
fern = {
56-
session_name = "fern";
57-
windows = [{
58-
focus = true;
59-
layout = "c5e0,212x37,0,0,3";
60-
options = { };
61-
panes = [{
62-
focus = true;
63-
shell_command = "clear";
64-
}];
65-
start_directory = "/Users/ethan/Workspace/fern";
66-
window_name = "fish";
67-
}];
68-
};
69-
};
70-
71-
vscode.profiles.default.userSettings = {
72-
"[astro]" = { "editor.defaultFormatter" = "astro-build.astro-vscode"; };
73-
};
7423
};
7524

7625
home = {

users/ethan/profiles/tmuxp.nix

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
{
2+
programs.tmuxp.workspaces = {
3+
tilde = {
4+
session_name = "tilde";
5+
windows = [{
6+
focus = true;
7+
layout = "c5e0,212x37,0,0,3";
8+
options = { };
9+
panes = [{
10+
focus = true;
11+
shell_command = "direnv reload";
12+
}];
13+
start_directory = "/Users/ethan/Workspace/tilde";
14+
window_name = "fish";
15+
}];
16+
};
17+
18+
e10 = {
19+
session_name = "e10";
20+
windows = [{
21+
focus = true;
22+
layout = "c5e0,212x37,0,0,3";
23+
options = { };
24+
panes = [{
25+
focus = true;
26+
shell_command = "direnv reload";
27+
}];
28+
start_directory = "/Users/ethan/Workspace/e10";
29+
window_name = "fish";
30+
}];
31+
};
32+
33+
fern = {
34+
session_name = "fern";
35+
windows = [{
36+
focus = true;
37+
layout = "c5e0,212x37,0,0,3";
38+
options = { };
39+
panes = [{
40+
focus = true;
41+
shell_command = "clear";
42+
}];
43+
start_directory = "/Users/ethan/Workspace/fern";
44+
window_name = "fish";
45+
}];
46+
};
47+
};
48+
}

0 commit comments

Comments
 (0)