Compare commits
9 Commits
e6ae751ff2
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 9aa6d64771 | |||
| 710c36a126 | |||
| 99c605c09d | |||
| 79a3fe3fc5 | |||
| 627d5c5952 | |||
| b061203715 | |||
| 9ab0525b5e | |||
| 8e2bfc551e | |||
| 66d0a1fddd |
Generated
+30
-55
@@ -75,6 +75,24 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1782949081,
|
||||||
|
"narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"llm-agents",
|
"llm-agents",
|
||||||
@@ -95,29 +113,9 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1769996383,
|
|
||||||
"narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "57928607ea566b5db3ad13af0e57e921e6b12381",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"helix": {
|
"helix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -172,7 +170,7 @@
|
|||||||
"llm-agents": {
|
"llm-agents": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"bun2nix": "bun2nix",
|
"bun2nix": "bun2nix",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts_2",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
@@ -193,25 +191,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lux-pkgs": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-parts": "flake-parts_2",
|
|
||||||
"nixpkgs": "nixpkgs"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1772315038,
|
|
||||||
"narHash": "sha256-YL6NQd97AiZGe/Q4ZWxZaguKVHL0pfNvP/Cqgl/oh4g=",
|
|
||||||
"ref": "refs/heads/main",
|
|
||||||
"rev": "d7660146e70475c096bed703e4dad687a58e13dc",
|
|
||||||
"revCount": 1,
|
|
||||||
"type": "git",
|
|
||||||
"url": "ssh://gitea@orion/kiri/lux-pkgs"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "ssh://gitea@orion/kiri/lux-pkgs"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"niri": {
|
"niri": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"niri-stable": "niri-stable",
|
"niri-stable": "niri-stable",
|
||||||
@@ -329,27 +308,27 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772173633,
|
"lastModified": 1784796856,
|
||||||
"narHash": "sha256-MOH58F4AIbCkh6qlQcwMycyk5SWvsqnS/TCfnqDlpj4=",
|
"narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=",
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c0f3d81a7ddbc2b1332be0d8481a672b4f6004d6",
|
"rev": "e2587caef70cea85dd97d7daab492899902dbf5d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"ref": "nixpkgs-unstable",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1769909678,
|
"lastModified": 1782614948,
|
||||||
"narHash": "sha256-cBEymOf4/o3FD5AZnzC3J9hLbiZ+QDT/KDuyHXVJOpM=",
|
"narHash": "sha256-ePjCwr1sNm9NYUqywL7QfK3JnlS015msC+eBu2zKlp8=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "72716169fe93074c333e8d0173151350670b824c",
|
"rev": "db3f255737b94216eb71cce308e2912cf6bc2d7c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -467,15 +446,11 @@
|
|||||||
"inputs": {
|
"inputs": {
|
||||||
"disko": "disko",
|
"disko": "disko",
|
||||||
"elephant": "elephant",
|
"elephant": "elephant",
|
||||||
"flake-parts": [
|
"flake-parts": "flake-parts",
|
||||||
"lux-pkgs",
|
|
||||||
"flake-parts"
|
|
||||||
],
|
|
||||||
"helix": "helix",
|
"helix": "helix",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"import-tree": "import-tree",
|
"import-tree": "import-tree",
|
||||||
"llm-agents": "llm-agents",
|
"llm-agents": "llm-agents",
|
||||||
"lux-pkgs": "lux-pkgs",
|
|
||||||
"niri": "niri",
|
"niri": "niri",
|
||||||
"nix-index-database": "nix-index-database",
|
"nix-index-database": "nix-index-database",
|
||||||
"nix-wrapper-modules": "nix-wrapper-modules",
|
"nix-wrapper-modules": "nix-wrapper-modules",
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
url = "github:nix-community/disko";
|
url = "github:nix-community/disko";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
flake-parts.follows = "lux-pkgs/flake-parts";
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||||
helix.url = "github:helix-editor/helix";
|
helix.url = "github:helix-editor/helix";
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
@@ -44,8 +44,6 @@
|
|||||||
inputs.elephant.follows = "elephant";
|
inputs.elephant.follows = "elephant";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
lux-pkgs.url = "git+ssh://gitea@orion/kiri/lux-pkgs";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } (inputs.import-tree ./modules);
|
outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } (inputs.import-tree ./modules);
|
||||||
|
|||||||
@@ -22,6 +22,7 @@
|
|||||||
stablePkgs.mongodb-compass
|
stablePkgs.mongodb-compass
|
||||||
scc
|
scc
|
||||||
nodejs
|
nodejs
|
||||||
|
mariadb
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.lazygit = {
|
programs.lazygit = {
|
||||||
@@ -38,9 +39,15 @@
|
|||||||
programs.direnv = {
|
programs.direnv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
nix-direnv.enable = true;
|
nix-direnv.enable = true;
|
||||||
|
|
||||||
|
config.global = {
|
||||||
|
hide_env_diff = true;
|
||||||
|
log_format = "↳ %s";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
flake.modules.nixos.openvpn = {
|
flake.modules.nixos.openvpn = {
|
||||||
programs.openvpn3.enable = true;
|
programs.openvpn3.enable = true;
|
||||||
|
services.resolved.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,9 +13,14 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
let
|
||||||
svelteLanguageServer = pkgs.svelte-language-server.overrideAttrs (
|
svelteLanguageServer = pkgs.svelte-language-server.overrideAttrs (
|
||||||
finalAttrs: _: {
|
finalAttrs: previousAttrs: {
|
||||||
version = "0.18.3";
|
version = "0.18.3";
|
||||||
|
|
||||||
|
pnpmWorkspaces = [
|
||||||
|
"svelte-language-server..."
|
||||||
|
"typescript-svelte-plugin..."
|
||||||
|
];
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "sveltejs";
|
owner = "sveltejs";
|
||||||
repo = "language-tools";
|
repo = "language-tools";
|
||||||
@@ -34,6 +39,37 @@
|
|||||||
fetcherVersion = 3;
|
fetcherVersion = 3;
|
||||||
hash = "sha256-fY3hrCkr/soJk1gp39/jec8lT2ZJI27xRBCZi006oWA=";
|
hash = "sha256-fY3hrCkr/soJk1gp39/jec8lT2ZJI27xRBCZi006oWA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
buildPhase = builtins.replaceStrings
|
||||||
|
[ "pnpm run --filter=svelte-language-server... build" ]
|
||||||
|
[ ''
|
||||||
|
pnpm run --filter=svelte-language-server... build
|
||||||
|
pnpm --filter=typescript-svelte-plugin exec tsc \
|
||||||
|
-p ./ \
|
||||||
|
--pretty false \
|
||||||
|
--types node \
|
||||||
|
--typeRoots ../../node_modules/.pnpm/node_modules/@types
|
||||||
|
'' ]
|
||||||
|
previousAttrs.buildPhase;
|
||||||
|
|
||||||
|
installPhase = builtins.replaceStrings
|
||||||
|
[ "pnpm install --filter=svelte-language-server..." ]
|
||||||
|
[ "pnpm install --filter=svelte-language-server... --filter=typescript-svelte-plugin..." ]
|
||||||
|
previousAttrs.installPhase;
|
||||||
|
|
||||||
|
postInstall = (previousAttrs.postInstall or "") + ''
|
||||||
|
substituteInPlace \
|
||||||
|
"$out/lib/node_modules/svelte-language-server/packages/language-server/node_modules/@vscode/emmet-helper/lib/cjs/emmetHelper.js" \
|
||||||
|
--replace-fail \
|
||||||
|
"'jsx.enabled': syntax === 'jsx'," \
|
||||||
|
"'jsx.enabled': syntax === 'jsx' || syntax === 'html',"
|
||||||
|
|
||||||
|
ln -s ../packages/typescript-plugin \
|
||||||
|
"$out/lib/node_modules/svelte-language-server/node_modules/typescript-svelte-plugin"
|
||||||
|
|
||||||
|
ln -s ../packages/language-server/node_modules/svelte \
|
||||||
|
"$out/lib/node_modules/svelte-language-server/node_modules/svelte"
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
in
|
in
|
||||||
@@ -43,22 +79,31 @@
|
|||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
package = inputs.helix.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
package = inputs.helix.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||||
extraPackages = with pkgs; [
|
extraPackages = with pkgs; [
|
||||||
|
vtsls
|
||||||
svelteLanguageServer
|
svelteLanguageServer
|
||||||
|
tailwindcss-language-server
|
||||||
|
|
||||||
nixd
|
nixd
|
||||||
nixfmt
|
nixfmt
|
||||||
oxfmt
|
oxfmt
|
||||||
|
|
||||||
simple-completion-language-server
|
simple-completion-language-server
|
||||||
|
|
||||||
|
odin
|
||||||
|
ols
|
||||||
|
|
||||||
rust-analyzer
|
rust-analyzer
|
||||||
|
rustfmt
|
||||||
|
cargo
|
||||||
];
|
];
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
theme = "kanagawa";
|
theme = "kanagawa-custom";
|
||||||
editor = {
|
editor = {
|
||||||
|
soft-wrap.enable = true;
|
||||||
lsp = {
|
lsp = {
|
||||||
auto-document-highlight = true;
|
auto-document-highlight = true;
|
||||||
display-inlay-hints = true;
|
display-inlay-hints = false;
|
||||||
};
|
};
|
||||||
rainbow-brackets = true;
|
rainbow-brackets = true;
|
||||||
line-number = "relative";
|
line-number = "relative";
|
||||||
@@ -80,23 +125,79 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
themes.kanagawa-custom = {
|
||||||
|
inherits = "kanagawa";
|
||||||
|
"ui.highlight".underline = {
|
||||||
|
color = "dragonBlue";
|
||||||
|
style = "line";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
languages = {
|
languages = {
|
||||||
language-server.scls = {
|
language-server.scls = {
|
||||||
command = "simple-completion-language-server";
|
command = "simple-completion-language-server";
|
||||||
environment.SNIPPETS_PATH = "${pkgs.vimPlugins.friendly-snippets}/snippets";
|
environment.SNIPPETS_PATH = "${pkgs.vimPlugins.friendly-snippets}/snippets";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
language-server.vtsls.config.vtsls = {
|
||||||
|
autoUseWorkspaceTsdk = true;
|
||||||
|
tsserver.globalPlugins = [
|
||||||
|
{
|
||||||
|
name = "typescript-svelte-plugin";
|
||||||
|
location = "${svelteLanguageServer}/lib/node_modules/svelte-language-server";
|
||||||
|
enableForWorkspaceTypeScriptVersions = true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
language = [
|
language = [
|
||||||
|
{
|
||||||
|
name = "javascript";
|
||||||
|
language-servers = [
|
||||||
|
"vtsls"
|
||||||
|
"scls"
|
||||||
|
];
|
||||||
|
auto-format = true;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "jsx";
|
||||||
|
language-servers = [
|
||||||
|
"vtsls"
|
||||||
|
"scls"
|
||||||
|
];
|
||||||
|
auto-format = true;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "typescript";
|
||||||
|
language-servers = [
|
||||||
|
"vtsls"
|
||||||
|
"scls"
|
||||||
|
];
|
||||||
|
auto-format = true;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "tsx";
|
||||||
|
language-servers = [
|
||||||
|
"vtsls"
|
||||||
|
"scls"
|
||||||
|
];
|
||||||
|
auto-format = true;
|
||||||
|
}
|
||||||
{
|
{
|
||||||
name = "svelte";
|
name = "svelte";
|
||||||
formatter = {
|
formatter = {
|
||||||
command = "oxfmt";
|
command = "${pkgs.coreutils}/bin/env";
|
||||||
args = [ "--stdin-filepath=%{buffer_name}" ];
|
args = [
|
||||||
|
"NODE_PATH=%{workspace_directory}/node_modules"
|
||||||
|
"oxfmt"
|
||||||
|
"--stdin-filepath=%{buffer_name}"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
auto-format = true;
|
auto-format = true;
|
||||||
language-servers = [
|
language-servers = [
|
||||||
"scls"
|
"scls"
|
||||||
"svelteserver"
|
"svelteserver"
|
||||||
|
"tailwindcss-ls"
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
flake.modules.homeManager.keyring = {
|
||||||
|
services.gnome-keyring.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -17,7 +17,6 @@ in
|
|||||||
settings = {
|
settings = {
|
||||||
trusted-users = [ "@wheel" ];
|
trusted-users = [ "@wheel" ];
|
||||||
use-xdg-base-directories = true;
|
use-xdg-base-directories = true;
|
||||||
auto-optimise-store = true;
|
|
||||||
|
|
||||||
experimental-features = [
|
experimental-features = [
|
||||||
"nix-command"
|
"nix-command"
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ in
|
|||||||
homeModules.primary-terminal-kitty
|
homeModules.primary-terminal-kitty
|
||||||
homeModules.terminal-foot
|
homeModules.terminal-foot
|
||||||
homeModules.noctalia
|
homeModules.noctalia
|
||||||
|
homeModules.keyring
|
||||||
{
|
{
|
||||||
programs.discord = {
|
programs.discord = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user