Compare commits

...

8 commits

Author SHA1 Message Date
cf545e9bf8
uärgh 2025-05-02 16:14:21 +02:00
4e44601002
flake.lock: Update 2025-05-02 15:38:15 +02:00
d2a9b19736
yeet 2025-05-02 15:38:02 +02:00
d56784fcc3
shader shader meow 2025-05-02 15:37:43 +02:00
2158be51ed
fix helix bind 2025-05-02 15:37:26 +02:00
e0d68a2531
🔧🔧🔧🔧🔧🔧 2025-05-02 15:36:21 +02:00
05c04b926e
unfuck_browser 2025-05-02 15:36:02 +02:00
458a56ab4d
do editor fuckery 2025-05-02 15:34:47 +02:00
16 changed files with 413 additions and 315 deletions

150
flake.lock generated
View file

@ -5,11 +5,11 @@
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1732200724,
"narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
"lastModified": 1745523430,
"narHash": "sha256-EAYWV+kXbwsH+8G/8UtmcunDeKwLwSOyfcmzZUkWE/c=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "153d52373b0fb2d343592871009a286ec8837aec",
"rev": "58bfe2553d937d8af0564f79d5b950afbef69717",
"type": "github"
},
"original": {
@ -69,11 +69,11 @@
},
"crane": {
"locked": {
"lastModified": 1742394900,
"narHash": "sha256-vVOAp9ahvnU+fQoKd4SEXB2JG2wbENkpqcwlkIXgUC0=",
"lastModified": 1745454774,
"narHash": "sha256-oLvmxOnsEKGtwczxp/CwhrfmQUG2ym24OMWowcoRhH8=",
"owner": "ipetkov",
"repo": "crane",
"rev": "70947c1908108c0c551ddfd73d4f750ff2ea67cd",
"rev": "efd36682371678e2b6da3f108fdb5c613b3ec598",
"type": "github"
},
"original": {
@ -105,11 +105,11 @@
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1742452566,
"narHash": "sha256-sVuLDQ2UIWfXUBbctzrZrXM2X05YjX08K7XHMztt36E=",
"lastModified": 1746167999,
"narHash": "sha256-18XGHsjk/5H8F0OGUCG56CeeW1u6qQ7tAfQK3azlwWg=",
"owner": "nix-community",
"repo": "fenix",
"rev": "7d9ba794daf5e8cc7ee728859bc688d8e26d5f06",
"rev": "bcbc23a4f3391c1c3657f1847cb693aaea3aed76",
"type": "github"
},
"original": {
@ -143,11 +143,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1741628778,
"narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
"lastModified": 1744642301,
"narHash": "sha256-5A6LL7T0lttn1vrKsNOKUk9V0ittdW0VEqh6AtefxJ4=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
"rev": "59e3de00f01e5adb851d824cf7911bd90c31083a",
"type": "github"
},
"original": {
@ -308,11 +308,11 @@
]
},
"locked": {
"lastModified": 1741379162,
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
"lastModified": 1742649964,
"narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
"rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
"type": "github"
},
"original": {
@ -367,11 +367,11 @@
]
},
"locked": {
"lastModified": 1743513930,
"narHash": "sha256-ExRQkfXHwHbf6nKgnwDB0vSNInUS16cubvEVm3PrHeQ=",
"lastModified": 1746177088,
"narHash": "sha256-hmHKl4meWr6ryzqQAwRD3+3Ihfb/Y/0CbK+WnE+oa6Q=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "55cf1f16324e694c991e846ad5fc897f0f75ac64",
"rev": "f045bd46b73c3b0ed4e46cdb6036b3d5823d7dee",
"type": "github"
},
"original": {
@ -388,11 +388,11 @@
]
},
"locked": {
"lastModified": 1741635347,
"narHash": "sha256-2aYfV44h18alHXopyfL4D9GsnpE5XlSVkp4MGe586VU=",
"lastModified": 1746040799,
"narHash": "sha256-osgPX/SzIpkR50vev/rqoTEAVkEcOWXoQXmbzsaI4KU=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "7fb8678716c158642ac42f9ff7a18c0800fea551",
"rev": "5f217e5a319f6c186283b530f8c975e66c028433",
"type": "github"
},
"original": {
@ -448,11 +448,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1743513993,
"narHash": "sha256-4ActcWd2XOBei7ZcDrL8zWxUWh1TxwwsAp6CTwlgjog=",
"lastModified": 1746142190,
"narHash": "sha256-t36K3TWLMRWoGyjYyo+H8bBquDcp4orZqNZVagWNjwY=",
"owner": "sodiboo",
"repo": "niri-flake",
"rev": "cdca190c377558ee9109d848b20ecb3bf941ef88",
"rev": "af701c1c16c289b1b14f333d844b4f756308d244",
"type": "github"
},
"original": {
@ -481,11 +481,11 @@
"niri-unstable": {
"flake": false,
"locked": {
"lastModified": 1743492917,
"narHash": "sha256-OqLDg0Ody1HX23hgjvjIkfZPNhYKxbkj/ONcDjdD4Ik=",
"lastModified": 1746124654,
"narHash": "sha256-LmhkAt2KLvf8lp+kEUQuTFmmv7iXO8IkwwSaPasfXJw=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "60034a57efd9c8130b05797b37cbc187a8c13145",
"rev": "6c9705dd4b2eaba25f024d1a3efd7943fd393632",
"type": "github"
},
"original": {
@ -502,11 +502,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1743453178,
"narHash": "sha256-TdVPzQabTKVeX50Mbwu6Tq2l65e5WQk2o3S4NHyRBA0=",
"lastModified": 1746149931,
"narHash": "sha256-oeTNy7tgzYaw53yYtkfe9kayuqITHiKOgdu/tEarDyo=",
"owner": "kaylorben",
"repo": "nixcord",
"rev": "ea80fdaf62168f85ce9813bc8f21fe45f892f5e7",
"rev": "0b3661345df57314322607738b38509be4a34d80",
"type": "github"
},
"original": {
@ -517,11 +517,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1743420942,
"narHash": "sha256-b/exDDQSLmENZZgbAEI3qi9yHkuXAXCPbormD8CSJXo=",
"lastModified": 1745955289,
"narHash": "sha256-mmV2oPhQN+YF2wmnJzXX8tqgYmUYXUj3uUUBSTmYN5o=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "de6fc5551121c59c01e2a3d45b277a6d05077bc4",
"rev": "72081c9fbbef63765ae82bff9727ea79cc86bd5b",
"type": "github"
},
"original": {
@ -531,11 +531,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1743315132,
"narHash": "sha256-6hl6L/tRnwubHcA4pfUUtk542wn2Om+D4UnDhlDW9BE=",
"lastModified": 1745930157,
"narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "52faf482a3889b7619003c0daec593a1912fddc1",
"rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae",
"type": "github"
},
"original": {
@ -559,11 +559,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1743367904,
"narHash": "sha256-sOos1jZGKmT6xxPvxGQyPTApOunXvScV4lNjBCXd/CI=",
"lastModified": 1746055187,
"narHash": "sha256-3dqArYSMP9hM7Qpy5YWhnSjiqniSaT2uc5h2Po7tmg0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7ffe0edc685f14b8c635e3d6591b0bbb97365e6c",
"rev": "3e362ce63e16b9572d8c2297c04f7c19ab6725a5",
"type": "github"
},
"original": {
@ -575,11 +575,11 @@
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1743367904,
"narHash": "sha256-sOos1jZGKmT6xxPvxGQyPTApOunXvScV4lNjBCXd/CI=",
"lastModified": 1746055187,
"narHash": "sha256-3dqArYSMP9hM7Qpy5YWhnSjiqniSaT2uc5h2Po7tmg0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7ffe0edc685f14b8c635e3d6591b0bbb97365e6c",
"rev": "3e362ce63e16b9572d8c2297c04f7c19ab6725a5",
"type": "github"
},
"original": {
@ -590,11 +590,11 @@
},
"nixpkgs-unstable-small": {
"locked": {
"lastModified": 1743472173,
"narHash": "sha256-xwNv3FYTC5pl4QVZ79gUxqCEvqKzcKdXycpH5UbYscw=",
"lastModified": 1746165930,
"narHash": "sha256-MkYNib57sO+nI6KAbpGLseXFmJVZ04QP6Celntnay8E=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "88e992074d86ad50249de12b7fb8dbaadf8dc0c5",
"rev": "97e6d418edc7a9a85d505f96f1e65ca9d6a5f7a8",
"type": "github"
},
"original": {
@ -605,11 +605,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1742800061,
"narHash": "sha256-oDJGK1UMArK52vcW9S5S2apeec4rbfNELgc50LqiPNs=",
"lastModified": 1744868846,
"narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1750f3c1c89488e2ffdd47cab9d05454dddfb734",
"rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c",
"type": "github"
},
"original": {
@ -621,11 +621,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1743315132,
"narHash": "sha256-6hl6L/tRnwubHcA4pfUUtk542wn2Om+D4UnDhlDW9BE=",
"lastModified": 1746141548,
"narHash": "sha256-IgBWhX7A2oJmZFIrpRuMnw5RAufVnfvOgHWgIdds+hc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "52faf482a3889b7619003c0daec593a1912fddc1",
"rev": "f02fddb8acef29a8b32f10a335d44828d7825b78",
"type": "github"
},
"original": {
@ -636,11 +636,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1741513245,
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
"lastModified": 1745930157,
"narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
"rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae",
"type": "github"
},
"original": {
@ -676,11 +676,11 @@
"treefmt-nix": "treefmt-nix_2"
},
"locked": {
"lastModified": 1741693509,
"narHash": "sha256-emkxnsZstiJWmGACimyAYqIKz2Qz5We5h1oBVDyQjLw=",
"lastModified": 1746056780,
"narHash": "sha256-/emueQGaoT4vu0QjU9LDOG5roxRSfdY0K2KkxuzazcM=",
"owner": "nix-community",
"repo": "NUR",
"rev": "5479646b2574837f1899da78bdf9a48b75a9fb27",
"rev": "d476cd0972dd6242d76374fcc277e6735715c167",
"type": "github"
},
"original": {
@ -708,11 +708,11 @@
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1742296961,
"narHash": "sha256-gCpvEQOrugHWLimD1wTFOJHagnSEP6VYBDspq96Idu0=",
"lastModified": 1746093169,
"narHash": "sha256-3gmUmzIzfzlgF/b4HXvtoBIP4bKofVeEubX7LcPBYLo=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "15d87419f1a123d8f888d608129c3ce3ff8f13d4",
"rev": "298fa81aacda7b06de4db55c377b1aa081906bc9",
"type": "github"
},
"original": {
@ -773,11 +773,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1743496321,
"narHash": "sha256-xhHg8ixBhZngvGOMb2SJuJEHhHA10n8pA02fEKuKzek=",
"lastModified": 1746158690,
"narHash": "sha256-Pe2emz36QL8GOILXvvmH/agqkspZFrcOrQxv6uufaEc=",
"owner": "danth",
"repo": "stylix",
"rev": "54721996d6590267d095f63297d9051e9342a33d",
"rev": "bc38629511dd9cc78c5ca37a6e546fa66330d50e",
"type": "github"
},
"original": {
@ -882,11 +882,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1741468895,
"narHash": "sha256-YKM1RJbL68Yp2vESBqeZQBjTETXo8mCTTzLZyckCfZk=",
"lastModified": 1744974599,
"narHash": "sha256-Fg+rdGs5FAgfkYNCs74lnl8vkQmiZVdBsziyPhVqrlY=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "47c8c7726e98069cade5827e5fb2bfee02ce6991",
"rev": "28c26a621123ad4ebd5bbfb34ab39421c0144bdd",
"type": "github"
},
"original": {
@ -898,11 +898,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1740877430,
"narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
"lastModified": 1745111349,
"narHash": "sha256-udV+nHdpqgkJI9D0mtvvAzbqubt9jdifS/KhTTbJ45w=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
"rev": "e009f18a01182b63559fb28f1c786eb027c3dee9",
"type": "github"
},
"original": {
@ -935,11 +935,11 @@
]
},
"locked": {
"lastModified": 1742370146,
"narHash": "sha256-XRE8hL4vKIQyVMDXykFh4ceo3KSpuJF3ts8GKwh5bIU=",
"lastModified": 1744961264,
"narHash": "sha256-aRmUh0AMwcbdjJHnytg1e5h5ECcaWtIFQa6d9gI85AI=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "adc195eef5da3606891cedf80c0d9ce2d3190808",
"rev": "8d404a69efe76146368885110f29a2ca3700bee6",
"type": "github"
},
"original": {
@ -1013,11 +1013,11 @@
"xwayland-satellite-unstable": {
"flake": false,
"locked": {
"lastModified": 1743346993,
"narHash": "sha256-i7rWd/5BcqLgQEtB5L/6gKN5R5GUJcmm34F+iBivH60=",
"lastModified": 1745730655,
"narHash": "sha256-Tdsw5lD/XM8i1GnQr7ombqnEaCpt/voPs2AbjuYBbjI=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "45c055696437a08e3989d9b91d9c617b84cc2bc3",
"rev": "56a681bfecc5831f41f8eb0ec8c7e96c6b277153",
"type": "github"
},
"original": {

View file

@ -94,7 +94,7 @@
inherit pkgs-unstable-small pkgs-stable typst-within;
};
home-manager.sharedModules = [
inputs.nixcord.homeManagerModules.nixcord
inputs.nixcord.homeModules.nixcord
];
home-manager.users.jade =
{

View file

@ -3,7 +3,6 @@
# and in the NixOS manual (accessible by running nixos-help).
{
pkgs,
pkgs-stable,
...
}:
{
@ -16,6 +15,7 @@
jade = {
hwKey.pamAuth.enable = true;
editors.zed.enable = true;
desktop = {
media = {
obs = true;

View file

@ -9,7 +9,7 @@ build:
tbuild:
sudo nixos-rebuild switch --flake . --fast --log-format multiline-with-logs --show-trace
update: update-typst-configs
update:
nix flake update --commit-lock-file --log-format multiline
update-typst-configs:

View file

@ -1,6 +1,7 @@
{ ... }:
{
imports = [
./editors
./shell
./desktop
./desktop-legacy

View file

@ -21,7 +21,7 @@ with lib;
}:
{
programs.nixcord = {
enable = true;
enable = false;
vesktop = {
enable = true;
# autoScroll.enable = true;
@ -32,6 +32,7 @@ with lib;
};
};
home.packages = with pkgs; [
vesktop
signal-desktop
mumble
element-desktop

View file

@ -51,7 +51,7 @@
profiles.jade = {
search = {
force = true;
default = "DuckDuckGo";
default = "ddg";
engines = {
"Nix Packages" = {
urls = [
@ -200,8 +200,8 @@
}
];
};
"Bing".metaData.hidden = true;
"Google".metaData.hidden = true;
"bing".metaData.hidden = true;
"google".metaData.hidden = true;
"Amazon.de".metaData.hidden = true;
};
};

View file

@ -17,13 +17,17 @@ vec4 gen_px_squares(vec2 coords, vec4 color) {
float p = niri_clamped_progress;
float mix_alpha =
1. - clamp((p - length(coords)) * 3.0, 0.0, 1.0);
clamp((1. - clamp((p - length(coords)) * 3.0, 0.0, 1.0)) * 1.3, 0., 1.);
// vec4 blue = vec4(0.3568, 0.8078, 0.9803, color.a);
vec3 blue = vec3(0.552, 0.631, 1.);
vec3 dblue = vec3(0.419, 0.482, 0.839);
// vec3 blue = vec3(0.552, 0.631, 1.);
// vec3 dblue = vec3(0.419, 0.482, 0.839);
// vec3 dblue = vec3(float(0xd6) / 255., float(0x5d) / 255., float(0x0e) / 255.);
// vec3 blue = vec3(float(0xfe) / 255., float(0x80) / 255., float(0x19) / 255.);
vec3 dblue = vec3(float(0xdd) / 255., float(0xdd) / 255., float(0xdd) / 255.);
vec3 blue = vec3(float(0x55) / 255., float(0x7f) / 255., float(0xff) / 255.);
if (color.a != 0. && p * p >= dot(coords, coords))
return mix(color, vec4(grid_colored(coords_, dblue, blue), color.a), mix_alpha * 0.5);
return mix(color, vec4(grid_colored(coords_, dblue, blue), color.a), mix_alpha);
else return vec4(0.);
}

View file

@ -0,0 +1,15 @@
{ ... }:
{
programs.niri.enable = true;
imports = [
./zed
];
home-manager.users.jade =
{ pkgs, ... }:
{
home.packages = [ pkgs.nixd ];
imports = [
./helix
];
};
}

View file

@ -0,0 +1,41 @@
{ ... }:
{
programs.helix.settings.keys = {
normal = {
space."=" = ":fmt";
space.ret = "@[<space>]<space>";
space.space = "@ms<space>";
# smart tab++
tab = "move_parent_node_end";
S-tab = "move_parent_node_start";
A-S = "@S[\\s]+<ret>";
"'" = {
D = "@<C-w>sgd";
F = "@<C-w>sgy";
d = "@<C-w>vgd";
f = "@<C-w>vgy";
h = ":toggle-option lsp.display-inlay-hints";
t = ":pipe flip-bool";
};
};
insert = {
up = "no_op";
down = "no_op";
left = "no_op";
right = "no_op";
pageup = "no_op";
pagedown = "no_op";
home = "no_op";
end = "no_op";
# smart tab ++
S-tab = "move_parent_node_start";
};
select = {
# smart tab++
tab = "extend_parent_node_end";
S-tab = "extend_parent_node_start";
};
};
}

View file

@ -0,0 +1,113 @@
{ config, pkgs, ... }:
{
imports = [
./binds.nix
./settings.nix
];
home = {
sessionVariables.EDITOR = "hx";
packages = [
pkgs.wl-clipboard-rs
pkgs.nil
pkgs.vscode-langservers-extracted
pkgs.nodePackages.typescript-language-server
pkgs.emmet-language-server
pkgs.jdt-language-server
pkgs.tinymist
pkgs.typstyle
];
};
programs.helix = {
enable = true;
defaultEditor = true;
languages = {
language-server = {
"nu-builtin-lsp" = {
command = "${pkgs.nushell}/bin/nu";
args = [ "--lsp" ];
};
"rust-analyzer" = {
config = {
check.command = "check";
completion.snippets.custom = {
"pub fn" = {
prefix = [
"pfn"
"pubfn"
];
postfix = [ "pfn" ];
body = [
"pub fn $\{receiver\}() {"
"\\t$1"
"}"
];
scope = "type";
};
};
completion.termSearch.enable = true;
diagnostics.enable = true;
inlayHints = {
bindingModeHints.enable = true;
closureCaptureHints.enable = true;
closureReturnTypeHints.enable = true;
discriminantHints.enable = true;
expressionAdjustmentHints = {
hideOutsideUnsafe = true;
};
lifetimeElisionHints.enable = "skip_trivial";
};
interpret.tests = true;
lens = {
references = {
adt.enable = true;
trait.enable = true;
};
};
typing.autoClosingAngleBrackets.enable = true;
};
};
"emmet-language-server" = {
command = "emmet-language-server";
args = [ "--stdio" ];
};
"psalm" = {
command = "psalm";
args = [ "--language-server" ];
};
"tinymist" = {
config = {
exportPdf = "onType";
formatterMode = "typstyle";
};
};
};
language = [
{
name = "nu";
language-servers = [ "nu-builtin-lsp" ];
}
{
name = "php";
language-servers = [ "psalm" ];
}
{
name = "nix";
formatter = {
command = "${pkgs.nixfmt-rfc-style}/bin/nixfmt";
args = [ "--quiet" ];
};
auto-format = true;
}
{
name = "html";
roots = [ ".git" ];
language-servers = [
"vscode-html-language-server"
"emmet-language-server"
];
auto-format = false;
}
];
};
};
}

View file

@ -0,0 +1,74 @@
{ ... }:
{
programs.helix.settings = {
theme = "gruvbox_dark_hard";
editor = {
line-number = "relative";
bufferline = "multiple";
color-modes = true;
cursorline = true;
auto-save = {
after-delay.enable = true;
after-delay.timeout = 10000;
};
auto-format = true;
end-of-line-diagnostics = "hint";
# slightly optimized based on my layout
jump-label-alphabet = "jfkdhaslgwenuiopbcmyzqrtvx";
clipboard-provider = "wayland";
inline-diagnostics = {
cursor-line = "hint";
};
lsp = {
display-messages = true;
display-inlay-hints = true;
};
popup-border = "popup";
shell = [
"nu"
"-c"
];
statusline.left = [
"mode"
"spinner"
"spacer"
"version-control"
"file-name"
"diagnostics"
"read-only-indicator"
"file-modification-indicator"
"spacer"
];
statusline.right = [
"workspace-diagnostics"
"register"
"position"
"selections"
"file-encoding"
"file-type"
];
idle-timeout = 50;
completion-timeout = 100;
indent-guides = {
render = true;
character = "";
skip-levels = 3;
};
soft-wrap = {
enable = true;
};
whitespace = {
render = {
space = "none";
tab = "all";
newline = "none";
};
characters = {
nbsp = "·";
tab = "";
};
};
};
};
}

View file

@ -0,0 +1,78 @@
{
pkgs,
config,
lib,
...
}:
with lib;
{
options.jade.editors = {
zed.enable = mkEnableOption "Enable Zed Editor";
};
config = mkIf config.jade.editors.zed.enable {
home-manager.users.jade =
{ pkgs, ... }:
{
programs.zed-editor = {
enable = true;
extraPackages = [
(pkgs.rustPlatform.buildRustPackage rec {
pname = "discord-presence-lsp";
version = "d6622e5d4dbbf9f61764458c2b50ba2e58789307";
cargoHash = "sha256-JLNCEeo9fKeV4vTtPs+Yj2wRO1RKP2fuetrPlXcPBjA=";
src = pkgs.fetchFromGitHub {
owner = "xhyrom";
repo = "zed-discord-presence";
rev = version;
hash = "sha256-RmpY0xkJYNDYn6SWNdKGpPetmBxf2/xY25FLeJqf0Po=";
};
cargoBuildFlags = "--package discord-presence-lsp";
})
];
extensions = [
"discord-presence" # yes, i sunk that low
"nix"
"nu"
];
userSettings = {
features = {
edit_prediction_provider = null;
};
show_edit_predictions = false;
middle_click_paste = false;
search = {
regex = true;
};
inlay_hints = {
enabled = true;
};
assistant = {
version = "2";
enabled = false;
};
diagnostics = {
include_warnings = false;
inline = {
enabled = true;
update_debounce_ms = 150;
padding = 4;
min_column = 0;
max_severity = null;
};
};
language_models = null;
vim_mode = true;
vim = {
default_mode = "helix_normal";
};
# ui_font_size = 16;
# WHY CAN I NOT OVERRIDE THIS
# habt'a lack gesoffen?!
# buffer_font_size = 16.;
};
};
};
};
}

View file

@ -14,9 +14,6 @@
"facebook.com"
"snapchat.com"
"youtube.com"
"www.youtube.com"
"google-analytics.com"
"stats.g.doubleclick.net"
"googleadservices.com"

View file

@ -1,7 +1,6 @@
{ pkgs, ... }:
{
imports = [
./helix.nix
./nu.nix
./starship.nix
./tty.nix

View file

@ -1,225 +0,0 @@
{ config, ... }:
{
home-manager.users.jade =
{
pkgs,
pkgs-stable,
...
}:
{
home = {
sessionVariables.EDITOR = "hx";
packages = [
pkgs.wl-clipboard-rs
pkgs.nil
pkgs.vscode-langservers-extracted
pkgs.nodePackages.typescript-language-server
pkgs.emmet-language-server
pkgs.jdt-language-server
pkgs.tinymist
pkgs.typstyle
];
};
programs.helix = {
enable = true;
defaultEditor = true;
settings = {
theme = "gruvbox_dark_hard";
editor = {
line-number = "relative";
bufferline = "multiple";
color-modes = true;
cursorline = true;
auto-save = {
after-delay.enable = true;
after-delay.timeout = 10000;
};
auto-format = true;
end-of-line-diagnostics = "hint";
# slightly optimized based on my layout
jump-label-alphabet = "jfkdhaslgwenuiopbcmyzqrtvx";
clipboard-provider = "wayland";
inline-diagnostics = {
cursor-line = "hint";
};
lsp = {
display-messages = true;
display-inlay-hints = true;
};
popup-border = "popup";
shell = [
"nu"
"-c"
];
statusline.left = [
"mode"
"spinner"
"spacer"
"version-control"
"file-name"
"diagnostics"
"read-only-indicator"
"file-modification-indicator"
"spacer"
];
statusline.right = [
"workspace-diagnostics"
"register"
"position"
"selections"
"file-encoding"
"file-type"
];
idle-timeout = 50;
completion-timeout = 100;
indent-guides = {
render = true;
character = "";
skip-levels = 3;
};
soft-wrap = {
enable = true;
};
whitespace = {
render = {
space = "none";
tab = "all";
newline = "none";
};
characters = {
nbsp = "·";
tab = "";
};
};
};
keys = {
normal = {
space."=" = ":fmt";
space.space = "@[<space>]<space>";
# smart tab++
tab = "move_parent_node_end";
S-tab = "move_parent_node_start";
A-S = "@S[\\s]+<ret>";
"'" = {
D = "@<C-w>sgd";
F = "@<C-w>sgy";
d = "@<C-w>vgd";
f = "@<C-w>vgy";
h = ":toggle-option lsp.display-inlay-hints";
t = ":pipe flip-bool";
};
};
insert = {
up = "no_op";
down = "no_op";
left = "no_op";
right = "no_op";
pageup = "no_op";
pagedown = "no_op";
home = "no_op";
end = "no_op";
# smart tab ++
S-tab = "move_parent_node_start";
};
select = {
# smart tab++
tab = "extend_parent_node_end";
S-tab = "extend_parent_node_start";
};
};
};
languages = {
language-server = {
"nu-builtin-lsp" = {
command = "${config.users.defaultUserShell}/bin/nu";
args = [ "--lsp" ];
};
"rust-analyzer" = {
config = {
check.command = "check";
completion.snippets.custom = {
"pub fn" = {
prefix = [
"pfn"
"pubfn"
];
postfix = [ "pfn" ];
body = [
"pub fn $\{receiver\}() {"
"\\t$1"
"}"
];
scope = "type";
};
};
completion.termSearch.enable = true;
diagnostics.enable = true;
inlayHints = {
bindingModeHints.enable = true;
closureCaptureHints.enable = true;
closureReturnTypeHints.enable = true;
discriminantHints.enable = true;
expressionAdjustmentHints = {
hideOutsideUnsafe = true;
};
lifetimeElisionHints.enable = "skip_trivial";
};
interpret.tests = true;
lens = {
references = {
adt.enable = true;
trait.enable = true;
};
};
typing.autoClosingAngleBrackets.enable = true;
};
};
"emmet-language-server" = {
command = "emmet-language-server";
args = [ "--stdio" ];
};
"psalm" = {
command = "psalm";
args = [ "--language-server" ];
};
"tinymist" = {
config = {
exportPdf = "onType";
formatterMode = "typstyle";
};
};
};
language = [
{
name = "nu";
language-servers = [ "nu-builtin-lsp" ];
}
{
name = "php";
language-servers = [ "psalm" ];
}
{
name = "nix";
formatter = {
command = "${pkgs.nixfmt-rfc-style}/bin/nixfmt";
args = [ "--quiet" ];
};
auto-format = true;
}
{
name = "html";
roots = [ ".git" ];
language-servers = [
"vscode-html-language-server"
"emmet-language-server"
];
auto-format = false;
}
];
};
};
};
}