staging(no atomic commits thank to git-hooks)

Signed-off-by: s0me1newithhand7s <git+me@hand7s.org>
This commit is contained in:
s0me1newithhand7s 2026-03-25 17:56:18 +03:00
parent db3b60a846
commit c5f949506a
117 changed files with 2520 additions and 999 deletions

22
hand7s/programs/atuin.nix Normal file
View file

@ -0,0 +1,22 @@
_: {
programs = {
atuin = {
enable = true;
enableNushellIntegration = true;
enableFishIntegration = true;
settings = {
keymap_mode = "vim-normal";
};
flags = [
"--disable-up-arrow"
];
daemon = {
enable = true;
logLevel = "info";
};
};
};
}

13
hand7s/programs/broot.nix Normal file
View file

@ -0,0 +1,13 @@
_: {
programs = {
broot = {
enable = true;
enableNushellIntegration = true;
enableFishIntegration = true;
settings = {
modal = true;
};
};
};
}

View file

@ -0,0 +1,9 @@
_: {
programs = {
carapace = {
enable = true;
enableNushellIntegration = true;
enableFishIntegration = true;
};
};
}

View file

@ -4,7 +4,6 @@
package = pkgs.google-chrome.override {
commandLineArgs = [
"--enable-features=AcceleratedVideoEncoder,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE,VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport,UseMultiPlaneFormatForHardwareVideo,SkiaGraphite"
"--enable-unsafe-webgpu"
"--ignore-gpu-blocklist"
"--enable-zero-copy"
];

View file

@ -3,6 +3,7 @@ _: {
direnv = {
enable = true;
silent = true;
enableNushellIntegration = true;
nix-direnv = {
enable = true;

View file

@ -3,6 +3,7 @@ _: {
eza = {
enable = true;
enableFishIntegration = true;
enableNushellIntegration = true;
git = true;
icons = "always";
};

View file

@ -3,6 +3,7 @@ _: {
fzf = {
enable = true;
enableFishIntegration = true;
tmux = {
enableShellIntegration = true;
};

View file

@ -12,7 +12,7 @@
bell-features = "system";
command = "${lib.getExe pkgs.fish}";
command = "${lib.getExe pkgs.nushell}";
confirm-close-surface = false;

26
hand7s/programs/gitui.nix Normal file
View file

@ -0,0 +1,26 @@
_: {
programs = {
gitui = {
enable = true;
keyConfig = ''
(
move_left: Some(( code: Char('h'), modifiers: "" )),
move_right: Some(( code: Char('l'), modifiers: "" )),
move_up: Some(( code: Char('k'), modifiers: "" )),
move_down: Some(( code: Char('j'), modifiers: "" )),
popup_up: Some(( code: Char('k'), modifiers: "" )),
popup_down: Some(( code: Char('j'), modifiers: "" )),
page_up: Some(( code: Char('b'), modifiers: "CONTROL" )),
page_down: Some(( code: Char('f'), modifiers: "CONTROL" )),
stage_hunk: Some(( code: Char('x'), modifiers: "" )),
status_reset_item: Some(( code: Char('U'), modifiers: "SHIFT" )),
shift_up: Some(( code: Char('K'), modifiers: "SHIFT" )),
shift_down: Some(( code: Char('J'), modifiers: "SHIFT" )),
)
'';
};
};
}

View file

@ -2,7 +2,15 @@
pkgs,
lib,
...
}: {
}: let
formatter = {
run = "treefmt";
args = [
"--stdin"
"$f"
];
};
in {
programs = {
helix = {
package = pkgs.helix;
@ -10,52 +18,133 @@
defaultEditor = true;
extraPackages = with pkgs; [
nixd
ruff
vtsls
rust-analyzer
];
settings = {
editor = {
line-number = "relative";
cursorline = true;
auto-pairs = true;
auto-save = {
focus-lost = true;
after-delay = {
enable = true;
timeout = 3000;
};
};
soft-wrap = {
enable = true;
};
inline-diagnostics = {
cursor-line = "hint";
};
lsp = {
display-messages = true;
enable = true;
display-progress-messages = true;
display-inlay-hints = true;
};
cursor-shape = {
normal = "underline";
insert = "block";
select = "underline";
};
};
};
languages = {
language-servers = {
nixd = {
"nixd" = {
command = "${lib.getExe pkgs.nixd}";
args = [
"--inlay-hints=true"
];
};
"ruff" = {
command = "${lib.getExe pkgs.ruff}";
args = [
"server"
];
};
"vtsls" = {
command = "${lib.getExe pkgs.vtsls}";
args = [
"--stdio"
];
};
"rust-lsp" = {
command = "${lib.getExe pkgs.rust-analyzer}";
};
};
language = [
languages = [
{
name = "nix";
comment-token = "#";
injection-regex = "nix";
indent = {
tab-width = 4;
unit = " ";
};
formatter = {
command = "${lib.getExe pkgs.nix}";
args = [
"fmt"
];
};
file-types = [
"nix"
];
auto-format = true;
language-servers = [
"nixd"
];
inherit
formatter
;
}
{
name = "python";
auto-format = true;
language-servers = [
"ruff"
];
inherit
formatter
;
}
{
name = "rust";
auto-format = true;
language-servers = [
"rust-lsp"
];
inherit
formatter
;
}
{
name = "javascript";
auto-format = true;
language-servers = [
"vtsls"
];
inherit
formatter
;
}
{
name = "typescript";
auto-format = true;
language-servers = [
"vtsls"
];
inherit
formatter
;
}
];
};

View file

@ -3,6 +3,7 @@ _: {
nix-index = {
enable = true;
enableFishIntegration = true;
enableNushellIntegration = true;
};
};
}

View file

@ -19,9 +19,10 @@
forceBlackScreenCorners = true;
showScreenCorners = true;
screenRadiusRatio = 1;
radiusRatio = 0.7;
radiusRatio = 1.5;
enableBlurBehind = true;
enableShadows = true;
shadowDirection = "center";
shadowDirection = "bottom_right";
};
appLauncher = {
@ -40,10 +41,12 @@
};
bar = {
floating = false;
density = "default";
floating = true;
density = "comfortable";
position = "right";
showCapsule = false;
showCapsule = true;
contentPadding = 8;
widgetSpacing = 10;
marginVertical = 1;
marginHorizontal = 0.6;
monitors = [
@ -119,7 +122,7 @@
};
notifications = {
location = "top_center";
location = "top_right";
};
controlCenter = {
@ -147,6 +150,7 @@
};
dock = {
dockType = "static";
displayMode = "auto_hide";
floatingRatio = 1;
onlySameOutput = true;
@ -198,9 +202,9 @@
};
ui = {
fontDefault = lib.mkForce "Nerd Fonts Hack";
fontDefault = lib.mkForce "Monaspace Aether Nerd Font";
fontDefaultScale = 1;
fontFixed = lib.mkForce "Nerd Fonts Hack";
fontFixed = lib.mkForce "Roboto Mono Nerd Font";
fontFixedScale = 1;
idleInhibitorEnabled = false;
tooltipsEnabled = true;

View file

@ -0,0 +1,24 @@
{
pkgs,
lib,
...
}: {
programs = {
nushell = {
enable = true;
extraEnv = ''
$env.EDITOR = "hx"
'';
extraConfig = ''
$env.config.show_banner = false
$env.config.buffer_editor = "hx"
def fish-run [cmd: string] {
^${lib.getExe pkgs.fish} -c $cmd
}
'';
};
};
}

View file

@ -6,13 +6,13 @@
}: {
programs = {
spicetify = {
enabledExtensions = with self.inputs.spicetify-nix.legacyPackages.${pkgs.system}.extensions; [
enabledExtensions = with self.inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system}.extensions; [
adblock
hidePodcasts
shuffle
];
theme = lib.mkForce self.inputs.spicetify-nix.legacyPackages.${pkgs.system}.themes.text;
theme = lib.mkForce self.inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system}.themes.text;
colorScheme = lib.mkForce "TokyoNight";
};
};

View file

@ -3,15 +3,17 @@ _: {
starship = {
enable = true;
enableFishIntegration = true;
enableNushellIntegration = true;
settings = {
add_newline = true;
format = ''
[](bold blue) $username at $hostname on $os
[](bold blue) $directory$git_branch$git_commit$git_state$git_metrics$git_status
[](bold blue) $directory$git_branch$git_commit$git_state$git_metrics$git_status$kubernetes$rust
[>](bold blue) '';
right_format = ''$cmd_duration ($character) at $time'';
right_format = ''$cmd_duration ($status) at $time'';
os = {
format = "[($name $codename$version$edition $symbol )]($style)";
@ -33,9 +35,18 @@ _: {
style_user = "bold green";
};
character = {
success_symbol = "[](bold green)";
error_symbol = "[](bold red)";
status = {
disabled = false;
format = "[$symbol]($style)";
symbol = "";
success_symbol = "";
not_executable_symbol = "🚫";
not_found_symbol = "🔍";
sigint_symbol = "[🛑](bold red)";
signal_symbol = "[](bold yellow)";
pipestatus = true;
pipestatus_separator = "|";
};
time = {
@ -53,6 +64,14 @@ _: {
show_notifications = false;
format = "was [$duration](bold green)";
};
rust = {
format = "via [ $version](red bold)";
};
kubernetes = {
disabled = false;
};
};
};
};

View file

@ -7,6 +7,8 @@
yazi = {
enable = true;
enableFishIntegration = true;
enableNushellIntegration = true;
shellWrapperName = "yz";
settings = {
mgr = {
@ -42,33 +44,63 @@
};
opener = {
play = [
"play" = [
{
run = "${lib.getExe pkgs.mpv} ''$@''";
run = ''${lib.getExe pkgs.mpv} --vo=tct "%s"'';
block = true;
for = "unix";
}
];
view = [
"view" = [
{
run = "${lib.getExe pkgs.timg} ''-p k -C $@ | ${lib.getExe' pkgs.uutils-coreutils-noprefix "more"}''";
run = ''${lib.getExe pkgs.viu} -t "%s"'';
block = true;
for = "unix";
}
];
edit = [
"edit" = [
{
run = "${lib.getExe pkgs.helix} ''$@''";
run = ''${lib.getExe pkgs.helix} "%s"'';
block = true;
for = "unix";
}
];
open = [
"doc" = [
{
run = "${lib.getExe' pkgs.xdg-utils "xdg-open"} ''$@''";
run = ''${lib.getExe pkgs.tdf} "%s"'';
block = true;
for = "unix";
}
];
"hex" = [
{
run = ''${lib.getExe pkgs.hexyl} "$s"'';
}
];
"exfil" = [
{
run = ''${lib.getExe pkgs.ouch} de "%s"'';
block = true;
for = "unix";
}
];
"book" = [
{
run = ''${lib.getExe pkgs.epr} "%s"'';
block = true;
for = "unix";
}
];
"open" = [
{
run = ''${lib.getExe' pkgs.xdg-utils "xdg-open"} "%s"'';
orphan = true;
for = "unix";
}
@ -78,23 +110,83 @@
open = {
rules = [
{
mime = "image/*";
use = "view";
}
{
mime = "text/*";
use = "edit";
mime = "video/*";
use = [
"play"
"open"
];
}
{
mime = "audio/*";
use = "play";
use = [
"play"
"open"
];
}
{
mime = "video/*";
use = "play";
mime = "application/epub+zip";
use = [
"book"
"edit"
];
}
{
mime = "application/pdf";
use = [
"doc"
"open"
];
}
{
mime = "application/{octet-stream,x-executable,x-sharedlib,x-pie-executable}";
use = [
"hex"
"open"
];
}
{
mime = "application/vnd.*";
use = [
"open"
"edit"
];
}
{
mime = "font/*";
use = [
"open"
"edit"
];
}
{
mime = "application/{zip,rar,7z*,tar*,x-tar,x-bzip*,x-gzip,x-xz}";
use = [
"exfil"
"open"
];
}
{
mime = "text/*";
use = [
"edit"
"open"
];
}
{
mime = "*";
use = [
"edit"
"open"
];
}
];
};

View file

@ -6,8 +6,32 @@
programs = {
zellij = {
enable = true;
settings = {
default_shell = "${lib.getExe pkgs.fish}";
options = {
copy_on_select = false;
};
keybinds = {
unbind = [
"Alt n"
"Alt i"
"Alt o"
"Alt h"
"Alt j"
"Alt k"
"Alt l"
"Alt f"
"Alt Up"
"Alt Down"
"Alt Right"
"Alt Left"
"Alt +"
"Alt -"
];
};
default_shell = "${lib.getExe pkgs.nushell}";
show_startup_tips = false;
show_release_notes = false;
simplified_ui = true;

View file

@ -3,6 +3,7 @@ _: {
zoxide = {
enable = true;
enableFishIntegration = true;
enableNushellIntegration = true;
};
};
}