1
0
Fork 0
mirror of https://git.sr.ht/~neverness/ultima synced 2025-05-13 06:15:15 +00:00

i learn getExe' and override default touch,find,grep etc

This commit is contained in:
nixzoid 2025-02-21 22:32:02 +09:00
parent 7a9cec9636
commit 8a209938ac
14 changed files with 128 additions and 54 deletions
modules
home
misc/home-manager
programs/cli/helix
shells
wm
nixos
misc/security
programs/torrserver
services/amneziawg
xpackages/pkgs
anicliru
base16-preview
tgt

View file

@ -5,6 +5,7 @@
...
}:
with lib;
let
inherit (pkgs) libnotify;
dag = lib.hm.dag.entryAfter [ "" ];
@ -12,7 +13,7 @@ let
in
{
home.activation.rebuildFinish = lib.mkIf (lib.x.sys.is != "iso") (dag ''
run ${libnotify}/bin/notify-send "Home-Manager rebuild finished" -t 1500 -i "${papirus}/share/icons/Papirus-Dark/64x64/apps/nix-snowflake.svg"
home.activation.rebuildFinish = mkIf (x.sys.is != "iso") (dag ''
run ${getExe' libnotify "notify-send"} "Home-Manager rebuild finished" -t 1500 -i "${papirus}/share/icons/Papirus-Dark/64x64/apps/nix-snowflake.svg"
'');
}

View file

@ -6,13 +6,14 @@
with pkgs;
let
inherit (lib) getExe;
inherit (lib) getExe getExe';
inherit (nodePackages_latest) prettier;
indent = {
tab-width = 2;
unit = " ";
};
auto-format = true;
vs = n: "vscode-${n}-language-server";
in
{
@ -209,9 +210,9 @@ in
marksman.command = "${getExe marksman}";
} # markdown
// {
vscode-html.command = "${vscode}/bin/vscode-html-language-server";
vscode-json.command = "${vscode}/bin/vscode-json-language-server";
vscode-css.command = "${vscode}/bin/vscode-css-language-server";
vscode-html.command = "${getExe' vscode (vs "html")}";
vscode-json.command = "${getExe' vscode (vs "json")}";
vscode-css.command = "${getExe' vscode (vs "css")}";
} # vscode <lang> server
// {
ruff.command = "${getExe ruff-lsp}";

View file

@ -5,38 +5,60 @@
...
}:
with lib;
with x;
let
inherit (lib) getExe;
cfg = config.home;
in
{
home.shellAliases = with pkgs; {
goToFlake = "cd ${lib.x.path.flake}";
rebuild = "nh os switch -H ${lib.x.machineName}";
# quality of life
e = "$EDITOR";
c = "clear";
x = "exit";
# nix
Npre = "nix store prefetch-file";
Nupd = "nix flake update";
# useful
ca = "cava";
cat = "bat";
pmx = "pulsemixer";
blt = "bluetuith";
icat = "kitten icat";
# tops
btop = "btop";
ntop = "nvtop -i";
# clock
ter = "${getExe tenki} --mode rain --wind disable --timer-color cyan -f 80";
tes = "${getExe tenki} --mode snow --wind disable --timer-color yellow -f 80";
tem = "${getExe tenki} --mode meteor --wind disable --timer-color red -f 80";
# translate
tr = "trans --brief";
options = {
home = {
shellAbbrs = mkAttrs.str { };
};
};
config = {
programs.fish.shellAbbrs = cfg.shellAbbrs;
home.shellAbbrs = {
s = "sudo";
};
home.shellAliases = with pkgs; {
goToFlake = "cd ${lib.x.path.flake}";
rebuild = "nh os switch -H ${lib.x.machineName}";
nixRepl = "nh os repl -H ${lib.x.machineName}";
# override default
trash = "${getExe trashy} put";
touch = "${getExe bonk}";
find = "${getExe hunt}";
frep = "${getExe ripgrep-all}";
# cp = "${getExe' fuc "cpz"}";
# rm = "${getExe' fuc "rmz"}";
cat = "${getExe bat}";
# quality of life
e = "$EDITOR";
c = "clear";
x = "exit";
# nix
Npre = "nix store prefetch-file";
Nupd = "nix flake update";
# useful
ca = "cava";
pmx = "pulsemixer";
blt = "${getExe bluetuith}";
icat = "kitten icat";
# tops
btop = "btop";
ntop = "nvtop -i";
# clock
ter = "${getExe tenki} --mode rain --wind disable --timer-color cyan -f 80";
tes = "${getExe tenki} --mode snow --wind disable --timer-color yellow -f 80";
tem = "${getExe tenki} --mode meteor --wind disable --timer-color red -f 80";
# translate
tr = "trans --brief";
};
xdg.configFile."lutgen/stylix".text =
with config.lib.stylix.colors;
"${base00} ${base01} ${base02} ${base03} ${base04} ${base05} ${base06} ${base07} ${base08} ${base09} ${base0A} ${base0B} ${base0C} ${base0D} ${base0E} ${base0E}";
};
xdg.configFile."lutgen/stylix".text =
with config.lib.stylix.colors;
"${base00} ${base01} ${base02} ${base03} ${base04} ${base05} ${base06} ${base07} ${base08} ${base09} ${base0A} ${base0B} ${base0C} ${base0D} ${base0E} ${base0E}";
}

View file

@ -22,6 +22,7 @@ in
home.packages = with pkgs; [ grc ];
programs.fish = on // {
package = pkgs.fish;
preferAbbrs = true;
plugins = import ./plugins.nix { inherit pkgs; };
interactiveShellInit = import ./colors.nix;
shellInitLast =

View file

@ -45,7 +45,7 @@ in
external: {
enable: true
max_results: 50
completer: { |spans| ${carapace}/bin/carapace $spans.0 nushell ...$spans | from json }
completer: { |spans| ${lib.getExe carapace} $spans.0 nushell ...$spans | from json }
}
}
}
@ -56,7 +56,7 @@ in
def wy [ video_id: string ] { mpv $"https://youtube.com/watch?v=($video_id)" }
'';
envFile.text = ''
$env.EDITOR = "${helix}/bin/hx"
$env.EDITOR = "${getExe' helix}"
$env.BROWSER = "zen"
$env.XDG_CONFIG_HOME = $"($env.HOME)/.config"
$env.DIRENV_LOG_FORMAT = ""

View file

@ -8,7 +8,7 @@
let
inherit (lib) x getExe;
cfg = config.module.wm.hyprland;
tee = "${pkgs.uutils-coreutils-noprefix}/bin/tee";
tee = "${lib.getExe' pkgs.uutils-coreutils-noprefix "tee"}";
pic = "$(xdg-user-dir PICTURES)/$(date +'scr_%d-%m-%y|%H:%M:%S.png')";
mic = ''fixf4=$(cat /sys/class/leds/platform\:\:micmute/brightness); echo $((1-fixf4)) | sudo ${tee} /sys/class/leds/platform\:\:micmute/brightness; wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle'';
in
@ -146,10 +146,10 @@ in
(fs "XF86AudioLowerVolume" "$ex, wpctl set-volume @DEFAULT_AUDIO_SINK@ 10%-")
]
++ (with pkgs; [
(fn "XF86MonBrightnessDown" "$ex, sudo ${light}/bin/light -U 10")
(fn "XF86MonBrightnessUp " "$ex, sudo ${light}/bin/light -A 10")
(fs "XF86MonBrightnessDown" "$ex, sudo ${light}/bin/light -S 70")
(fs "XF86MonBrightnessUp " "$ex, sudo ${light}/bin/light -S 100")
(fn "XF86MonBrightnessDown" "$ex, sudo ${getExe light} -U 10")
(fn "XF86MonBrightnessUp " "$ex, sudo ${getExe light} -A 10")
(fs "XF86MonBrightnessDown" "$ex, sudo ${getExe light} -S 70")
(fs "XF86MonBrightnessUp " "$ex, sudo ${getExe light} -S 100")
])
++ [
(fn "XF86Favorites" "$ex, wlogout -sc 12 -r 12")

View file

@ -6,7 +6,7 @@
}:
let
inherit (lib) x mkForce;
inherit (lib) x mkForce getExe';
cfg = config.module.wm.hyprland;
on.enabled = true;
in
@ -16,7 +16,7 @@ with config.lib.stylix.colors;
env = [ "SLURP_ARGS, -b ${base00}CC -c ${base0F}FF -B ${base02}CC" ];
exec-once =
let
tee = "${pkgs.uutils-coreutils-noprefix}/bin/tee";
tee = "${getExe' pkgs.uutils-coreutils-noprefix "tee"}";
in
[
"wpctl set-volume @DEFAULT_AUDIO_SINK@ 1"

View file

@ -21,7 +21,7 @@ let
nm = "number";
# PROGRAMS
pic = "$(xdg-user-dir PICTURES)/$(date +'scr_%d-%m-%y|%H:%M:%S.png')";
inherit (lib) mkForce;
inherit (lib) mkForce getExe;
inherit (pkgs) grimblast;
in
mkForce {
@ -35,9 +35,9 @@ mkForce {
"${m}+${rt} " = "${ex} kitty";
"${m}+${s}+${rt}" = "${ex} kitty --class=termfloat";
"${pr} " = "${grimblast}/bin/grimblast copysave area";
"${pr}+${s}" = "${grimblast}/bin/grimblast copysave output ${pic}";
"${pr}+${a}" = "${grimblast}/bin/grimblast copysave active ${pic}";
"${pr} " = "${getExe grimblast} copysave area";
"${pr}+${s}" = "${getExe grimblast} copysave output ${pic}";
"${pr}+${a}" = "${getExe grimblast} copysave active ${pic}";
"${m}+g " = "layout tabbed";
"${m}+${s}+g" = "layout toggle split";

View file

@ -28,11 +28,11 @@ in
groups = [ "wheel" ];
commands = with pkgs; [
{
command = "${light}/bin/light";
command = "${getExe light}";
options = [ "NOPASSWD" ];
}
{
command = "${uutils-coreutils-noprefix}/bin/tee";
command = "${getExe' uutils-coreutils-noprefix "tee"}";
options = [ "NOPASSWD" ];
}
];

View file

@ -28,7 +28,7 @@ in
];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = "${inputs.xpk.torrserver}/bin/torrserver";
ExecStart = "${getExe' inputs.xpk.torrserver "torrserver"}";
Restart = "on-failure";
Type = "simple";
TimeoutSec = 30;

View file

@ -111,6 +111,6 @@ in
amneziawg-go
];
};
boot.extraModulePackages = with pkgs.linuxKernel.packages.linux_zen; [ amneziawg ];
boot.extraModulePackages = with config.boot.kernelPackages; [ amneziawg ];
};
}

View file

@ -2,7 +2,7 @@
pkgs.python3Packages.buildPythonApplication rec {
pname = "anicli_ru";
version = "5.0.14";
version = "5.0.15";
pyproject = true;
src = pkgs.fetchPypi {

View file

@ -4,7 +4,7 @@ pkgs.writeScriptBin "base16-preview" (
builtins.readFile (
pkgs.fetchurl {
url = "https://raw.githubusercontent.com/xmozoid/base16/refs/heads/master/tools/base16-preview/base16-preview.py";
sha256 = "sha256-NQdCm73E7BS6EXrygIS6TmjwkVIwZwIyBaHuvo6p8B0=";
sha256 = "sha256-EwgOFq0IuMjZ0vF0q8sqphow6TuzOR46/UN2/yn3lRg=";
}
)
)

View file

@ -0,0 +1,49 @@
{ pkgs }:
with pkgs;
let
rLinkLibs = builtins.attrValues {
inherit (pkgs) pkg-config openssl;
tdlib = tdlib.overrideAttrs {
version = "1.8.29";
src = fetchFromGitHub {
owner = "tdlib";
repo = "td";
rev = "af69dd4397b6dc1bf23ba0fd0bf429fcba6454f6";
hash = "sha256-2RhKSxy0AvuA74LHI86pqUxv9oJZ+ZxxDe4TPI5UYxE=";
};
};
};
in
pkgs.rustPlatform.buildRustPackage {
pname = "tgt";
version = "unstable-2024-11-04";
doCheck = false;
buildNoDefaultFeatures = true;
buildFeatures = [ "pkg-config" ];
src = pkgs.fetchFromGitHub {
owner = "FedericoBruzzone";
repo = "tgt";
rev = "39fb4acec241e2db384e268c77e875bd13a48c12";
sha256 = "sha256-McZEnRwtGEuhDA1uJ1FgUl6QiPfzCDr/Pl2haF9+MRw=";
};
cargoHash = "sha256-WIs9rVhTQn217DHIw1SPnQrkDtozEl2jfqVjTwJHF2w=";
nativeBuildInputs = rLinkLibs;
buildInputs = rLinkLibs;
patches = [
(fetchurl {
url = "https://github.com/FedericoBruzzone/tgt/raw/refs/heads/main/patches/0001-check-filesystem-writability-before-operations.patch";
sha256 = "sha256-ugztN6YAZEmpXndhMDGRPRuEOgGWS7cACXQ/Yj1soXw=";
})
];
env = {
RUSTFLAGS = "-C link-arg=-Wl,-rpath,${tdlib}/lib -L ${pkgs.openssl}/lib";
LOCAL_TDLIB_PATH = "${tdlib}/lib";
};
}