Compare commits
No commits in common. "master" and "push-uumomoqkvuvl" have entirely different histories.
master
...
push-uumom
34 changed files with 1393 additions and 1401 deletions
4
.envrc
4
.envrc
|
@ -1,5 +1,5 @@
|
||||||
if ! has nix_direnv_version || ! nix_direnv_version 3.0.5; then
|
if ! has nix_direnv_version || ! nix_direnv_version 3.0.4; then
|
||||||
source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/3.0.5/direnvrc" "sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4="
|
source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/3.0.4/direnvrc" "sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4="
|
||||||
fi
|
fi
|
||||||
|
|
||||||
watch_file flake.nix
|
watch_file flake.nix
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
(key/bind :root ["ctrl+a" "p"] action/command-palette)
|
|
|
@ -21,8 +21,8 @@
|
||||||
;; font string. You generally only need these two:
|
;; font string. You generally only need these two:
|
||||||
;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light)
|
;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light)
|
||||||
;; doom-variable-pitch-font (font-spec :family "sans" :size 13))
|
;; doom-variable-pitch-font (font-spec :family "sans" :size 13))
|
||||||
(setq doom-font (font-spec :family "TX-02-BerkeleyAC" :size 14 :weight 'medium)
|
(setq doom-font (font-spec :family "Iosevka Custom" :size 14 :weight 'medium)
|
||||||
doom-unicode-font (font-spec :family "TX-02-BerkeleyAC" :size 14 :weight 'medium))
|
doom-unicode-font (font-spec :family "Iosevka Custom" :size 14 :weight 'medium))
|
||||||
|
|
||||||
;; There are two ways to load a theme. Both assume the theme is installed and
|
;; There are two ways to load a theme. Both assume the theme is installed and
|
||||||
;; available. You can either set `doom-theme' or manually load a theme with the
|
;; available. You can either set `doom-theme' or manually load a theme with the
|
||||||
|
|
397
flake.lock
generated
397
flake.lock
generated
|
@ -2,28 +2,30 @@
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"cachix": {
|
"cachix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"devenv": [
|
"devenv": "devenv_2",
|
||||||
"devenv"
|
|
||||||
],
|
|
||||||
"flake-compat": [
|
"flake-compat": [
|
||||||
"devenv"
|
"devenv",
|
||||||
|
"flake-compat"
|
||||||
],
|
],
|
||||||
"git-hooks": [
|
"nixpkgs": [
|
||||||
"devenv"
|
"devenv",
|
||||||
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nixpkgs": "nixpkgs"
|
"pre-commit-hooks": [
|
||||||
|
"devenv",
|
||||||
|
"pre-commit-hooks"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737621947,
|
"lastModified": 1712055811,
|
||||||
"narHash": "sha256-8HFvG7fvIFbgtaYAY2628Tb89fA55nPm2jSiNs0/Cws=",
|
"narHash": "sha256-7FcfMm5A/f02yyzuavJe06zLa9hcMHsagE28ADcmQvk=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "cachix",
|
"repo": "cachix",
|
||||||
"rev": "f65a3cd5e339c223471e64c051434616e18cc4f5",
|
"rev": "02e38da89851ec7fec3356a5c04bc8349cae0e30",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"ref": "latest",
|
|
||||||
"repo": "cachix",
|
"repo": "cachix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -31,19 +33,17 @@
|
||||||
"devenv": {
|
"devenv": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"cachix": "cachix",
|
"cachix": "cachix",
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat_2",
|
||||||
"git-hooks": "git-hooks",
|
"nix": "nix_2",
|
||||||
"nix": "nix",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixpkgs": [
|
"pre-commit-hooks": "pre-commit-hooks"
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1743025451,
|
"lastModified": 1719759336,
|
||||||
"narHash": "sha256-5gqfQwTpOIHWSltdm5tKbyOvnTll81lGSiuC2EsVZt0=",
|
"narHash": "sha256-3a34VL/QnHprl5gMy9xlx6d8J+iNp+W88Ex8smkgH9M=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "devenv",
|
"repo": "devenv",
|
||||||
"rev": "686aaf88c9c095fc49dadc620d1a814830c78206",
|
"rev": "bb32aa986f2f695385e54428d0eaf7d05b31466e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -52,14 +52,45 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"devenv_2": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"devenv",
|
||||||
|
"cachix",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"nix": "nix",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"poetry2nix": "poetry2nix",
|
||||||
|
"pre-commit-hooks": [
|
||||||
|
"devenv",
|
||||||
|
"cachix",
|
||||||
|
"pre-commit-hooks"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1708704632,
|
||||||
|
"narHash": "sha256-w+dOIW60FKMaHI1q5714CSibk99JfYxm0CzTinYWr+Q=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv",
|
||||||
|
"rev": "2ee4450b0f4b95a1b90f2eb5ffea98b90e48c196",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"ref": "python-rewrite",
|
||||||
|
"repo": "devenv",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733328505,
|
"lastModified": 1673956053,
|
||||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -68,50 +99,55 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts": {
|
"flake-compat_2": {
|
||||||
"inputs": {
|
"flake": false,
|
||||||
"nixpkgs-lib": [
|
|
||||||
"devenv",
|
|
||||||
"nix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712014858,
|
"lastModified": 1696426674,
|
||||||
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
"owner": "hercules-ci",
|
"owner": "edolstra",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-compat",
|
||||||
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "hercules-ci",
|
"owner": "edolstra",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-compat",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"git-hooks": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"systems": "systems"
|
||||||
"devenv"
|
|
||||||
],
|
|
||||||
"gitignore": "gitignore",
|
|
||||||
"nixpkgs": [
|
|
||||||
"devenv",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1740849354,
|
"lastModified": 1689068808,
|
||||||
"narHash": "sha256-oy33+t09FraucSZ2rZ6qnD1Y1c8azKKmQuCvF2ytUko=",
|
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
|
||||||
"owner": "cachix",
|
"owner": "numtide",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "flake-utils",
|
||||||
"rev": "4a709a8ce9f8c08fa7ddb86761fe488ff7858a07",
|
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "cachix",
|
"owner": "numtide",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -119,7 +155,7 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"devenv",
|
"devenv",
|
||||||
"git-hooks",
|
"pre-commit-hooks",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -137,109 +173,268 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"libgit2": {
|
"nix": {
|
||||||
"flake": false,
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"nixpkgs": [
|
||||||
|
"devenv",
|
||||||
|
"cachix",
|
||||||
|
"devenv",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-regression": "nixpkgs-regression"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1697646580,
|
"lastModified": 1712911606,
|
||||||
"narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=",
|
"narHash": "sha256-BGvBhepCufsjcUkXnEEXhEVjwdJAwPglCC2+bInc794=",
|
||||||
"owner": "libgit2",
|
"owner": "domenkozar",
|
||||||
"repo": "libgit2",
|
"repo": "nix",
|
||||||
"rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5",
|
"rev": "b24a9318ea3f3600c1e24b4a00691ee912d4de12",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "libgit2",
|
"owner": "domenkozar",
|
||||||
"repo": "libgit2",
|
"ref": "devenv-2.21",
|
||||||
|
"repo": "nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nix": {
|
"nix-github-actions": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"nixpkgs": [
|
||||||
"devenv"
|
"devenv",
|
||||||
],
|
"cachix",
|
||||||
"flake-parts": "flake-parts",
|
"devenv",
|
||||||
"libgit2": "libgit2",
|
"poetry2nix",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs"
|
||||||
"nixpkgs-23-11": [
|
|
||||||
"devenv"
|
|
||||||
],
|
|
||||||
"nixpkgs-regression": [
|
|
||||||
"devenv"
|
|
||||||
],
|
|
||||||
"pre-commit-hooks": [
|
|
||||||
"devenv"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1741798497,
|
"lastModified": 1688870561,
|
||||||
"narHash": "sha256-E3j+3MoY8Y96mG1dUIiLFm2tZmNbRvSiyN7CrSKuAVg=",
|
"narHash": "sha256-4UYkifnPEw1nAzqqPOTL2MvWtm3sNGw1UTYTalkTcGY=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-github-actions",
|
||||||
|
"rev": "165b1650b753316aa7f1787f3005a8d2da0f5301",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-github-actions",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix_2": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"devenv",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"devenv",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-regression": "nixpkgs-regression_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712911606,
|
||||||
|
"narHash": "sha256-BGvBhepCufsjcUkXnEEXhEVjwdJAwPglCC2+bInc794=",
|
||||||
"owner": "domenkozar",
|
"owner": "domenkozar",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"rev": "f3f44b2baaf6c4c6e179de8cbb1cc6db031083cd",
|
"rev": "b24a9318ea3f3600c1e24b4a00691ee912d4de12",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "domenkozar",
|
"owner": "domenkozar",
|
||||||
"ref": "devenv-2.24",
|
"ref": "devenv-2.21",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733212471,
|
"lastModified": 1692808169,
|
||||||
"narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=",
|
"narHash": "sha256-x9Opq06rIiwdwGeK2Ykj69dNc2IvUH1fY55Wm7atwrE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "55d15ad12a74eb7d4646254e13638ad0c4128776",
|
"rev": "9201b5ff357e781bf014d0330d18555695df7ba8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-regression": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1643052045,
|
||||||
|
"narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-regression_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1643052045,
|
||||||
|
"narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-stable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710695816,
|
||||||
|
"narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "614b4613980a522ba49f0d194531beddbb7220d3",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-23.11",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717432640,
|
"lastModified": 1713361204,
|
||||||
"narHash": "sha256-+f9c4/ZX5MWDOuB1rKoWj+lBNm0z0rs4CK47HBLxy1o=",
|
"narHash": "sha256-TA6EDunWTkc5FvDCqU3W2T3SFn0gRZqh6D/hJnM02MM=",
|
||||||
"owner": "NixOS",
|
"owner": "cachix",
|
||||||
"repo": "nixpkgs",
|
"repo": "devenv-nixpkgs",
|
||||||
"rev": "88269ab3044128b7c2f4c7d68448b2fb50456870",
|
"rev": "285676e87ad9f0ca23d8714a6ab61e7e027020c6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "cachix",
|
||||||
"ref": "release-24.05",
|
"ref": "rolling",
|
||||||
"repo": "nixpkgs",
|
"repo": "devenv-nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1742422364,
|
"lastModified": 1719506693,
|
||||||
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
|
"narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=",
|
||||||
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
|
"rev": "b2852eb9365c6de48ffb0dc2c9562591f652242a",
|
||||||
"revCount": 770807,
|
"revCount": 644565,
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.1.770807%2Brev-a84ebe20c6bc2ecbcfb000a50776219f48d134cc/0195b626-8c1d-7fb9-9282-563af3d37ab9/source.tar.gz"
|
"url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.1.644565%2Brev-b2852eb9365c6de48ffb0dc2c9562591f652242a/01906511-d0fc-7244-b596-2d790f5bfdb0/source.tar.gz"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://flakehub.com/f/NixOS/nixpkgs/0.1.0.tar.gz"
|
"url": "https://flakehub.com/f/NixOS/nixpkgs/0.1.0.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"poetry2nix": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nix-github-actions": "nix-github-actions",
|
||||||
|
"nixpkgs": [
|
||||||
|
"devenv",
|
||||||
|
"cachix",
|
||||||
|
"devenv",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1692876271,
|
||||||
|
"narHash": "sha256-IXfZEkI0Mal5y1jr6IRWMqK8GW2/f28xJenZIPQqkY0=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "poetry2nix",
|
||||||
|
"rev": "d5006be9c2c2417dafb2e2e5034d83fabd207ee3",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "poetry2nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pre-commit-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"devenv",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"gitignore": "gitignore",
|
||||||
|
"nixpkgs": [
|
||||||
|
"devenv",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1713775815,
|
||||||
|
"narHash": "sha256-Wu9cdYTnGQQwtT20QQMg7jzkANKQjwBD9iccfGKkfls=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"rev": "2ac4dcbf55ed43f3be0bae15e181f08a57af24a4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"devenv": "devenv",
|
"devenv": "devenv",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_3",
|
||||||
"systems": "systems"
|
"systems": "systems_3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
|
87
flake.nix
87
flake.nix
|
@ -1,12 +1,7 @@
|
||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.0.tar.gz";
|
nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.0.tar.gz";
|
||||||
devenv = {
|
devenv.url = "github:cachix/devenv";
|
||||||
url = "github:cachix/devenv";
|
|
||||||
inputs = {
|
|
||||||
nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
nixConfig = {
|
nixConfig = {
|
||||||
|
@ -14,51 +9,39 @@
|
||||||
extra-substituters = "https://devenv.cachix.org";
|
extra-substituters = "https://devenv.cachix.org";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs = {
|
||||||
{
|
nixpkgs,
|
||||||
nixpkgs,
|
devenv,
|
||||||
devenv,
|
systems,
|
||||||
systems,
|
...
|
||||||
...
|
} @ inputs: let
|
||||||
}@inputs:
|
forEachSystem = nixpkgs.lib.genAttrs (import systems);
|
||||||
let
|
in {
|
||||||
forEachSystem = nixpkgs.lib.genAttrs (import systems);
|
formatter = forEachSystem (system: nixpkgs.legacyPackages.${system}.alejandra);
|
||||||
in
|
devShells =
|
||||||
{
|
forEachSystem
|
||||||
formatter = forEachSystem (system: nixpkgs.legacyPackages.${system}.nixfmt-rfc-style);
|
(system: let
|
||||||
devShells = forEachSystem (
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
system:
|
in {
|
||||||
let
|
default = devenv.lib.mkShell {
|
||||||
pkgs = nixpkgs.legacyPackages.${system};
|
inherit inputs pkgs;
|
||||||
in
|
modules = [
|
||||||
{
|
{
|
||||||
default = devenv.lib.mkShell {
|
# https://devenv.sh/reference/options/
|
||||||
inherit inputs pkgs;
|
packages = [pkgs.hello pkgs.delta pkgs.difftastic pkgs.alejandra pkgs.nodePackages.bash-language-server pkgs.shellcheck pkgs.shfmt];
|
||||||
modules = [
|
|
||||||
{
|
|
||||||
# https://devenv.sh/reference/options/
|
|
||||||
packages = [
|
|
||||||
pkgs.hello
|
|
||||||
pkgs.delta
|
|
||||||
pkgs.difftastic
|
|
||||||
pkgs.nodePackages.bash-language-server
|
|
||||||
pkgs.shellcheck
|
|
||||||
pkgs.shfmt
|
|
||||||
];
|
|
||||||
|
|
||||||
pre-commit.hooks = {
|
pre-commit.hooks = {
|
||||||
nixfmt-rfc-style.enable = true;
|
alejandra.enable = true;
|
||||||
black.enable = true;
|
black.enable = true;
|
||||||
deadnix.enable = true;
|
deadnix.enable = true;
|
||||||
stylua.enable = true;
|
stylua.enable = true;
|
||||||
shellcheck.enable = true;
|
shellcheck.enable = true;
|
||||||
shfmt.enable = true;
|
shfmt.enable = true;
|
||||||
taplo.enable = true;
|
taplo.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
});
|
||||||
);
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
font-family = "Berkeley Mono"
|
|
||||||
font-style = "Retina"
|
|
|
@ -5,8 +5,7 @@ spoon.SpoonInstall:andUse("WindowHalfsAndThirds")
|
||||||
spoon.SpoonInstall:andUse("Commander")
|
spoon.SpoonInstall:andUse("Commander")
|
||||||
spoon.SpoonInstall:andUse("ReloadConfiguration")
|
spoon.SpoonInstall:andUse("ReloadConfiguration")
|
||||||
|
|
||||||
-- Keep a running, and preferred terminal as the _last_ value here
|
TERMINAL_NAME = "WezTerm"
|
||||||
TERMINAL_NAMES = { "Ghostty", "wezterm-gui", "WezTerm" }
|
|
||||||
|
|
||||||
spoon.WindowScreenLeftAndRight:bindHotkeys(spoon.WindowScreenLeftAndRight.defaultHotkeys)
|
spoon.WindowScreenLeftAndRight:bindHotkeys(spoon.WindowScreenLeftAndRight.defaultHotkeys)
|
||||||
|
|
||||||
|
@ -16,36 +15,23 @@ spoon.ReloadConfiguration:start()
|
||||||
|
|
||||||
pcall(require, "initlocal")
|
pcall(require, "initlocal")
|
||||||
|
|
||||||
hs.hotkey.bind({ "cmd", "alt", "ctrl" }, "SPACE", function()
|
hs.hotkey.bind({"cmd", "alt", "ctrl"}, "SPACE", function ()
|
||||||
spoon.Commander.show()
|
spoon.Commander.show()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hs.hotkey.bind({ "ctrl" }, "t", function()
|
hs.hotkey.bind({"ctrl"}, "t", function ()
|
||||||
local terminal = nil
|
local currentApp = hs.window.focusedWindow():application()
|
||||||
for i = 1, #TERMINAL_NAMES do
|
if (currentApp:name() == TERMINAL_NAME) then
|
||||||
-- Can't use .get here, as there's an open bug where it just… returns a window instead sometimes
|
hs.eventtap.keyStroke({"ctrl"}, "t", 1000, currentApp)
|
||||||
if hs.application.find(TERMINAL_NAMES[i], true) then
|
else
|
||||||
terminal = hs.application.find(TERMINAL_NAMES[i], true)
|
hs.application.launchOrFocus(TERMINAL_NAME)
|
||||||
break
|
end
|
||||||
end
|
|
||||||
end
|
|
||||||
local currentApp = hs.window.focusedWindow():application()
|
|
||||||
print(currentApp)
|
|
||||||
if terminal then
|
|
||||||
if currentApp:name() == terminal:name() then
|
|
||||||
hs.eventtap.keyStroke({ "ctrl" }, "t", 1000, currentApp)
|
|
||||||
else
|
|
||||||
terminal:activate()
|
|
||||||
end
|
|
||||||
else
|
|
||||||
hs.application.launchOrFocus(TERMINAL_NAMES[1])
|
|
||||||
end
|
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hs.hotkey.bind({ "cmd", "alt" }, ",", function()
|
hs.hotkey.bind({"cmd", "alt"}, ",", function ()
|
||||||
hs.application.launchOrFocus("System Preferences")
|
hs.application.launchOrFocus("System Preferences")
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hs.hotkey.bind({ "cmd", "shift" }, "l", function()
|
hs.hotkey.bind({"cmd", "shift"}, "l", function ()
|
||||||
hs.application.launchOrFocus("Launchpad")
|
hs.application.launchOrFocus("Launchpad")
|
||||||
end)
|
end)
|
||||||
|
|
498
nix/home-manager/flake.lock
generated
498
nix/home-manager/flake.lock
generated
|
@ -1,5 +1,26 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"crane": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"zjstatus",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718730147,
|
||||||
|
"narHash": "sha256-QmD6B6FYpuoCqu6ZuPJH896ItNquDkn0ulQlOn4ykN8=",
|
||||||
|
"owner": "ipetkov",
|
||||||
|
"repo": "crane",
|
||||||
|
"rev": "32c21c29b034d0a93fdb2379d6fabc40fc3d0e6c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "ipetkov",
|
||||||
|
"repo": "crane",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"fenix": {
|
"fenix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -8,11 +29,11 @@
|
||||||
"rust-analyzer-src": "rust-analyzer-src"
|
"rust-analyzer-src": "rust-analyzer-src"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1742452566,
|
"lastModified": 1719815435,
|
||||||
"narHash": "sha256-sVuLDQ2UIWfXUBbctzrZrXM2X05YjX08K7XHMztt36E=",
|
"narHash": "sha256-K2xFp142onP35jcx7li10xUxNVEVRWjAdY8DSuR7Naw=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "fenix",
|
"repo": "fenix",
|
||||||
"rev": "7d9ba794daf5e8cc7ee728859bc688d8e26d5f06",
|
"rev": "ebfe2c639111d7e82972a12711206afaeeda2450",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -21,69 +42,16 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1733328505,
|
|
||||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat_2": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1733328505,
|
|
||||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-parts": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": [
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1741352980,
|
|
||||||
"narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1710146030,
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -92,64 +60,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"haumea": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"nixpkgs": "nixpkgs"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1685133229,
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
"narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=",
|
||||||
"owner": "numtide",
|
"owner": "nix-community",
|
||||||
"repo": "flake-utils",
|
"repo": "haumea",
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
"rev": "34dd58385092a23018748b50f9b23de6266dffc2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "numtide",
|
"owner": "nix-community",
|
||||||
"repo": "flake-utils",
|
"ref": "v0.2.2",
|
||||||
"type": "github"
|
"repo": "haumea",
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_3": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_3"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1731533236,
|
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ghostty": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": "flake-compat",
|
|
||||||
"flake-utils": "flake-utils_2",
|
|
||||||
"nixpkgs-stable": "nixpkgs-stable",
|
|
||||||
"nixpkgs-unstable": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"zig": "zig",
|
|
||||||
"zon2nix": "zon2nix"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1743191728,
|
|
||||||
"narHash": "sha256-LrQd2IkfcmHdBh+pwPEPXzcosBerIEFzz/DbVNzBqig=",
|
|
||||||
"owner": "ghostty-org",
|
|
||||||
"repo": "ghostty",
|
|
||||||
"rev": "1067cd3d8a061eb5b23bc1a4c46ca10af4481941",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "ghostty-org",
|
|
||||||
"repo": "ghostty",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -160,11 +86,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1743360001,
|
"lastModified": 1719827439,
|
||||||
"narHash": "sha256-HtpS/ZdgWXw0y+aFdORcX5RuBGTyz3WskThspNR70SM=",
|
"narHash": "sha256-tneHOIv1lEavZ0vQ+rgz67LPNCgOZVByYki3OkSshFU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "b6fd653ef8fbeccfd4958650757e91767a65506d",
|
"rev": "59ce796b2563e19821361abbe2067c3bb4143a7d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -173,31 +99,40 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ixx": {
|
"nix-flake-tests": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1677844186,
|
||||||
|
"narHash": "sha256-ErJZ/Gs1rxh561CJeWP5bohA2IcTq1rDneu1WT6CVII=",
|
||||||
|
"owner": "antifuchs",
|
||||||
|
"repo": "nix-flake-tests",
|
||||||
|
"rev": "bbd9216bd0f6495bb961a8eb8392b7ef55c67afb",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "antifuchs",
|
||||||
|
"repo": "nix-flake-tests",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-github-actions": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": [
|
|
||||||
"nixvim",
|
|
||||||
"nuschtosSearch",
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixneovimplugins",
|
||||||
"nuschtosSearch",
|
"poetry2nix",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729958008,
|
"lastModified": 1688870561,
|
||||||
"narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=",
|
"narHash": "sha256-4UYkifnPEw1nAzqqPOTL2MvWtm3sNGw1UTYTalkTcGY=",
|
||||||
"owner": "NuschtOS",
|
"owner": "nix-community",
|
||||||
"repo": "ixx",
|
"repo": "nix-github-actions",
|
||||||
"rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb",
|
"rev": "165b1650b753316aa7f1787f3005a8d2da0f5301",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NuschtOS",
|
"owner": "nix-community",
|
||||||
"ref": "v0.0.6",
|
"repo": "nix-github-actions",
|
||||||
"repo": "ixx",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -208,11 +143,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1743306489,
|
"lastModified": 1719832725,
|
||||||
"narHash": "sha256-LROaIjSLo347cwcHRfSpqzEOa2FoLSeJwU4dOrGm55E=",
|
"narHash": "sha256-dr8DkeS74KVNTgi8BE0BiUKALb+EKlMIV86G2xPYO64=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "nix-index-database",
|
"repo": "nix-index-database",
|
||||||
"rev": "b3696bfb6c24aa61428839a99e8b40c53ac3a82d",
|
"rev": "2917972ed34ce292309b3a4976286f8b5c08db27",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -221,104 +156,150 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixneovim": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": [
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
|
"haumea": "haumea",
|
||||||
|
"home-manager": [
|
||||||
|
"home-manager"
|
||||||
|
],
|
||||||
|
"nix-flake-tests": "nix-flake-tests",
|
||||||
|
"nixneovimplugins": [
|
||||||
|
"nixneovimplugins"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nmd": "nmd",
|
||||||
|
"nmt": "nmt"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718612773,
|
||||||
|
"narHash": "sha256-Uzw1jJhriSwctKZvEc9vwUfKHSvnX7YGKJxYv8JPG14=",
|
||||||
|
"owner": "nixneovim",
|
||||||
|
"repo": "nixneovim",
|
||||||
|
"rev": "2ae81f2ed61ebf4ca4d4b36ea9e8eb5163380d44",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixneovim",
|
||||||
|
"repo": "nixneovim",
|
||||||
|
"rev": "2ae81f2ed61ebf4ca4d4b36ea9e8eb5163380d44",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixneovimplugins": {
|
"nixneovimplugins": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
|
||||||
"flake-utils": [
|
"flake-utils": [
|
||||||
"flake-utils"
|
"flake-utils"
|
||||||
],
|
],
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"treefmt-nix": "treefmt-nix"
|
"poetry2nix": "poetry2nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1743355494,
|
"lastModified": 1719319285,
|
||||||
"narHash": "sha256-NlHg4uJ0aneeoh2q6ZMGElDStnSNxF4YdxNGgZitjQw=",
|
"narHash": "sha256-lSs8OrF4bSpNpmnt074xspUusTa+6UyXt50dnIZQdYA=",
|
||||||
"owner": "m15a",
|
"owner": "NixNeovim",
|
||||||
"repo": "flake-awesome-neovim-plugins",
|
"repo": "NixNeovimPlugins",
|
||||||
"rev": "aa8458831dc4e07c159616091216f56e488fc952",
|
"rev": "6fa0915e49dc3822f7630f0fece4819e09df014d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "m15a",
|
"owner": "NixNeovim",
|
||||||
"repo": "flake-awesome-neovim-plugins",
|
"repo": "NixNeovimPlugins",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1743423905,
|
"lastModified": 1681001314,
|
||||||
"narHash": "sha256-KMl3R0n1H4Vo9OyFFwAUI6d799r8zbxV+Q5WSsVNajw=",
|
"narHash": "sha256-5sDnCLdrKZqxLPK4KA8+f4A3YKO/u6ElpMILvX0g72c=",
|
||||||
"owner": "nixos",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "e68b342423c69aa8113894d9e89ae50e4fd9c456",
|
"rev": "367c0e1086a4eb4502b24d872cea2c7acdd557f4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs.lib",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1741992157,
|
"lastModified": 1719837240,
|
||||||
"narHash": "sha256-nlIfTsTrMSksEJc1f7YexXiPVuzD1gOfeN1ggwZyUoc=",
|
"narHash": "sha256-Qg3AqKTgFvttXP7O+1+OhGsRwrNr+7Hgm112v/n4XVE=",
|
||||||
"owner": "nixos",
|
"owner": "nixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "da4b122f63095ca1199bd4d526f9e26426697689",
|
"rev": "dcffdd1040ec14a003bb053e6df7e4e298d1de59",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nixOS",
|
||||||
"ref": "release-24.11",
|
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixvim": {
|
"nmd": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1672949361,
|
||||||
|
"narHash": "sha256-WWg1kbilAb3sA+RoJtSYfAZvyYu1Nk79ocHaerwbQxQ=",
|
||||||
|
"owner": "~rycee",
|
||||||
|
"repo": "nmd",
|
||||||
|
"rev": "fb9cf8e991487c6923f3c654b8ae51b6f0f205ce",
|
||||||
|
"type": "sourcehut"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "~rycee",
|
||||||
|
"repo": "nmd",
|
||||||
|
"rev": "fb9cf8e991487c6923f3c654b8ae51b6f0f205ce",
|
||||||
|
"type": "sourcehut"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nmt": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709382952,
|
||||||
|
"narHash": "sha256-n/BvuWVcQxaXCU30feNRqWWqabhIIO2+tRFnhLIhjiQ=",
|
||||||
|
"owner": "jooooscha",
|
||||||
|
"repo": "nmt",
|
||||||
|
"rev": "86a09994d1007c39a1f4d386e3caea9b4681d9d6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "jooooscha",
|
||||||
|
"repo": "nmt",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"poetry2nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-utils": [
|
||||||
"nixpkgs": [
|
"nixneovimplugins",
|
||||||
"nixpkgs"
|
"flake-utils"
|
||||||
],
|
],
|
||||||
"nuschtosSearch": "nuschtosSearch"
|
"nix-github-actions": "nix-github-actions",
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1743362786,
|
|
||||||
"narHash": "sha256-XbXIRDbb8/vLBX1M096l7lM5wfzBTp1ZXfUl9bUhVGU=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixvim",
|
|
||||||
"rev": "d81f37256d0a8691b837b74979d27bf89be8ecdd",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixvim",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nuschtosSearch": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils_3",
|
|
||||||
"ixx": "ixx",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixneovimplugins",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1742659553,
|
"lastModified": 1689849924,
|
||||||
"narHash": "sha256-i/JCrr/jApVorI9GkSV5to+USrRCa0rWuQDH8JSlK2A=",
|
"narHash": "sha256-d259Z2S7CS7Na04qQNQ6LYQILuI7cf4Rpe76qc4mz40=",
|
||||||
"owner": "NuschtOS",
|
"owner": "nix-community",
|
||||||
"repo": "search",
|
"repo": "poetry2nix",
|
||||||
"rev": "508752835128a3977985a4d5225ff241f7756181",
|
"rev": "1d7eda9336f336392d24e9602be5cb9be7ae405c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NuschtOS",
|
"owner": "nix-community",
|
||||||
"repo": "search",
|
"repo": "poetry2nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -326,22 +307,22 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"fenix": "fenix",
|
"fenix": "fenix",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"ghostty": "ghostty",
|
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nix-index-database": "nix-index-database",
|
"nix-index-database": "nix-index-database",
|
||||||
|
"nixneovim": "nixneovim",
|
||||||
"nixneovimplugins": "nixneovimplugins",
|
"nixneovimplugins": "nixneovimplugins",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixvim": "nixvim"
|
"zjstatus": "zjstatus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-analyzer-src": {
|
"rust-analyzer-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1742296961,
|
"lastModified": 1719760370,
|
||||||
"narHash": "sha256-gCpvEQOrugHWLimD1wTFOJHagnSEP6VYBDspq96Idu0=",
|
"narHash": "sha256-fsxAuW6RxKZYjAP3biUC6C4vaYFhDfWv8lp1Tmx3ZCY=",
|
||||||
"owner": "rust-lang",
|
"owner": "rust-lang",
|
||||||
"repo": "rust-analyzer",
|
"repo": "rust-analyzer",
|
||||||
"rev": "15d87419f1a123d8f888d608129c3ce3ff8f13d4",
|
"rev": "ea7fdada6a0940b239ddbde2048a4d7dac1efe1e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -351,6 +332,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"rust-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"zjstatus",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1719109180,
|
||||||
|
"narHash": "sha256-96dwGCV2yQxDozDATqbsM3YU0ft3Isw3cwVDO/eNCv8=",
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"rev": "5fc5f3a0d7eabf7db86851e6423f9d7fbceaf89d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
|
@ -366,108 +368,28 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_2": {
|
"zjstatus": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"treefmt-nix": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"crane": "crane",
|
||||||
|
"flake-utils": [
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixneovimplugins",
|
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
],
|
||||||
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1743081648,
|
"lastModified": 1719650330,
|
||||||
"narHash": "sha256-WRAylyYptt6OX5eCEBWyTwOEqEtD6zt33rlUkr6u3cE=",
|
"narHash": "sha256-spoLPg8Ty7LvypwM4JpuWA06B/TUcIzyjs+N1nzGha4=",
|
||||||
"owner": "numtide",
|
"owner": "dj95",
|
||||||
"repo": "treefmt-nix",
|
"repo": "zjstatus",
|
||||||
"rev": "29a3d7b768c70addce17af0869f6e2bd8f5be4b7",
|
"rev": "f5fd92d8ebd3152b0db4c85c6ff7b638c6f52d14",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "numtide",
|
"owner": "dj95",
|
||||||
"repo": "treefmt-nix",
|
"repo": "zjstatus",
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"zig": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": [
|
|
||||||
"ghostty"
|
|
||||||
],
|
|
||||||
"flake-utils": [
|
|
||||||
"ghostty",
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"ghostty",
|
|
||||||
"nixpkgs-stable"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1741825901,
|
|
||||||
"narHash": "sha256-aeopo+aXg5I2IksOPFN79usw7AeimH1+tjfuMzJHFdk=",
|
|
||||||
"owner": "mitchellh",
|
|
||||||
"repo": "zig-overlay",
|
|
||||||
"rev": "0b14285e283f5a747f372fb2931835dd937c4383",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "mitchellh",
|
|
||||||
"repo": "zig-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"zon2nix": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": [
|
|
||||||
"ghostty",
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"ghostty",
|
|
||||||
"nixpkgs-unstable"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1742104771,
|
|
||||||
"narHash": "sha256-LhidlyEA9MP8jGe1rEnyjGFCzLLgCdDpYeWggibayr0=",
|
|
||||||
"owner": "jcollie",
|
|
||||||
"repo": "zon2nix",
|
|
||||||
"rev": "56c159be489cc6c0e73c3930bd908ddc6fe89613",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "jcollie",
|
|
||||||
"ref": "56c159be489cc6c0e73c3930bd908ddc6fe89613",
|
|
||||||
"repo": "zon2nix",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,23 +2,13 @@
|
||||||
description = "Home Manager configuration of acicchetti";
|
description = "Home Manager configuration of acicchetti";
|
||||||
|
|
||||||
nixConfig = {
|
nixConfig = {
|
||||||
extra-substituters = [
|
extra-substituters = ["https://devenv.cachix.org" "https://nixpkgs.cachix.org" "https://nix-community.cachix.org"];
|
||||||
"https://devenv.cachix.org"
|
extra-trusted-public-keys = ["devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw=" "nixpkgs.cachix.org-1:q91R6hxbwFvDqTSDKwDAV4T5PxqXGxswD8vhONFMeOE=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="];
|
||||||
"https://nixpkgs.cachix.org"
|
|
||||||
"https://nix-community.cachix.org"
|
|
||||||
];
|
|
||||||
extra-trusted-public-keys = [
|
|
||||||
"devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="
|
|
||||||
"nixpkgs.cachix.org-1:q91R6hxbwFvDqTSDKwDAV4T5PxqXGxswD8vhONFMeOE="
|
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
# Specify the source of Home Manager and Nixpkgs.
|
# Specify the source of Home Manager and Nixpkgs.
|
||||||
nixpkgs = {
|
nixpkgs = {url = "github:nixOS/nixpkgs";};
|
||||||
url = "github:nixos/nixpkgs";
|
|
||||||
};
|
|
||||||
flake-utils.url = "github:numtide/flake-utils"; # not directly used, but common source for the several flakes that do use it
|
flake-utils.url = "github:numtide/flake-utils"; # not directly used, but common source for the several flakes that do use it
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
|
@ -28,19 +18,24 @@
|
||||||
url = "github:Mic92/nix-index-database";
|
url = "github:Mic92/nix-index-database";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
ghostty = {
|
nixneovim = {
|
||||||
url = "github:ghostty-org/ghostty";
|
url = "github:nixneovim/nixneovim/2ae81f2ed61ebf4ca4d4b36ea9e8eb5163380d44";
|
||||||
inputs.nixpkgs-unstable.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
nixvim = {
|
|
||||||
url = "github:nix-community/nixvim";
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.follows = "nixpkgs";
|
nixpkgs.follows = "nixpkgs";
|
||||||
# home-manager.follows = "home-manager";
|
home-manager.follows = "home-manager";
|
||||||
|
flake-utils.follows = "flake-utils";
|
||||||
|
nixneovimplugins.follows = "nixneovimplugins";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
nixneovimplugins = {
|
nixneovimplugins = {
|
||||||
url = "github:m15a/flake-awesome-neovim-plugins";
|
url = "github:NixNeovim/NixNeovimPlugins";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
flake-utils.follows = "flake-utils";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
zjstatus = {
|
||||||
|
url = "github:dj95/zjstatus";
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.follows = "nixpkgs";
|
nixpkgs.follows = "nixpkgs";
|
||||||
flake-utils.follows = "flake-utils";
|
flake-utils.follows = "flake-utils";
|
||||||
|
@ -54,63 +49,55 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs = {
|
||||||
{
|
self,
|
||||||
self,
|
nixpkgs,
|
||||||
nixpkgs,
|
home-manager,
|
||||||
home-manager,
|
nix-index-database,
|
||||||
nix-index-database,
|
nixneovim,
|
||||||
nixvim,
|
nixneovimplugins,
|
||||||
fenix,
|
zjstatus,
|
||||||
nixneovimplugins,
|
fenix,
|
||||||
ghostty,
|
...
|
||||||
...
|
}: let
|
||||||
}:
|
supportedSystems = ["aarch64-darwin" "x86_64-linux"];
|
||||||
let
|
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
||||||
supportedSystems = [
|
|
||||||
"aarch64-darwin"
|
|
||||||
"x86_64-linux"
|
|
||||||
];
|
|
||||||
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
|
||||||
|
|
||||||
pkgs = forAllSystems (
|
pkgs = forAllSystems (
|
||||||
system:
|
system:
|
||||||
import nixpkgs {
|
import nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
config = {
|
config = {allowUnfree = true;};
|
||||||
allowUnfree = true;
|
|
||||||
};
|
|
||||||
overlays = [
|
overlays = [
|
||||||
ghostty.overlays.default
|
(_final: prev: {
|
||||||
|
zjstatus = zjstatus.packages.${prev.system}.default;
|
||||||
|
})
|
||||||
nixneovimplugins.overlays.default
|
nixneovimplugins.overlays.default
|
||||||
fenix.overlays.default
|
fenix.overlays.default
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
homeManagerConfigs = forAllSystems (system: {
|
homeManagerConfigs = forAllSystems (
|
||||||
|
system: {
|
||||||
pkgs = pkgs.${system};
|
pkgs = pkgs.${system};
|
||||||
modules = [
|
modules = [
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
nixvim.homeManagerModules.nixvim
|
nixneovim.nixosModules.${system}.homeManager
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
nix-index-database.hmModules.nix-index
|
nix-index-database.hmModules.nix-index
|
||||||
./home.nix
|
./home.nix
|
||||||
];
|
];
|
||||||
});
|
}
|
||||||
in
|
);
|
||||||
{
|
in {
|
||||||
formatter = forAllSystems (system: pkgs.${system}.nixfmt-rfc-style);
|
formatter = forAllSystems (system: pkgs.${system}.alejandra);
|
||||||
homeConfigurations.aarch64-darwin-acicchetti =
|
homeConfigurations.aarch64-darwin-acicchetti = home-manager.lib.homeManagerConfiguration homeManagerConfigs."aarch64-darwin";
|
||||||
home-manager.lib.homeManagerConfiguration
|
homeConfigurations.x86_64-linux-acicchetti = home-manager.lib.homeManagerConfiguration homeManagerConfigs."x86_64-linux";
|
||||||
homeManagerConfigs."aarch64-darwin";
|
|
||||||
homeConfigurations.x86_64-linux-acicchetti =
|
|
||||||
home-manager.lib.homeManagerConfiguration
|
|
||||||
homeManagerConfigs."x86_64-linux";
|
|
||||||
|
|
||||||
defaultPackage.aarch64-darwin = self.homeConfigurations.aarch64-darwin-acicchetti.activationPackage;
|
defaultPackage.aarch64-darwin = self.homeConfigurations.aarch64-darwin-acicchetti.activationPackage;
|
||||||
defaultPackage.x86_64-linux = self.homeConfigurations.x86_64-linux-acicchetti.activationPackage;
|
defaultPackage.x86_64-linux = self.homeConfigurations.x86_64-linux-acicchetti.activationPackage;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: let
|
||||||
let
|
|
||||||
inherit (pkgs.stdenv.hostPlatform) isDarwin;
|
inherit (pkgs.stdenv.hostPlatform) isDarwin;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
home = {
|
home = {
|
||||||
username = "acicchetti";
|
username = "acicchetti";
|
||||||
|
|
||||||
homeDirectory = if isDarwin then "/Users/acicchetti" else "/home/acicchetti";
|
homeDirectory =
|
||||||
|
if isDarwin
|
||||||
|
then "/Users/acicchetti"
|
||||||
|
else "/home/acicchetti";
|
||||||
|
|
||||||
stateVersion = "24.11";
|
stateVersion = "24.11";
|
||||||
|
|
||||||
|
@ -15,8 +16,6 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts.fontconfig.enable = true;
|
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
home-manager.enable = true;
|
home-manager.enable = true;
|
||||||
|
|
||||||
|
@ -35,7 +34,6 @@ in
|
||||||
vim_insert = "steady-bar";
|
vim_insert = "steady-bar";
|
||||||
vim_normal = "steady-block";
|
vim_normal = "steady-block";
|
||||||
};
|
};
|
||||||
sync_address = "https://atuin.acicchetti.dev";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -48,7 +46,7 @@ in
|
||||||
eza = {
|
eza = {
|
||||||
enable = true;
|
enable = true;
|
||||||
git = true;
|
git = true;
|
||||||
icons = "auto";
|
icons = false;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -60,18 +58,6 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
ghostty = {
|
|
||||||
enable = true;
|
|
||||||
package = null;
|
|
||||||
# installVimSyntax = true;
|
|
||||||
# installBatSyntax = true;
|
|
||||||
enableZshIntegration = true;
|
|
||||||
settings = {
|
|
||||||
font-family = "Maple Mono NF";
|
|
||||||
font-style = "Medium";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
htop = {
|
htop = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
@ -79,13 +65,13 @@ in
|
||||||
jujutsu = {
|
jujutsu = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
user = {
|
user = {
|
||||||
name = "Anthony Cicchetti";
|
name = "Anthony Cicchetti";
|
||||||
email = "anthony@anthonycicchetti.com";
|
email = "anthony@anthonycicchetti.com";
|
||||||
};
|
};
|
||||||
"default-command" = "log";
|
"default-command" = "log";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
nix-index = {
|
nix-index = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -98,9 +84,6 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
pay-respects = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
skim = {
|
skim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = false;
|
enableZshIntegration = false;
|
||||||
|
@ -114,26 +97,12 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
misc = {
|
misc = {
|
||||||
disable = [
|
disable = ["node" "nix" "home_manager" "gem" "ruby_gems" "cargo" "vim" "pipx" "pip3" "containers"];
|
||||||
"node"
|
|
||||||
"nix"
|
|
||||||
"home_manager"
|
|
||||||
"gem"
|
|
||||||
"ruby_gems"
|
|
||||||
"cargo"
|
|
||||||
"vim"
|
|
||||||
"pipx"
|
|
||||||
"pip3"
|
|
||||||
"containers"
|
|
||||||
];
|
|
||||||
run_in_tmux = true;
|
run_in_tmux = true;
|
||||||
display_time = true;
|
display_time = true;
|
||||||
skip_notify = true;
|
skip_notify = true;
|
||||||
};
|
};
|
||||||
git = {
|
git.max_concurrency = 5;
|
||||||
max_concurrency = 5;
|
|
||||||
pull_predefined = false;
|
|
||||||
};
|
|
||||||
linux.arch_package_manager = "paru";
|
linux.arch_package_manager = "paru";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -142,7 +111,6 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
||||||
extraConfig = builtins.readFile ../../wezterm/wezterm.lua;
|
extraConfig = builtins.readFile ../../wezterm/wezterm.lua;
|
||||||
# package = wezterm.packages.${pkgs.system}.default;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
yazi = {
|
yazi = {
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "nvim";
|
EDITOR = "nvim";
|
||||||
PAGE = "page -q 90000 -z 90000";
|
PAGE = "page -q 90000 -z 90000";
|
||||||
|
|
|
@ -2,21 +2,19 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
let
|
|
||||||
inherit (pkgs.stdenv.hostPlatform) isLinux;
|
inherit (pkgs.stdenv.hostPlatform) isLinux;
|
||||||
repo_root = "../../..";
|
repo_root = "../../..";
|
||||||
nv_fonts_basic = [
|
nv_fonts_basic = ["Iosevka Custom"];
|
||||||
"Maple Mono NF"
|
|
||||||
"Berkeley Mono"
|
|
||||||
"Departure Mono"
|
|
||||||
"Fantasque Sans Mono"
|
|
||||||
];
|
|
||||||
nv_fonts_normal =
|
nv_fonts_normal =
|
||||||
nv_fonts_basic ++ (if isLinux then [ "Noto Color Emoji" ] else [ "Apple Color Emoji" ]);
|
nv_fonts_basic
|
||||||
nv_fonts_italic = nv_fonts_basic;
|
++ (
|
||||||
in
|
if isLinux
|
||||||
{
|
then ["Noto Color Emoji"]
|
||||||
|
else ["Apple Color Emoji"]
|
||||||
|
);
|
||||||
|
nv_fonts_italic = ["Dank Mono"] ++ nv_fonts_basic;
|
||||||
|
in {
|
||||||
home.file = {
|
home.file = {
|
||||||
"/.zsh.d/" = {
|
"/.zsh.d/" = {
|
||||||
source = ./${repo_root}/zsh/funcs;
|
source = ./${repo_root}/zsh/funcs;
|
||||||
|
@ -25,7 +23,7 @@ in
|
||||||
text = "";
|
text = "";
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
".cargo/config.toml".source = (pkgs.formats.toml { }).generate "cargo-config" {
|
".cargo/config.toml".source = (pkgs.formats.toml {}).generate "cargo-config" {
|
||||||
net = {
|
net = {
|
||||||
git-fetch-with-cli = true;
|
git-fetch-with-cli = true;
|
||||||
};
|
};
|
||||||
|
@ -36,10 +34,7 @@ in
|
||||||
# Could avoid setting this at all with another `isLinux` but whatever, doesn't truly matter
|
# Could avoid setting this at all with another `isLinux` but whatever, doesn't truly matter
|
||||||
"target.x86_64-unknown-linux-gnu" = {
|
"target.x86_64-unknown-linux-gnu" = {
|
||||||
linker = "clang";
|
linker = "clang";
|
||||||
rustflags = [
|
rustflags = ["-C" "link-arg=-fuse-ld=${config.home.profileDirectory}/bin/mold"];
|
||||||
"-C"
|
|
||||||
"link-arg=-fuse-ld=${config.home.profileDirectory}/bin/mold"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
"registries.crates-io" = {
|
"registries.crates-io" = {
|
||||||
protocol = "sparse";
|
protocol = "sparse";
|
||||||
|
@ -63,7 +58,6 @@ in
|
||||||
[[ssh-keys]]
|
[[ssh-keys]]
|
||||||
item = "mpf42t6kn2hxijw5jsqti4hxfm"
|
item = "mpf42t6kn2hxijw5jsqti4hxfm"
|
||||||
'';
|
'';
|
||||||
"cy/cyrc.janet".source = ./${repo_root}/cy/cy.janet;
|
|
||||||
"doom/init.el" = {
|
"doom/init.el" = {
|
||||||
source = ./${repo_root}/emacs/emacs.doom/init.el;
|
source = ./${repo_root}/emacs/emacs.doom/init.el;
|
||||||
onChange = "~/.emacs.d/bin/doom sync";
|
onChange = "~/.emacs.d/bin/doom sync";
|
||||||
|
@ -77,17 +71,16 @@ in
|
||||||
onChange = "~/.emacs.d/bin/doom sync";
|
onChange = "~/.emacs.d/bin/doom sync";
|
||||||
};
|
};
|
||||||
"erdtree/.erdtreerc".source = ./${repo_root}/erdtree/erdtreerc;
|
"erdtree/.erdtreerc".source = ./${repo_root}/erdtree/erdtreerc;
|
||||||
# "ghostty/config".source = ./${repo_root}/ghostty/config;
|
|
||||||
"kitty/kitty.conf".source = ./${repo_root}/kitty/kitty.conf;
|
"kitty/kitty.conf".source = ./${repo_root}/kitty/kitty.conf;
|
||||||
"lsd/config.yaml".source = ./${repo_root}/lsd/config.yaml;
|
"lsd/config.yaml".source = ./${repo_root}/lsd/config.yaml;
|
||||||
"neovide/config.toml".source = (pkgs.formats.toml { }).generate "neovide-config" {
|
"neovide/config.toml".source = (pkgs.formats.toml {}).generate "neovide-config" {
|
||||||
font = {
|
font = {
|
||||||
normal = nv_fonts_normal;
|
normal = nv_fonts_normal;
|
||||||
italic = nv_fonts_italic;
|
italic = nv_fonts_italic;
|
||||||
size = 14;
|
size = 14;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
"ov/config.yaml".source = ./${repo_root}/ov/ov-less.yaml;
|
||||||
"zed/settings.json".source = ./${repo_root}/zed/settings.json;
|
"zed/settings.json".source = ./${repo_root}/zed/settings.json;
|
||||||
"zed/keymap.json".source = ./${repo_root}/zed/keymap.json;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,64 +1,11 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: let
|
||||||
let
|
|
||||||
inherit (pkgs.stdenv.hostPlatform) isLinux;
|
inherit (pkgs.stdenv.hostPlatform) isLinux;
|
||||||
systemSpecificPackages =
|
systemSpecificPackages = with pkgs;
|
||||||
with pkgs;
|
if isLinux
|
||||||
if
|
|
||||||
isLinux
|
|
||||||
# ncdu (well, all zig packages) don't work on macOS nix right now
|
# ncdu (well, all zig packages) don't work on macOS nix right now
|
||||||
then
|
then [zsh racket mold ncdu zed-editor]
|
||||||
[
|
else [keka colima];
|
||||||
zsh
|
in {
|
||||||
racket
|
|
||||||
mold
|
|
||||||
ncdu
|
|
||||||
ghostty
|
|
||||||
xorg.libX11
|
|
||||||
]
|
|
||||||
else
|
|
||||||
[
|
|
||||||
keka
|
|
||||||
colima
|
|
||||||
neovide
|
|
||||||
aerospace
|
|
||||||
maccy
|
|
||||||
];
|
|
||||||
cy =
|
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
fetchFromGitHub,
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
ver = "1.3.1";
|
|
||||||
in
|
|
||||||
pkgs.buildGoModule {
|
|
||||||
pname = "cy";
|
|
||||||
version = "${ver}";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "cfoust";
|
|
||||||
repo = "cy";
|
|
||||||
rev = "refs/tags/v${ver}";
|
|
||||||
hash = "sha256-i5suNLh1Dy8sWKBasO1rnVRzDetEF77XXRonRk1RzB4=";
|
|
||||||
};
|
|
||||||
|
|
||||||
vendorHash = null;
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
export GOCACHE=$PWD/.cache/go-build
|
|
||||||
go install ./cmd/cy/
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
install -Dm755 -t $out/bin $GOPATH/bin/cy
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./git.nix
|
./git.nix
|
||||||
./mise.nix
|
./mise.nix
|
||||||
|
@ -67,19 +14,17 @@ in
|
||||||
./starship.nix
|
./starship.nix
|
||||||
./zellij.nix
|
./zellij.nix
|
||||||
./zsh.nix
|
./zsh.nix
|
||||||
# ./cy.nix
|
|
||||||
];
|
];
|
||||||
home.packages =
|
home.packages = with pkgs;
|
||||||
with pkgs;
|
|
||||||
[
|
[
|
||||||
_1password-cli
|
_1password
|
||||||
nerd-fonts._0xproto
|
bandwhich
|
||||||
bat
|
bat
|
||||||
bottom
|
bottom
|
||||||
cargo-workspaces
|
cargo-workspaces
|
||||||
clipboard-jh
|
clipboard-jh
|
||||||
curl
|
curl
|
||||||
departure-mono
|
devenv
|
||||||
docker-client
|
docker-client
|
||||||
dogedns
|
dogedns
|
||||||
erdtree
|
erdtree
|
||||||
|
@ -87,13 +32,7 @@ in
|
||||||
emacs
|
emacs
|
||||||
fantasque-sans-mono
|
fantasque-sans-mono
|
||||||
fd
|
fd
|
||||||
(fenix.latest.withComponents [
|
(fenix.latest.withComponents ["cargo" "clippy" "rustfmt" "rust-src" "rustc"])
|
||||||
"cargo"
|
|
||||||
"clippy"
|
|
||||||
"rustfmt"
|
|
||||||
"rust-src"
|
|
||||||
"rustc"
|
|
||||||
])
|
|
||||||
ffmpeg_6
|
ffmpeg_6
|
||||||
gawkInteractive
|
gawkInteractive
|
||||||
gnugrep
|
gnugrep
|
||||||
|
@ -103,6 +42,7 @@ in
|
||||||
gql
|
gql
|
||||||
httpstat
|
httpstat
|
||||||
imagemagick
|
imagemagick
|
||||||
|
inshellisense
|
||||||
internetarchive
|
internetarchive
|
||||||
jless
|
jless
|
||||||
jq
|
jq
|
||||||
|
@ -110,34 +50,27 @@ in
|
||||||
kondo
|
kondo
|
||||||
litecli
|
litecli
|
||||||
magic-wormhole-rs
|
magic-wormhole-rs
|
||||||
maple-mono.NF
|
|
||||||
martian-mono
|
martian-mono
|
||||||
|
neovide
|
||||||
|
ov
|
||||||
page
|
page
|
||||||
pandoc
|
pandoc
|
||||||
parallel
|
parallel
|
||||||
picocrypt
|
pdm
|
||||||
picocrypt-cli
|
|
||||||
python312Packages.pipx
|
python312Packages.pipx
|
||||||
|
poetry
|
||||||
rage
|
rage
|
||||||
ripgrep
|
ripgrep
|
||||||
rsync
|
rsync
|
||||||
rust-analyzer-nightly # part of the fenix distribution/overlay
|
rust-analyzer-nightly # part of the fenix distribution/overlay
|
||||||
scriptisto
|
scriptisto
|
||||||
see-cat
|
|
||||||
sqlite
|
sqlite
|
||||||
tmux
|
tmux
|
||||||
vale
|
# vscode-fhs
|
||||||
python312Packages.yt-dlp
|
python312Packages.yt-dlp
|
||||||
zenith
|
zenith
|
||||||
|
# zoom-us
|
||||||
zstd
|
zstd
|
||||||
]
|
]
|
||||||
++ systemSpecificPackages
|
++ systemSpecificPackages;
|
||||||
++ (
|
|
||||||
if isLinux then
|
|
||||||
[ ]
|
|
||||||
else
|
|
||||||
[
|
|
||||||
(callPackage cy { })
|
|
||||||
]
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
home.file = {
|
home.file = {
|
||||||
".doom.d/init.el".source = ../../../../emacs/emacs.doom/init.el;
|
".doom.d/init.el".source = ../../../../emacs/emacs.doom/init.el;
|
||||||
".doom.d/config.el".source = ../../../../emacs/emacs.doom/config.el;
|
".doom.d/config.el".source = ../../../../emacs/emacs.doom/config.el;
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# Don't use difftastic on git-diff by default
|
# Don't use difftastic on git-diff by default
|
||||||
|
@ -31,7 +30,6 @@
|
||||||
diff = {
|
diff = {
|
||||||
tool = "difftastic";
|
tool = "difftastic";
|
||||||
algorithm = "histogram";
|
algorithm = "histogram";
|
||||||
submodule = "log";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
difftool = {
|
difftool = {
|
||||||
|
@ -43,8 +41,6 @@
|
||||||
|
|
||||||
fetch = {
|
fetch = {
|
||||||
prune = true;
|
prune = true;
|
||||||
fsckObjects = true;
|
|
||||||
pruneTags = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
|
@ -83,29 +79,17 @@
|
||||||
updateRefs = true;
|
updateRefs = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
receive = {
|
|
||||||
fsckObjects = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
rerere = {
|
rerere = {
|
||||||
enabled = true;
|
enabled = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
status = {
|
|
||||||
submoduleSummary = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
submodule = {
|
submodule = {
|
||||||
recurse = true;
|
recurse = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
transfer = {
|
|
||||||
fsckObjects = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
includes = [
|
includes = [
|
||||||
{ path = "~/.gitconfig_local"; }
|
{path = "~/.gitconfig_local";}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
programs.mise = {
|
programs.mise = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
||||||
|
@ -7,13 +6,9 @@
|
||||||
tools = {
|
tools = {
|
||||||
node = "lts";
|
node = "lts";
|
||||||
python = "latest";
|
python = "latest";
|
||||||
uv = "latest";
|
ruby = "latest";
|
||||||
};
|
};
|
||||||
settings = {
|
settings = {
|
||||||
experimental = true;
|
|
||||||
pipx = {
|
|
||||||
uvx = true;
|
|
||||||
};
|
|
||||||
status = {
|
status = {
|
||||||
missing_tools = "always";
|
missing_tools = "always";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,18 +1,15 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: {
|
||||||
{
|
programs.nixneovim = {
|
||||||
programs.nixvim = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
viAlias = true;
|
viAlias = true;
|
||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
extraConfigLuaPre = builtins.readFile ./neovim/pre.lua;
|
extraLuaPreConfig = builtins.readFile ./neovim/pre.lua;
|
||||||
extraConfigLuaPost = builtins.readFile ./neovim/core.lua;
|
extraConfigLua = builtins.readFile ./neovim/core.lua;
|
||||||
|
colorscheme = "onedark";
|
||||||
colorschemes = {
|
colorschemes = {
|
||||||
onedark.enable = true;
|
onedark.enable = true;
|
||||||
};
|
};
|
||||||
diagnostics = {
|
|
||||||
virtual_lines = true;
|
|
||||||
};
|
|
||||||
plugins = {
|
plugins = {
|
||||||
fugitive = {
|
fugitive = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -23,356 +20,257 @@
|
||||||
lualine = {
|
lualine = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# theme = "bubbles_theme"; # Currently doesn't work
|
# theme = "bubbles_theme"; # Currently doesn't work
|
||||||
settings = {
|
componentSeparators = {
|
||||||
componentSeparators = {
|
left = "";
|
||||||
left = "";
|
right = "";
|
||||||
right = "";
|
};
|
||||||
};
|
sectionSeparators = {
|
||||||
sectionSeparators = {
|
left = "";
|
||||||
left = "";
|
right = "";
|
||||||
right = "";
|
};
|
||||||
};
|
sections = {
|
||||||
sections = {
|
lualine_a = ["mode" {separator = {left = "";};} {right_padding = 2;}];
|
||||||
lualine_a = [
|
lualine_b = ["filename" "branch"];
|
||||||
{
|
lualine_c = ["%="];
|
||||||
__unkeyed-1 = "mode";
|
lualine_x = [];
|
||||||
separator = {
|
lualine_y = ["filetype" "progress"];
|
||||||
left = "";
|
lualine_z = ["location" {separator = {right = "";};} {left_padding = 2;}];
|
||||||
};
|
|
||||||
padding = {
|
|
||||||
right = 2;
|
|
||||||
left = 0;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
lualine_b = [
|
|
||||||
"filename"
|
|
||||||
"branch"
|
|
||||||
];
|
|
||||||
lualine_c = [ "%=" ];
|
|
||||||
lualine_x = [ ];
|
|
||||||
lualine_y = [
|
|
||||||
"filetype"
|
|
||||||
"progress"
|
|
||||||
];
|
|
||||||
lualine_z = [
|
|
||||||
{
|
|
||||||
__unkeyed-1 = "location";
|
|
||||||
separator = {
|
|
||||||
right = "";
|
|
||||||
};
|
|
||||||
padding = {
|
|
||||||
right = 0;
|
|
||||||
left = 2;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
lsp = {
|
luasnip = {
|
||||||
enable = true;
|
enable = true;
|
||||||
preConfig = '''';
|
};
|
||||||
|
lsp-lines = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
lspconfig = {
|
||||||
|
enable = true;
|
||||||
|
preConfig = ''
|
||||||
|
'';
|
||||||
servers = {
|
servers = {
|
||||||
bashls.enable = true;
|
bashls.enable = true;
|
||||||
gopls.enable = true;
|
gopls.enable = true;
|
||||||
jsonls.enable = true;
|
jsonls.enable = true;
|
||||||
pyright.enable = true; # In preference to attempting to use pylyzer
|
pyright.enable = true; # In preference to attempting to use pylyzer
|
||||||
nil_ls.enable = true;
|
nil.enable = true;
|
||||||
rust_analyzer =
|
rust-analyzer.enable = true;
|
||||||
let
|
|
||||||
fenix = fenix.latest.withComponents [
|
|
||||||
"cargo"
|
|
||||||
"rustc"
|
|
||||||
];
|
|
||||||
in
|
|
||||||
{
|
|
||||||
enable = true;
|
|
||||||
installCargo = false;
|
|
||||||
installRustc = false;
|
|
||||||
cargoPackage = fenix.cargo;
|
|
||||||
rustcPackage = fenix.rustc;
|
|
||||||
};
|
|
||||||
taplo.enable = true;
|
taplo.enable = true;
|
||||||
terraformls.enable = true;
|
terraform-ls.enable = true;
|
||||||
yamlls.enable = true;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
lspkind = {
|
||||||
|
enable = true;
|
||||||
|
mode = "symbol";
|
||||||
|
};
|
||||||
mini = {
|
mini = {
|
||||||
enable = true;
|
enable = true;
|
||||||
modules = {
|
ai.enable = true;
|
||||||
ai.enable = true;
|
align.enable = true;
|
||||||
align.enable = true;
|
animate.enable = true;
|
||||||
animate.enable = true;
|
comment.enable = true;
|
||||||
comment.enable = true;
|
completion.enable = true;
|
||||||
completion.enable = true;
|
indentscope.enable = true;
|
||||||
indentscope.enable = true;
|
jump.enable = true;
|
||||||
jump.enable = true;
|
jump2d = {
|
||||||
jump2d = {
|
enable = true;
|
||||||
enable = true;
|
extraConfig = {
|
||||||
mappings.start_jumping = "<leader>a";
|
mappings.start_jumping = "<leader>a";
|
||||||
};
|
};
|
||||||
splitjoin.enable = true;
|
|
||||||
surround.enable = true;
|
|
||||||
tabline.enable = true;
|
|
||||||
clue = {
|
|
||||||
triggers = [
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
keys = "<leader>";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
mode = "n";
|
|
||||||
keys = "z";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
clues = [
|
|
||||||
{ __raw = "require('mini.clue').gen_clues.builtin_completion()"; }
|
|
||||||
{ __raw = "require('mini.clue').gen_clues.g()"; }
|
|
||||||
{ __raw = "require('mini.clue').gen_clues.marks()"; }
|
|
||||||
{ __raw = "require('mini.clue').gen_clues.registers()"; }
|
|
||||||
{ __raw = "require('mini.clue').gen_clues.windows()"; }
|
|
||||||
{ __raw = "require('mini.clue').gen_clues.z()"; }
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
splitjoin.enable = true;
|
||||||
|
surround.enable = true;
|
||||||
|
tabline.enable = true;
|
||||||
};
|
};
|
||||||
blink-cmp = {
|
nvim-cmp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
formatting = {
|
||||||
keymap.preset = "super-tab";
|
format = ''
|
||||||
appearance = {
|
function(entry, vim_item)
|
||||||
nerd_font_variant = "mono";
|
vim_item.kind = string.format("%s %s", kind_icons[vim_item.kind], vim_item.kind)
|
||||||
|
vim_item.menu = ({
|
||||||
|
buffer = "[Buffer]",
|
||||||
|
nvim_lsp = "[LSP]",
|
||||||
|
luasnip = "[LuaSnip]",
|
||||||
|
nvim_lua = "[Lua]",
|
||||||
|
latex_symbols = "[LaTeX]",
|
||||||
|
})[entry.source.name]
|
||||||
|
return vim_item
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
mappingPresets = ["insert"];
|
||||||
|
mapping = {
|
||||||
|
"<CR>" = "cmp.mapping.confirm({ select = true})";
|
||||||
|
"<C-Space>" = "cmp.mapping.complete()";
|
||||||
|
"<Tab>" = {
|
||||||
|
modes = ["i" "s" "c"];
|
||||||
|
action = ''
|
||||||
|
function(fallback)
|
||||||
|
local entry = cmp.get_selected_entry()
|
||||||
|
if not entry then
|
||||||
|
cmp.select_next_item({ behavior = cmp.SelectBehavior.Select })
|
||||||
|
cmp.confirm()
|
||||||
|
elseif entry then
|
||||||
|
cmp.confirm()
|
||||||
|
elseif luasnip.expandable() then
|
||||||
|
luasnip.expand()
|
||||||
|
elseif luasnip.expand_or_jumpable() then
|
||||||
|
luasnip.expand_or_jump()
|
||||||
|
elseif check_backspace() then
|
||||||
|
fallback()
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
completion = {
|
"<S-Tab>" = {
|
||||||
ghost_text = {
|
modes = ["i" "s" "c"];
|
||||||
enabled = true;
|
action = ''
|
||||||
show_with_menu = false;
|
function(fallback)
|
||||||
};
|
if cmp.visible() then
|
||||||
accept = {
|
cmp.select_prev_item()
|
||||||
auto_brackets = {
|
elseif luasnip.jumpable(-1) then
|
||||||
enabled = true;
|
luasnip.jump(-1)
|
||||||
};
|
else
|
||||||
};
|
fallback()
|
||||||
list = {
|
end
|
||||||
selection = {
|
end
|
||||||
auto_insert = false;
|
'';
|
||||||
preselect = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
menu = {
|
|
||||||
draw = {
|
|
||||||
columns.__raw = "{ { 'kind_icon' }, {'label', gap = 1 } }";
|
|
||||||
components = {
|
|
||||||
label.__raw = ''
|
|
||||||
{
|
|
||||||
text = function(ctx)
|
|
||||||
return require('colorful-menu').blink_components_text(ctx)
|
|
||||||
end,
|
|
||||||
highlight = function(ctx)
|
|
||||||
return require('colorful-menu').blink_components_highlight(ctx)
|
|
||||||
end,
|
|
||||||
}'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
signature = {
|
|
||||||
enabled = true;
|
|
||||||
};
|
|
||||||
sources = {
|
|
||||||
default = [
|
|
||||||
"lsp"
|
|
||||||
"path"
|
|
||||||
"snippets"
|
|
||||||
"buffer"
|
|
||||||
# [TODO] Disabled until I figure this out, rust uses :: "emoji"
|
|
||||||
];
|
|
||||||
providers = {
|
|
||||||
emoji = {
|
|
||||||
module = "blink-emoji";
|
|
||||||
name = "Emoji";
|
|
||||||
score_offset = 15;
|
|
||||||
opts = {
|
|
||||||
insert = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
snippet = {
|
||||||
|
luasnip.enable = true;
|
||||||
|
};
|
||||||
|
sources = {
|
||||||
|
cmdline = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
emoji.enable = true;
|
||||||
|
fuzzy_path.enable = true;
|
||||||
|
luasnip.enable = true;
|
||||||
|
nvim_lsp.enable = true;
|
||||||
|
nvim_lsp_document_symbol.enable = true;
|
||||||
|
nvim_lsp_signature_help.enable = true;
|
||||||
|
treesitter.enable = true;
|
||||||
|
};
|
||||||
|
view = {
|
||||||
|
entries = "custom";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
blink-emoji.enable = true;
|
|
||||||
project-nvim = {
|
project-nvim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableTelescope = true;
|
|
||||||
settings.detection_methods = [
|
|
||||||
"lsp"
|
|
||||||
"pattern"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
telescope = {
|
telescope = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extensions.live-grep-args.enable = true;
|
extraLua = {
|
||||||
enabledExtensions = [
|
post = builtins.readFile ./neovim/telescope.lua;
|
||||||
"zf-native" # TODO
|
|
||||||
"projects" # TODO
|
|
||||||
];
|
|
||||||
# extraLua = {
|
|
||||||
# post = builtins.readFile ./neovim/telescope.lua;
|
|
||||||
# };
|
|
||||||
keymaps = {
|
|
||||||
"<leader>ff" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "find_files";
|
|
||||||
options.desc = "Find Files";
|
|
||||||
};
|
|
||||||
"<leader>fg" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "live_grep";
|
|
||||||
options.desc = "Live Grep";
|
|
||||||
};
|
|
||||||
"<leader>fb" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "buffers";
|
|
||||||
options.desc = "Find Buffers";
|
|
||||||
};
|
|
||||||
"<leader>r" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "registers";
|
|
||||||
options.desc = "View Registers";
|
|
||||||
};
|
|
||||||
"<leader>pr" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "lsp_references";
|
|
||||||
options.desc = "(LSP) References";
|
|
||||||
};
|
|
||||||
"<leader>pi" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "lsp_implementations";
|
|
||||||
options.desc = "(LSP) Implementations";
|
|
||||||
};
|
|
||||||
"<leader>pd" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "lsp_definitions";
|
|
||||||
options.desc = "(LSP) Definitions";
|
|
||||||
};
|
|
||||||
"<leader>ps" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "lsp_document_symbols";
|
|
||||||
options.desc = "(LSP) Document Symbols";
|
|
||||||
};
|
|
||||||
"<leader>pws" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "lsp_workspace_symbols";
|
|
||||||
options.desc = "(LSP) Workspace Symbols";
|
|
||||||
};
|
|
||||||
"<leader>pwd" = {
|
|
||||||
mode = "n";
|
|
||||||
action = "lsp_dynamic_workspace_symbols";
|
|
||||||
options.desc = "(LSP) Dynamic Workspace Symbols";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
indent = true;
|
||||||
indent = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
incremental_selection = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
folding = true;
|
folding = true;
|
||||||
|
incrementalSelection = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
trouble = {
|
trouble = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
ts-context-commentstring = {
|
ufo = {
|
||||||
|
enable = true;
|
||||||
|
extraLua.pre = ''
|
||||||
|
require('ufo').setup({ provider_selector = function(bufnr, filetype, buftype)
|
||||||
|
return {'treesitter', 'indent' }
|
||||||
|
end
|
||||||
|
})
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
undotree = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
overseer = {
|
which-key = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
groups = {
|
||||||
|
normal = {
|
||||||
|
"<leader>f" = "Telescope - Find";
|
||||||
|
"<leader>r" = "View registers";
|
||||||
|
"<leader>p" = "Telescope - LSP";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
nvim-ufo = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
rainbow-delimiters = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
vim-bbye = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
web-devicons.enable = true;
|
|
||||||
};
|
};
|
||||||
extraPlugins =
|
extraPlugins =
|
||||||
(with pkgs.vimPlugins; [
|
(
|
||||||
|
with pkgs.vimPlugins; [
|
||||||
|
fuzzy-nvim
|
||||||
|
nvim-ts-context-commentstring
|
||||||
|
telescope-zf-native-nvim
|
||||||
|
vim-ReplaceWithRegister
|
||||||
|
vim-bbye
|
||||||
|
vim-dispatch-neovim
|
||||||
|
vim-expand-region
|
||||||
|
]
|
||||||
|
)
|
||||||
|
++ (with pkgs.vimExtraPlugins; [
|
||||||
|
rainbow-delimiters-nvim
|
||||||
|
gitlinker-linrongbin16
|
||||||
telescope-symbols-nvim
|
telescope-symbols-nvim
|
||||||
telescope-zf-native-nvim
|
overseer-nvim
|
||||||
vim-ReplaceWithRegister
|
|
||||||
vim-dispatch-neovim
|
|
||||||
vim-expand-region
|
|
||||||
colorful-menu-nvim
|
|
||||||
])
|
|
||||||
++ (with pkgs.awesomeNeovimPlugins; [
|
|
||||||
linrongbin16-gitlinker-nvim
|
|
||||||
officer-nvim
|
officer-nvim
|
||||||
|
nvim-web-devicons
|
||||||
|
lsp-signature-nvim
|
||||||
|
nvim-rg
|
||||||
nvim-biscuits
|
nvim-biscuits
|
||||||
colorful-menu-nvim
|
telescope-egrepify-nvim
|
||||||
]);
|
]);
|
||||||
keymaps = [
|
mappings = {
|
||||||
{
|
normal = {
|
||||||
action = "function() vim.api.nvim_command('wincmd h') end";
|
"<leader>u" = {
|
||||||
key = "<leader>h";
|
action = "vim.cmd.UndotreeToggle";
|
||||||
options.desc = "Cursor - Window left";
|
desc = "Toggle undotree";
|
||||||
mode = "n";
|
};
|
||||||
}
|
"<leader>h" = {
|
||||||
{
|
action = "function() vim.api.nvim_command('wincmd h') end";
|
||||||
action = "function() vim.api.nvim_command('wincmd j') end";
|
desc = "Cursor - Window left";
|
||||||
key = "<leader>j";
|
};
|
||||||
options.desc = "Cursor - Window down";
|
"<leader>j" = {
|
||||||
mode = "n";
|
action = "function() vim.api.nvim_command('wincmd j') end";
|
||||||
}
|
desc = "Cursor - Window down";
|
||||||
{
|
};
|
||||||
action = "function() vim.api.nvim_command('wincmd k') end";
|
"<leader>k" = {
|
||||||
key = "<leader>k";
|
action = "function() vim.api.nvim_command('wincmd k') end";
|
||||||
options.desc = "Cursor - Window up";
|
desc = "Cursor - Window up";
|
||||||
mode = "n";
|
};
|
||||||
}
|
"<leader>l" = {
|
||||||
{
|
action = "function() vim.api.nvim_command('wincmd l') end";
|
||||||
action = "function() vim.api.nvim_command('wincmd l') end";
|
desc = "Cursor - Window right";
|
||||||
key = "<leader>l";
|
};
|
||||||
options.desc = "Cursor - Window right";
|
"<c-k>" = {
|
||||||
mode = "n";
|
action = "'<c-u>'";
|
||||||
}
|
};
|
||||||
{
|
"<c-j>" = {
|
||||||
key = "<c-k>";
|
action = "'<c-d>'";
|
||||||
action = "<c-u>";
|
};
|
||||||
mode = [
|
"<leader>n" = {
|
||||||
"n"
|
action = "function() vim.api.nvim_command('nohl') end";
|
||||||
"v"
|
desc = "nohl";
|
||||||
];
|
};
|
||||||
}
|
"<leader>t" = {
|
||||||
{
|
action = "'<cmd>Telescope<cr>'";
|
||||||
key = "<c-j>";
|
desc = "Open Telescope";
|
||||||
action = "<c-d>";
|
};
|
||||||
mode = [
|
};
|
||||||
"n"
|
visual = {
|
||||||
"v"
|
"<c-k>" = {
|
||||||
];
|
action = "'<c-u>'";
|
||||||
}
|
};
|
||||||
{
|
"<c-j>" = {
|
||||||
key = "<leader>n";
|
action = "'<c-d>'";
|
||||||
action = "function() vim.api.nvim_command('nohl') end";
|
};
|
||||||
options.desc = "nohl";
|
};
|
||||||
mode = "n";
|
};
|
||||||
}
|
|
||||||
{
|
|
||||||
action = "<cmd>Telescope<cr>";
|
|
||||||
key = "<leader>t";
|
|
||||||
options.desc = "Open Telescope";
|
|
||||||
mode = "n";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
vim.o.expandtab = true
|
vim.o.expandtab = true
|
||||||
-- local guifont = { "Iosevka Custom" }
|
local guifont = { "Iosevka Custom" }
|
||||||
-- if vim.loop.os_uname().sysname == "Darwin" then
|
if vim.loop.os_uname().sysname == "Darwin" then
|
||||||
-- table.insert(guifont, "Apple Color Emoji")
|
table.insert(guifont, "Apple Color Emoji")
|
||||||
-- else
|
else
|
||||||
-- table.insert(guifont, "Noto Color Emoji")
|
table.insert(guifont, "Noto Color Emoji")
|
||||||
-- end
|
end
|
||||||
-- vim.o.guifont = table.concat(guifont, ",") .. ":14"
|
vim.o.guifont = table.concat(guifont, ",") .. ":14"
|
||||||
vim.o.hidden = true
|
vim.o.hidden = true
|
||||||
vim.o.ignorecase = true
|
vim.o.ignorecase = true
|
||||||
vim.o.inccommand = "split"
|
vim.o.inccommand = "split"
|
||||||
|
@ -47,3 +47,15 @@ require("gitlinker").setup()
|
||||||
require("nvim-biscuits").setup()
|
require("nvim-biscuits").setup()
|
||||||
require("overseer").setup()
|
require("overseer").setup()
|
||||||
require("officer").setup({ create_mappings = true })
|
require("officer").setup({ create_mappings = true })
|
||||||
|
|
||||||
|
local cmp = require("cmp")
|
||||||
|
|
||||||
|
cmp.setup.cmdline(":", {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = "path" },
|
||||||
|
}, {
|
||||||
|
{ name = "cmdline" },
|
||||||
|
}),
|
||||||
|
matching = { disallow_symbol_nonprefix_matching = false },
|
||||||
|
})
|
||||||
|
|
|
@ -1,33 +1,33 @@
|
||||||
vim.g.mapleader = " "
|
vim.g.mapleader = " "
|
||||||
vim.g.maplocalleader = ","
|
vim.g.maplocalleader = ","
|
||||||
|
|
||||||
-- local kind_icons = {
|
local kind_icons = {
|
||||||
-- Text = "",
|
Text = "",
|
||||||
-- Method = "",
|
Method = "",
|
||||||
-- Function = "⨐",
|
Function = "⨐",
|
||||||
-- Constructor = "",
|
Constructor = "",
|
||||||
-- Field = "",
|
Field = "",
|
||||||
-- Variable = "μ",
|
Variable = "μ",
|
||||||
-- Class = "",
|
Class = "",
|
||||||
-- Interface = "",
|
Interface = "",
|
||||||
-- Module = "",
|
Module = "",
|
||||||
-- Property = "",
|
Property = "",
|
||||||
-- Unit = "",
|
Unit = "",
|
||||||
-- Value = "",
|
Value = "",
|
||||||
-- Enum = "",
|
Enum = "",
|
||||||
-- Keyword = "",
|
Keyword = "",
|
||||||
-- Snippet = "",
|
Snippet = "",
|
||||||
-- Color = "፨",
|
Color = "፨",
|
||||||
-- File = "",
|
File = "",
|
||||||
-- Reference = "",
|
Reference = "",
|
||||||
-- Folder = "",
|
Folder = "",
|
||||||
-- EnumMember = "",
|
EnumMember = "",
|
||||||
-- Constant = "",
|
Constant = "",
|
||||||
-- Struct = "",
|
Struct = "",
|
||||||
-- Event = "",
|
Event = "",
|
||||||
-- Operator = "",
|
Operator = "",
|
||||||
-- TypeParameter = "",
|
TypeParameter = "",
|
||||||
-- }
|
}
|
||||||
|
|
||||||
local colors = {
|
local colors = {
|
||||||
blue = "#80a0ff",
|
blue = "#80a0ff",
|
||||||
|
@ -56,25 +56,3 @@ local bubbles_theme = {
|
||||||
c = { fg = colors.white },
|
c = { fg = colors.white },
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
do
|
|
||||||
function setup()
|
|
||||||
require("ufo").setup({
|
|
||||||
provider_selector = function(bufnr, filetype, buftype)
|
|
||||||
return { "treesitter", "indent" }
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
||||||
require("ufo").setup({})
|
|
||||||
vim.o.foldcolumn = "1" -- '0' is not bad
|
|
||||||
vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value
|
|
||||||
vim.o.foldlevelstart = 99
|
|
||||||
vim.o.foldenable = true
|
|
||||||
end
|
|
||||||
|
|
||||||
success, output = pcall(setup) -- execute 'setup()' and catch any errors
|
|
||||||
if not success then
|
|
||||||
print("Error on setup for plugin: ufo")
|
|
||||||
print(output)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ local builtin = require("telescope.builtin")
|
||||||
-- greps
|
-- greps
|
||||||
vim.keymap.set("n", "<leader>ff", builtin.find_files, { desc = "Find Files" })
|
vim.keymap.set("n", "<leader>ff", builtin.find_files, { desc = "Find Files" })
|
||||||
-- vim.keymap.set("n", "<leader>fg", builtin.live_grep, { desc = "Live Grep" })
|
-- vim.keymap.set("n", "<leader>fg", builtin.live_grep, { desc = "Live Grep" })
|
||||||
vim.keymap.set("n", "<leader>fg", ":Telescope egrepify<CR>", { desc = "Live Grep" })
|
vim.keymap.set("n", "<leader>fg", require("telescope").extensions.egrepify.egrepify, { desc = "Live Grep" })
|
||||||
vim.keymap.set("n", "<leader>fb", builtin.buffers, { desc = "Buffers" })
|
vim.keymap.set("n", "<leader>fb", builtin.buffers, { desc = "Buffers" })
|
||||||
|
|
||||||
-- register reading
|
-- register reading
|
||||||
|
|
|
@ -2,25 +2,20 @@
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
let
|
|
||||||
inherit (pkgs.stdenv.hostPlatform) isDarwin;
|
inherit (pkgs.stdenv.hostPlatform) isDarwin;
|
||||||
_1pass_socket =
|
_1pass_socket =
|
||||||
if isDarwin then
|
if isDarwin
|
||||||
"${config.home.homeDirectory}/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
|
then "${config.home.homeDirectory}/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
|
||||||
else
|
else "${config.home.homeDirectory}/.1password/agent.sock";
|
||||||
"${config.home.homeDirectory}/.1password/agent.sock";
|
in {
|
||||||
in
|
|
||||||
{
|
|
||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
includes = if isDarwin then [ "${config.home.homeDirectory}/.colima/ssh_config" ] else [ ];
|
includes =
|
||||||
|
if isDarwin
|
||||||
|
then ["${config.home.homeDirectory}/.colima/ssh_config"]
|
||||||
|
else [];
|
||||||
matchBlocks = {
|
matchBlocks = {
|
||||||
"10.*" = {
|
|
||||||
setEnv = {
|
|
||||||
"TERM" = "xterm-256color";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"acicchetti.dev" = {
|
"acicchetti.dev" = {
|
||||||
extraOptions = {
|
extraOptions = {
|
||||||
"IdentityAgent" = "'${_1pass_socket}'\n";
|
"IdentityAgent" = "'${_1pass_socket}'\n";
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
programs.starship = {
|
programs.starship = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
||||||
|
@ -32,41 +31,6 @@
|
||||||
};
|
};
|
||||||
continuation_prompt = "→→";
|
continuation_prompt = "→→";
|
||||||
|
|
||||||
custom.jj = {
|
|
||||||
command = ''
|
|
||||||
jj log -r@ -l1 --ignore-working-copy --no-graph --color always -T '
|
|
||||||
separate(" ",
|
|
||||||
branches.map(|x| if(
|
|
||||||
x.name().substr(0, 10).starts_with(x.name()),
|
|
||||||
x.name().substr(0, 10),
|
|
||||||
x.name().substr(0, 9) ++ "…")
|
|
||||||
).join(" "),
|
|
||||||
tags.map(|x| if(
|
|
||||||
x.name().substr(0, 10).starts_with(x.name()),
|
|
||||||
x.name().substr(0, 10),
|
|
||||||
x.name().substr(0, 9) ++ "…")
|
|
||||||
).join(" "),
|
|
||||||
surround("\"","\"",
|
|
||||||
if(
|
|
||||||
description.first_line().substr(0, 24).starts_with(description.first_line()),
|
|
||||||
description.first_line().substr(0, 24),
|
|
||||||
description.first_line().substr(0, 23) ++ "…"
|
|
||||||
)
|
|
||||||
),
|
|
||||||
if(conflict, "conflict"),
|
|
||||||
if(divergent, "divergent"),
|
|
||||||
if(hidden, "hidden"),
|
|
||||||
)
|
|
||||||
'
|
|
||||||
'';
|
|
||||||
detect_folders = [ ".jj" ];
|
|
||||||
symbol = "jj";
|
|
||||||
};
|
|
||||||
custom.jjstatus = {
|
|
||||||
command = ''jj log -r@ -l1 --no-graph -T "" --stat | tail -n1 | sd "(\d+) files? changed, (\d+) insertions?\(\+\), (\d+) deletions?\(-\)" " $${1}m $${2}+ $${3}-" | sd " 0." ""'';
|
|
||||||
detect_folders = [ ".jj" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
dart = {
|
dart = {
|
||||||
symbol = " ";
|
symbol = " ";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,11 +1,41 @@
|
||||||
{ ... }:
|
{pkgs, ...}: let
|
||||||
{
|
zjstatus_config = ''
|
||||||
|
pane size=1 borderless=true {
|
||||||
|
plugin location="file:${pkgs.zjstatus}/bin/zjstatus.wasm" {
|
||||||
|
format_left "{mode}#[fg=black,bg=blue,bold,italic]{session} #[fg=blue,bg=#181825]{tabs}"
|
||||||
|
format_right "#[fg=#181825,bg=#b1bbfa]{datetime}"
|
||||||
|
format_space "#[bg=#181825]"
|
||||||
|
|
||||||
|
mode_normal "#[bg=blue]Normal"
|
||||||
|
mode_tmux "#[bg=green]Tmux "
|
||||||
|
|
||||||
|
tab_normal "#[fg=#181825,bg=#4C4C59] #[fg=#000000,bg=#4C4C59]{index} {name} #[fg=#4C4C59,bg=#181825]"
|
||||||
|
tab_normal_fullscreen "#[fg=#6C7086,bg=#181825] {index} {name} [] "
|
||||||
|
tab_normal_sync "#[fg=#6C7086,bg=#181825] {index} {name} <> "
|
||||||
|
tab_active "#[fg=#181825,bg=#ffffff,bold,italic] {index} {name} #[fg=#ffffff,bg=#181825]"
|
||||||
|
tab_active_fullscreen "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} [] "
|
||||||
|
tab_active_sync "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} <> "
|
||||||
|
|
||||||
|
|
||||||
|
datetime "#[fg=#6C7086,bg=#b1bbfa,bold] {format} "
|
||||||
|
datetime_format "%A, %d %b %Y %H:%M"
|
||||||
|
datetime_timezone "America/New_York"
|
||||||
|
}
|
||||||
|
}'';
|
||||||
|
in {
|
||||||
programs.zellij = {
|
programs.zellij = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = false; # automatically sets up a session - I don't want this, I want manual control of my sessions
|
# enableZshIntegration = true; # automatically sets up a session - I don't want this, I want manual control of my sessions
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
"zellij/config.kdl".source = ../../../../zellij/config.kdl;
|
"zellij/config.kdl".source = ../../../../zellij/config.kdl;
|
||||||
|
"zellij/layouts/zjstatus.kdl".text = ''
|
||||||
|
layout {
|
||||||
|
default_tab_template {
|
||||||
|
children
|
||||||
|
${zjstatus_config}
|
||||||
|
}
|
||||||
|
}'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
{ pkgs, ... }:
|
{pkgs, ...}: let
|
||||||
let
|
|
||||||
inherit (pkgs.stdenv.hostPlatform) isDarwin isLinux;
|
inherit (pkgs.stdenv.hostPlatform) isDarwin isLinux;
|
||||||
in
|
in {
|
||||||
{
|
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
initExtraFirst = ''
|
initExtraFirst = ''
|
||||||
|
@ -17,25 +15,23 @@ in
|
||||||
initExtra = builtins.readFile ../../../../zsh/zshrc;
|
initExtra = builtins.readFile ../../../../zsh/zshrc;
|
||||||
antidote = {
|
antidote = {
|
||||||
enable = true;
|
enable = true;
|
||||||
plugins =
|
plugins = let
|
||||||
let
|
ohmyzsh-lib = "ohmyzsh/oh-my-zsh path:lib";
|
||||||
ohmyzsh-lib = "ohmyzsh/oh-my-zsh path:lib";
|
ohmyzsh-plugin = "ohmyzsh/oh-my-zsh path:plugins";
|
||||||
ohmyzsh-plugin = "ohmyzsh/oh-my-zsh path:plugins";
|
extraPlugins =
|
||||||
extraPlugins =
|
if isLinux
|
||||||
if isLinux then
|
then []
|
||||||
[ ]
|
else if isDarwin
|
||||||
else if isDarwin then
|
then [
|
||||||
[
|
"${ohmyzsh-plugin}/brew"
|
||||||
"${ohmyzsh-plugin}/brew"
|
]
|
||||||
]
|
else [];
|
||||||
else
|
in
|
||||||
[ ];
|
|
||||||
in
|
|
||||||
extraPlugins
|
extraPlugins
|
||||||
++ [
|
++ [
|
||||||
"zdharma-continuum/fast-syntax-highlighting"
|
"zdharma-continuum/fast-syntax-highlighting"
|
||||||
"zsh-users/zsh-completions"
|
"zsh-users/zsh-completions"
|
||||||
"jeffreytse/zsh-vi-mode"
|
"b4b4r07/zsh-vimode-visual"
|
||||||
"reegnz/jq-zsh-plugin"
|
"reegnz/jq-zsh-plugin"
|
||||||
"${ohmyzsh-lib}/completion.zsh"
|
"${ohmyzsh-lib}/completion.zsh"
|
||||||
"${ohmyzsh-lib}/git.zsh"
|
"${ohmyzsh-lib}/git.zsh"
|
||||||
|
@ -61,9 +57,6 @@ in
|
||||||
];
|
];
|
||||||
useFriendlyNames = true;
|
useFriendlyNames = true;
|
||||||
};
|
};
|
||||||
autosuggestion = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
dirHashes = {
|
dirHashes = {
|
||||||
"-- -dotfiles" = "$HOME/.dotfiles";
|
"-- -dotfiles" = "$HOME/.dotfiles";
|
||||||
"-- -src" = "$HOME/src";
|
"-- -src" = "$HOME/src";
|
||||||
|
@ -86,21 +79,19 @@ in
|
||||||
AGE = "rage";
|
AGE = "rage";
|
||||||
AGE_KEYPATH = "op://Jellyfish/age-key";
|
AGE_KEYPATH = "op://Jellyfish/age-key";
|
||||||
};
|
};
|
||||||
shellAliases =
|
shellAliases = let
|
||||||
let
|
platformSpecificAliases =
|
||||||
platformSpecificAliases =
|
if isLinux
|
||||||
if isLinux then
|
then {
|
||||||
{
|
cp = "cp --reflink=auto";
|
||||||
cp = "cp --reflink=auto";
|
}
|
||||||
}
|
else {
|
||||||
else
|
# exa = "eza -l --git";
|
||||||
{
|
# ls = "exa";
|
||||||
# exa = "eza -l --git";
|
nv = "neovide --fork";
|
||||||
# ls = "exa";
|
};
|
||||||
nv = "neovide --fork";
|
in
|
||||||
};
|
{zj = "zellij -l welcome";} // platformSpecificAliases;
|
||||||
in
|
|
||||||
{ zj = "zellij -l welcome"; } // platformSpecificAliases;
|
|
||||||
};
|
};
|
||||||
programs.carapace = {
|
programs.carapace = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{...}: {
|
||||||
{
|
|
||||||
imports = [
|
imports = [
|
||||||
./git-sync.nix
|
./git-sync.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{ config, ... }:
|
{config, ...}: {
|
||||||
{
|
|
||||||
services.git-sync = {
|
services.git-sync = {
|
||||||
enable = true;
|
enable = true;
|
||||||
repositories = {
|
repositories = {
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
local wezterm = require("wezterm")
|
local wezterm = require("wezterm")
|
||||||
local act = wezterm.action
|
|
||||||
|
|
||||||
-- Allow working with both the current release and the nightly
|
-- Allow working with both the current release and the nightly
|
||||||
local config = {}
|
local config = {}
|
||||||
|
@ -8,9 +7,6 @@ if wezterm.config_builder then
|
||||||
end
|
end
|
||||||
|
|
||||||
config.font = wezterm.font_with_fallback({
|
config.font = wezterm.font_with_fallback({
|
||||||
{ family = "0xProto Nerd Font Mono" },
|
|
||||||
{ family = "Maple Mono NF" },
|
|
||||||
{ family = "Departure Mono" },
|
|
||||||
{ family = "Fantasque Sans Mono" },
|
{ family = "Fantasque Sans Mono" },
|
||||||
{ family = "Iosevka Custom", weight = "Medium" },
|
{ family = "Iosevka Custom", weight = "Medium" },
|
||||||
})
|
})
|
||||||
|
@ -19,7 +15,6 @@ config.font_rules = {
|
||||||
{
|
{
|
||||||
italic = true,
|
italic = true,
|
||||||
font = wezterm.font_with_fallback({
|
font = wezterm.font_with_fallback({
|
||||||
{ family = "Maple Mono NF", italic = true },
|
|
||||||
{ family = "Dank Mono", italic = true },
|
{ family = "Dank Mono", italic = true },
|
||||||
{ family = "Fantasque Sans Mono", italic = true },
|
{ family = "Fantasque Sans Mono", italic = true },
|
||||||
{ family = "Iosevka Custom", weight = "Light" },
|
{ family = "Iosevka Custom", weight = "Light" },
|
||||||
|
@ -27,7 +22,7 @@ config.font_rules = {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
config.font_size = 14.0
|
config.font_size = 16.0
|
||||||
-- wayland?
|
-- wayland?
|
||||||
config.enable_wayland = true
|
config.enable_wayland = true
|
||||||
-- TERM name
|
-- TERM name
|
||||||
|
@ -83,75 +78,4 @@ config.hide_tab_bar_if_only_one_tab = true
|
||||||
|
|
||||||
config.front_end = "WebGpu"
|
config.front_end = "WebGpu"
|
||||||
|
|
||||||
-- Wezterm Mux
|
|
||||||
config.unix_domains = { { name = "unix" } }
|
|
||||||
config.default_gui_startup_args = { "connect", "unix" }
|
|
||||||
|
|
||||||
-- Some keybinds… A lot of keybinds
|
|
||||||
local copy_mode = nil
|
|
||||||
if wezterm.gui then
|
|
||||||
copy_mode = wezterm.gui.default_key_tables().copy_mode
|
|
||||||
table.insert(copy_mode, { key = "k", mods = "CTRL", action = act.CopyMode({ MoveByPage = -0.5 }) })
|
|
||||||
table.insert(copy_mode, { key = "j", mods = "CTRL", action = act.CopyMode({ MoveByPage = 0.5 }) })
|
|
||||||
end
|
|
||||||
-- config.leader = { key = "a", mods = "CTRL", timeout_milliseconds = 1000 }
|
|
||||||
-- config.keys = {
|
|
||||||
-- {
|
|
||||||
-- key = "|",
|
|
||||||
-- mods = "LEADER|SHIFT",
|
|
||||||
-- action = act.SplitHorizontal({ domain = "CurrentPaneDomain" }),
|
|
||||||
-- },
|
|
||||||
-- {
|
|
||||||
-- key = "a",
|
|
||||||
-- mods = "LEADER|CTRL",
|
|
||||||
-- action = act.SendKey({ key = "a", mods = "CTRL" }),
|
|
||||||
-- },
|
|
||||||
-- {
|
|
||||||
-- key = "-",
|
|
||||||
-- mods = "LEADER",
|
|
||||||
-- action = act.SplitVertical({ domain = "CurrentPaneDomain" }),
|
|
||||||
-- },
|
|
||||||
-- {
|
|
||||||
-- key = "n",
|
|
||||||
-- mods = "LEADER",
|
|
||||||
-- action = act.ActivateKeyTable({
|
|
||||||
-- name = "manage_panes",
|
|
||||||
-- one_shot = false,
|
|
||||||
-- timeout_milliseconds = 5000,
|
|
||||||
-- until_unknown = true,
|
|
||||||
-- }),
|
|
||||||
-- },
|
|
||||||
|
|
||||||
-- {
|
|
||||||
-- key = "Escape",
|
|
||||||
-- mods = "LEADER",
|
|
||||||
-- action = act.ActivateCopyMode,
|
|
||||||
-- },
|
|
||||||
-- { key = "Tab", mods = "LEADER", action = act.QuickSelect },
|
|
||||||
-- { key = "c", mods = "LEADER", action = act.SpawnTab("CurrentPaneDomain") },
|
|
||||||
-- }
|
|
||||||
-- config.key_tables = {
|
|
||||||
-- manage_panes = {
|
|
||||||
-- { key = "LeftArrow", action = act.AdjustPaneSize({ "Left", 1 }) },
|
|
||||||
-- { key = "h", action = act.AdjustPaneSize({ "Left", 1 }) },
|
|
||||||
-- { key = "h", mods = "SHIFT", action = act.ActivatePaneDirection("Left") },
|
|
||||||
|
|
||||||
-- { key = "RightArrow", action = act.AdjustPaneSize({ "Right", 1 }) },
|
|
||||||
-- { key = "l", action = act.AdjustPaneSize({ "Right", 1 }) },
|
|
||||||
-- { key = "l", mods = "SHIFT", action = act.ActivatePaneDirection("Right") },
|
|
||||||
|
|
||||||
-- { key = "UpArrow", action = act.AdjustPaneSize({ "Up", 1 }) },
|
|
||||||
-- { key = "k", action = act.AdjustPaneSize({ "Up", 1 }) },
|
|
||||||
-- { key = "k", mods = "SHIFT", action = act.ActivatePaneDirection("Up") },
|
|
||||||
|
|
||||||
-- { key = "DownArrow", action = act.AdjustPaneSize({ "Down", 1 }) },
|
|
||||||
-- { key = "j", action = act.AdjustPaneSize({ "Down", 1 }) },
|
|
||||||
-- { key = "j", mods = "SHIFT", action = act.ActivatePaneDirection("Down") },
|
|
||||||
|
|
||||||
-- -- Cancel the mode by pressing escape
|
|
||||||
-- { key = "Escape", action = "PopKeyTable" },
|
|
||||||
-- },
|
|
||||||
-- copy_mode = copy_mode,
|
|
||||||
-- }
|
|
||||||
|
|
||||||
return config
|
return config
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
"context": "VimControl",
|
|
||||||
"bindings": {
|
|
||||||
"space s": "pane::RevealInProjectPanel",
|
|
||||||
"ctrl-r": "workspace::ToggleRightDock"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,96 +1,29 @@
|
||||||
// Zed settings
|
|
||||||
//
|
//
|
||||||
// For information on how to configure Zed, see the Zed
|
// For information on how to configure Zed, see the Zed
|
||||||
// documentation: https://zed.dev/docs/configuring-zed
|
// documentation: https://zed.dev/docs/configuring-zed
|
||||||
//
|
//
|
||||||
// To see all of Zed's default settings without changing your
|
// To see all of Zed's default settings without changing your
|
||||||
// custom settings, run `zed: open default settings` from the
|
// custom settings, run the `open default settings` command
|
||||||
// command palette
|
// from the command palette or from `Zed` application menu.
|
||||||
{
|
{
|
||||||
"assistant": {
|
"theme": "Kanagawa Wave",
|
||||||
"default_model": {
|
|
||||||
"provider": "ollama",
|
|
||||||
"model": "llama3.2:3b"
|
|
||||||
},
|
|
||||||
"version": "2"
|
|
||||||
},
|
|
||||||
"vim_mode": true,
|
"vim_mode": true,
|
||||||
"autosave": "on_focus_change",
|
|
||||||
"buffer_font_family": "Berkeley Mono",
|
|
||||||
"buffer_font_fallbacks": [
|
|
||||||
"Apple Color Emoji",
|
|
||||||
"Segoe UI Emoji",
|
|
||||||
"Noto Color Emoji"
|
|
||||||
],
|
|
||||||
"buffer_font_weight": 400,
|
|
||||||
"buffer_font_size": 14,
|
|
||||||
"load_direnv": "shell_hook",
|
|
||||||
"ui_font_size": 16,
|
"ui_font_size": 16,
|
||||||
"theme": {
|
"buffer_font_family": "Fantasque Sans Mono",
|
||||||
"mode": "system",
|
"buffer_font_size": 16,
|
||||||
"light": "Kanagawa Wave",
|
"assistant_v2": {
|
||||||
"dark": "Kanagawa Wave"
|
"enabled": true
|
||||||
},
|
|
||||||
"scrollbar": {
|
|
||||||
"show": "always"
|
|
||||||
},
|
|
||||||
"tab_bar": {
|
|
||||||
"show_nav_history_buttons": false
|
|
||||||
},
|
|
||||||
"tabs": {
|
|
||||||
"file_icons": true,
|
|
||||||
"git_status": true
|
|
||||||
},
|
|
||||||
"toolbar": {
|
|
||||||
"breadcrumbs": true,
|
|
||||||
"quick_actions": true
|
|
||||||
},
|
|
||||||
"lsp": {
|
|
||||||
"rust-analyzer": {
|
|
||||||
"initialization_options": {
|
|
||||||
"check": {
|
|
||||||
"command": "clippy"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"always_treat_brackets_as_autoclosed": true,
|
|
||||||
"git": {
|
|
||||||
"git_gutter": "tracked_files",
|
|
||||||
"inline_blame": {
|
|
||||||
"enabled": true,
|
|
||||||
"delay_ms": 200
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"indent_guides": {
|
|
||||||
"enabled": true,
|
|
||||||
"coloring": "indent_aware",
|
|
||||||
"background_coloring": "disabled"
|
|
||||||
},
|
|
||||||
"inlay_hints": {
|
|
||||||
"enabled": true,
|
|
||||||
"show_type_hints": true,
|
|
||||||
"show_parameter_hints": true
|
|
||||||
},
|
},
|
||||||
"languages": {
|
"languages": {
|
||||||
"Python": {
|
"Typescript": {
|
||||||
"format_on_save": "on",
|
"language_servers": ["!typescript-language-server", "vtsls"]
|
||||||
"formatter": {
|
|
||||||
"external": {
|
|
||||||
"command": "black",
|
|
||||||
"args": ["--quiet", "-"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"preview_tabs": {
|
"assistant": {
|
||||||
"enabled": true,
|
"version": "1",
|
||||||
"enable_preview_from_file_finder": true,
|
"provider": {
|
||||||
"enable_preview_from_code_navigation": true
|
"name": "ollama",
|
||||||
},
|
"low_speed_timeout_in_seconds": 30
|
||||||
"show_whitespaces": "all",
|
}
|
||||||
"telemetry": {
|
|
||||||
"diagnostics": false,
|
|
||||||
"metrics": false
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,29 +1,249 @@
|
||||||
keybinds {
|
keybinds clear-defaults=true {
|
||||||
shared_except "locked" "tmux" {
|
normal {
|
||||||
bind "Ctrl g" { SwitchToMode "locked"; }
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
// bind "Ctrl p" { SwitchToMode "pane"; }
|
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||||
bind "Ctrl n" { SwitchToMode "resize"; }
|
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||||
bind "Ctrl t" { SwitchToMode "tab"; }
|
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||||
bind "Ctrl s" { SwitchToMode "scroll"; }
|
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||||
bind "Ctrl o" { SwitchToMode "session"; }
|
bind "Ctrl o" { SwitchToMode "session"; }
|
||||||
bind "Ctrl h" { SwitchToMode "move"; }
|
bind "Ctrl h" { SwitchToMode "move"; }
|
||||||
bind "Ctrl a" { SwitchToMode "tmux"; }
|
bind "Ctrl a" { SwitchToMode "tmux"; }
|
||||||
}
|
|
||||||
|
|
||||||
normal {
|
|
||||||
bind "Ctrl q" { Quit; }
|
bind "Ctrl q" { Quit; }
|
||||||
}
|
bind "Alt n" { NewPane; }
|
||||||
move {
|
bind "Alt h" { MoveFocusOrTab "Left"; }
|
||||||
bind "Esc" { SwitchToMode "Normal";}
|
bind "Alt l" { MoveFocusOrTab "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
}
|
}
|
||||||
locked {
|
locked {
|
||||||
bind "Ctrl g" { SwitchToMode "normal"; }
|
bind "Ctrl g" { SwitchToMode "normal"; }
|
||||||
}
|
}
|
||||||
tmux {
|
pane {
|
||||||
bind "Esc" { EditScrollback; SwitchToMode "normal"; }
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||||
|
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||||
|
bind "Ctrl p" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||||
|
bind "Ctrl o" { SwitchToMode "session"; }
|
||||||
|
bind "Ctrl h" { SwitchToMode "move"; }
|
||||||
|
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "h" "Left" { MoveFocus "Left"; }
|
||||||
|
bind "l" "Right" { MoveFocus "Right"; }
|
||||||
|
bind "j" "Down" { MoveFocus "Down"; }
|
||||||
|
bind "k" "Up" { MoveFocus "Up"; }
|
||||||
|
bind "p" { SwitchFocus; }
|
||||||
|
bind "n" { NewPane; SwitchToMode "normal"; }
|
||||||
|
bind "d" { NewPane "Down"; SwitchToMode "normal"; }
|
||||||
|
bind "r" { NewPane "Right"; SwitchToMode "normal"; }
|
||||||
|
bind "x" { CloseFocus; SwitchToMode "normal"; }
|
||||||
|
bind "f" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||||
|
bind "z" { TogglePaneFrames; SwitchToMode "normal"; }
|
||||||
|
bind "w" { ToggleFloatingPanes; SwitchToMode "normal"; }
|
||||||
|
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal"; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||||
|
}
|
||||||
|
tab {
|
||||||
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
|
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||||
|
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||||
|
bind "Ctrl t" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||||
|
bind "Ctrl h" { SwitchToMode "move"; }
|
||||||
|
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||||
|
bind "Ctrl o" { SwitchToMode "session"; }
|
||||||
|
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||||
|
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||||
|
bind "n" { NewTab; SwitchToMode "normal"; }
|
||||||
|
bind "x" { CloseTab; SwitchToMode "normal"; }
|
||||||
|
bind "s" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||||
|
bind "1" { GoToTab 1; SwitchToMode "normal"; }
|
||||||
|
bind "2" { GoToTab 2; SwitchToMode "normal"; }
|
||||||
|
bind "3" { GoToTab 3; SwitchToMode "normal"; }
|
||||||
|
bind "4" { GoToTab 4; SwitchToMode "normal"; }
|
||||||
|
bind "5" { GoToTab 5; SwitchToMode "normal"; }
|
||||||
|
bind "6" { GoToTab 6; SwitchToMode "normal"; }
|
||||||
|
bind "7" { GoToTab 7; SwitchToMode "normal"; }
|
||||||
|
bind "8" { GoToTab 8; SwitchToMode "normal"; }
|
||||||
|
bind "9" { GoToTab 9; SwitchToMode "normal"; }
|
||||||
|
bind "Tab" { ToggleTab; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
resize {
|
||||||
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
|
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||||
|
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||||
|
bind "Ctrl n" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||||
|
bind "Ctrl o" { SwitchToMode "session"; }
|
||||||
|
bind "Ctrl h" { SwitchToMode "move"; }
|
||||||
|
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "h" "Left" { Resize "Left"; }
|
||||||
|
bind "j" "Down" { Resize "Down"; }
|
||||||
|
bind "k" "Up" { Resize "Up"; }
|
||||||
|
bind "l" "Right" { Resize "Right"; }
|
||||||
|
bind "=" { Resize "Increase"; }
|
||||||
|
bind "+" { Resize "Increase"; }
|
||||||
|
bind "-" { Resize "Decrease"; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
move {
|
||||||
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
|
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||||
|
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||||
|
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||||
|
bind "Ctrl h" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||||
|
bind "Ctrl o" { SwitchToMode "session"; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "n" "Tab" { MovePane; }
|
||||||
|
bind "h" "Left" { MovePane "Left"; }
|
||||||
|
bind "j" "Down" { MovePane "Down"; }
|
||||||
|
bind "k" "Up" { MovePane "Up"; }
|
||||||
|
bind "l" "Right" { MovePane "Right"; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
scroll {
|
||||||
|
bind "Ctrl s" "Space" "Enter" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||||
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
|
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||||
|
bind "Ctrl h" { SwitchToMode "move"; }
|
||||||
|
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||||
|
bind "Ctrl o" { SwitchToMode "session"; }
|
||||||
|
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||||
|
bind "Ctrl c" { ScrollToBottom; SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "j" "Down" { ScrollDown; }
|
||||||
|
bind "k" "Up" { ScrollUp; }
|
||||||
|
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||||
|
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||||
|
bind "d" { HalfPageScrollDown; }
|
||||||
|
bind "u" { HalfPageScrollUp; }
|
||||||
|
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
session {
|
||||||
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
|
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||||
|
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||||
|
bind "Ctrl h" { SwitchToMode "move"; }
|
||||||
|
bind "Ctrl b" { SwitchToMode "tmux"; }
|
||||||
|
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||||
|
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "d" { Detach; }
|
||||||
|
bind "w" {
|
||||||
|
LaunchOrFocusPlugin "session-manager" {
|
||||||
|
floating true
|
||||||
|
move_to_focused_tab true
|
||||||
|
};
|
||||||
|
SwitchToMode "Normal"
|
||||||
|
}
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
RenameTab {
|
||||||
|
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Esc" { TabNameInput 27; SwitchToMode "tab"; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
RenamePane {
|
||||||
|
bind "Enter" "Ctrl c" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Esc" { PaneNameInput 27; SwitchToMode "pane"; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { FocusPreviousPane; }
|
||||||
|
bind "Alt ]" { FocusNextPane; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
tmux {
|
||||||
|
bind "Ctrl g" { SwitchToMode "locked"; }
|
||||||
|
bind "Esc" { EditScrollback; SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl n" { SwitchToMode "resize"; }
|
||||||
|
bind "Ctrl p" { SwitchToMode "pane"; }
|
||||||
|
bind "Ctrl h" { SwitchToMode "move"; }
|
||||||
|
bind "Ctrl t" { SwitchToMode "tab"; }
|
||||||
|
bind "Ctrl o" "Enter" "Space" "Esc" { SwitchToMode "normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "scroll"; }
|
||||||
bind "Ctrl q" { Quit; }
|
bind "Ctrl q" { Quit; }
|
||||||
bind "[" { SwitchToMode "Scroll";}
|
|
||||||
bind "-" { NewPane "Down"; SwitchToMode "normal"; }
|
bind "-" { NewPane "Down"; SwitchToMode "normal"; }
|
||||||
bind "|" { NewPane "Right"; SwitchToMode "normal"; }
|
bind "|" { NewPane "Right"; SwitchToMode "normal"; }
|
||||||
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
bind "z" { ToggleFocusFullscreen; SwitchToMode "normal"; }
|
||||||
|
@ -35,21 +255,51 @@ keybinds {
|
||||||
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
bind "l" { MoveFocus "Right"; SwitchToMode "normal"; }
|
||||||
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
bind "j" { MoveFocus "Down"; SwitchToMode "normal"; }
|
||||||
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
bind "k" { MoveFocus "Up"; SwitchToMode "normal"; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" { MoveFocus "Left"; }
|
||||||
|
bind "Alt l" { MoveFocus "Right"; }
|
||||||
|
bind "Alt j" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" { MoveFocus "Up"; }
|
||||||
|
bind "Alt [" { PreviousSwapLayout; }
|
||||||
|
bind "Alt ]" { NextSwapLayout; }
|
||||||
|
bind "Alt =" { Resize "Increase"; }
|
||||||
|
bind "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
bind "Ctrl a" { Write 1; SwitchToMode "normal"; }
|
bind "Ctrl a" { Write 1; SwitchToMode "normal"; }
|
||||||
bind "d" { Detach; }
|
bind "d" { Detach; }
|
||||||
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
bind "e" { EditScrollback; SwitchToMode "normal"; }
|
||||||
bind "y" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
bind "y" { ToggleActiveSyncTab; SwitchToMode "normal"; }
|
||||||
bind "r" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
bind "r" { SwitchToMode "RenamePane"; PaneNameInput 0; }
|
||||||
bind "/" { SwitchToMode "EnterSearch"; SearchInput 0;}
|
|
||||||
bind "m" { SwitchToMode "Move"; }
|
|
||||||
bind "+" { Resize "Increase";}
|
|
||||||
bind "=" { Resize "Decrease"; }
|
|
||||||
bind "w" { ToggleFloatingPanes; SwitchToMode "normal";}
|
|
||||||
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "normal";}
|
|
||||||
bind "i" { TogglePanePinned; SwitchToMode "normal";}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||||
|
// eg. when terminal window with an active zellij session is closed
|
||||||
|
// Options:
|
||||||
|
// - detach (Default)
|
||||||
|
// - quit
|
||||||
|
//
|
||||||
|
// on_force_close "quit"
|
||||||
|
|
||||||
|
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||||
|
// Options:
|
||||||
|
// - true
|
||||||
|
// - false (Default)
|
||||||
|
//
|
||||||
|
// simplified_ui true
|
||||||
|
|
||||||
|
// Choose the path to the default shell that zellij will use for opening new panes
|
||||||
|
// Default: $SHELL
|
||||||
|
//
|
||||||
|
// default_shell "fish"
|
||||||
|
|
||||||
|
// Toggle between having pane frames around the panes
|
||||||
|
// Options:
|
||||||
|
// - true (default)
|
||||||
|
// - false
|
||||||
|
//
|
||||||
|
pane_frames false
|
||||||
|
|
||||||
session_serialization false
|
session_serialization false
|
||||||
|
|
||||||
// Choose the theme that is specified in the themes section.
|
// Choose the theme that is specified in the themes section.
|
||||||
|
@ -57,8 +307,87 @@ session_serialization false
|
||||||
//
|
//
|
||||||
theme "nord"
|
theme "nord"
|
||||||
|
|
||||||
ui {
|
// The name of the default layout to load on startup
|
||||||
pane_frames {
|
// Default: "default"
|
||||||
rounded_corners true
|
//
|
||||||
|
// default_layout "compact"
|
||||||
|
|
||||||
|
// Choose the mode that zellij uses when starting up.
|
||||||
|
// Default: normal
|
||||||
|
//
|
||||||
|
// default_mode "locked"
|
||||||
|
|
||||||
|
// Toggle enabling the mouse mode.
|
||||||
|
// On certain configurations, or terminals this could
|
||||||
|
// potentially interfere with copying text.
|
||||||
|
// Options:
|
||||||
|
// - true (default)
|
||||||
|
// - false
|
||||||
|
//
|
||||||
|
// mouse_mode false
|
||||||
|
|
||||||
|
// Configure the scroll back buffer size
|
||||||
|
// This is the number of lines zellij stores for each pane in the scroll back
|
||||||
|
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||||
|
// Valid values: positive integers
|
||||||
|
// Default value: 10000
|
||||||
|
//
|
||||||
|
// scroll_buffer_size 10000
|
||||||
|
|
||||||
|
// Provide a command to execute when copying text. The text will be piped to
|
||||||
|
// the stdin of the program to perform the copy. This can be used with
|
||||||
|
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||||
|
// that will be used by default if this option is not set.
|
||||||
|
// Examples:
|
||||||
|
//
|
||||||
|
// copy_command "xclip -selection clipboard" // x11
|
||||||
|
// copy_command "wl-copy" // wayland
|
||||||
|
// copy_command "pbcopy" // osx
|
||||||
|
|
||||||
|
// Choose the destination for copied text
|
||||||
|
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||||
|
// Does not apply when using copy_command.
|
||||||
|
// Options:
|
||||||
|
// - system (default)
|
||||||
|
// - primary
|
||||||
|
//
|
||||||
|
// copy_clipboard "primary"
|
||||||
|
|
||||||
|
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||||
|
// Default: true
|
||||||
|
//
|
||||||
|
// copy_on_select false
|
||||||
|
|
||||||
|
// Path to the default editor to use to edit pane scrollbuffer
|
||||||
|
// Default: $EDITOR or $VISUAL
|
||||||
|
//
|
||||||
|
// scrollback_editor "/usr/bin/vim"
|
||||||
|
|
||||||
|
// When attaching to an existing session with other users,
|
||||||
|
// should the session be mirrored (true)
|
||||||
|
// or should each user have their own cursor (false)
|
||||||
|
// Default: false
|
||||||
|
//
|
||||||
|
// mirror_session true
|
||||||
|
|
||||||
|
// The folder in which Zellij will look for layouts
|
||||||
|
//
|
||||||
|
// layout_dir /path/to/my/layout_dir
|
||||||
|
|
||||||
|
// The folder in which Zellij will look for themes
|
||||||
|
//
|
||||||
|
// theme_dir "/path/to/my/theme_dir"
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
tab-bar { path "tab-bar"; }
|
||||||
|
status-bar { path "status-bar"; }
|
||||||
|
strider { path "strider"; }
|
||||||
|
compact-bar location="zellij:compact-bar"
|
||||||
|
session-manager location="zellij:session-manager"
|
||||||
|
welcome-screen location="zellij:session-manager" {
|
||||||
|
welcome_screen true
|
||||||
|
}
|
||||||
|
filepicker location="zellij:strider" {
|
||||||
|
cwd "/"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
28
zellij/layouts/zjstatus.kdl
Normal file
28
zellij/layouts/zjstatus.kdl
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
layout {
|
||||||
|
default_tab_template {
|
||||||
|
children
|
||||||
|
pane size=1 borderless=true {
|
||||||
|
plugin location="file:${pkgs.zjstatus}/bin/zjstatus.wasm" {
|
||||||
|
format_left "{mode}#[fg=black,bg=blue,bold]{session} #[fg=blue,bg=#181825]{tabs}"
|
||||||
|
format_right "#[fg=#181825,bg=#b1bbfa]{datetime}"
|
||||||
|
format_space "#[bg=#181825]"
|
||||||
|
|
||||||
|
hide_frame_for_single_pane "true"
|
||||||
|
|
||||||
|
mode_normal "#[bg=blue] "
|
||||||
|
|
||||||
|
tab_normal "#[fg=#181825,bg=#4C4C59] #[fg=#000000,bg=#4C4C59]{index} {name} #[fg=#4C4C59,bg=#181825]"
|
||||||
|
tab_normal_fullscreen "#[fg=#6C7086,bg=#181825] {index} {name} [] "
|
||||||
|
tab_normal_sync "#[fg=#6C7086,bg=#181825] {index} {name} <> "
|
||||||
|
tab_active "#[fg=#181825,bg=#ffffff,bold,italic] {index} {name} #[fg=#ffffff,bg=#181825]"
|
||||||
|
tab_active_fullscreen "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} [] "
|
||||||
|
tab_active_sync "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} <> "
|
||||||
|
|
||||||
|
|
||||||
|
datetime "#[fg=#6C7086,bg=#b1bbfa,bold] {format} "
|
||||||
|
datetime_format "%A, %d %b %Y %H:%M"
|
||||||
|
datetime_timezone "Europe/Berlin" // plugin configuration...
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,11 +0,0 @@
|
||||||
# zsh-vi-mode for some reason is overriding these - so overriding them back
|
|
||||||
bindkey -M emacs '^r' atuin-search
|
|
||||||
bindkey -M viins '^r' atuin-search-viins
|
|
||||||
bindkey -M vicmd '/' atuin-search
|
|
||||||
bindkey -M emacs '^[[A' atuin-up-search
|
|
||||||
bindkey -M vicmd '^[[A' atuin-up-search-vicmd
|
|
||||||
bindkey -M viins '^[[A' atuin-up-search-viins
|
|
||||||
bindkey -M emacs '^[OA' atuin-up-search
|
|
||||||
bindkey -M vicmd '^[OA' atuin-up-search-vicmd
|
|
||||||
bindkey -M viins '^[OA' atuin-up-search-viins
|
|
||||||
bindkey -M vicmd 'k' atuin-up-search-vicm
|
|
|
@ -1,8 +1,8 @@
|
||||||
function update_me {
|
function update_me {
|
||||||
(
|
pushd ~
|
||||||
setopt local_options pushd_silent
|
pushd ~/.dotfiles/nix
|
||||||
cd ~/.dotfiles/nix
|
|
||||||
./update.sh $@
|
./update.sh $@
|
||||||
)
|
popd
|
||||||
|
popd || return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
11
zsh/zshrc
11
zsh/zshrc
|
@ -22,20 +22,11 @@ fi
|
||||||
|
|
||||||
fpath=(~/bin ~/.zshcompletions $fpath)
|
fpath=(~/bin ~/.zshcompletions $fpath)
|
||||||
zstyle :compinstall filename '/home/anthonys/.zshrc'
|
zstyle :compinstall filename '/home/anthonys/.zshrc'
|
||||||
export CARAPACE_BRIDGES='zsh,fish,bash'
|
export CARAPACE_BRIDGES='zsh,fish,bash,inshellisense'
|
||||||
zstyle ':completion:*' format $'\e[2;37mCompleting %d\e[m'
|
zstyle ':completion:*' format $'\e[2;37mCompleting %d\e[m'
|
||||||
# Both because it's nice and as an example
|
# Both because it's nice and as an example
|
||||||
zstyle ':completion:*:git:*' group-order 'main commands' 'alias commands' 'external commands'
|
zstyle ':completion:*:git:*' group-order 'main commands' 'alias commands' 'external commands'
|
||||||
|
|
||||||
# zsh-vi-mode stuff
|
|
||||||
ZVM_VI_SURROUND_BINDKEY="s-prefix"
|
|
||||||
ZVM_READKEY_ENDINE=$ZVM_READKEY_ENGINE_NEX
|
|
||||||
ZVM_INSERT_MODE_CURSOR=$ZVM_CURSOR_BLOCK
|
|
||||||
ZVM_LINE_INIT_MODE=$ZVM_MODE_INSERT
|
|
||||||
function zvm_after_lazy_keybindings() {
|
|
||||||
eval "$(/nix/store/imgh8mjpck0xadj64h9q4gqrjaj9pbn7-atuin-18.3.0/bin/atuin init zsh )"
|
|
||||||
}
|
|
||||||
|
|
||||||
# zstyle ":completion:*" complete _complete _ignored _approximate _expand
|
# zstyle ":completion:*" complete _complete _ignored _approximate _expand
|
||||||
# zstyle ":completion:*" glob 1
|
# zstyle ":completion:*" glob 1
|
||||||
# zstyle ":completion:*" insert-unambiguous true
|
# zstyle ":completion:*" insert-unambiguous true
|
||||||
|
|
Loading…
Add table
Reference in a new issue