From 52b1728e2e5374427dd140f06c016c88c17e9f25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20D=C3=B6nszelmann?= Date: Fri, 15 Nov 2024 22:19:26 +0100 Subject: [PATCH] add media cp aliases to zsh --- flake.lock | 56 ++++++++++++++++++++-------------------- programs/zsh/default.nix | 52 ++++++++++++++++++++----------------- programs/zsh/scripts.nix | 20 +++++++++++--- 3 files changed, 74 insertions(+), 54 deletions(-) diff --git a/flake.lock b/flake.lock index da80262..6a4f23f 100644 --- a/flake.lock +++ b/flake.lock @@ -43,11 +43,11 @@ ] }, "locked": { - "lastModified": 1727826117, - "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=", + "lastModified": 1730504689, + "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1", + "rev": "506278e768c2a08bec68eb62932193e341f55c90", "type": "github" }, "original": { @@ -127,11 +127,11 @@ ] }, "locked": { - "lastModified": 1730302582, - "narHash": "sha256-W1MIJpADXQCgosJZT8qBYLRuZls2KSiKdpnTVdKBuvU=", + "lastModified": 1730814269, + "narHash": "sha256-fWPHyhYE6xvMI1eGY3pwBTq85wcy1YXqdzTZF+06nOg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "af8a16fe5c264f5e9e18bcee2859b40a656876cf", + "rev": "d70155fdc00df4628446352fc58adc640cd705c2", "type": "github" }, "original": { @@ -169,11 +169,11 @@ ] }, "locked": { - "lastModified": 1730490306, - "narHash": "sha256-AvCVDswOUM9D368HxYD25RsSKp+5o0L0/JHADjLoD38=", + "lastModified": 1730837930, + "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=", "owner": "nix-community", "repo": "home-manager", - "rev": "1743615b61c7285976f85b303a36cdf88a556503", + "rev": "2f607e07f3ac7e53541120536708e824acccfaa8", "type": "github" }, "original": { @@ -190,11 +190,11 @@ ] }, "locked": { - "lastModified": 1730016908, - "narHash": "sha256-bFCxJco7d8IgmjfNExNz9knP8wvwbXU4s/d53KOK6U0=", + "lastModified": 1730837930, + "narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=", "owner": "nix-community", "repo": "home-manager", - "rev": "e83414058edd339148dc142a8437edb9450574c8", + "rev": "2f607e07f3ac7e53541120536708e824acccfaa8", "type": "github" }, "original": { @@ -217,16 +217,16 @@ ] }, "locked": { - "lastModified": 1729544999, - "narHash": "sha256-YcyJLvTmN6uLEBGCvYoMLwsinblXMkoYkNLEO4WnKus=", + "lastModified": 1729958008, + "narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=", "owner": "NuschtOS", "repo": "ixx", - "rev": "65c207c92befec93e22086da9456d3906a4e999c", + "rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb", "type": "github" }, "original": { "owner": "NuschtOS", - "ref": "v0.0.5", + "ref": "v0.0.6", "repo": "ixx", "type": "github" } @@ -255,11 +255,11 @@ ] }, "locked": { - "lastModified": 1730184279, - "narHash": "sha256-6OB+WWR6gnaWiqSS28aMJypKeK7Pjc2Wm6L0MtOrTuA=", + "lastModified": 1730779758, + "narHash": "sha256-5WI9AnsBwhLzVRnQm3Qn9oAbROnuLDQTpaXeyZCK8qw=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "b379bd4d872d159e5189053ce9a4adf86d56db4b", + "rev": "0e3f3f017c14467085f15d42343a3aaaacd89bcb", "type": "github" }, "original": { @@ -270,11 +270,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1730200266, - "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", + "lastModified": 1730785428, + "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", + "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7", "type": "github" }, "original": { @@ -313,11 +313,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1730499477, - "narHash": "sha256-olt0Sx4alDxv3ko9BgbV3SsE2KQ/Tf0/Az1Fr9s2Y6U=", + "lastModified": 1731009822, + "narHash": "sha256-VwGfFYHjizs7yQwh8JRlDUVkHLPc34jdqkQ2vyv6ddY=", "owner": "nix-community", "repo": "nixvim", - "rev": "356896f58dde22ee16481b7c954e340dceec340d", + "rev": "aabbd60633947baba11db44df84f402edc241440", "type": "github" }, "original": { @@ -336,11 +336,11 @@ ] }, "locked": { - "lastModified": 1730337772, - "narHash": "sha256-uTxvqDohfG85+zldO5Tf1B+fuAF8ZhMouNwG5S6OAnA=", + "lastModified": 1730760712, + "narHash": "sha256-F4H98tjNgySlSLItuOqHYo9LF85rFoS/Vr0uOrq7BM4=", "owner": "NuschtOS", "repo": "search", - "rev": "4e0a7a95a3df3333771abc4df6a656e7baf67106", + "rev": "aa5214c81b904a19f7a54f7a8f288f7902586eee", "type": "github" }, "original": { diff --git a/programs/zsh/default.nix b/programs/zsh/default.nix index f1e9d97..cb15425 100644 --- a/programs/zsh/default.nix +++ b/programs/zsh/default.nix @@ -2,30 +2,35 @@ with builtins; with lib.attrsets; let - aliases = { - "p" = ((import ./scripts.nix) pkgs).calc; - "s" = "systemctl"; - "j" = "journalctl"; - "ju" = "journalctl -u"; - "jfu" = "journalctl -fu"; - "ls" = "${pkgs.eza}/bin/eza --git"; - "ll" = "${pkgs.eza}/bin/eza --git"; - "lt" = "${pkgs.eza}/bin/eza --long --tree -L 3"; - "open" = "${pkgs.xdg-utils}/bin/xdg-open"; - "cb" = "${pkgs.wl-clipboard-rs}/wl-copy"; + scripts = (import ./scripts.nix) pkgs; + aliases = with scripts; + { + "cp-mov" = cp-media "mov" "movies"; + "cp-ser" = cp-media "ser" "shows"; + "cp-ani" = cp-media "ani" "anime"; + "p" = calc; + "s" = "systemctl"; + "j" = "journalctl"; + "ju" = "journalctl -u"; + "jfu" = "journalctl -fu"; + "ls" = "${pkgs.eza}/bin/eza --git"; + "ll" = "${pkgs.eza}/bin/eza --git"; + "lt" = "${pkgs.eza}/bin/eza --long --tree -L 3"; + "open" = "${pkgs.xdg-utils}/bin/xdg-open"; + "cb" = "${pkgs.wl-clipboard-rs}/wl-copy"; - "pull" = "${pkgs.git}/bin/git pull"; - "push" = "${pkgs.git}/bin/git push"; - "commit" = "${pkgs.git}/bin/git commit"; - "add" = "${pkgs.git}/bin/git add"; - "patch" = "${pkgs.git}/bin/git add -p"; - "amend" = "${pkgs.git}/bin/git commit --amend"; - "log" = "${pkgs.git}/bin/git log --all --graph --decorate"; - "status" = "${pkgs.git}/bin/git status"; - "checkout" = "${pkgs.git}/bin/git checkout"; - "rebase" = "${pkgs.git}/bin/git rebase"; - "stash" = "${pkgs.git}/bin/git stash"; - }; + "pull" = "${pkgs.git}/bin/git pull"; + "push" = "${pkgs.git}/bin/git push"; + "commit" = "${pkgs.git}/bin/git commit"; + "add" = "${pkgs.git}/bin/git add"; + "patch" = "${pkgs.git}/bin/git add -p"; + "amend" = "${pkgs.git}/bin/git commit --amend"; + "log" = "${pkgs.git}/bin/git log --all --graph --decorate"; + "status" = "${pkgs.git}/bin/git status"; + "checkout" = "${pkgs.git}/bin/git checkout"; + "rebase" = "${pkgs.git}/bin/git rebase"; + "stash" = "${pkgs.git}/bin/git stash"; + }; # extracting any compressed format extract = '' extract () { @@ -57,6 +62,7 @@ in enable = true; enableCompletion = true; syntaxHighlighting.enable = true; + dotDir = ".config/zsh"; completionInit = '' autoload -Uz compinit if [[ -n ''${ZDOTDIR}/.zcompdump(#qN.mh+24) ]]; then diff --git a/programs/zsh/scripts.nix b/programs/zsh/scripts.nix index 0724119..aada7f9 100644 --- a/programs/zsh/scripts.nix +++ b/programs/zsh/scripts.nix @@ -1,8 +1,22 @@ -{ pkgs, ... }: { +{ pkgs, ... }: +{ calc = "${pkgs.python313}/bin/python -i ${ - pkgs.writeText "init.py" '' + pkgs.writeText "init.py" '' from math import *; # import numpy as np '' - } "; + } "; + cp-media = name: media: + let + s = pkgs.writeScriptBin "cp-${name}" '' + echo "copying to library ${media}" + echo "calculating hash" + find "$1" - type f - print0 | sort - z | xargs - 0 sha1sum | awk '{ + print $1}' | sha1sum | awk '{print $1}' > "$1.hash" + + rsync -azP "$1" fili:/media/${media} + rsync -azP "$1.hash" fili:/media/${media} + ''; + in + "${s}/bin/cp-${name}"; }