Compare commits
10 commits
f5bbd84fcd
...
7d571dc7af
Author | SHA1 | Date | |
---|---|---|---|
7d571dc7af | |||
6772068ba3 | |||
d867b6a72b | |||
1ff6364827 | |||
d871ef787e | |||
73e7a23241 | |||
0625f69563 | |||
3edb03a8f3 | |||
de86fc50eb | |||
24c3d42a99 |
15 changed files with 335 additions and 85 deletions
48
flake.lock
48
flake.lock
|
@ -117,11 +117,11 @@
|
|||
"utils": "utils"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1686747123,
|
||||
"narHash": "sha256-XUQK9kwHpTeilHoad7L4LjMCCyY13Oq383CoFADecRE=",
|
||||
"lastModified": 1694158470,
|
||||
"narHash": "sha256-yWx9eBDHt6WR3gr65+J85KreHdMypty/P6yM35tIYYM=",
|
||||
"owner": "serokell",
|
||||
"repo": "deploy-rs",
|
||||
"rev": "724463b5a94daa810abfc64a4f87faef4e00f984",
|
||||
"rev": "d0cfc042eba92eb206611c9e8784d41a2c053bab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -137,11 +137,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693791515,
|
||||
"narHash": "sha256-1HXhqNCd1nyxhUvhLuH8pb+wxBm5DNgxhRbBnERdAr8=",
|
||||
"lastModified": 1694395354,
|
||||
"narHash": "sha256-fzm/+caf+yPLb/Wivbydbhg5GlTo4f1rMOLbH7G9c9k=",
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"rev": "1c38664f59f95ac6ddef77a418df85ee662036d2",
|
||||
"rev": "b54e2dc988b34fbad1a1180fe68b573a9d080df5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -491,11 +491,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693713564,
|
||||
"narHash": "sha256-00w2uwb4O6Y1e2W5LG5UFyl1ZN3KFG7aoRdYEvT/BqA=",
|
||||
"lastModified": 1694375657,
|
||||
"narHash": "sha256-32X8dcty4vPXx+D4yJPQZBo5hJ1NQikALhevGv6elO4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "8e49b883890ccb52c059abb152b00a416342ec1c",
|
||||
"rev": "f7848d3e5f15ed02e3f286029697e41ee31662d7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -514,11 +514,11 @@
|
|||
},
|
||||
"locked": {
|
||||
"dir": "contrib",
|
||||
"lastModified": 1693814116,
|
||||
"narHash": "sha256-9UWvn4tPo6Z7dCWzAfD9kTq31j5KyQf8MH1eogiKL9g=",
|
||||
"lastModified": 1694419554,
|
||||
"narHash": "sha256-fl5k7zYhlXO7S/Pnh6lSr6ETF9zdPAp9xSyFzV6l3jY=",
|
||||
"owner": "neovim",
|
||||
"repo": "neovim",
|
||||
"rev": "069fad6e2df25e6b079879670cf6c68ae7ddb012",
|
||||
"rev": "60e5d0fbcc8dfb942480aa2d9e4b45f4a255d952",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -539,11 +539,11 @@
|
|||
"weewx-proxy-flake": "weewx-proxy-flake"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693815598,
|
||||
"narHash": "sha256-DK026bknR7R2SmcoCDStZL/NrTxWPFunJEe23TLu3Gs=",
|
||||
"lastModified": 1694420440,
|
||||
"narHash": "sha256-Qs0zR4HMVIwWjVNq1r4yMK464bhMb7pEoUqYyzCmeJQ=",
|
||||
"owner": "nifoc",
|
||||
"repo": "nix-overlay",
|
||||
"rev": "ecab65354626cafb65dee976233250dd4d1199d9",
|
||||
"rev": "4d1d2316624795a2ab9646a5aa8ab6633e8a7a47",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -590,11 +590,11 @@
|
|||
},
|
||||
"nixos-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1693636127,
|
||||
"narHash": "sha256-ZlS/lFGzK7BJXX2YVGnP3yZi3T9OLOEtBCyMJsb91U8=",
|
||||
"lastModified": 1694304580,
|
||||
"narHash": "sha256-5tIpNodDpEKT8mM/F5zCzWEAnidOg8eb1/x3SRaaBLs=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9075cba53e86dc318d159aee55dc9a7c9a4829c1",
|
||||
"rev": "4c8cf44c5b9481a4f093f1df3b8b7ba997a7c760",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -606,11 +606,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1693714546,
|
||||
"narHash": "sha256-3EMJZeGSZT6pD1eNwI/6Yc0R4rxklNvJ2SDFcsCnjpM=",
|
||||
"lastModified": 1694343207,
|
||||
"narHash": "sha256-jWi7OwFxU5Owi4k2JmiL1sa/OuBCQtpaAesuj5LXC8w=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d816b5ab44187a2dd84806630ce77a733724f95f",
|
||||
"rev": "78058d810644f5ed276804ce7ea9e82d92bee293",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -791,11 +791,11 @@
|
|||
"nixpkgs-stable": "nixpkgs-stable_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1692274144,
|
||||
"narHash": "sha256-BxTQuRUANQ81u8DJznQyPmRsg63t4Yc+0kcyq6OLz8s=",
|
||||
"lastModified": 1694364351,
|
||||
"narHash": "sha256-oadhSCqopYXxURwIA6/Anpe5IAG11q2LhvTJNP5zE6o=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "7e3517c03d46159fdbf8c0e5c97f82d5d4b0c8fa",
|
||||
"rev": "4f883a76282bc28eb952570afc3d8a1bf6f481d7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -146,7 +146,7 @@
|
|||
hooks = {
|
||||
deadnix.enable = true;
|
||||
shellcheck.enable = true;
|
||||
statix.enable = true;
|
||||
# statix.enable = true;
|
||||
treefmt.enable = true;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
"net.ipv4.tcp_window_scaling" = 1;
|
||||
"net.ipv4.tcp_fastopen" = 3;
|
||||
"net.core.rmem_max" = 2500000;
|
||||
"net.core.wmem_max" = 2500000;
|
||||
"vm.overcommit_memory" = 1;
|
||||
};
|
||||
};
|
||||
|
|
44
home/config/nushell/scripts/media-downloader.nu
Normal file
44
home/config/nushell/scripts/media-downloader.nu
Normal file
|
@ -0,0 +1,44 @@
|
|||
export def instagram-dl [name: string url: string] {
|
||||
print $"== ($name)"
|
||||
|
||||
let sleep = (random integer 11..15)
|
||||
let sleep_req = (random integer 10..13)
|
||||
let gdl_cookies = $"($env.HOME)/Pictures/Instagram/instagram.com_cookies.txt"
|
||||
|
||||
(gallery-dl
|
||||
--directory $"($env.HOME)/Pictures/Instagram/($name)/"
|
||||
--download-archive $"($env.HOME)/Pictures/Instagram/($name)/.archive"
|
||||
--filename '{username}-{date:%Y-%m-%d}-{sidecar_media_id:?/_/}{media_id}.{extension}'
|
||||
--config $"($env.HOME)/Pictures/Instagram/gallery-dl-generic.conf"
|
||||
--cookies $gdl_cookies
|
||||
--sleep $sleep
|
||||
--sleep-request $sleep_req
|
||||
--sleep-extractor $sleep_req
|
||||
-vv
|
||||
$url)
|
||||
}
|
||||
|
||||
def bdfr-browser-import [] {
|
||||
http post https://bdfr.internal.kempkens.network/_import_changes ''
|
||||
}
|
||||
|
||||
export def bdfr [
|
||||
--limit (-L): int = 10
|
||||
--sort (-S): string = "hot"
|
||||
] {
|
||||
ssh -t mediaserver bdfr -L $limit -S $sort --authenticate
|
||||
bdfr-browser-import
|
||||
}
|
||||
|
||||
export def bdfr-subreddit [
|
||||
$subreddit: string
|
||||
--sort (-S): string = "hot"
|
||||
] {
|
||||
ssh -t mediaserver bdfr-raw -s $subreddit -S $sort --authenticate
|
||||
bdfr-browser-import
|
||||
}
|
||||
|
||||
export def bdfr-user [$user: string] {
|
||||
ssh -t mediaserver bdfr-raw --user $user --submitted --all-comments --comment-context --authenticate
|
||||
bdfr-browser-import
|
||||
}
|
32
home/config/nushell/scripts/nix-utils.nu
Normal file
32
home/config/nushell/scripts/nix-utils.nu
Normal file
|
@ -0,0 +1,32 @@
|
|||
export alias update-system-flake = nix flake update ~/.config/nixpkgs -v
|
||||
|
||||
export def update-project-flake [] {
|
||||
let envrc = (rg --no-line-number --color never '^use flake' ./.envrc)
|
||||
|
||||
if (not ('./.envrc' | path exists)) or $envrc =~ "^use flake$" {
|
||||
nix flake update ./ -v
|
||||
} else {
|
||||
let flake_path = ($envrc | split column ' ' | get 0 | get column3)
|
||||
nix flake update $flake_path -v
|
||||
}
|
||||
}
|
||||
|
||||
export def update-neovim-plugins [] {
|
||||
let os = (uname)
|
||||
|
||||
match $os {
|
||||
"Darwin" => { ~/.config/nixpkgs/home/programs/nvim/update-plugins.sh }
|
||||
"Linux" => { /etc/nixos/home/programs/nvim/update-plugins.sh }
|
||||
_ => { error make {msg: "unsupported operating system"} }
|
||||
}
|
||||
}
|
||||
|
||||
export def update-all [] {
|
||||
update-system-flake
|
||||
update-neovim-plugins
|
||||
}
|
||||
|
||||
export def nix-garbage-collect [] {
|
||||
nix-collect-garbage -d
|
||||
sudo nix-collect-garbage -d
|
||||
}
|
|
@ -162,7 +162,10 @@
|
|||
;; Scrollback
|
||||
:scrollback_lines 5000
|
||||
;; Launch Menu
|
||||
:launch_menu [{:label :Btop++ :args [_G.programs.btop]}]
|
||||
:launch_menu [{:label :Btop++ :args [_G.programs.btop]}
|
||||
{:label :bash :args [_G.shells.bash]}
|
||||
{:label :fish :args [_G.shells.fish]}
|
||||
{:label :nushell :args [_G.shells.nushell]}]
|
||||
;; Other
|
||||
:front_end :WebGpu
|
||||
:check_for_updates false})
|
||||
|
|
|
@ -5,9 +5,12 @@
|
|||
../config/fonts.nix
|
||||
|
||||
../programs/fish.nix
|
||||
../programs/nushell.nix
|
||||
../programs/atuin.nix
|
||||
../programs/starship.nix
|
||||
../programs/direnv.nix
|
||||
../programs/starship.nix
|
||||
../programs/zoxide.nix
|
||||
|
||||
../programs/wezterm.nix
|
||||
|
||||
../programs/nvim
|
||||
|
@ -73,8 +76,4 @@
|
|||
xz
|
||||
];
|
||||
};
|
||||
|
||||
programs = {
|
||||
zoxide.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ let
|
|||
in
|
||||
{
|
||||
|
||||
home.packages = with pkgs; [ ] ++ optionals isDarwin [
|
||||
home.packages = with pkgs; optionals isDarwin [
|
||||
terminal-notifier
|
||||
];
|
||||
|
||||
|
@ -88,11 +88,9 @@ in
|
|||
ngc = "nix-collect-garbage -d && sudo nix-collect-garbage -d";
|
||||
nsr = "sudo nix-store --verify --check-contents --repair";
|
||||
|
||||
j = "z";
|
||||
ji = "zi";
|
||||
la = "${pkgs.exa}/bin/exa --long --all --group --header --group-directories-first --sort=type --icons";
|
||||
lg = "${pkgs.exa}/bin/exa --long --all --group --header --git";
|
||||
lt = "${pkgs.exa}/bin/exa --long --all --group --header --tree --level ";
|
||||
la = "${pkgs.eza}/bin/eza --long --all --group --header --group-directories-first --sort=type --icons";
|
||||
lg = "${pkgs.eza}/bin/eza --long --all --group --header --git";
|
||||
lt = "${pkgs.eza}/bin/eza --long --all --group --header --tree --level ";
|
||||
|
||||
mysqld-direnv = "mysqld --datadir=$PWD/.direnv/mysql/data --bind-address=127.0.0.1 --socket=$PWD/.direnv/mysql/mysqld.sock --gdb";
|
||||
postgres-direnv-init = "initdb --username $USER --pgdata $PWD/.direnv/postgres/data --auth trust";
|
||||
|
|
31
home/programs/nushell.nix
Normal file
31
home/programs/nushell.nix
Normal file
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
programs.nushell = {
|
||||
enable = true;
|
||||
|
||||
shellAliases = {
|
||||
nrsw = "nixpkgs-switch";
|
||||
upa = "update-all";
|
||||
ngc = "nix-garbage-collect";
|
||||
nsr = "sudo nix-store --verify --check-contents --repair";
|
||||
};
|
||||
|
||||
configFile = {
|
||||
text = ''
|
||||
$env.config = {
|
||||
show_banner: false
|
||||
keybindings: []
|
||||
}
|
||||
|
||||
$env.PATH = ($env.PATH |split row ":"| append $"($env.HOME)/.bin")
|
||||
|
||||
use ~/.config/nushell/scripts/nix-utils.nu *
|
||||
use ~/.config/nushell/scripts/media-downloader.nu *
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
xdg.configFile."nushell/scripts" = {
|
||||
source = ../config/nushell/scripts;
|
||||
recursive = true;
|
||||
};
|
||||
}
|
|
@ -19,23 +19,23 @@ in
|
|||
};
|
||||
plenary-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "plenary.nvim";
|
||||
version = "2023-08-24";
|
||||
version = "2023-09-10";
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvim-lua";
|
||||
repo = "plenary.nvim";
|
||||
rev = "0dbe561ae023f02c2fb772b879e905055b939ce3";
|
||||
sha256 = "0j42b4q25l8yypa92zkdf9jargjszyvw5f83l3qxbh0vy9ly1j2d";
|
||||
rev = "0232372b906f275f76ac42029eba25eaf95e76b9";
|
||||
sha256 = "0z7sag0jqskf7qcdnsczxa3y3rjlnx4k0an23p8zmv5dikbgqkx5";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
nvim-web-devicons = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-web-devicons";
|
||||
version = "2023-09-03";
|
||||
version = "2023-09-09";
|
||||
src = fetchFromGitHub {
|
||||
owner = "kyazdani42";
|
||||
repo = "nvim-web-devicons";
|
||||
rev = "bc11ee2498de2310de5776477dd9dce65d03b464";
|
||||
sha256 = "17lrzh7a2jwgayi2r16wf9y336awy73nl2ww98jnpnzk9r87ww26";
|
||||
rev = "ecdeb4e2a4af34fc873bbfbf1f4c4e447e632255";
|
||||
sha256 = "085mpnvj9j97rwnn4a91nf90ilclk4gagkgcralpjn6a9i4zvkr2";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -63,12 +63,12 @@ in
|
|||
};
|
||||
yanky-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "yanky.nvim";
|
||||
version = "2023-08-30";
|
||||
version = "2023-09-11";
|
||||
src = fetchFromGitHub {
|
||||
owner = "gbprod";
|
||||
repo = "yanky.nvim";
|
||||
rev = "ef70e4e44095a17ab8611cb6630b727ccee0a271";
|
||||
sha256 = "09i4gl2g19gjx30had1wwcfjww80pdfa6fjpr9ifvkh1vq8p5r9a";
|
||||
rev = "4c85d8d6808d9859e72f8bd6c25302199e6a5eac";
|
||||
sha256 = "0ph1mc7nlfsx0aaybnvg6wwpx7hv2ks621qkjcrl3hf8dbc173xs";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -118,12 +118,12 @@ in
|
|||
};
|
||||
nvim-treesitter = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-treesitter";
|
||||
version = "2023-09-04";
|
||||
version = "2023-09-11";
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvim-treesitter";
|
||||
repo = "nvim-treesitter";
|
||||
rev = "30604fd7dde5abcba7ca8f5761894dfa61febe51";
|
||||
sha256 = "0mzl92jdgdjr36gy58pvdsca91k0lxf6pzcf3cw86h01rai2lmfg";
|
||||
rev = "15d327fe6324d8269451131ec34ad4f2a8ef1e01";
|
||||
sha256 = "0hyw21nd9rakyviskcbk7h3pyv5j27145d9sa83li3fdf61hafrc";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -162,23 +162,23 @@ in
|
|||
};
|
||||
telescope-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "telescope.nvim";
|
||||
version = "2023-09-04";
|
||||
version = "2023-09-10";
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvim-telescope";
|
||||
repo = "telescope.nvim";
|
||||
rev = "6b79d7a6a45adc1508a7afee5bc973173ec22f59";
|
||||
sha256 = "15lr5b7922w6wrzky0gy5sgscmw5axvhyajkfdqgrlpl98acqfgp";
|
||||
rev = "a19770625aed49ad2a9f591a5e3946707f7359f6";
|
||||
sha256 = "13r2bbmylh9n5yqmc8mff669w6c4wx0j20xiy4sx2cdmfj089a9k";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
telescope-fzf-native-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "telescope-fzf-native.nvim";
|
||||
version = "2023-05-25";
|
||||
version = "2023-09-10";
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvim-telescope";
|
||||
repo = "telescope-fzf-native.nvim";
|
||||
rev = "9bc8237565ded606e6c366a71c64c0af25cd7a50";
|
||||
sha256 = "0g5n3x66kf5fbzv8rprpyi8hb6v961s0whk8dc6v8r1msc2m4zbs";
|
||||
rev = "6c921ca12321edaa773e324ef64ea301a1d0da62";
|
||||
sha256 = "101dxn7jfyg2wdzkw5cnrw475mg0p3w475l1hplqfhghz33zb1hy";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
buildPhase = ''
|
||||
|
@ -242,12 +242,12 @@ in
|
|||
};
|
||||
nvim-lspconfig = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-lspconfig";
|
||||
version = "2023-08-26";
|
||||
version = "2023-09-09";
|
||||
src = fetchFromGitHub {
|
||||
owner = "neovim";
|
||||
repo = "nvim-lspconfig";
|
||||
rev = "a27356f1ef9c11e1f459cc96a3fcac5c265e72d6";
|
||||
sha256 = "17xq7h9d9zx0pbnhhxxqsp2n6rlz16dvdg6cjaylrm7r60ll9215";
|
||||
rev = "d177ad277a638f262edb73c75ffe33e377b95dc5";
|
||||
sha256 = "0sbd3bj0j5blg7998c2mf9pxp8sfj84dsa1rqbmsqz0isjjl0qay";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -297,12 +297,12 @@ in
|
|||
};
|
||||
nvim-lint = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-lint";
|
||||
version = "2023-08-27";
|
||||
version = "2023-09-07";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mfussenegger";
|
||||
repo = "nvim-lint";
|
||||
rev = "9b6cb72660114e5f188907be0d866a8ca2b0ef23";
|
||||
sha256 = "09j1q2ajav4vxcgd2a5i0i3g72j4y8j7amqx08ss9l9mw7j1lgjc";
|
||||
rev = "73682da41b74c9c35f33b1b2dbd0cc02cc59452f";
|
||||
sha256 = "061x7p90p1nmjf2fs4alrgyj0w0v8w6kbg2n86q2khl40w522ihk";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -440,34 +440,34 @@ in
|
|||
};
|
||||
core-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "core.nvim";
|
||||
version = "2023-07-18";
|
||||
version = "2023-09-09";
|
||||
src = fetchFromGitHub {
|
||||
owner = "niuiic";
|
||||
repo = "core.nvim";
|
||||
rev = "d0843388db6a6747ec1a1c2aea873da0efca2cac";
|
||||
sha256 = "0b47bsbwd1f0635r6jzsmp2d449cxgir93p50hbqlzn25kfvw43q";
|
||||
rev = "dc1046613c7a0ce664b6ec3d5c8c94d6b6d2618d";
|
||||
sha256 = "0lgg800rcrkg99wg7spj1r9ykyx31zr07f57ybyqaxwd7z0sx260";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
format-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "format.nvim";
|
||||
version = "2023-08-17";
|
||||
version = "2023-09-09";
|
||||
src = fetchFromGitHub {
|
||||
owner = "niuiic";
|
||||
repo = "format.nvim";
|
||||
rev = "325d9c5e700f3d44162f49cbedc13508b6b69ebd";
|
||||
sha256 = "1xa9y6rd9mz6xm0wldps6ipybhsv42783a1nmvkpcjaal30qpvgi";
|
||||
rev = "d3eab66f7b7e76316bee61ba32ce0d35a335dd5c";
|
||||
sha256 = "0y4z1r5ps4ilrb99lac73bqib6q2jhi3vgdxw8y5v0lpvvfhx0fd";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
nvim-autopairs = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-autopairs";
|
||||
version = "2023-09-02";
|
||||
version = "2023-09-08";
|
||||
src = fetchFromGitHub {
|
||||
owner = "windwp";
|
||||
repo = "nvim-autopairs";
|
||||
rev = "a52fc6eeec116746110b703381777c46d89d9e27";
|
||||
sha256 = "0bjn6zqjq23w9hp47yrv96074lq3gnr0ncs4bli21kkdvd7hy051";
|
||||
rev = "defad64afbf19381fe31488a7582bbac421d6e38";
|
||||
sha256 = "05ihrriym44g01rryaah2h2xnl183dpwcsf8q8rxzr29z0jpxxip";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -550,12 +550,12 @@ in
|
|||
};
|
||||
toggleterm-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "toggleterm.nvim";
|
||||
version = "2023-08-03";
|
||||
version = "2023-09-11";
|
||||
src = fetchFromGitHub {
|
||||
owner = "akinsho";
|
||||
repo = "toggleterm.nvim";
|
||||
rev = "12cba0a1967b4f3f31903484dec72a6100dcf515";
|
||||
sha256 = "1mlwncnnsp3skzszc544rbpx024im1p52k2pwvqlvwdjn46ffm2l";
|
||||
rev = "0427b908ebefcb3701c7f2cfbdafa37d11afe71a";
|
||||
sha256 = "1wxrwl530kxm8k8ymgk3w77av770ndr1hhzfk315jgl2p5hqmqm0";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -572,34 +572,34 @@ in
|
|||
};
|
||||
gitsigns-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "gitsigns.nvim";
|
||||
version = "2023-09-02";
|
||||
version = "2023-09-08";
|
||||
src = fetchFromGitHub {
|
||||
owner = "lewis6991";
|
||||
repo = "gitsigns.nvim";
|
||||
rev = "d927caa075df63bf301d92f874efb72fd22fd3b4";
|
||||
sha256 = "0vi81r4sj03ydjckpxi9s0w4qhd8lyx8xvl87ym6fp0kalk01vfa";
|
||||
rev = "fef5d90953f0a730483b44745fae5938ba8227f8";
|
||||
sha256 = "1739v2garbf5xinrwl1ac2cf2xmpfkwpjzca2iwj78d7clj9flq5";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
nui-nvim = buildVimPluginFrom2Nix {
|
||||
pname = "nui.nvim";
|
||||
version = "2023-08-29";
|
||||
version = "2023-09-06";
|
||||
src = fetchFromGitHub {
|
||||
owner = "MunifTanjim";
|
||||
repo = "nui.nvim";
|
||||
rev = "aa1b4c1e05983ff7debd2b4b2788651db099de2f";
|
||||
sha256 = "1ray6dk61n1g0vjfvdp9ln98pmf54gjrwrffazfv2gwbwllkj9jf";
|
||||
rev = "c8de23342caf8d50b15d6b28368d36a56a69d76f";
|
||||
sha256 = "0na7mi192alj1pyskdyivn12a0nmcmzy79kmqxyz8r1cijgb33q2";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
nvim-notify = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-notify";
|
||||
version = "2023-06-05";
|
||||
version = "2023-09-10";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rcarriga";
|
||||
repo = "nvim-notify";
|
||||
rev = "ea9c8ce7a37f2238f934e087c255758659948e0f";
|
||||
sha256 = "0lh49bln2s840x08f5a967569k597cnnrl5vclys7lrbw77avga6";
|
||||
rev = "94859430020f5cf32a1b97ddd9e596fed9db7981";
|
||||
sha256 = "04fcm8277csv8davwirndinm0cpnb5h8azr2cxnw1szgqry2yh7k";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,14 +1,26 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, config, ... }:
|
||||
|
||||
let
|
||||
wezterm-pkg = pkgs.wezterm;
|
||||
|
||||
wezterm-nushell = pkgs.writeShellScript "wezterm-nushell.sh" ''
|
||||
source /etc/static/bashrc
|
||||
source ${config.home.sessionVariablesPackage}/etc/profile.d/hm-session-vars.sh
|
||||
|
||||
exec ${pkgs.nushell.outPath}/bin/nu
|
||||
'';
|
||||
in
|
||||
{
|
||||
programs.wezterm = {
|
||||
enable = true;
|
||||
|
||||
package = pkgs.wezterm;
|
||||
package = wezterm-pkg;
|
||||
|
||||
extraConfig = ''
|
||||
_G.shells = {
|
||||
bash = '${pkgs.bash.outPath}/bin/bash',
|
||||
fish = '${pkgs.fish.outPath}/bin/fish',
|
||||
nushell = '${wezterm-nushell}',
|
||||
};
|
||||
|
||||
_G.programs = {
|
||||
|
|
15
home/programs/zoxide.nix
Normal file
15
home/programs/zoxide.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
programs.zoxide = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
programs.fish.shellAliases = {
|
||||
j = "z";
|
||||
ji = "zi";
|
||||
};
|
||||
|
||||
programs.nushell.shellAliases = {
|
||||
j = "z";
|
||||
ji = "zi";
|
||||
};
|
||||
}
|
31
system/darwin/skhd.nix
Normal file
31
system/darwin/skhd.nix
Normal file
|
@ -0,0 +1,31 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
wezterm-pkg = pkgs.wezterm;
|
||||
wezterm-app = "${wezterm-pkg}/Applications/WezTerm.app";
|
||||
wezterm-cli = "${wezterm-pkg}/bin/wezterm";
|
||||
|
||||
yabai-bin = "${pkgs.yabai}/bin/yabai";
|
||||
jq-bin = "${pkgs.jq}/bin/jq";
|
||||
|
||||
script-open-wezterm = pkgs.writeShellScript "skhd-open-wezterm.sh" ''
|
||||
if pgrep "wezterm-gui" >/dev/null 2>&1; then
|
||||
${wezterm-cli} cli spawn
|
||||
wezterm_id="$(${yabai-bin} -m query --windows | ${jq-bin} '.[] | select(.app == "WezTerm") | .id')"
|
||||
${yabai-bin} -m window --focus "$wezterm_id"
|
||||
else
|
||||
open ${wezterm-app}
|
||||
fi
|
||||
'';
|
||||
in
|
||||
{
|
||||
environment.systemPackages = [ pkgs.skhd ];
|
||||
|
||||
services.skhd = {
|
||||
enable = true;
|
||||
|
||||
skhdConfig = ''
|
||||
cmd - return : ${script-open-wezterm}
|
||||
'';
|
||||
};
|
||||
}
|
81
system/darwin/yabai.nix
Normal file
81
system/darwin/yabai.nix
Normal file
|
@ -0,0 +1,81 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
yabai-pkg = pkgs.yabai;
|
||||
yabai-bin = "${yabai-pkg}/bin/yabai";
|
||||
jq-bin = "${pkgs.jq}/bin/jq";
|
||||
|
||||
script-cycle-clockwise = pkgs.writeShellScript "yabai-cycle-clockwise.sh" ''
|
||||
win=$(${yabai-bin} -m query --windows --window last | ${jq-bin} '.id')
|
||||
|
||||
while : ; do
|
||||
${yabai-bin} -m window $win --swap prev &> /dev/null
|
||||
if [[ $? -eq 1 ]]; then
|
||||
break
|
||||
fi
|
||||
done
|
||||
'';
|
||||
in
|
||||
{
|
||||
services.yabai = {
|
||||
enable = true;
|
||||
enableScriptingAddition = false;
|
||||
package = yabai-pkg;
|
||||
|
||||
config = {
|
||||
layout = "bsp";
|
||||
top_padding = 5;
|
||||
bottom_padding = 5;
|
||||
left_padding = 5;
|
||||
right_padding = 5;
|
||||
window_gap = 5;
|
||||
|
||||
window_placement = "second_child";
|
||||
split_type = "auto";
|
||||
};
|
||||
|
||||
extraConfig = ''
|
||||
yabai -m rule --add app='^Dato$' manage=off
|
||||
yabai -m rule --add app='^Mona$' manage=off
|
||||
yabai -m rule --add app='^System.*einstellungen$' manage=off
|
||||
|
||||
yabai -m signal --add event=window_created action='
|
||||
yabai -m query --windows --window $YABAI_WINDOW_ID | ${jq-bin} -er ".\"can-resize\" or .\"is-floating\"" || \
|
||||
yabai -m window $YABAI_WINDOW_ID --toggle float
|
||||
'
|
||||
'';
|
||||
};
|
||||
|
||||
services.skhd.skhdConfig = ''
|
||||
alt + shift - h : ${yabai-bin} -m window --focus west
|
||||
alt + shift - j : ${yabai-bin} -m window --focus south
|
||||
alt + shift - k : ${yabai-bin} -m window --focus north
|
||||
alt + shift - l : ${yabai-bin} -m window --focus east
|
||||
|
||||
alt + shift - w : ${yabai-bin} -m display --focus west
|
||||
alt + shift - e : ${yabai-bin} -m display --focus east
|
||||
|
||||
meh - h : ${yabai-bin} -m window --swap west
|
||||
meh - j : ${yabai-bin} -m window --swap south
|
||||
meh - k : ${yabai-bin} -m window --swap north
|
||||
meh - l : ${yabai-bin} -m window --swap east
|
||||
meh - c : ${script-cycle-clockwise}
|
||||
|
||||
meh - w : ${yabai-bin} -m window --display west; ${yabai-bin} -m display --focus west
|
||||
meh - e : ${yabai-bin} -m window --display east; ${yabai-bin} -m display --focus east
|
||||
|
||||
meh - f : ${yabai-bin} -m window --toggle zoom-fullscreen
|
||||
|
||||
meh - t : ${yabai-bin} -m window --toggle float; ${yabai-bin} -m window --grid 6:6:1:1:4:4
|
||||
|
||||
meh - g : ${yabai-bin} -m window --resize bottom:0:40
|
||||
meh - s : ${yabai-bin} -m window --resize bottom:0:-40
|
||||
|
||||
hyper - h : ${yabai-bin} -m window --warp west
|
||||
hyper - j : ${yabai-bin} -m window --warp south
|
||||
hyper - k : ${yabai-bin} -m window --warp north
|
||||
hyper - l : ${yabai-bin} -m window --warp east
|
||||
|
||||
hyper - f : ${yabai-bin} -m window --toggle native-fullscreen
|
||||
'';
|
||||
}
|
|
@ -3,10 +3,13 @@
|
|||
../shared/show-update-changelog.nix
|
||||
|
||||
../darwin/defaults.nix
|
||||
#../darwin/fonts.nix
|
||||
../darwin/sudo.nix
|
||||
|
||||
../darwin/fish.nix
|
||||
../darwin/attic.nix
|
||||
|
||||
../darwin/skhd.nix
|
||||
../darwin/yabai.nix
|
||||
];
|
||||
|
||||
nix = {
|
||||
|
|
Loading…
Reference in a new issue