Compare commits

..

10 commits

10 changed files with 167 additions and 44 deletions

90
flake.lock generated
View file

@ -189,6 +189,39 @@
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flakey-profile": {
"locked": {
"lastModified": 1712898590,
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
"owner": "lf-",
"repo": "flakey-profile",
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
"type": "github"
},
"original": {
"owner": "lf-",
"repo": "flakey-profile",
"type": "github"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
@ -604,6 +637,41 @@
"type": "github"
}
},
"lix": {
"flake": false,
"locked": {
"lastModified": 1737234286,
"narHash": "sha256-pgDJZjj4jpzkFxsqBTI/9Yb0n3gW+DvDtuv9SwQZZcs=",
"rev": "079528098f5998ba13c88821a2eca1005c1695de",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/079528098f5998ba13c88821a2eca1005c1695de.tar.gz?rev=079528098f5998ba13c88821a2eca1005c1695de"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/lix/archive/release-2.92.tar.gz"
}
},
"lix-module": {
"inputs": {
"flake-utils": "flake-utils_2",
"flakey-profile": "flakey-profile",
"lix": "lix",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1742943028,
"narHash": "sha256-fprwZKE1uMzO9tiWWOrmLWBW3GPkMayQfb0xOvVFIno=",
"rev": "868d97695bab9d21f6070b03957bcace249fbe3c",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/868d97695bab9d21f6070b03957bcace249fbe3c.tar.gz?rev=868d97695bab9d21f6070b03957bcace249fbe3c"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.92.0-3.tar.gz"
}
},
"nixpak": {
"inputs": {
"flake-parts": [
@ -765,10 +833,11 @@
"hyprland": "hyprland",
"impermanence": "impermanence",
"lanzaboote": "lanzaboote",
"lix-module": "lix-module",
"nixpkgs": "nixpkgs_2",
"quickshell": "quickshell",
"schizofox": "schizofox",
"systems": "systems_3"
"systems": "systems_4"
}
},
"rust-overlay": {
@ -821,7 +890,7 @@
"nixpak": "nixpak",
"nixpkgs": "nixpkgs_3",
"searx-randomizer": "searx-randomizer",
"systems": "systems_2"
"systems": "systems_3"
},
"locked": {
"lastModified": 1744892989,
@ -876,6 +945,21 @@
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
@ -890,7 +974,7 @@
"type": "github"
}
},
"systems_3": {
"systems_4": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",

View file

@ -13,21 +13,23 @@
})
pkgsFor;
formatter.x86_64-linux = inputs.nixpkgs.legacyPackages.x86_64-linux.alejandra;
formatter = eachSystem (system: pkgsFor.${system}.alejandra);
packages = eachSystem (
system: {
inherit
(import ./packages rec {
pkgs = pkgsFor.${system};
helix = inputs.helix.packages.${pkgs.system}.default;
})
fish
wrapped-helix
kakoune
;
}
);
packages =
lib.mapAttrs (
system: pkgs: {
inherit
(import ./packages {
inherit pkgs;
helix = inputs.helix.packages.${system}.default;
})
fish
wrapped-helix
kakoune
;
}
)
pkgsFor;
apps = eachSystem (system: let
inherit (inputs.self.packages.${system}) fish wrapped-helix;
@ -72,5 +74,10 @@
# Mismatched system dependencies will lead to crashes and other issues.
inputs.nixpkgs.follows = "nixpkgs";
};
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.92.0-3.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
};
};
}

View file

@ -36,7 +36,7 @@ in {
udisks2.enable = true;
};
virtualisation.docker.enable = true;
virtualisation.docker.enable = false;
meta = {
mainUser.gitSigningKey = "";

View file

@ -43,7 +43,6 @@ in {
logiops
mpv
nautilus
nextcloud-client
nheko
nicotine-plus
obsidian

View file

@ -18,7 +18,7 @@
locked-title = "no";
font = "Iosevka Nerd Font:size=14";
font-bold = "Iosevka Nerd Font:size=14";
font-bold = "Iosevka Nerd Font:size=14:style=Bold";
line-height = 20;
letter-spacing = 0;

View file

@ -30,19 +30,19 @@ in {
# User = "cr";
# Group = "cr";
Keyringmode = "shared";
DevicePolicy = "closed";
PrivateDevices = true;
PrivateTmp = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectControlGroup = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
# Keyringmode = "shared";
# DevicePolicy = "closed";
# PrivateDevices = true;
# PrivateTmp = true;
# ProtectClock = true;
# ProtectControlGroups = true;
# ProtectControlGroup = true;
# ProtectKernelLogs = true;
# ProtectKernelModules = true;
# ProtectKernelTunables = true;
ProtectSystem = "strict";
SystemCallFilter = "~@clock @cpu-emulation @debug @obsolete @module @mount @raw-io @reboot @swap @privileged";
# ProtectSystem = "strict";
# SystemCallFilter = "~@clock @cpu-emulation @debug @obsolete @module @mount @raw-io @reboot @swap @privileged";
};
};
};

View file

@ -12,10 +12,11 @@ in {
imports = [
./documentation.nix # nixos documentation
./nixpkgs.nix # global nixpkgs configuration
inputs.lix-module.nixosModules.default
];
nix = {
package = pkgs.lix;
# package = pkgs.lix;
# fuck channels, no thanks
channel.enable = mkForce false;
@ -98,6 +99,7 @@ in {
"nix-command" # experimental nix commands
"cgroups" # allow nix to execute builds inside cgroups
"repl-flake" # nh os repl needs this on lix
"pipe-operator"
];
# Ensures that the result of Nix expressions is fully determined by

View file

@ -31,7 +31,7 @@ in {
"$mainMod, RETURN, exec, foot"
"$mainMod, Q, killactive"
"$mainMod, F, fullscreen, 0"
"$mainMod, D, exec, ${pkgs.procps}/bin/pkill fuzzel || ${getExe pkgs.fuzzel}"
"$mainMod, D, exec, ${getExe' inputs.quickshell.packages.${pkgs.stdenv.system}.default "quickshell"} msg launcher open"
"$mainMod, SPACE, togglefloating, active"
"$mainMod ALT, L, exec, ${getExe pkgs.hyprlock}"

View file

@ -5,7 +5,7 @@ _: {
rounding = 10;
rounding_power = 3;
blur = {
enabled = false;
enabled = true;
size = 3;
passes = 2;
};
@ -19,13 +19,13 @@ _: {
animations = {
enabled = true;
};
animation = [
"windows, 1, 4, dupa, popin"
"windowsOut, 1, 4, dupa, slide"
"border, 1, 15, default"
"fade, 1, 10, default"
"workspaces, 1, 5, dupa, slidevert"
];
animation = [
"windows, 1, 4, dupa, popin"
"windowsOut, 1, 4, dupa, slide"
"border, 1, 15, default"
"fade, 1, 10, default"
"workspaces, 1, 5, dupa, slidevert"
];
cursor = {
hide_on_key_press = true;
@ -59,5 +59,11 @@ _: {
"center, class: ^(code), title: ^(Open*)"
"float, class:^(org.keepassxc.KeePassXC)$"
];
layerrule = [
"blur, shell:launcher"
"ignorezero, shell:launcher"
"animation popin 90%, shell:launcher"
];
};
}

View file

@ -31,6 +31,7 @@
tinymist,
typescript-language-server,
vscode-langservers-extracted,
simple-completion-language-server,
helix,
...
}: let
@ -136,6 +137,12 @@
auto-format = true;
language-servers = ["dprint" "typescript-language-server"];
}
{
name = "jjdescription";
scope = "source.jjdescription";
file-types = ["jjdescription"];
language-servers = ["scls"];
}
{
name = "json";
formatter = mark "json";
@ -144,10 +151,11 @@
name = "markdown";
auto-format = true;
formatter = mark "md";
language-servers = ["scls" "marksman"];
}
{
name = "nix";
language-servers = ["nil"];
language-servers = ["nil" "scls"];
}
{
name = "qml";
@ -208,7 +216,10 @@
rust-analyzer = {
config = {
check.command = "clippy";
check = {
command = "clippy";
extraArgs = ["--" "-W" "clippy::pedantic" "-W" "clippy::nursery" "-W" "clippy::perf"];
};
cargo.features = "all";
};
};
@ -255,6 +266,20 @@
config.nil.formatting.command = ["${getExe alejandra}" "-q"];
};
scls = {
command = getExe simple-completion-language-server;
config = {
max_completion_items = 100; # set max completion results len for each group: words, snippets, unicode-input
feature_words = true; # enable completion by word
feature_snippets = true; # enable snippets
snippets_first = true; # completions will return before snippets by default
snippets_inline_by_word_tail = false; # suggest snippets by WORD tail, for example text `xsq|` become `x^2|` when snippet `sq` has body `^2`
feature_unicode_input = false; # enable "unicode input"
feature_paths = false; # enable path completion
feature_citations = false; # enable citation completion (only on `citation` feature enabled)
};
};
typescript-language-server = {
command = lib.getExe typescript-language-server;
args = ["--stdio"];