niri, ocaml meat
This commit is contained in:
parent
cd61813078
commit
c470c63ab2
25 changed files with 583 additions and 756 deletions
799
flake.lock
generated
799
flake.lock
generated
File diff suppressed because it is too large
Load diff
|
@ -3,6 +3,7 @@
|
|||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.05";
|
||||
|
||||
nur.url = "github:/nix-community/NUR";
|
||||
|
||||
|
@ -27,7 +28,6 @@
|
|||
|
||||
flatpaks.url = "github:gmodena/nix-flatpak";
|
||||
|
||||
|
||||
madness.url = "github:antithesishq/madness";
|
||||
|
||||
nh.url = "github:viperML/nh";
|
||||
|
@ -44,12 +44,11 @@
|
|||
};
|
||||
|
||||
meat = {
|
||||
url = "path:/home/bolt/code/meat";
|
||||
url = "path:/home/bolt/code/meat-ocaml";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.lix.follows = "lix";
|
||||
inputs.lix-module.follows = "lix-module";
|
||||
inputs.nh.follows = "nh";
|
||||
inputs.rust-overlay.follows = "rust-overlay";
|
||||
};
|
||||
|
||||
comfyui.url = "path:./flakes/ComfyUI";
|
||||
|
@ -69,6 +68,8 @@
|
|||
murex-starship.url = "path:./flakes/murex-module-starship";
|
||||
|
||||
niri.url = "github:sodiboo/niri-flake";
|
||||
|
||||
ironbar.url = "github:JakeStanger/ironbar";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
|
@ -79,10 +80,8 @@
|
|||
flatpaks,
|
||||
nix-index-database,
|
||||
madness,
|
||||
lix-module,
|
||||
meat,
|
||||
comfyui,
|
||||
hyprland,
|
||||
niri,
|
||||
...
|
||||
} @ inputs: let
|
||||
|
|
14
flakes/ComfyUI-Plugins/flake.lock
generated
14
flakes/ComfyUI-Plugins/flake.lock
generated
|
@ -3,11 +3,11 @@
|
|||
"gguf": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1729651119,
|
||||
"narHash": "sha256-1TLoQS8rcJ5Y4VcWk3mAGg7/+jnjF/VN9QkhU99nCC4=",
|
||||
"lastModified": 1732317027,
|
||||
"narHash": "sha256-NX0S1Uu28Ro9lLYKI+JzBy/Gz2mNiSVu8MsdQNpdfYk=",
|
||||
"owner": "city96",
|
||||
"repo": "ComfyUI-GGUF",
|
||||
"rev": "6561064dcfb3dfa638e3739506acfd34924e1cc5",
|
||||
"rev": "57562d54a57d4beda3a94fef6f354e090aa02a77",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -18,10 +18,10 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1729880355,
|
||||
"narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=",
|
||||
"path": "/nix/store/wb6agba4kfsxpbnb5hzlq58vkjzvbsk6-source",
|
||||
"rev": "18536bf04cd71abd345f9579158841376fdd0c5a",
|
||||
"lastModified": 1732014248,
|
||||
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||
"path": "/nix/store/c9wv7i0af6mysmy65x6nvyfw5izzxv4g-source",
|
||||
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
{
|
||||
pkgs,
|
||||
src,
|
||||
...
|
||||
pkgs,
|
||||
src,
|
||||
...
|
||||
}:
|
||||
pkgs.stdenvNoCC.mkDerivation {
|
||||
pname = "comfyui-openpose-editor";
|
||||
version = "dev-${builtins.toString src.lastModified}";
|
||||
inherit src;
|
||||
pname = "comfyui-openpose-editor";
|
||||
version = "dev-${builtins.toString src.lastModified}";
|
||||
inherit src;
|
||||
|
||||
patches = [
|
||||
./openpose_no_update.patch
|
||||
];
|
||||
patches = [
|
||||
./openpose_no_update.patch
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r * $out/
|
||||
cp js/* $out/
|
||||
'';
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r * $out/
|
||||
cp js/* $out/
|
||||
'';
|
||||
}
|
||||
|
|
|
@ -1,23 +1,23 @@
|
|||
{
|
||||
pkgs,
|
||||
src,
|
||||
python3Packages,
|
||||
...
|
||||
pkgs,
|
||||
src,
|
||||
python3Packages,
|
||||
...
|
||||
}: let
|
||||
inherit (python3Packages) tensorrt onnx;
|
||||
inherit (python3Packages) tensorrt onnx;
|
||||
in
|
||||
pkgs.stdenvNoCC.mkDerivation {
|
||||
pname = "comfyui-tensorrt";
|
||||
version = "dev-${builtins.toString src.lastModified}";
|
||||
src = src;
|
||||
pkgs.stdenvNoCC.mkDerivation {
|
||||
pname = "comfyui-tensorrt";
|
||||
version = "dev-${builtins.toString src.lastModified}";
|
||||
src = src;
|
||||
|
||||
propagatedBuildInputs = [
|
||||
tensorrt
|
||||
onnx
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
tensorrt
|
||||
onnx
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r * $out
|
||||
'';
|
||||
}
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r * $out
|
||||
'';
|
||||
}
|
||||
|
|
14
flakes/ComfyUI/flake.lock
generated
14
flakes/ComfyUI/flake.lock
generated
|
@ -3,11 +3,11 @@
|
|||
"comfyui": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1730402285,
|
||||
"narHash": "sha256-Al5oTuy6LsVpfOLHJ6YkY1Suc3HEXc8eR7jKJszli5c=",
|
||||
"lastModified": 1732327155,
|
||||
"narHash": "sha256-3k+qoBQjMKMnnGbtpptWwLRrrtsYIW5qIeHtm/T5G9Q=",
|
||||
"owner": "comfyanonymous",
|
||||
"repo": "ComfyUI",
|
||||
"rev": "cc9cf6d1bd957d764ad418258b61d7e08187573b",
|
||||
"rev": "839ed3368efd0f61a2b986f57fe9e0698fd08e9f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -18,10 +18,10 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1729880355,
|
||||
"narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=",
|
||||
"path": "/nix/store/wb6agba4kfsxpbnb5hzlq58vkjzvbsk6-source",
|
||||
"rev": "18536bf04cd71abd345f9579158841376fdd0c5a",
|
||||
"lastModified": 1732014248,
|
||||
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||
"path": "/nix/store/c9wv7i0af6mysmy65x6nvyfw5izzxv4g-source",
|
||||
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
pkgs,
|
||||
src,
|
||||
...
|
||||
}:
|
||||
pkgs.stdenvNoCC.mkDerivation {
|
||||
inherit src;
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
{
|
||||
|
||||
outputs = { nixpkgs, ... }: let
|
||||
pkgs = import nixpkgs {};
|
||||
in {
|
||||
|
||||
packages.x86_64-linux.meat = pkgs.callPackage ./default.nix;
|
||||
|
||||
};
|
||||
}
|
|
@ -1,138 +0,0 @@
|
|||
#!/usr/bin/env murex
|
||||
|
||||
config: set proc force-tty true
|
||||
config: set proc strict-types true
|
||||
|
||||
args meat_args %{
|
||||
AllowAdditional: true
|
||||
Flags: {
|
||||
--all: bool
|
||||
-a: --all
|
||||
}
|
||||
}
|
||||
|
||||
catch {
|
||||
err $meat_args.error
|
||||
exit 1
|
||||
}
|
||||
|
||||
function meat {
|
||||
if { is-null $ENV.FLAKE } {
|
||||
meat_print(NO RECIPE FOUND)
|
||||
exit
|
||||
}
|
||||
$pd = $PWD
|
||||
cd $ENV.FLAKE
|
||||
meat_print "----- MEAT ----------------------------------------" true
|
||||
$a = $args[Additional]
|
||||
if { $a -> len } then {
|
||||
meat_parse_cmd $a
|
||||
} else {
|
||||
meat_print_help
|
||||
}
|
||||
meat_print "---------------------------------------------------" true
|
||||
cd $pd
|
||||
}
|
||||
|
||||
function meat_print (t: str, !title: bool [false]) {
|
||||
if {$title} {
|
||||
out (
|
||||
$t
|
||||
)
|
||||
|
||||
} else {
|
||||
out (
|
||||
$t
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
function meat_parse_cmd (args: json) {
|
||||
out args $args
|
||||
out arglen $args -> count
|
||||
out argscast $args -> cast json
|
||||
out argscast $args -> cast json -> count
|
||||
$cmd = $args[ 0 ]
|
||||
out cmd $cmd
|
||||
if { ${$args -> len} > 1 } then {
|
||||
$opts = ${$args -> ![ 0 ]}
|
||||
}
|
||||
out opts $opts
|
||||
switch $cmd {
|
||||
case "yum" {
|
||||
meat_print (CONSUMING DELICIOUS MEATS..)
|
||||
nh os switch @opts
|
||||
}
|
||||
case "poke" {
|
||||
meat_print (PREPARING SUSPICIOUS MEATS..)
|
||||
nh os test @opts
|
||||
}
|
||||
case "cook" {
|
||||
meat_print (PREPARING MEATS..)
|
||||
nh os build @opts
|
||||
}
|
||||
case "fresh" {
|
||||
meat_print (PROCESSING FRESH MEATS..)
|
||||
meat_do_fresh $opts
|
||||
}
|
||||
case "look" {
|
||||
meat_print (INSPECTING MEAT..)
|
||||
nix flake info @opts
|
||||
}
|
||||
case "gut" {
|
||||
meat_print (CLEANING MEAT STORES..)
|
||||
nh clean all @opts
|
||||
}
|
||||
default { meat_print_help }
|
||||
}
|
||||
}
|
||||
|
||||
function meat_print_help {
|
||||
out ( FRESH - HUNT LATEST MEATS
|
||||
..N - HUNT LATEST SUBMEATS OF N
|
||||
..-A - HUNT ALL SUBMEATS
|
||||
YUM - CONSUME DELICIOUS MEATS
|
||||
COOK - ONLY PREPARE MEATS
|
||||
POKE - TASTE SUSPICIOUS MEATS
|
||||
GUT - CLEAN MEAT STORES
|
||||
LOOK - INSPECT MEAT)
|
||||
}
|
||||
|
||||
function meat_do_fresh (!opts: str) {
|
||||
# handle --all flag
|
||||
if { $GLOBAL.args.flags.all } then {
|
||||
recursive_update $ENV.FLAKE/flakes
|
||||
cd $ENV.FLAKE
|
||||
nix flake update
|
||||
}
|
||||
if { $opts } then {
|
||||
# handle specified subflakes
|
||||
$opts -> foreach subflake {
|
||||
meat_print "GET NEW MEAT FOR $(subflake).."
|
||||
recursive_update $ENV.FLAKE/flakes/$subflake
|
||||
cd $ENV.FLAKE
|
||||
nix flake update $subflake
|
||||
}
|
||||
}
|
||||
# simple update
|
||||
nix flake update
|
||||
}
|
||||
|
||||
function recursive_update (path: str) {
|
||||
if { $path.Exists } {
|
||||
cd $path
|
||||
# update subflakes
|
||||
g */flake.nix -> foreach dir { recursive_update $dir }
|
||||
# update this flake
|
||||
$isflake = ${g flake.nix -> count} > 0
|
||||
if { $isflake } then {
|
||||
nix flake update
|
||||
}
|
||||
} else {
|
||||
err "No such subflake at $path"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
$GLOBAL.args = $meat_args
|
||||
meat
|
8
flakes/murex-module-jump/flake.lock
generated
8
flakes/murex-module-jump/flake.lock
generated
|
@ -2,10 +2,10 @@
|
|||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1729880355,
|
||||
"narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=",
|
||||
"path": "/nix/store/wb6agba4kfsxpbnb5hzlq58vkjzvbsk6-source",
|
||||
"rev": "18536bf04cd71abd345f9579158841376fdd0c5a",
|
||||
"lastModified": 1732014248,
|
||||
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||
"path": "/nix/store/c9wv7i0af6mysmy65x6nvyfw5izzxv4g-source",
|
||||
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
|
|
8
flakes/murex-module-starship/flake.lock
generated
8
flakes/murex-module-starship/flake.lock
generated
|
@ -2,10 +2,10 @@
|
|||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1729880355,
|
||||
"narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=",
|
||||
"path": "/nix/store/wb6agba4kfsxpbnb5hzlq58vkjzvbsk6-source",
|
||||
"rev": "18536bf04cd71abd345f9579158841376fdd0c5a",
|
||||
"lastModified": 1732014248,
|
||||
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
|
||||
"path": "/nix/store/c9wv7i0af6mysmy65x6nvyfw5izzxv4g-source",
|
||||
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -19,6 +19,7 @@ in {
|
|||
./util/murex.nix
|
||||
./util/name.nix
|
||||
inputs.nix-index-database.hmModules.nix-index
|
||||
inputs.ironbar.homeManagerModules.default
|
||||
];
|
||||
|
||||
nix.gc = {
|
||||
|
@ -57,7 +58,7 @@ in {
|
|||
systemd.user.targets.tray = {
|
||||
Unit = {
|
||||
Description = "Home Manager System Tray";
|
||||
Requires = ["graphical-session-pre.target"];
|
||||
Requires = ["graphical-session.target"];
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -90,6 +91,6 @@ in {
|
|||
|
||||
systemd.user.startServices = "sd-switch";
|
||||
ezServices = {
|
||||
ckb-next = "${getExe pkgs.ckb-next} -c -b";
|
||||
ckb-next = "${getExe inputs.nixpkgs-stable.legacyPackages.x86_64-linux.ckb-next} -c -b";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -14,6 +14,5 @@
|
|||
nautilus
|
||||
thunderbird
|
||||
keepassxc
|
||||
wofi
|
||||
];
|
||||
}
|
||||
|
|
|
@ -2,26 +2,33 @@
|
|||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
inputs,
|
||||
...
|
||||
}: let
|
||||
services = let
|
||||
inherit (pkgs) ironbar swaynotificationcenter;
|
||||
inherit (pkgs) swaynotificationcenter sway-audio-idle-inhibit;
|
||||
in [
|
||||
ironbar
|
||||
swaynotificationcenter
|
||||
sway-audio-idle-inhibit
|
||||
];
|
||||
errata = let
|
||||
inherit (pkgs) anyrun;
|
||||
inherit (pkgs) sirula avizo playerctl;
|
||||
in [
|
||||
anyrun
|
||||
sirula
|
||||
avizo
|
||||
playerctl
|
||||
];
|
||||
extraServices = let
|
||||
inherit (pkgs) swayidle swaylock swaybg systemd niri-unstable;
|
||||
inherit (pkgs) swayidle swaybg systemd niri-unstable avizo;
|
||||
in [
|
||||
{
|
||||
name = "swaybg";
|
||||
value = "${lib.getExe swaybg} -m fill -i /home/${config.mainUser}/.nix/wallpaper.jpg";
|
||||
}
|
||||
{
|
||||
name = "avizo-service";
|
||||
value = "${lib.getExe' avizo "avizo-service"}";
|
||||
}
|
||||
{
|
||||
name = "swayidle";
|
||||
value = let
|
||||
|
@ -30,27 +37,23 @@
|
|||
systemctl = lib.getExe' systemd "systemctl";
|
||||
in ''
|
||||
${lib.getExe swayidle} -w \
|
||||
timeout 1200 '${systemctl} suspend' \
|
||||
timeout 601 '${niri} msg action power-off-monitors' \
|
||||
timeout 600 '${lock} -f' \
|
||||
timeout 1800 '${systemctl} suspend' \
|
||||
timeout 600 '${niri} msg action power-off-monitors' \
|
||||
timeout 599 '${lock} -f' \
|
||||
before-sleep '${lock} -f'
|
||||
'';
|
||||
}
|
||||
];
|
||||
in {
|
||||
home.packages = errata;
|
||||
ezServices = let
|
||||
attrify =
|
||||
map (entry: {
|
||||
name = "${entry.pname}";
|
||||
ezServices = builtins.listToAttrs (
|
||||
(map (entry: {
|
||||
name = "${lib.strings.toLower entry.pname}";
|
||||
value = "${lib.getExe entry}";
|
||||
})
|
||||
services;
|
||||
in
|
||||
builtins.listToAttrs (
|
||||
attrify
|
||||
++ extraServices
|
||||
);
|
||||
services)
|
||||
++ extraServices
|
||||
);
|
||||
programs.niri.settings = let
|
||||
inherit (lib) range nameValuePair mapAttrs';
|
||||
inherit (builtins) listToAttrs replaceStrings;
|
||||
|
@ -80,38 +83,45 @@ in {
|
|||
}) (range 0 6));
|
||||
in
|
||||
{
|
||||
"Mod+D".action.spawn = "anyrun";
|
||||
"Mod+D".action.spawn = "sirula";
|
||||
"Mod+F".action.spawn = "firefox";
|
||||
"Mod+E".action.spawn = "nautilus";
|
||||
"Mod+Return".action.spawn = "kitty";
|
||||
"Mod+Shift+E".action.spawn = "wlogout";
|
||||
"Mod+Equal".action.spawn = "keepassxc";
|
||||
"Mod+Shift+Q".action = actions.close-window;
|
||||
"Mod+Shift+S".action = actions.screenshot;
|
||||
"Mod+R".action = actions.switch-preset-column-width;
|
||||
"Mod+Shift+Space".action = actions.maximize-column;
|
||||
"Mod+Shift+R".action = actions.maximize-column;
|
||||
"XF86AudioRaiseVolume".action.spawn = ["volumectl" "-u" "up"];
|
||||
"XF86AudioLowerVolume".action.spawn = ["volumectl" "-u" "down"];
|
||||
"XF86AudioMute".action.spawn = ["volumectl" "toggle-mute"];
|
||||
"XF86AudioStop".action.spawn = ["playerctl" "stop"];
|
||||
"XF86AudioPlay".action.spawn = ["playerctl" "play-pause"];
|
||||
"XF86AudioNext".action.spawn = ["playerctl" "next"];
|
||||
"XF86AudioPrev".action.spawn = ["playerctl" "previous"];
|
||||
}
|
||||
// makeDirBind "Mod" "focus-window-or-workspace-$DIR" vBinds
|
||||
// makeDirBind "Mod" "focus-column-or-monitor-$DIR" hBinds
|
||||
// makeDirBind "Mod+Shift" "move-window-to-workspace-$DIR" vBinds
|
||||
// makeDirBind "Mod+Shift" "move-column-$DIR-or-to-monitor-$DIR" hBinds
|
||||
// makeDirBind "Mod+Ctrl" "consume-or-expel-window-$DIR" hBinds
|
||||
// makeDirBind "Mod+Ctrl" "move-window-$DIR" vBinds
|
||||
// makeWsBind "Mod" "focus-workspace"
|
||||
// makeWsBind "Mod+Shift" "move-window-to-workspace";
|
||||
prefer-no-csd = true;
|
||||
outputs = {
|
||||
"Unknown-1".enable = false;
|
||||
"HDMI-A-2" = {
|
||||
transform.rotation = 90;
|
||||
scale = 1;
|
||||
};
|
||||
"DP-1" = {
|
||||
variable-refresh-rate = true;
|
||||
scale = 1;
|
||||
};
|
||||
"HDMI-A-2" = {
|
||||
transform.rotation = 90;
|
||||
scale = 1;
|
||||
};
|
||||
};
|
||||
input = {
|
||||
warp-mouse-to-focus = true;
|
||||
workspace-auto-back-and-forth = true;
|
||||
};
|
||||
cursor = {
|
||||
hide-after-inactive-ms = 5000;
|
||||
|
@ -130,11 +140,87 @@ in {
|
|||
0.5
|
||||
(1.0 / 3.0)
|
||||
];
|
||||
focus-ring = let
|
||||
pal = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
|
||||
in {
|
||||
active = {color = pal.bright.yellow;};
|
||||
inactive = {color = pal.normal.black;};
|
||||
};
|
||||
};
|
||||
prefer-no-csd = true;
|
||||
hotkey-overlay.skip-at-startup = true;
|
||||
};
|
||||
|
||||
programs.swaylock = {
|
||||
enable = true;
|
||||
settings.color = (pkgs.lib.nix-rice.palette.toRGBShortHex pkgs.rice.palette).normal.black;
|
||||
};
|
||||
|
||||
programs.ironbar = {
|
||||
enable = true;
|
||||
systemd = true;
|
||||
config = {
|
||||
monitors."DP-1" = {
|
||||
position = "top";
|
||||
height = 16;
|
||||
start = [
|
||||
{
|
||||
type = "music";
|
||||
player_type = "mpris";
|
||||
}
|
||||
];
|
||||
center = [
|
||||
{
|
||||
type = "focused";
|
||||
icon_size = 16;
|
||||
truncate = "middle";
|
||||
}
|
||||
];
|
||||
end = [
|
||||
{type = "clock";}
|
||||
{type = "tray";}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.services.ironbar = {
|
||||
Unit.PartOf = ["graphical-session.target"];
|
||||
Unit.After = [
|
||||
"graphical-session.target"
|
||||
"niri.service"
|
||||
];
|
||||
Install.WantedBy = ["graphical-session.target"];
|
||||
};
|
||||
|
||||
xdg.configFile = {
|
||||
"sirula/config.toml".text = ''
|
||||
exclusive = false
|
||||
icon_size = 24
|
||||
lines = 2
|
||||
anchor_left = false
|
||||
anchor_right = true
|
||||
anchor_bottom = false
|
||||
anchor_top = false
|
||||
width = 320
|
||||
height = 720
|
||||
command_prefix = ":"
|
||||
frequent_first = true
|
||||
recent_first = true
|
||||
term_command = "kitty {}"
|
||||
'';
|
||||
|
||||
"sirula/style.css".text = let
|
||||
pal = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette;
|
||||
in ''
|
||||
#root-box {
|
||||
background-color: ${pal.normal.black};
|
||||
color: ${pal.normal.yellow};
|
||||
font-family: '${pkgs.rice.fonts.sans.name}';
|
||||
}
|
||||
/* what's the name of the highlighted search text?
|
||||
color: ${pal.normal.white};
|
||||
*/
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
{...}:
|
||||
{
|
||||
{...}: {
|
||||
programs.atuin = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
|
@ -12,5 +11,4 @@
|
|||
style = "compact";
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -37,6 +37,7 @@ in {
|
|||
color14 = bright.cyan;
|
||||
color15 = bright.white;
|
||||
sync_to_monitor = "yes";
|
||||
# shell = "elvish";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
in {
|
||||
programs.wlogout = {
|
||||
enable = true;
|
||||
package = pkgs.wleave;
|
||||
layout = builtins.fromJSON (builtins.readFile ../dots/wlogout/layout);
|
||||
style = with palette-hex; (builtins.replaceStrings
|
||||
[
|
||||
|
@ -34,4 +35,33 @@ in {
|
|||
]
|
||||
(builtins.readFile ../dots/wlogout/style.css));
|
||||
};
|
||||
# xdg.configFile = {
|
||||
# "wleave/layout".text = builtins.readFile ../dots/wlogout/layout;
|
||||
# "wleave/style.css".text = with palette-hex; (builtins.replaceStrings
|
||||
# [
|
||||
# "/usr/share/wlogout"
|
||||
# "/etc/wlogout"
|
||||
# "#WINBG"
|
||||
# "#BTNCOL"
|
||||
# "#BTNBG"
|
||||
# "#BTNFOCUSBG"
|
||||
# "#WINLOGO"
|
||||
# ]
|
||||
# [
|
||||
# "${pkgs.wleave}/share/wleave"
|
||||
# "${pkgs.wleave}/etc/wleave"
|
||||
# util.bg
|
||||
# bright.yellow
|
||||
# util.bg
|
||||
# normal.black
|
||||
# (builtins.path {
|
||||
# name = "winlogo";
|
||||
# path = ../icons/winlogo.png;
|
||||
# sha256 = "7c1ff96b553c7a7ca3a7b7cf8efe830ab7feea92355aed288a10ee7347c24108";
|
||||
# })
|
||||
# ]
|
||||
# (builtins.readFile ../dots/wlogout/style.css));
|
||||
# };
|
||||
|
||||
home.packages = [pkgs.wlogout];
|
||||
}
|
||||
|
|
|
@ -15,17 +15,19 @@ in {
|
|||
"https://cache.nixos.org"
|
||||
"https://nix-community.cachix.org"
|
||||
"https://helix.cachix.org"
|
||||
"https://cosmic.cachix.org"
|
||||
"https://cuda-maintainers.cachix.org"
|
||||
"https://hyprland.cachix.org"
|
||||
"https://cache.garnix.io"
|
||||
"https://walker-git.cachix.org"
|
||||
"https://anmonteiro.nix-cache.workers.dev"
|
||||
];
|
||||
trusted-public-keys = [
|
||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
|
||||
"cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="
|
||||
"cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
|
||||
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
||||
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||
"walker-git.cachix.org-1:vmC0ocfPWh0S/vRAQGtChuiZBTAe4wiKDeyyXM0/7pM="
|
||||
"ocaml.nix-cache.com-1:/xI2h2+56rwFfKyyFVbkJSeGqSIYMC/Je+7XXqGKDIY="
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -54,22 +54,34 @@
|
|||
./modules/docs.nix
|
||||
./modules/nix-meta.nix
|
||||
./modules/anal-retentive.nix
|
||||
./modules/niri.nix
|
||||
];
|
||||
|
||||
programs.niri = {
|
||||
enable = true;
|
||||
package = pkgs.niri-unstable;
|
||||
};
|
||||
|
||||
hardware.enableRedistributableFirmware = true;
|
||||
hardware.enableAllFirmware = true;
|
||||
|
||||
boot.tmp.useTmpfs = true;
|
||||
|
||||
services.libinput.enable = true;
|
||||
services.udev.extraHwdb = ''
|
||||
evdev:atkbd:*
|
||||
KEYBOARD_KEY_3a=esc
|
||||
'';
|
||||
# services.xserver.xkb.options = "caps:swapescape";
|
||||
services.xserver.xkb.extraLayouts."swap" = {
|
||||
description = "caps swap";
|
||||
languages = [ "eng" ];
|
||||
symbolsFile = pkgs.writeText "keyboard" ''
|
||||
xkb_symbols
|
||||
{
|
||||
include "us(basic)"
|
||||
|
||||
# busted as hell
|
||||
# services.usbmuxd.enable = true; # for iphone
|
||||
key <CAPS> {[ Escape ]};
|
||||
}
|
||||
'';
|
||||
};
|
||||
services.kmscon.useXkbConfig = true;
|
||||
console.useXkbConfig = true;
|
||||
services.libinput.enable = true;
|
||||
|
||||
hardware.graphics.enable = true;
|
||||
hardware.graphics.enable32Bit = true;
|
||||
|
@ -90,10 +102,8 @@
|
|||
eza
|
||||
git
|
||||
jujutsu
|
||||
|
||||
];
|
||||
|
||||
|
||||
services.atuin.enable = true;
|
||||
|
||||
programs.nh = {
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
{ pkgs, inputs, ...}:
|
||||
{
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.x86_64-linux.hyprland;
|
||||
portalPackage = inputs.hyprland.packages.x86_64-linux.xdg-desktop-portal-hyprland;
|
||||
};
|
||||
}
|
|
@ -1,4 +1,18 @@
|
|||
{pkgs, ...}: {
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = let
|
||||
tuigreet = "${lib.getExe pkgs.greetd.tuigreet}";
|
||||
in {
|
||||
command = "${tuigreet} -g yo -r";
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.niri = {
|
||||
enable = true;
|
||||
package = pkgs.niri-unstable;
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
{pkgs, ...}: let
|
||||
inherit (pkgs) murex zsh;
|
||||
inherit (pkgs) murex zsh elvish;
|
||||
in {
|
||||
environment.pathsToLink = ["/share/zsh"];
|
||||
programs.zsh.enable = true;
|
||||
environment.systemPackages = [
|
||||
murex
|
||||
elvish
|
||||
];
|
||||
environment.shells = [murex];
|
||||
users.defaultUserShell = murex;
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
lib,
|
||||
pkgs,
|
||||
mainUser,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
|
@ -107,12 +108,15 @@
|
|||
# };
|
||||
# };
|
||||
|
||||
services.hardware.openrgb = {
|
||||
enable = true;
|
||||
motherboard = "amd";
|
||||
};
|
||||
# services.hardware.openrgb = {
|
||||
# enable = true;
|
||||
# motherboard = "amd";
|
||||
# };
|
||||
|
||||
hardware.ckb-next.enable = true;
|
||||
hardware.ckb-next= {
|
||||
enable = true;
|
||||
package = inputs.nixpkgs-stable.legacyPackages.x86_64-linux.ckb-next;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
wl-clipboard
|
||||
|
|
|
@ -9,8 +9,8 @@ in
|
|||
src = pkgs.fetchFromGitHub {
|
||||
owner = "nana-4";
|
||||
repo = "materia-theme";
|
||||
rev = "6e5850388a25f424b8193fe4523504d1dc364175";
|
||||
sha256 = "sha256-I6hpH0VTmftU4+/pRbztuTQcBKcOFBFbNZXJL/2bcgU=";
|
||||
rev = "d7f59a37ef51f893c28b55dc344146e04b2cd52c";
|
||||
sha256 = "sha256-PnpFAmKEpfg3wBwShLYviZybWQQltcw7fpsQkTUZtww=";
|
||||
};
|
||||
buildInputs = with pkgs; [
|
||||
sassc
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
final: prev:
|
||||
let
|
||||
final: prev: let
|
||||
inherit (prev.lib.nix-rice) kitty-themes;
|
||||
inherit (prev.lib.nix-rice.palette) toRGBShortHex toRgbHex;
|
||||
# theme = kitty-themes.parseTheme ./op.pal;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue