Compare commits

..

No commits in common. "ff632a5b5214f5d1f51e0ffbdc9eaf1e0d0b0ac1" and "ee0568559a440f97fa58f23fe92d13f3d9445c0b" have entirely different histories.

7 changed files with 132 additions and 138 deletions

View file

@ -191,11 +191,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1692799911, "lastModified": 1689068808,
"narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=", "narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44", "rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -322,11 +322,11 @@
"hmts-nvim": { "hmts-nvim": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1692743873, "lastModified": 1691525513,
"narHash": "sha256-lfqJVj1HbFJ5H4mo6rKYrexaosqSh17+PQ9BWpcuxZI=", "narHash": "sha256-il5m+GlNt0FzZjefl1q8ZxWHg0+gQps0vigt+eoIy8A=",
"owner": "calops", "owner": "calops",
"repo": "hmts.nvim", "repo": "hmts.nvim",
"rev": "34b825bd1c9ec1b6e2952c111753e2eb286c9e07", "rev": "594dd17c870afb7f6517723c8963f6eb144e3c0d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -363,11 +363,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1692763155, "lastModified": 1692131549,
"narHash": "sha256-qMrGKZ8c/q/mHO3ZdrcBPwiVVXPLLgXjY98Ejqb5kAA=", "narHash": "sha256-MFjI8NL63/6HjMZpvJgnB/Pgg2dht22t45jOYtipZig=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "6a20e40acaebf067da682661aa67da8b36812606", "rev": "75cfe974e2ca05a61b66768674032b4c079e55d4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -403,11 +403,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1692871050, "lastModified": 1692182360,
"narHash": "sha256-OJ/OkOLFn546rcXmj/3VEGlsPYjdXWAhEmjqdc6re6k=", "narHash": "sha256-FSJEeAQj0viz52+GE774GiOOtU0X2B2KgXnRCgogSaU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "90c03e5bd2204ba6d1a0167c68f65b7a9231bef4", "rev": "78fa8adadc146a7efeebf63438c1140662484fba",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -446,11 +446,11 @@
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1692480535, "lastModified": 1691060455,
"narHash": "sha256-3Q0Uz/JPW9USHyAmrzRl6KhZLqMYTWkmtL3RA+oAeVY=", "narHash": "sha256-V5ulB9CkGh1ghiC4BKvRdoYKZzpaiOKzAOUmJIFkgM0=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprpaper", "repo": "hyprpaper",
"rev": "5e73eb60552d48d55541c60f9a8da2b666003fe6", "rev": "e498c438b1e16dcf32ecb3030b20b83f7ed9ff6d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -477,11 +477,11 @@
}, },
"master": { "master": {
"locked": { "locked": {
"lastModified": 1692893187, "lastModified": 1692198797,
"narHash": "sha256-Hbbp6bWQykkLsvzi7yo2KQme0oXCZkCdz9bBorcSKH4=", "narHash": "sha256-4MwKoXIBfNI85zZ/tHyLT+M7sF2Zb0XoyhdXtlM6g2c=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d240553dcc2180fe486155bea8a846d5941e168c", "rev": "c85be71df497312de66b65df8d7ad7b5c0c81d04",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -492,17 +492,14 @@
}, },
"naersk": { "naersk": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": "nixpkgs_8"
"timers",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1692351612, "lastModified": 1686572087,
"narHash": "sha256-KTGonidcdaLadRnv9KFgwSMh1ZbXoR/OBmPjeNMhFwU=", "narHash": "sha256-jXTut7ZSYqLEgm/nTk7TuVL2ExahTip605bLINklAnQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "naersk", "repo": "naersk",
"rev": "78789c30d64dea2396c9da516bbcc8db3a475207", "rev": "8507af04eb40c5520bd35d9ce6f9d2342cea5ad1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -522,11 +519,11 @@
}, },
"locked": { "locked": {
"dir": "contrib", "dir": "contrib",
"lastModified": 1692744130, "lastModified": 1692141167,
"narHash": "sha256-Iod6+KGeWnX1SV4owXpSoC17iImCJjTq2iqEp6IRBZc=", "narHash": "sha256-1My5JBKfHupN9D86eeX8JFr2Wk03qWJObk73NC1/x2s=",
"owner": "neovim", "owner": "neovim",
"repo": "neovim", "repo": "neovim",
"rev": "6462ee1c10f9f1aa66ffc4d4fe1b7b3d9f0f91af", "rev": "f92bda1dad462de81ec92134dfa9ba637edc7bb7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -545,11 +542,11 @@
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1692749096, "lastModified": 1692144319,
"narHash": "sha256-XyFSBw3WMf5cTG9ImL6S/v9Aoawr38h/Fr1XIi7peEs=", "narHash": "sha256-sJ7KT+dfLEQbsNI2G+ZLKQ0tIS72roMv+xjC+0bTS9k=",
"owner": "nix-community", "owner": "nix-community",
"repo": "neovim-nightly-overlay", "repo": "neovim-nightly-overlay",
"rev": "83d68ba72f3308b5c90b12fb40044c870903e6ee", "rev": "3632032784ed4a7f761a61a3337f2e1d61210eae",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -592,11 +589,11 @@
"nixpkgs-regression": "nixpkgs-regression" "nixpkgs-regression": "nixpkgs-regression"
}, },
"locked": { "locked": {
"lastModified": 1691953666, "lastModified": 1689005785,
"narHash": "sha256-HxgMSgoM19OnDb4h47nrxI2lRGsDo+4Y4JEHeCoWB+Q=", "narHash": "sha256-gxJmO6Y6L+iEgIhBlyOLlruQQqixERkWkByYSH4LaTg=",
"owner": "privatevoid-net", "owner": "privatevoid-net",
"repo": "nix-super", "repo": "nix-super",
"rev": "65e8abac80cc06f9f05147b51908a47549e9342e", "rev": "6ff67e40b495e79aa6b2dc9356f1e9ade3b77bca",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -673,11 +670,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1692638711, "lastModified": 1691654369,
"narHash": "sha256-J0LgSFgJVGCC1+j5R2QndadWI1oumusg6hCtYAzLID4=", "narHash": "sha256-gSILTEx1jRaJjwZxRlnu3ZwMn1FVNk80qlwiCX8kmpo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "91a22f76cd1716f9d0149e8a5c68424bb691de15", "rev": "ce5e4a6ef2e59d89a971bc434ca8ca222b9c7f5e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -721,11 +718,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1692557222, "lastModified": 1692067901,
"narHash": "sha256-TCOtZaioLf/jTEgfa+nyg0Nwq5Uc610Z+OFV75yUgGw=", "narHash": "sha256-kq8Pf/nmlXECDWMkQSRGQkjWsA6G0pjzZkfUEaTmXJE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "0b07d4957ee1bd7fd3bdfd12db5f361bd70175a6", "rev": "ea95c0917609e5c48023cc7c6141bea2fdf13970",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -737,11 +734,11 @@
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1692808169, "lastModified": 1692128808,
"narHash": "sha256-x9Opq06rIiwdwGeK2Ykj69dNc2IvUH1fY55Wm7atwrE=", "narHash": "sha256-Di1Zm/P042NuwThMiZNrtmaAjd4Tm2qBOKHX7xUOfMk=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9201b5ff357e781bf014d0330d18555695df7ba8", "rev": "4ed9856be002a730234a1a1ed9dcd9dd10cbdb40",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -769,11 +766,24 @@
}, },
"nixpkgs_8": { "nixpkgs_8": {
"locked": { "locked": {
"lastModified": 1692934111, "lastModified": 1685677062,
"narHash": "sha256-9EEE59v/esKNMR5zKbLRV9NoRPYvERw5jHQOnfr47bk=", "narHash": "sha256-zoHF7+HNwNwne2XEomphbdc4Y8tdWT16EUxUTXpOKpQ=",
"path": "/nix/store/dnqwkazyg92hzya7400klxlk072g3zsk-source",
"rev": "95be94370d09f97f6af6a1df1eb9649b5260724e",
"type": "path"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_9": {
"locked": {
"lastModified": 1687103638,
"narHash": "sha256-dwy/TK6Db5W7ivcgmcxUykhFwodIg0jrRzOFt7H5NUc=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "1e44a037bbf4fcaba041436e65e87be88f3f495b", "rev": "91430887645a0953568da2f3e9a3a3bb0a0378ac",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -808,11 +818,11 @@
"nixpkgs-stable": "nixpkgs-stable" "nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1692274144, "lastModified": 1691747570,
"narHash": "sha256-BxTQuRUANQ81u8DJznQyPmRsg63t4Yc+0kcyq6OLz8s=", "narHash": "sha256-J3fnIwJtHVQ0tK2JMBv4oAmII+1mCdXdpeCxtIsrL2A=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "7e3517c03d46159fdbf8c0e5c97f82d5d4b0c8fa", "rev": "c5ac3aa3324bd8aebe8622a3fc92eeb3975d317a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -906,11 +916,11 @@
}, },
"stable": { "stable": {
"locked": { "locked": {
"lastModified": 1692794066, "lastModified": 1692134936,
"narHash": "sha256-H0aG8r16dj0x/Wz6wQhQxc9V7AsObOiHPaKxQgH6Y08=", "narHash": "sha256-Z68O969cioC6I3k/AFBxsuEwpJwt4l9fzwuAMUhCCs0=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "fc944919f743bb22379dddf18dcb72db6cff84aa", "rev": "bfd953b2c6de4f550f75461bcc5768b6f966be10",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1014,15 +1024,15 @@
"timers": { "timers": {
"inputs": { "inputs": {
"naersk": "naersk", "naersk": "naersk",
"nixpkgs": "nixpkgs_8", "nixpkgs": "nixpkgs_9",
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1693040925, "lastModified": 1692198673,
"narHash": "sha256-AhJSwmp7XN/9V66EYHFnNuIAjqOrYUN3LGRjwrTN6T0=", "narHash": "sha256-kLhdmJ4uI248caVxQhYSq+IA+xQHDcp5in4eI8sJphk=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "739f76fa90271860e2c1d683e3a53cfb93e6eb89", "rev": "37dc5c727a3d73778d6ee9d63c1468357cf0ed72",
"revCount": 27, "revCount": 20,
"type": "git", "type": "git",
"url": "https://gitea.moritzboeh.me/moritz/timers.git" "url": "https://gitea.moritzboeh.me/moritz/timers.git"
}, },
@ -1036,11 +1046,11 @@
"systems": "systems_5" "systems": "systems_5"
}, },
"locked": { "locked": {
"lastModified": 1692799911, "lastModified": 1687171271,
"narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=", "narHash": "sha256-BJlq+ozK2B1sJDQXS3tzJM5a+oVZmi1q0FlBK/Xqv7M=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44", "rev": "abfb11bd1aec8ced1c9bb9adfe68018230f4fb3c",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -6,70 +6,26 @@
with lib; with lib;
let let
nom-system = pkgs.writeFishApplication { nom-system = pkgs.writeShellApplication {
name = "nom-system"; name = "nom-system";
runtimeInputs = with pkgs; [ nix-output-monitor ]; runtimeInputs = with pkgs; [ nix-output-monitor ];
text = /* fish */ '' text = ''
nom build --no-link "/home/moritz/.dotfiles#nixosConfigurations.$(hostname).config.system.build.toplevel" $argv nom build --no-link "/home/moritz/.dotfiles#nixosConfigurations.$(hostname).config.system.build.toplevel"
'';
};
nom-system-command = name: command: pkgs.writeFishApplication {
inherit name;
runtimeInputs = with pkgs; [ nom-system nix ];
text = /* fish */ ''
nom-system $argv && ${command}
''; '';
}; };
nom-system-command = command: "${nom-system}/bin/nom-system && ${command}";
f = pkgs.writeFishApplication { f = pkgs.writeFishApplication {
name = "f"; name = "f";
runtimeInputs = with pkgs; [ fzf bat ]; runtimeInputs = with pkgs; [ fzf bat ];
text = /* fish */ '' text = ''
fzf --query "$argv" \ #!/usr/bin/env fish
--multi \ fzf --query "$argv" --multi --bind "enter:become($EDITOR {+})" --preview "bat --color=always --style=header,grid --line-range :500 {+}"
--bind "enter:become($EDITOR {+})" \ '';
--preview "bat --color=always --style=header,grid --line-range :500 {+}" completions = ''
complete -c f
''; '';
}; };
which-nix = pkgs.writeFishApplication {
name = "which-nix";
runtimeInputs = with pkgs; [ which coreutils-full ];
text = /* fish */ ''
readlink -f (which $argv)
'';
completions = /* fish */ ''
complete -c which-nix -fa '(__fish_complete_command)'
'';
};
gi = pkgs.writeFishApplication
{
name = "gi";
runtimeInputs = with pkgs; [ fzf gum curl ];
text = /* fish */ ''
set url https://www.gitignore.io/api
if test (count $argv) -eq 0
set choice ( curl -sL $url/list \
| string split "," \
| fzf -m \
| string join "," )
else
set choice (string join "," $argv[1..])
end
if gum confirm "Overwrite current .gitignore?"
curl -sL $url/$choice > .gitignore
else
curl -sL $url/$choice >> .gitignore
end
'';
completions = /* fish */ ''
set args (curl -sL https://www.gitignore.io/api/list | string split ",")
complete -c gi -fa "$args"
'';
};
in in
{ {
users.users.moritz = { users.users.moritz = {
@ -101,6 +57,8 @@ in
mv = "mv -i"; mv = "mv -i";
cd = "__zoxide_z"; cd = "__zoxide_z";
nixos-switch = nom-system-command "sudo nixos-rebuild switch --flake ~/.dotfiles";
nixos-boot = nom-system-command "sudo nixos-rebuild boot --flake ~/.dotfiles";
nixos-update = "pushd ~/.dotfiles && nix flake update && popd"; nixos-update = "pushd ~/.dotfiles && nix flake update && popd";
latexwatch = ''find -type f -name "*.tex" | entr -c latexmk -pdf -silent''; latexwatch = ''find -type f -name "*.tex" | entr -c latexmk -pdf -silent'';
@ -147,15 +105,12 @@ in
bottom bottom
# nix # nix
(nom-system-command "nixos-boot" "sudo nixos-rebuild boot --flake ~/.dotfiles")
(nom-system-command "nixos-switch" "sudo nixos-rebuild switch --flake ~/.dotfiles")
comma comma
manix
nix-index nix-index
nix-output-monitor
nixpkgs-fmt nixpkgs-fmt
statix statix
which-nix manix
nix-output-monitor
# other # other
bat bat
@ -164,16 +119,15 @@ in
duf duf
entr entr
exa exa
f
gi
gparted gparted
neofetch neofetch
reptyr reptyr
ripgrep ripgrep
up up
vim
viu viu
wget wget
vim
f
]; ];
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [

View file

@ -45,20 +45,29 @@ in
# Completions # Completions
complete -c c -kfa '(zoxide query -l | sed "s|$HOME|~|")' complete -c c -kfa '(zoxide query -l | sed "s|$HOME|~|")'
${optionalString config.virtualisation.podman.dockerCompat /* fish */ "complete -c docker -w podman"}
complete -c timers \
-n "__fish_seen_subcommand_from toggle" \
-fa '(timers --json l | ${getExe pkgs.jq} -r .[][].name)'
complete -c timers \
-n "__fish_seen_subcommand_from remove" \
-fa '(timers --json l | ${getExe pkgs.jq} -r .[][].name)'
# Variables # Variables
${exportedVariables} ${exportedVariables}
''; '';
functions = { functions = {
gi = ''
set url https://www.gitignore.io/api
if test (count $argv) -eq 0
set choice ( curl -sL $url/list \
| string split "," \
| ${getExe pkgs.fzf} -m \
| string join "," )
else
set choice (string join "," $argv[1..])
end
if ${getExe pkgs.gum} confirm "Overwrite current .gitignore?"
${getExe pkgs.curl} -sL $url/$choice > .gitignore
else
${getExe pkgs.curl} -sL $url/$choice >> .gitignore
end
'';
fish_greeting = ""; fish_greeting = "";
cheat = "cht.sh $argv | bat -p"; cheat = "cht.sh $argv | bat -p";
}; };

View file

@ -61,6 +61,18 @@ in
home-manager.users.moritz.programs.waybar = { home-manager.users.moritz.programs.waybar = {
enable = true; enable = true;
# use package with hyprland support for switching workspaces
package = pkgs.symlinkJoin {
name = "waybar-hyprland";
paths = [ pkgs.waybar-hyprland ];
nativeBuildInputs = [ pkgs.makeWrapper ];
postBuild = ''
wrapProgram $out/bin/waybar \
--prefix PATH ":" "${hyprland}/bin"
'';
};
# start using systemd service # start using systemd service
systemd = { systemd = {
enable = true; enable = true;
@ -72,9 +84,14 @@ in
layer = "top"; layer = "top";
position = "top"; position = "top";
height = 20; height = 20;
modules-left = [ "hyprland/workspaces" ]; modules-left = [ "wlr/workspaces" ];
modules-center = [ "hyprland/window" ]; modules-center = [ "hyprland/window" ];
modules-right = [ "hyprland/language" "network" "memory" "cpu" "battery" "clock" ]; modules-right = [ "network" "memory" "cpu" "battery" "clock" ];
modules = {
"wlr/workspaces" = {
on-click = "activate";
};
};
}; };
}; };
}; };

View file

@ -21,7 +21,7 @@ in
cursor_shape = "underline"; cursor_shape = "underline";
window_padding_width = 3; window_padding_width = 3;
confirm_os_window_close = 0; confirm_os_window_close = 0;
background_opacity = "0.9"; background_opacity = "0.92";
}; };
keybindings = { keybindings = {
"ctrl+plus" = "change_font_size all +2.0"; "ctrl+plus" = "change_font_size all +2.0";

View file

@ -18,11 +18,13 @@ with final.lib;
preferLocalBuild = false; preferLocalBuild = false;
text = '' text = ''
#!${getExe final.fish} #!${getExe final.fish}
'' + optionalString (runtimeInputs != [ ]) ''
${optionalString (runtimeInputs != [ ]) ''export PATH="${makeBinPath runtimeInputs}:$PATH"''} export PATH="${makeBinPath runtimeInputs}:$PATH"
'' + ''
${content} ${content}
''; '';
checkPhase = checkPhase =
if checkPhase == null then '' if checkPhase == null then ''
@ -33,7 +35,9 @@ with final.lib;
else checkPhase; else checkPhase;
}; };
script = fishFile "/bin/${name}" text; script = fishFile "/bin/${name}" text;
completions_file = fishFile "/share/fish/vendor_completions.d/${name}.fish" completions; completions_file = fishFile "/share/fish/vendor_completions.d/${name}.fish" completions;
in in
final.symlinkJoin { final.symlinkJoin {

View file

@ -10,7 +10,7 @@ final: prev:
src = inputs.rofi-wayland; src = inputs.rofi-wayland;
version = lib.my.mkVersionInput inputs.rofi-wayland; version = lib.my.mkVersionInput inputs.rofi-wayland;
}); });
timers = inputs.timers.packages.${prev.system}.default; timers = inputs.timers.defaultPackage.${prev.system};
fzf1 = final.writeShellApplication { fzf1 = final.writeShellApplication {
name = "fzf1"; name = "fzf1";