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:
parent
7a9cec9636
commit
8a209938ac
14 changed files with 128 additions and 54 deletions
modules
home
misc/home-manager
programs/cli/helix
shells
wm
nixos
xpackages/pkgs
|
@ -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"
|
||||
'');
|
||||
}
|
||||
|
|
|
@ -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}";
|
||||
|
|
|
@ -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}";
|
||||
}
|
||||
|
|
|
@ -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 =
|
||||
|
|
|
@ -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 = ""
|
||||
|
|
|
@ -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")
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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" ];
|
||||
}
|
||||
];
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -111,6 +111,6 @@ in
|
|||
amneziawg-go
|
||||
];
|
||||
};
|
||||
boot.extraModulePackages = with pkgs.linuxKernel.packages.linux_zen; [ amneziawg ];
|
||||
boot.extraModulePackages = with config.boot.kernelPackages; [ amneziawg ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
pkgs.python3Packages.buildPythonApplication rec {
|
||||
pname = "anicli_ru";
|
||||
version = "5.0.14";
|
||||
version = "5.0.15";
|
||||
pyproject = true;
|
||||
|
||||
src = pkgs.fetchPypi {
|
||||
|
|
|
@ -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=";
|
||||
}
|
||||
)
|
||||
)
|
||||
|
|
49
xpackages/pkgs/tgt/package.nix
Normal file
49
xpackages/pkgs/tgt/package.nix
Normal 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";
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue