Merge remote-tracking branch 'origin/nixos' into nixos-work
This commit is contained in:
commit
7eb7b63684
23 changed files with 1161 additions and 464 deletions
422
flake.lock
generated
422
flake.lock
generated
|
|
@ -26,11 +26,11 @@
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718371084,
|
"lastModified": 1723293904,
|
||||||
"narHash": "sha256-abpBi61mg0g+lFFU0zY4C6oP6fBwPzbHPKBGw676xsA=",
|
"narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=",
|
||||||
"owner": "ryantm",
|
"owner": "ryantm",
|
||||||
"repo": "agenix",
|
"repo": "agenix",
|
||||||
"rev": "3a56735779db467538fb2e577eda28a9daacaca6",
|
"rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -39,14 +39,47 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"aquamarine": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"hyprwayland-scanner": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprwayland-scanner"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1723920171,
|
||||||
|
"narHash": "sha256-dVCMrAe+D/5S91erhwQj2DSzHOVzAanWqoy+vPWB9DY=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "aquamarine",
|
||||||
|
"rev": "71d49670fe246cdaff4860b0effba0ab9f163b72",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "aquamarine",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"arkenfox-userjs": {
|
"arkenfox-userjs": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719071094,
|
"lastModified": 1722919020,
|
||||||
"narHash": "sha256-8mzY85wkUokd1Oau9D95Gp1myCJdGU0Dd47bmCygxnE=",
|
"narHash": "sha256-tTKGJXg/yicwpCI9WwFmbKYL6cyQ0OOetbvT9i/psUk=",
|
||||||
"owner": "arkenfox",
|
"owner": "arkenfox",
|
||||||
"repo": "user.js",
|
"repo": "user.js",
|
||||||
"rev": "23caf6961483e0e55544cd4f3594734d0aa35cf0",
|
"rev": "11582f905a21971eb5869b48ef8c3f2d4eac4d89",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -75,11 +108,11 @@
|
||||||
"cmp-vimtex": {
|
"cmp-vimtex": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1716040164,
|
"lastModified": 1722941837,
|
||||||
"narHash": "sha256-CO70M+l/9c4vqNm0XloOTzGQTmogHbSwvUFKQxYGsuw=",
|
"narHash": "sha256-pD2dPdpyn5A/uwonDdAxCX138yBeDqbXDdlG/IKjVTU=",
|
||||||
"owner": "micangl",
|
"owner": "micangl",
|
||||||
"repo": "cmp-vimtex",
|
"repo": "cmp-vimtex",
|
||||||
"rev": "a64b1b5eec0460144c91c4f20a45c74b8ded48ae",
|
"rev": "5283bf9108ef33d41e704027b9ef22437ce7a15b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -112,15 +145,14 @@
|
||||||
},
|
},
|
||||||
"devshell": {
|
"devshell": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717408969,
|
"lastModified": 1722113426,
|
||||||
"narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=",
|
"narHash": "sha256-Yo/3loq572A8Su6aY5GP56knpuKYRvM2a1meP9oJZCw=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "devshell",
|
"repo": "devshell",
|
||||||
"rev": "1ebbe68d57457c8cae98145410b164b5477761f4",
|
"rev": "67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -134,11 +166,11 @@
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719733833,
|
"lastModified": 1723685519,
|
||||||
"narHash": "sha256-6h2EqZU9bL9rHlXE+2LCBgnDImejzbS+4dYsNDDFlkY=",
|
"narHash": "sha256-GkXQIoZmW2zCPp1YFtAYGg/xHNyFH/Mgm79lcs81rq0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "d185770ea261fb5cf81aa5ad1791b93a7834d12c",
|
"rev": "276a0d055a720691912c6a34abb724e395c8e38a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -182,11 +214,11 @@
|
||||||
"flake-compat_3": {
|
"flake-compat_3": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1673956053,
|
"lastModified": 1696426674,
|
||||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -216,11 +248,11 @@
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719745305,
|
"lastModified": 1722555600,
|
||||||
"narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=",
|
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9",
|
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -237,11 +269,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717285511,
|
"lastModified": 1722555600,
|
||||||
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
|
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
|
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -279,11 +311,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712014858,
|
"lastModified": 1719994518,
|
||||||
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
|
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
|
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -296,24 +328,6 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
|
||||||
"lastModified": 1701680307,
|
|
||||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_2": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_3"
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1710146030,
|
||||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
|
@ -328,29 +342,14 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1667395993,
|
|
||||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"gen-nvim": {
|
"gen-nvim": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717706134,
|
"lastModified": 1723301200,
|
||||||
"narHash": "sha256-z03a2au40RIcpDUTRSWlWAbo1E+MgEgVaobFWV8hIaI=",
|
"narHash": "sha256-Yp7HrDMOyR929AfM7IjEz4dP3RhIx9kXZ1Z3zRr5yJg=",
|
||||||
"owner": "David-Kunz",
|
"owner": "David-Kunz",
|
||||||
"repo": "gen.nvim",
|
"repo": "gen.nvim",
|
||||||
"rev": "b1230ce2993b2be38a1e22606750d05a94307380",
|
"rev": "c9a73d8c0d462333da6d2191806ff98f2884d706",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -373,11 +372,42 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719259945,
|
"lastModified": 1723803910,
|
||||||
"narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=",
|
"narHash": "sha256-yezvUuFiEnCFbGuwj/bQcqg7RykIEqudOy/RBrId0pc=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07",
|
"rev": "bfef0ada09e2c8ac55bbcd0831bd0c9d42e651ba",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"git-hooks-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"nix-super"
|
||||||
|
],
|
||||||
|
"gitignore": [
|
||||||
|
"nix-super"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nix-super",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-stable": [
|
||||||
|
"nix-super",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1721042469,
|
||||||
|
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -495,11 +525,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719677234,
|
"lastModified": 1723399884,
|
||||||
"narHash": "sha256-qO9WZsj/0E6zcK4Ht1y/iJ8XfwbBzq7xdqhBh44OP/M=",
|
"narHash": "sha256-97wn0ihhGqfMb8WcUgzzkM/TuAxce2Gd20A8oiruju4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "36317d4d38887f7629876b0e43c8d9593c5cc48d",
|
"rev": "086f619dd991a4d355c07837448244029fc2d9ab",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -513,11 +543,11 @@
|
||||||
"nixpkgs": "nixpkgs_3"
|
"nixpkgs": "nixpkgs_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718476555,
|
"lastModified": 1722636442,
|
||||||
"narHash": "sha256-fuWpgh8KasByIJWE+xVd37Al0LV5YAn6s871T50qVY0=",
|
"narHash": "sha256-+7IS0n3/F0I5j6ZbrVlLcIIPHY3o+/vLAqg/G48sG+w=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "contrib",
|
"repo": "contrib",
|
||||||
"rev": "29a8374f4b9206d5c4af84aceb7fb5dff441ea60",
|
"rev": "9d67858b437d4a1299be496d371b66fc0d3e01f6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -542,11 +572,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718450675,
|
"lastModified": 1722623071,
|
||||||
"narHash": "sha256-jpsns6buS4bK+1sF8sL8AaixAiCRjA+nldTKvcwmvUs=",
|
"narHash": "sha256-sLADpVgebpCBFXkA1FlCXtvEPu1tdEsTfqK1hfeHySE=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprcursor",
|
"repo": "hyprcursor",
|
||||||
"rev": "66d5b46ff94efbfa6fa3d1d1b66735f1779c34a6",
|
"rev": "912d56025f03d41b1ad29510c423757b4379eb1c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -557,20 +587,21 @@
|
||||||
},
|
},
|
||||||
"hyprland": {
|
"hyprland": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"aquamarine": "aquamarine",
|
||||||
"hyprcursor": "hyprcursor",
|
"hyprcursor": "hyprcursor",
|
||||||
"hyprlang": "hyprlang",
|
"hyprlang": "hyprlang",
|
||||||
"hyprutils": "hyprutils",
|
"hyprutils": "hyprutils",
|
||||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||||
"nixpkgs": "nixpkgs_4",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"systems": "systems_4",
|
"systems": "systems_3",
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719746201,
|
"lastModified": 1723969407,
|
||||||
"narHash": "sha256-8Jp7iSoIupyhD2dLi+obRKyoq6YeKYOXMARm0WSIeO4=",
|
"narHash": "sha256-COChiv/1EsfN0aVQcDBPXqNR/T5sUXtalsuO1RGvwcY=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "4d6f96f74f9fa6e7b69790fa569ffe60267f8017",
|
"rev": "1006663b6eaa55149e9a21aa8a34e41c85eb08ca",
|
||||||
"revCount": 4899,
|
"revCount": 5103,
|
||||||
"submodules": true,
|
"submodules": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/hyprwm/Hyprland"
|
"url": "https://github.com/hyprwm/Hyprland"
|
||||||
|
|
@ -595,11 +626,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1714869498,
|
"lastModified": 1721326555,
|
||||||
"narHash": "sha256-vbLVOWvQqo4n1yvkg/Q70VTlPbMmTiCQfNTgcWDCfJM=",
|
"narHash": "sha256-zCu4R0CSHEactW9JqYki26gy8h9f6rHmSwj4XJmlHgg=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-protocols",
|
"repo": "hyprland-protocols",
|
||||||
"rev": "e06482e0e611130cd1929f75e8c1cf679e57d161",
|
"rev": "5a11232266bf1a1f5952d5b179c3f4b2facaaa84",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -624,11 +655,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717881852,
|
"lastModified": 1721324361,
|
||||||
"narHash": "sha256-XeeVoKHQgfKuXoP6q90sUqKyl7EYy3ol2dVZGM+Jj94=",
|
"narHash": "sha256-BiJKO0IIdnSwHQBSrEJlKlFr753urkLE48wtt0UhNG4=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprlang",
|
"repo": "hyprlang",
|
||||||
"rev": "ec6938c66253429192274d612912649a0cfe4d28",
|
"rev": "adbefbf49664a6c2c8bf36b6487fd31e3eb68086",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -649,11 +680,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719316102,
|
"lastModified": 1722869141,
|
||||||
"narHash": "sha256-dmRz128j/lJmMuTYeCYPfSBRHHQO3VeH4PbmoyAhHzw=",
|
"narHash": "sha256-0KU4qhyMp441qfwbirNg3+wbm489KnEjXOz2I/RbeFs=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "1f6bbec5954f623ff8d68e567bddcce97cd2f085",
|
"rev": "0252fd13e78e60fb0da512a212e56007515a49f7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -674,11 +705,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719067853,
|
"lastModified": 1721324119,
|
||||||
"narHash": "sha256-mAnZG/eQy72Fp1ImGtqCgUrDumnR1rMZv2E/zgP4U74=",
|
"narHash": "sha256-SOOqIT27/X792+vsLSeFdrNTF+OSRp5qXv6Te+fb2Qg=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwayland-scanner",
|
"repo": "hyprwayland-scanner",
|
||||||
"rev": "914f083741e694092ee60a39d31f693d0a6dc734",
|
"rev": "a048a6cb015340bd82f97c1f40a4b595ca85cc30",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -705,26 +736,27 @@
|
||||||
"libgit2": {
|
"libgit2": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1697646580,
|
"lastModified": 1715853528,
|
||||||
"narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=",
|
"narHash": "sha256-J2rCxTecyLbbDdsyBWn9w7r3pbKRMkI9E7RvRgAqBdY=",
|
||||||
"owner": "libgit2",
|
"owner": "libgit2",
|
||||||
"repo": "libgit2",
|
"repo": "libgit2",
|
||||||
"rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5",
|
"rev": "36f7e21ad757a3dacc58cf7944329da6bc1d6e96",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "libgit2",
|
"owner": "libgit2",
|
||||||
|
"ref": "v1.8.1",
|
||||||
"repo": "libgit2",
|
"repo": "libgit2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"master": {
|
"master": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719834384,
|
"lastModified": 1723976400,
|
||||||
"narHash": "sha256-M6Vr7LbYeesXrG3hjAExzIfYFxrncrs1dpnp7zdeUN4=",
|
"narHash": "sha256-WpKvJffFrcvNMGMR3hNtQIRa/CTAvrWYohPMAFElLJE=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c08bd9add4732d87fde747e15b8fc053dfd1234b",
|
"rev": "7c87c474f1b4f020b1ab9d2b962fde094c2599cf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -782,11 +814,11 @@
|
||||||
"nixpkgs": "nixpkgs_5"
|
"nixpkgs": "nixpkgs_5"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719764240,
|
"lastModified": 1723969597,
|
||||||
"narHash": "sha256-bsZDPD08s8FKCGyy1OMMuM+cOjO1M8vPREkhgyqkRQM=",
|
"narHash": "sha256-nNSmyoR8k2gEw9LZ+nFcBQm+bquflzw2R44BeJ4gmKk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "neovim-nightly-overlay",
|
"repo": "neovim-nightly-overlay",
|
||||||
"rev": "643ec69ac0cfcc1cd26523c3816fb111e5bb3a41",
|
"rev": "ec3ee3674c80882ac54d93b5575426c66e3f430d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -798,11 +830,11 @@
|
||||||
"neovim-src": {
|
"neovim-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719700831,
|
"lastModified": 1723936741,
|
||||||
"narHash": "sha256-d89hDFBBtuQ7rwS/Q3lKYyfE0ekVCwubMN9q1qCZ3m0=",
|
"narHash": "sha256-x/0wYCshhLSA9zW4fvPK+W6g3gTqE8fMJQZrIucDyXg=",
|
||||||
"owner": "neovim",
|
"owner": "neovim",
|
||||||
"repo": "neovim",
|
"repo": "neovim",
|
||||||
"rev": "e7020306a19a5211c834966ec067fff3b981bdb9",
|
"rev": "d1bdeacb00186ba72fa61f3c7f2951fd018ae21d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -818,11 +850,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719726405,
|
"lastModified": 1723950649,
|
||||||
"narHash": "sha256-DqeKlvYQ5Z1rC02we9ufHr8UTfqBRPhiPrGLqdJ91dQ=",
|
"narHash": "sha256-dHMkGjwwCGj0c2MKyCjRXVBXq2Sz3TWbbM23AS7/5Hc=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "nix-index-database",
|
"repo": "nix-index-database",
|
||||||
"rev": "838a910df0f7e542de2327036b2867fd68ded3a2",
|
"rev": "392828aafbed62a6ea6ccab13728df2e67481805",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -870,17 +902,18 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_3",
|
||||||
"flake-parts": "flake-parts_4",
|
"flake-parts": "flake-parts_4",
|
||||||
|
"git-hooks-nix": "git-hooks-nix",
|
||||||
"libgit2": "libgit2",
|
"libgit2": "libgit2",
|
||||||
"nixpkgs": "nixpkgs_6",
|
"nixpkgs": "nixpkgs_6",
|
||||||
"nixpkgs-regression": "nixpkgs-regression",
|
"nixpkgs-23-11": "nixpkgs-23-11",
|
||||||
"pre-commit-hooks": "pre-commit-hooks"
|
"nixpkgs-regression": "nixpkgs-regression"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1713821351,
|
"lastModified": 1723852416,
|
||||||
"narHash": "sha256-JctHGT1oa4pet4PgUKRM7pf0w+qGe0a/ahVij8bee3o=",
|
"narHash": "sha256-iEwS5PbPBk433xZ5/Ll5hzOU9K2MAE6iqYh8EYoaIgk=",
|
||||||
"owner": "privatevoid-net",
|
"owner": "privatevoid-net",
|
||||||
"repo": "nix-super",
|
"repo": "nix-super",
|
||||||
"rev": "5ecd820c18b1aaa3c8ee257a7a9a2624c4107031",
|
"rev": "7bf3b90d4d67b18d4cbfe28fd5d786aab17d009b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -891,11 +924,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1704161960,
|
"lastModified": 1722073938,
|
||||||
"narHash": "sha256-QGua89Pmq+FBAro8NriTuoO/wNaUtugt29/qqA8zeeM=",
|
"narHash": "sha256-OpX0StkL8vpXyWOGUD6G+MA26wAXK6SpT94kLJXo6B4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "63143ac2c9186be6d9da6035fa22620018c85932",
|
"rev": "e36e9f57337d0ff0cf77aceb58af4c805472bfae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -905,16 +938,32 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-23-11": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1717159533,
|
||||||
|
"narHash": "sha256-oamiKNfr2MS6yH64rUn99mIZjc45nGJlj9eGth/3Xuw=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717284937,
|
"lastModified": 1722555339,
|
||||||
"narHash": "sha256-lIbdfCsf8LMFloheeE6N31+BMIeixqyQWbSr2vk79EQ=",
|
"narHash": "sha256-uFf2QeW7eAHlYXuDktm9c25OxOyCoUOQmh5SZ9amE5Q=",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz"
|
"url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz"
|
"url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-regression": {
|
"nixpkgs-regression": {
|
||||||
|
|
@ -935,27 +984,27 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718811006,
|
"lastModified": 1720386169,
|
||||||
"narHash": "sha256-0Y8IrGhRmBmT7HHXlxxepg2t8j1X90++qRN3lukGaIk=",
|
"narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "03d771e513ce90147b65fe922d87d3a0356fc125",
|
"rev": "194846768975b7ad2c4988bdb82572c00222c0d7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-23.11",
|
"ref": "nixos-24.05",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719379843,
|
"lastModified": 1723603349,
|
||||||
"narHash": "sha256-u+D+IOAMMl70+CJ9NKB+RMrASjInuIWMHzjLWQjPZ6c=",
|
"narHash": "sha256-VMg6N7MryOuvSJ8Sj6YydarnUCkL7cvMdrMcnsJnJCE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b3f3c1b13fb08f3828442ee86630362e81136bbc",
|
"rev": "daf7bb95821b789db24fc1ac21f613db0c1bf2cb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -983,11 +1032,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719075281,
|
"lastModified": 1723637854,
|
||||||
"narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=",
|
"narHash": "sha256-med8+5DSWa2UnOqtdICndjDAEjxr5D7zaIiK4pn0Q7c=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a71e967ef3694799d0c418c98332f7ff4cc5f6af",
|
"rev": "c3aa7b8938b17aebd2deecf7be0636000d62a2b9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -999,11 +1048,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719468428,
|
"lastModified": 1723856861,
|
||||||
"narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=",
|
"narHash": "sha256-OTDg91+Zzs2SpU3csK4xVdSQFoG8cK1lNUwKmTqERyE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d",
|
"rev": "cd7b95ee3725af7113bacbce91dd6549cee58ca5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1015,27 +1064,27 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_6": {
|
"nixpkgs_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709083642,
|
"lastModified": 1723688146,
|
||||||
"narHash": "sha256-7kkJQd4rZ+vFrzWu8sTRtta5D1kBG0LSRYAfhtmMlSo=",
|
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b550fe4b4776908ac2a861124307045f8e717c8e",
|
"rev": "c3d4ac725177c030b1e289015989da2ad9d56af0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "release-23.11",
|
"ref": "nixos-24.05",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_7": {
|
"nixpkgs_7": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719468428,
|
"lastModified": 1723891200,
|
||||||
"narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=",
|
"narHash": "sha256-uljX21+D/DZgb9uEFFG2dkkQbPZN+ig4Z6+UCLWFVAk=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d",
|
"rev": "a0d6390cb3e82062a35d0288979c45756e481f60",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1095,11 +1144,11 @@
|
||||||
},
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719762299,
|
"lastModified": 1723976478,
|
||||||
"narHash": "sha256-hD+5hNGqPBipDTuZZImSCU36RqacSJadHjQtK/gbaxU=",
|
"narHash": "sha256-eF815/buOMQlX2XbtNgN3GtA9bwv4psLbckU9iTBsxs=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "80b917d886c6554264f71e1fc68e6b17cd5fdfa1",
|
"rev": "575ee4dc4dc7c031663bdcfe2e8779abacc80d0a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1111,11 +1160,11 @@
|
||||||
"nvim-lspconfig": {
|
"nvim-lspconfig": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719643735,
|
"lastModified": 1723788573,
|
||||||
"narHash": "sha256-ZFewYwOXG3RtH8plm8Y870WL+BiqvVuzTgdz5H66d/8=",
|
"narHash": "sha256-y64E6q6bB0kzJzxHnOYWjCZW5tpBTzhAVs/lvpmOpU0=",
|
||||||
"owner": "neovim",
|
"owner": "neovim",
|
||||||
"repo": "nvim-lspconfig",
|
"repo": "nvim-lspconfig",
|
||||||
"rev": "7edfd6692ba17f8d4fe08d84142781898ab0a672",
|
"rev": "a89de2e049b5f89a0ee55029d5a31213bd4de6f8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1125,38 +1174,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
|
||||||
"flake-compat": [
|
|
||||||
"nix-super"
|
|
||||||
],
|
|
||||||
"flake-utils": "flake-utils_3",
|
|
||||||
"gitignore": [
|
|
||||||
"nix-super"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"nix-super",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nixpkgs-stable": [
|
|
||||||
"nix-super",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1712897695,
|
|
||||||
"narHash": "sha256-nMirxrGteNAl9sWiOhoN5tIHyjBbVi5e2tgZUgZlK3Y=",
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "pre-commit-hooks.nix",
|
|
||||||
"rev": "40e6053ecb65fcbf12863338a6dcefb3f55f1bf8",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "cachix",
|
|
||||||
"repo": "pre-commit-hooks.nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"pre-commit-hooks_2": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_4",
|
"flake-compat": "flake-compat_4",
|
||||||
"gitignore": "gitignore_2",
|
"gitignore": "gitignore_2",
|
||||||
|
|
@ -1164,11 +1181,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719259945,
|
"lastModified": 1723803910,
|
||||||
"narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=",
|
"narHash": "sha256-yezvUuFiEnCFbGuwj/bQcqg7RykIEqudOy/RBrId0pc=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "pre-commit-hooks.nix",
|
"repo": "pre-commit-hooks.nix",
|
||||||
"rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07",
|
"rev": "bfef0ada09e2c8ac55bbcd0831bd0c9d42e651ba",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1180,11 +1197,11 @@
|
||||||
"river": {
|
"river": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719742320,
|
"lastModified": 1723715391,
|
||||||
"narHash": "sha256-KA7bOP66JIbBPBDQiOfNe2M8vgErVMmw/zdr/NHJsZc=",
|
"narHash": "sha256-Tc0FYZJsQ/YDFl7czKfsDxTEUr1a0d41MyRrdyhdcjw=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "0997fde28e1aad90a983d28061deed9fdcb972f3",
|
"rev": "f82b2f58163eb092941d7d2e05e1d0eeaa9f50fe",
|
||||||
"revCount": 1278,
|
"revCount": 1293,
|
||||||
"submodules": true,
|
"submodules": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/riverwm/river"
|
"url": "https://github.com/riverwm/river"
|
||||||
|
|
@ -1205,7 +1222,7 @@
|
||||||
"devshell": "devshell",
|
"devshell": "devshell",
|
||||||
"disko": "disko",
|
"disko": "disko",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils",
|
||||||
"gen-nvim": "gen-nvim",
|
"gen-nvim": "gen-nvim",
|
||||||
"hawtkeys-nvim": "hawtkeys-nvim",
|
"hawtkeys-nvim": "hawtkeys-nvim",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
|
|
@ -1223,7 +1240,7 @@
|
||||||
"none-ls-shellcheck-nvim": "none-ls-shellcheck-nvim",
|
"none-ls-shellcheck-nvim": "none-ls-shellcheck-nvim",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
"nvim-lspconfig": "nvim-lspconfig",
|
"nvim-lspconfig": "nvim-lspconfig",
|
||||||
"pre-commit-hooks": "pre-commit-hooks_2",
|
"pre-commit-hooks": "pre-commit-hooks",
|
||||||
"river": "river",
|
"river": "river",
|
||||||
"smartcolumn-nvim": "smartcolumn-nvim",
|
"smartcolumn-nvim": "smartcolumn-nvim",
|
||||||
"stable": "stable",
|
"stable": "stable",
|
||||||
|
|
@ -1249,11 +1266,11 @@
|
||||||
},
|
},
|
||||||
"stable": {
|
"stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719426051,
|
"lastModified": 1723688146,
|
||||||
"narHash": "sha256-yJL9VYQhaRM7xs0M867ZFxwaONB9T2Q4LnGo1WovuR4=",
|
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "89c49874fb15f4124bf71ca5f42a04f2ee5825fd",
|
"rev": "c3d4ac725177c030b1e289015989da2ad9d56af0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1294,21 +1311,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_3": {
|
"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"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems_4": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1689347949,
|
"lastModified": 1689347949,
|
||||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||||
|
|
@ -1323,7 +1325,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_5": {
|
"systems_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
|
@ -1376,7 +1378,7 @@
|
||||||
},
|
},
|
||||||
"utils": {
|
"utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_5"
|
"systems": "systems_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1692799911,
|
"lastModified": 1692799911,
|
||||||
|
|
@ -1409,11 +1411,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718619174,
|
"lastModified": 1722365976,
|
||||||
"narHash": "sha256-FWW68AVYmB91ZDQnhLMBNCUUTCjb1ZpO2k2KIytHtkA=",
|
"narHash": "sha256-Khdm+mDzYA//XaU0M+hftod+rKr5q9SSHSEuiQ0/9ow=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "c7894aa54f9a7dbd16df5cd24d420c8af22d5623",
|
"rev": "7f2a77ddf60390248e2a3de2261d7102a13e5341",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,7 @@
|
||||||
programs.hyprland.enable = true;
|
programs.hyprland.enable = true;
|
||||||
programs.hyprland.nvidiaSupport = true;
|
programs.hyprland.nvidiaSupport = true;
|
||||||
programs.hyprland.keyboardLayouts = [ "us" "de" ];
|
programs.hyprland.keyboardLayouts = [ "us" "de" ];
|
||||||
|
programs.hyprland.monitors."HDMI-A-2" = { scale = 1.2; };
|
||||||
programs.exercism.enable = true;
|
programs.exercism.enable = true;
|
||||||
services.wallpaper.enable = true;
|
services.wallpaper.enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -20,11 +20,119 @@
|
||||||
webis.enable = true;
|
webis.enable = true;
|
||||||
impermanence.enable = true;
|
impermanence.enable = true;
|
||||||
};
|
};
|
||||||
programs.hyprland.enable = true;
|
programs.river.enable = true;
|
||||||
programs.gitbutler.enable = true;
|
programs.hyprland.enable = false;
|
||||||
programs.exercism.enable = true;
|
programs.exercism.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
users.users.moritz.packages = [ pkgs.poetry ];
|
||||||
|
|
||||||
|
home-manager.users.moritz.services.kanshi.profiles = {
|
||||||
|
undocked = {
|
||||||
|
outputs = [
|
||||||
|
{
|
||||||
|
criteria = "eDP-1";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
docked = {
|
||||||
|
outputs = [
|
||||||
|
{
|
||||||
|
criteria = "eDP-1";
|
||||||
|
position = "640,1800"; # NOTE: 2160 / 1.2 = 1800
|
||||||
|
}
|
||||||
|
{
|
||||||
|
criteria = "DP-3";
|
||||||
|
scale = 1.2;
|
||||||
|
position = "0,0";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.kanata = {
|
||||||
|
enable = true;
|
||||||
|
keyboards = {
|
||||||
|
laptop = {
|
||||||
|
devices = [
|
||||||
|
"/dev/input/by-path/platform-i8042-serio-0-event-kbd"
|
||||||
|
];
|
||||||
|
config = "
|
||||||
|
(defsrc
|
||||||
|
grv 1 2 3 4 5 6 7 8 9 0 - = bspc
|
||||||
|
tab q w e r t y u i o p [ ] \
|
||||||
|
caps a s d f g h j k l ; ' ret
|
||||||
|
lsft z x c v b n m , . / rsft
|
||||||
|
lctl lmet lalt spc ralt rctl
|
||||||
|
)
|
||||||
|
|
||||||
|
(deflayermap (default)
|
||||||
|
;; tarmak 1a
|
||||||
|
j n
|
||||||
|
n k
|
||||||
|
k e
|
||||||
|
|
||||||
|
;; tarmak 1b
|
||||||
|
h m
|
||||||
|
m h
|
||||||
|
|
||||||
|
;; tarmak 2a
|
||||||
|
b z
|
||||||
|
z x
|
||||||
|
x c
|
||||||
|
|
||||||
|
;; tarmak 2b
|
||||||
|
e f
|
||||||
|
f t
|
||||||
|
t b
|
||||||
|
|
||||||
|
;; tarmak 3
|
||||||
|
c d
|
||||||
|
d s
|
||||||
|
s r
|
||||||
|
|
||||||
|
;; tarmak 4
|
||||||
|
r p
|
||||||
|
p ;
|
||||||
|
; o
|
||||||
|
o y
|
||||||
|
y j
|
||||||
|
|
||||||
|
;; tarmak 5
|
||||||
|
u l
|
||||||
|
l i
|
||||||
|
i u
|
||||||
|
|
||||||
|
;; caps-word tap-dance
|
||||||
|
lsft (tap-dance 200 (_ (caps-word 2000) _ _))
|
||||||
|
|
||||||
|
;; change ctrl alt and meta
|
||||||
|
lctl lalt
|
||||||
|
lmet lctl
|
||||||
|
lalt (tap-dance 200 (lmet (multi lmet alt) lmet lmet))
|
||||||
|
|
||||||
|
;; hjkl layer
|
||||||
|
ralt (tap-hold 200 200 (layer-switch hjkl) (layer-while-held hjkl)) ;; tap: switch hold: switch while held
|
||||||
|
|
||||||
|
;; switch to normal keyboard layout
|
||||||
|
rctl (layer-switch normal)
|
||||||
|
)
|
||||||
|
|
||||||
|
(deflayermap (normal)
|
||||||
|
rctl (layer-switch default))
|
||||||
|
|
||||||
|
(deflayermap (hjkl)
|
||||||
|
h left
|
||||||
|
j down
|
||||||
|
k up
|
||||||
|
l right
|
||||||
|
|
||||||
|
ralt (layer-switch default))
|
||||||
|
";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# BOOT
|
# BOOT
|
||||||
boot = {
|
boot = {
|
||||||
supportedFilesystems = [ "zfs" ];
|
supportedFilesystems = [ "zfs" ];
|
||||||
|
|
@ -33,8 +141,8 @@
|
||||||
|
|
||||||
# SERVICES
|
# SERVICES
|
||||||
services = {
|
services = {
|
||||||
xserver.libinput.enable = true;
|
libinput.enable = true;
|
||||||
xserver.libinput.touchpad.disableWhileTyping = true;
|
libinput.touchpad.disableWhileTyping = true;
|
||||||
printing.enable = true;
|
printing.enable = true;
|
||||||
logind.lidSwitch = "hybrid-sleep";
|
logind.lidSwitch = "hybrid-sleep";
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ in
|
||||||
(import ./_catppuccin.nix
|
(import ./_catppuccin.nix
|
||||||
{
|
{
|
||||||
inherit config lib pkgs;
|
inherit config lib pkgs;
|
||||||
flavor = "mocha";
|
flavor = "macchiato";
|
||||||
rosewater = "f4dbd6";
|
rosewater = "f4dbd6";
|
||||||
flamingo = "f0c6c6";
|
flamingo = "f0c6c6";
|
||||||
pink = "f5bde6";
|
pink = "f5bde6";
|
||||||
|
|
|
||||||
|
|
@ -255,10 +255,11 @@ in
|
||||||
|
|
||||||
fonts = {
|
fonts = {
|
||||||
enableDefaultPackages = true;
|
enableDefaultPackages = true;
|
||||||
packages = with pkgs; [
|
packages = [
|
||||||
(nerdfonts.override {
|
(pkgs.nerdfonts.override {
|
||||||
fonts = [ "FiraCode" ];
|
fonts = [ "FiraCode" ];
|
||||||
})
|
})
|
||||||
|
pkgs.master.intel-one-mono
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,10 +3,18 @@
|
||||||
, ...
|
, ...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
with lib;
|
|
||||||
let
|
let
|
||||||
|
inherit (lib) concatStringsSep flip boolToString mapAttrsToList;
|
||||||
cfg = config.my.programs.hyprland;
|
cfg = config.my.programs.hyprland;
|
||||||
|
|
||||||
|
mkMonitor = { name, resolution, position, scale, disabled, extra }:
|
||||||
|
if disabled
|
||||||
|
then "monitor=${name},disabled"
|
||||||
|
else "monitor=${name},${resolution},${position},${scale},${extra}";
|
||||||
|
|
||||||
|
monitorsList = mapAttrsToList (name: value: { name = name; } // value) cfg.monitors;
|
||||||
|
monitors = map mkMonitor monitorsList;
|
||||||
|
|
||||||
mkRule = rule: windowRegexes: "windowrulev2 = ${rule},${concatStringsSep "," windowRegexes}";
|
mkRule = rule: windowRegexes: "windowrulev2 = ${rule},${concatStringsSep "," windowRegexes}";
|
||||||
mkRules = rules: windowRegexes: concatStringsSep "\n" (map (flip mkRule windowRegexes) rules);
|
mkRules = rules: windowRegexes: concatStringsSep "\n" (map (flip mkRule windowRegexes) rules);
|
||||||
in
|
in
|
||||||
|
|
@ -17,7 +25,7 @@ in
|
||||||
#
|
#
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
${concatLines (map (x: "monitor=${x}") cfg.monitors)}
|
${concatStringsSep "\n" monitors}
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||||
|
|
||||||
|
|
@ -131,7 +139,7 @@ in
|
||||||
windowrulev2 = opaque, class:^(emacs)$
|
windowrulev2 = opaque, class:^(emacs)$
|
||||||
|
|
||||||
# Fullscreen Applications
|
# Fullscreen Applications
|
||||||
${mkRules ["opaque" "noblur" "noborder" "noshadow" "forceinput"] ["fullscreen:1"]}
|
${mkRules ["opaque" "noblur" "noborder" "noshadow" "allowsinput"] ["fullscreen:1"]}
|
||||||
|
|
||||||
${mkRules ["tile" "opaque"] ["class:^(neovide)$"]}
|
${mkRules ["tile" "opaque"] ["class:^(neovide)$"]}
|
||||||
|
|
||||||
|
|
@ -228,6 +236,10 @@ in
|
||||||
bindl=,switch:on:Lid Switch,exec,monitors="$(hyprctl monitors | grep -c '^Monitor')" && hyprctl keyword monitor "eDP-1, disable" && [ "$monitors" = 1 ] && loginctl lock-session
|
bindl=,switch:on:Lid Switch,exec,monitors="$(hyprctl monitors | grep -c '^Monitor')" && hyprctl keyword monitor "eDP-1, disable" && [ "$monitors" = 1 ] && loginctl lock-session
|
||||||
bindl=,switch:off:Lid Switch,exec, hyprctl keyword monitor "eDP-1, preferred, auto"
|
bindl=,switch:off:Lid Switch,exec, hyprctl keyword monitor "eDP-1, preferred, auto"
|
||||||
|
|
||||||
|
|
||||||
|
# Lock Screen
|
||||||
|
bind=$mainMod ALT, L, exec, loginctl lock-session
|
||||||
|
|
||||||
# Extra Config
|
# Extra Config
|
||||||
${cfg.extraConfig}
|
${cfg.extraConfig}
|
||||||
''
|
''
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,8 @@
|
||||||
, ...
|
, ...
|
||||||
} @ args:
|
} @ args:
|
||||||
|
|
||||||
with lib;
|
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkOption mkEnableOption mkIf types getExe genAttrs optionalAttrs optional;
|
||||||
cfg = config.my.programs.hyprland;
|
cfg = config.my.programs.hyprland;
|
||||||
|
|
||||||
hyprland = inputs.hyprland.packages.${pkgs.system}.default;
|
hyprland = inputs.hyprland.packages.${pkgs.system}.default;
|
||||||
|
|
@ -31,9 +31,35 @@ in
|
||||||
default = [ "de" "us" ];
|
default = [ "de" "us" ];
|
||||||
};
|
};
|
||||||
monitors = mkOption {
|
monitors = mkOption {
|
||||||
type = types.listOf types.str;
|
type = types.attrsOf (
|
||||||
description = "monitor settings";
|
let
|
||||||
default = [ ",preferred,auto,1" ];
|
sub = types.submodule {
|
||||||
|
options = {
|
||||||
|
resolution = mkOption {
|
||||||
|
type = types.strMatching "\(preferred\)|\([[:digit:]]+x[[:digit:]]+\(@[[:digit:]]+\)\?\)";
|
||||||
|
default = "preferred";
|
||||||
|
};
|
||||||
|
position = mkOption {
|
||||||
|
type = types.strMatching "\(auto\)|\(-\?[[:digit:]]+x-?[[:digit:]]+\)";
|
||||||
|
default = "auto";
|
||||||
|
};
|
||||||
|
disabled = mkEnableOption "disabled";
|
||||||
|
scale = mkOption {
|
||||||
|
type = types.oneOf [ types.float (types.strMatching "auto") ];
|
||||||
|
default = 1.0;
|
||||||
|
apply = x: if lib.isFloat x then lib.strings.floatToString x else x;
|
||||||
|
};
|
||||||
|
extra = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [ ];
|
||||||
|
apply = lib.concatStringsSep ",";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in
|
||||||
|
sub
|
||||||
|
);
|
||||||
|
description = "monitor setting";
|
||||||
};
|
};
|
||||||
extraConfig = mkOption {
|
extraConfig = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
|
@ -51,6 +77,8 @@ in
|
||||||
# foot.enable = true;
|
# foot.enable = true;
|
||||||
kitty.enable = true;
|
kitty.enable = true;
|
||||||
rofi.enable = true;
|
rofi.enable = true;
|
||||||
|
hyprland.monitors."" = lib.mkDefault { };
|
||||||
|
hyprland.monitors."Unknown-1" = { disabled = true; };
|
||||||
};
|
};
|
||||||
wallpapers.enable = true;
|
wallpapers.enable = true;
|
||||||
services = {
|
services = {
|
||||||
|
|
@ -85,6 +113,14 @@ in
|
||||||
# add waybar as a status bar
|
# add waybar as a status bar
|
||||||
programs.waybar = {
|
programs.waybar = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = pkgs.waybar.overrideAttrs (old: {
|
||||||
|
patches = old.patches or [ ] ++ [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://gitlab.archlinux.org/archlinux/packaging/packages/waybar/-/raw/0306af03fcb6de6aee1e288f42b0bf1b223513bd/a544f4b2cdcf632f1a4424b89f6e3d85ef5aaa85.patch";
|
||||||
|
sha256 = "sha256-S/1oUj9Aj6BElNTsDY8CTcKtS1j7Gl54JFgCywH05pg=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
});
|
||||||
|
|
||||||
# start using systemd service
|
# start using systemd service
|
||||||
systemd = {
|
systemd = {
|
||||||
|
|
@ -97,7 +133,7 @@ in
|
||||||
start_hidden = true;
|
start_hidden = true;
|
||||||
layer = "top";
|
layer = "top";
|
||||||
position = "top";
|
position = "top";
|
||||||
height = 20;
|
height = 24;
|
||||||
modules-left = [ "hyprland/workspaces" ];
|
modules-left = [ "hyprland/workspaces" ];
|
||||||
modules-center = [ "hyprland/window" ];
|
modules-center = [ "hyprland/window" ];
|
||||||
modules-right = [ "hyprland/language" "network" "memory" "cpu" "battery" "clock" ];
|
modules-right = [ "hyprland/language" "network" "memory" "cpu" "battery" "clock" ];
|
||||||
|
|
@ -196,17 +232,16 @@ in
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
xserver = {
|
displayManager = {
|
||||||
enable = true;
|
enable = true;
|
||||||
displayManager = {
|
autoLogin = {
|
||||||
lightdm.enable = true;
|
enable = true;
|
||||||
autoLogin = {
|
user = "moritz";
|
||||||
enable = true;
|
|
||||||
user = "moritz";
|
|
||||||
};
|
|
||||||
defaultSession = "hyprland";
|
|
||||||
};
|
};
|
||||||
|
defaultSession = "hyprland";
|
||||||
};
|
};
|
||||||
|
xserver.enable = true;
|
||||||
|
xserver.displayManager.lightdm.enable = true;
|
||||||
};
|
};
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,13 +22,15 @@ in
|
||||||
window_padding_width = 3;
|
window_padding_width = 3;
|
||||||
confirm_os_window_close = 0;
|
confirm_os_window_close = 0;
|
||||||
background_opacity = "0.9";
|
background_opacity = "0.9";
|
||||||
|
font_features = "IntelOneMono-Regular +ss01";
|
||||||
|
resize_in_steps = "yes";
|
||||||
};
|
};
|
||||||
keybindings = {
|
keybindings = {
|
||||||
"ctrl+plus" = "change_font_size all +2.0";
|
"ctrl+plus" = "change_font_size all +2.0";
|
||||||
"ctrl+minus" = "change_font_size all -2.0";
|
"ctrl+minus" = "change_font_size all -2.0";
|
||||||
};
|
};
|
||||||
font = {
|
font = {
|
||||||
name = "FiraCode Nerd Font";
|
name = "Intel One Mono";
|
||||||
size = 10;
|
size = 10;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -6,26 +6,16 @@
|
||||||
, ...
|
, ...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
with lib;
|
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkOption types;
|
||||||
|
|
||||||
cfg = config.my.programs.nix;
|
cfg = config.my.programs.nix;
|
||||||
|
|
||||||
mkSuper = system: nix:
|
|
||||||
if cfg.useSuper
|
|
||||||
then inputs.nix-super.packages.${system}.default
|
|
||||||
else nix;
|
|
||||||
|
|
||||||
mkNom = system: nix:
|
mkNom = system: nix:
|
||||||
if cfg.useNom
|
inputs.nix-monitored.packages.${system}.default.override
|
||||||
then
|
{
|
||||||
inputs.nix-monitored.packages.${system}.default.override
|
withNotify = false;
|
||||||
{
|
nix = nix;
|
||||||
withNotify = false;
|
};
|
||||||
nix = nix;
|
|
||||||
}
|
|
||||||
else nix;
|
|
||||||
|
|
||||||
mkNix = system: nix: mkNom system (mkSuper system nix);
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.my.programs.nix = {
|
options.my.programs.nix = {
|
||||||
|
|
@ -38,8 +28,6 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
optimise.enable = mkEnableOption "nix-optimise";
|
optimise.enable = mkEnableOption "nix-optimise";
|
||||||
useSuper = mkEnableOption "use nix super";
|
|
||||||
useNom = mkEnableOption "use nix output monitor";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
|
|
@ -59,7 +47,7 @@ in
|
||||||
nix = {
|
nix = {
|
||||||
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
||||||
|
|
||||||
package = mkNix pkgs.system pkgs.nix;
|
package = pkgs.nix;
|
||||||
|
|
||||||
extraOptions = "experimental-features = nix-command flakes";
|
extraOptions = "experimental-features = nix-command flakes";
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,6 @@ in
|
||||||
nixpkgs-fmt
|
nixpkgs-fmt
|
||||||
nodePackages.bash-language-server
|
nodePackages.bash-language-server
|
||||||
python3Packages.python-lsp-server
|
python3Packages.python-lsp-server
|
||||||
python3Packages.ruff-lsp
|
|
||||||
shellcheck
|
shellcheck
|
||||||
shfmt
|
shfmt
|
||||||
stable.yamlfix
|
stable.yamlfix
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,6 @@ in
|
||||||
{ plugin = pkgs.vimPlugins.cmp-cmdline; }
|
{ plugin = pkgs.vimPlugins.cmp-cmdline; }
|
||||||
{ plugin = pkgs.vimPlugins.cmp-nvim-lsp-signature-help; }
|
{ plugin = pkgs.vimPlugins.cmp-nvim-lsp-signature-help; }
|
||||||
{ plugin = pkgs.vimPlugins.cmp-nvim-lsp; }
|
{ plugin = pkgs.vimPlugins.cmp-nvim-lsp; }
|
||||||
{ plugin = pkgs.vimPlugins.cmp-spell; }
|
|
||||||
{
|
{
|
||||||
plugin = pkgs.vimUtils.buildVimPlugin {
|
plugin = pkgs.vimUtils.buildVimPlugin {
|
||||||
pname = "cmp-vimtex";
|
pname = "cmp-vimtex";
|
||||||
|
|
@ -47,23 +46,23 @@ in
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
{ plugin = pkgs.vimPlugins.cmp_luasnip; }
|
{ plugin = pkgs.vimPlugins.cmp_luasnip; }
|
||||||
{
|
# {
|
||||||
plugin = pkgs.vimPlugins.copilot-cmp;
|
# plugin = pkgs.vimPlugins.copilot-cmp;
|
||||||
opts = { };
|
# opts = { };
|
||||||
dependencies = [
|
# dependencies = [
|
||||||
{
|
# {
|
||||||
plugin = pkgs.vimPlugins.copilot-lua;
|
# plugin = pkgs.vimPlugins.copilot-lua;
|
||||||
opts = {
|
# opts = {
|
||||||
suggestion = { enabled = false; };
|
# suggestion = { enabled = false; };
|
||||||
panel = { enabled = false; };
|
# panel = { enabled = false; };
|
||||||
};
|
# };
|
||||||
conf = /* lua */ ''
|
# conf = /* lua */ ''
|
||||||
require("copilot").setup(opts)
|
# require("copilot").setup(opts)
|
||||||
vim.cmd("Copilot disable")
|
# vim.cmd("Copilot disable")
|
||||||
'';
|
# '';
|
||||||
}
|
# }
|
||||||
];
|
# ];
|
||||||
}
|
# }
|
||||||
{ plugin = pkgs.vimPlugins.friendly-snippets; }
|
{ plugin = pkgs.vimPlugins.friendly-snippets; }
|
||||||
{ plugin = pkgs.vimPlugins.lspkind-nvim; }
|
{ plugin = pkgs.vimPlugins.lspkind-nvim; }
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ local conform = require("conform")
|
||||||
|
|
||||||
local formatters_by_ft = {
|
local formatters_by_ft = {
|
||||||
["*"] = { "codespell", "trim_whitespace" },
|
["*"] = { "codespell", "trim_whitespace" },
|
||||||
|
elixir = { "mix" },
|
||||||
gleam = { "gleam" },
|
gleam = { "gleam" },
|
||||||
go = { "gofmt" },
|
go = { "gofmt" },
|
||||||
json = { "jq" },
|
json = { "jq" },
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,13 @@
|
||||||
require("gitsigns").setup()
|
require("gitsigns").setup()
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
["[h"] = { "<cmd>Gitsigns prev_hunk<cr>", "Previous hunk" },
|
{ "<leader>gP", "<cmd>Gitsigns preview_hunk<cr>", desc = "Preview hunk (float)" },
|
||||||
["]h"] = { "<cmd>Gitsigns next_hunk<cr>", "Next hunk" },
|
{ "<leader>gR", "<cmd>Gitsigns reset_buffer<cr>", desc = "Reset buffer" },
|
||||||
["<leader>g"] = {
|
{ "<leader>gS", "<cmd>Gitsigns stage_buffer<cr>", desc = "Stage buffer" },
|
||||||
s = { "<cmd>Gitsigns stage_hunk<cr>", "Stage hunk", mode = { "n", "v" } },
|
{ "<leader>gp", "<cmd>Gitsigns preview_hunk_inline<cr>", desc = "Preview hunk (inline)" },
|
||||||
r = { "<cmd>Gitsigns reset_hunk<cr>", "Reset hunk", mode = { "n", "v" } },
|
{ "<leader>gu", "<cmd>Gitsigns undo_stage_hunk<cr>", desc = "Undo stage hunk" },
|
||||||
S = { "<cmd>Gitsigns stage_buffer<cr>", "Stage buffer" },
|
{ "[h", "<cmd>Gitsigns prev_hunk<cr>", desc = "Previous hunk" },
|
||||||
R = { "<cmd>Gitsigns reset_buffer<cr>", "Reset buffer" },
|
{ "]h", "<cmd>Gitsigns next_hunk<cr>", desc = "Next hunk" },
|
||||||
u = { "<cmd>Gitsigns undo_stage_hunk<cr>", "Undo stage hunk" },
|
{ "<leader>gr", "<cmd>Gitsigns reset_hunk<cr>", desc = "Reset hunk", mode = { "n", "v" } },
|
||||||
p = { "<cmd>Gitsigns preview_hunk_inline<cr>", "Preview hunk (inline)" },
|
{ "<leader>gs", "<cmd>Gitsigns stage_hunk<cr>", desc = "Stage hunk", mode = { "n", "v" } },
|
||||||
P = { "<cmd>Gitsigns preview_hunk<cr>", "Preview hunk (float)" },
|
{ "ih", ":<C-U>Gitsigns select_hunk<cr>", desc = "gitsigns hunk", mode = { "o", "x" } },
|
||||||
},
|
|
||||||
["ih"] = { ":<C-U>Gitsigns select_hunk<cr>", "gitsigns hunk", mode = { "o", "x" } },
|
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ ls.setup({
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
ft_func = require("luasnip.extras.filetype_functions").from_pos_or_filetype,
|
||||||
})
|
})
|
||||||
|
|
||||||
require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/snippets" })
|
require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/snippets" })
|
||||||
|
|
|
||||||
|
|
@ -9,13 +9,10 @@ cmp.setup({
|
||||||
maxwidth = 50, -- prevent the popup from showing more than provided characters
|
maxwidth = 50, -- prevent the popup from showing more than provided characters
|
||||||
ellipsis_char = "...", -- when popup menu exceed maxwidth, the truncated part would show ellipsis_char instead
|
ellipsis_char = "...", -- when popup menu exceed maxwidth, the truncated part would show ellipsis_char instead
|
||||||
symbol_map = {
|
symbol_map = {
|
||||||
Copilot = "",
|
-- Copilot = "",
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
enabled = function()
|
|
||||||
return not luasnip.jumpable(1)
|
|
||||||
end,
|
|
||||||
snippet = {
|
snippet = {
|
||||||
-- REQUIRED - you must specify a snippet engine
|
-- REQUIRED - you must specify a snippet engine
|
||||||
expand = function(args)
|
expand = function(args)
|
||||||
|
|
@ -49,6 +46,8 @@ cmp.setup({
|
||||||
["<C-n>"] = cmp.mapping(function(fallback)
|
["<C-n>"] = cmp.mapping(function(fallback)
|
||||||
if luasnip.choice_active() then
|
if luasnip.choice_active() then
|
||||||
luasnip.change_choice(1)
|
luasnip.change_choice(1)
|
||||||
|
elseif luasnip.locally_jumpable(1) then
|
||||||
|
luasnip.jump(1)
|
||||||
else
|
else
|
||||||
fallback()
|
fallback()
|
||||||
end
|
end
|
||||||
|
|
@ -56,6 +55,8 @@ cmp.setup({
|
||||||
["<C-p>"] = cmp.mapping(function(fallback)
|
["<C-p>"] = cmp.mapping(function(fallback)
|
||||||
if luasnip.choice_active() then
|
if luasnip.choice_active() then
|
||||||
luasnip.change_choice(-1)
|
luasnip.change_choice(-1)
|
||||||
|
elseif luasnip.locally_jumpable(-1) then
|
||||||
|
luasnip.jump(-1)
|
||||||
else
|
else
|
||||||
fallback()
|
fallback()
|
||||||
end
|
end
|
||||||
|
|
@ -66,7 +67,7 @@ cmp.setup({
|
||||||
{ priority = 1, name = "buffer" },
|
{ priority = 1, name = "buffer" },
|
||||||
{ priority = 1, name = "spell" },
|
{ priority = 1, name = "spell" },
|
||||||
{ priority = 2, name = "nvim_lsp" },
|
{ priority = 2, name = "nvim_lsp" },
|
||||||
{ priority = 3, name = "copilot" },
|
-- { priority = 3, name = "copilot" },
|
||||||
{ priority = 3, name = "nvim_lsp_signature_help" },
|
{ priority = 3, name = "nvim_lsp_signature_help" },
|
||||||
{ priority = 4, name = "luasnip" },
|
{ priority = 4, name = "luasnip" },
|
||||||
{ priority = 4, name = "vimtex" },
|
{ priority = 4, name = "vimtex" },
|
||||||
|
|
|
||||||
|
|
@ -21,76 +21,80 @@ capabilities.didChangeWatchedFiles = {
|
||||||
|
|
||||||
local lspconfig = require("lspconfig")
|
local lspconfig = require("lspconfig")
|
||||||
local on_attach_def = function(client, bufnr)
|
local on_attach_def = function(client, bufnr)
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
K = {
|
{ "<leader>c", buffer = bufnr, group = "code" },
|
||||||
vim.lsp.buf.hover,
|
{
|
||||||
"Hover",
|
"<leader>cr",
|
||||||
|
function()
|
||||||
|
return ":IncRename " .. vim.fn.expand("<cword>")
|
||||||
|
end,
|
||||||
|
buffer = bufnr,
|
||||||
|
desc = "Rename",
|
||||||
|
expr = true,
|
||||||
|
replace_keycodes = false,
|
||||||
},
|
},
|
||||||
["<leader>"] = {
|
{
|
||||||
c = {
|
"<leader>ti",
|
||||||
name = "code",
|
function()
|
||||||
c = { require("actions-preview").code_actions, "Code action", mode = { "v", "n" } },
|
vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())
|
||||||
r = {
|
end,
|
||||||
function()
|
buffer = bufnr,
|
||||||
return ":IncRename " .. vim.fn.expand("<cword>")
|
desc = "LSP inlay hints",
|
||||||
end,
|
|
||||||
"Rename",
|
|
||||||
expr = true,
|
|
||||||
},
|
|
||||||
f = {
|
|
||||||
function()
|
|
||||||
vim.lsp.buf.format({ async = true })
|
|
||||||
end,
|
|
||||||
"Format (lsp)",
|
|
||||||
mode = { "n", "v" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
t = {
|
|
||||||
l = {
|
|
||||||
function()
|
|
||||||
lsp_lines.toggle()
|
|
||||||
if vim.diagnostic.is_enabled() then
|
|
||||||
vim.diagnostic.disable()
|
|
||||||
else
|
|
||||||
vim.diagnostic.enable()
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
"LSP lines",
|
|
||||||
},
|
|
||||||
i = {
|
|
||||||
function()
|
|
||||||
vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())
|
|
||||||
end,
|
|
||||||
"LSP inlay hints",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
g = {
|
{
|
||||||
d = {
|
"<leader>tl",
|
||||||
function()
|
function()
|
||||||
require("telescope.builtin").lsp_definitions({ reuse_win = true })
|
lsp_lines.toggle()
|
||||||
end,
|
if vim.diagnostic.is_disabled() then
|
||||||
"Goto definition",
|
vim.diagnostic.enable()
|
||||||
},
|
else
|
||||||
t = {
|
vim.diagnostic.disable()
|
||||||
function()
|
end
|
||||||
require("telescope.builtin").lsp_type_definitions({ reuse_win = true })
|
end,
|
||||||
end,
|
buffer = bufnr,
|
||||||
"Goto type definition",
|
desc = "LSP lines",
|
||||||
},
|
|
||||||
r = { "<cmd>Telescope lsp_references<cr>", "Goto references" },
|
|
||||||
D = { vim.lsp.buf.declaration, "Goto declaration" },
|
|
||||||
I = { "<cmd>Telescope lsp_implementations<cr>", "Goto implementation" },
|
|
||||||
K = { vim.lsp.buf.signature_help, "Signature help" },
|
|
||||||
},
|
},
|
||||||
["["] = {
|
{ "K", vim.lsp.buf.hover, buffer = bufnr, desc = "Hover" },
|
||||||
d = { vim.diagnostic.goto_prev, "Previous diagnostic" },
|
{ "[d", vim.diagnostic.goto_prev, buffer = bufnr, desc = "Previous diagnostic" },
|
||||||
|
{ "]d", vim.diagnostic.goto_next, buffer = bufnr, desc = "Next diagnostic" },
|
||||||
|
{ "gD", vim.lsp.buf.declaration, buffer = bufnr, desc = "Goto declaration" },
|
||||||
|
{ "gI", "<cmd>Telescope lsp_implementations<cr>", buffer = bufnr, desc = "Goto implementation" },
|
||||||
|
{ "gK", vim.lsp.buf.signature_help, buffer = bufnr, desc = "Signature help" },
|
||||||
|
{
|
||||||
|
"gd",
|
||||||
|
function()
|
||||||
|
require("telescope.builtin").lsp_definitions({ reuse_win = true })
|
||||||
|
end,
|
||||||
|
buffer = bufnr,
|
||||||
|
desc = "Goto definition",
|
||||||
},
|
},
|
||||||
["]"] = {
|
{ "gr", "<cmd>Telescope lsp_references<cr>", buffer = bufnr, desc = "Goto references" },
|
||||||
d = { vim.diagnostic.goto_next, "Next diagnostic" },
|
{
|
||||||
},
|
"gt",
|
||||||
}, { buffer = bufnr, silent = true })
|
|
||||||
|
|
||||||
|
function()
|
||||||
|
require("telescope.builtin").lsp_type_definitions({ reuse_win = true })
|
||||||
|
end,
|
||||||
|
buffer = bufnr,
|
||||||
|
desc = "Goto type definition",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cc",
|
||||||
|
require("actions-preview").code_actions,
|
||||||
|
buffer = bufnr,
|
||||||
|
desc = "Code action",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cf",
|
||||||
|
function()
|
||||||
|
vim.lsp.buf.format({ async = true })
|
||||||
|
end,
|
||||||
|
buffer = bufnr,
|
||||||
|
desc = "Format (lsp)",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
},
|
||||||
|
})
|
||||||
if client.server_capabilities.inlayHintProvider then
|
if client.server_capabilities.inlayHintProvider then
|
||||||
local slow_lsp_servers = {
|
local slow_lsp_servers = {
|
||||||
"rust_analyzer",
|
"rust_analyzer",
|
||||||
|
|
@ -124,7 +128,7 @@ local servers = {
|
||||||
"gleam",
|
"gleam",
|
||||||
"gopls",
|
"gopls",
|
||||||
"pylsp",
|
"pylsp",
|
||||||
"ruff_lsp",
|
"ruff",
|
||||||
"templ",
|
"templ",
|
||||||
"typst_lsp",
|
"typst_lsp",
|
||||||
}
|
}
|
||||||
|
|
@ -132,6 +136,10 @@ for _, lsp in ipairs(servers) do
|
||||||
lspconfig_setup(lsp, {})
|
lspconfig_setup(lsp, {})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
lspconfig_setup("elixirls", {
|
||||||
|
cmd = { "elixir-ls" },
|
||||||
|
})
|
||||||
|
|
||||||
lspconfig_setup("nil_ls", {
|
lspconfig_setup("nil_ls", {
|
||||||
settings = {
|
settings = {
|
||||||
flake = {
|
flake = {
|
||||||
|
|
|
||||||
|
|
@ -2,60 +2,50 @@ vim.o.timeout = true
|
||||||
vim.o.timeoutlen = 500
|
vim.o.timeoutlen = 500
|
||||||
|
|
||||||
-- Delete
|
-- Delete
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
d = {
|
{ "<leader>d", group = "delete" },
|
||||||
name = "delete",
|
{ "<leader>db", "<cmd>bd<cr>", desc = "Delete buffer" },
|
||||||
b = { "<cmd>bd<cr>", "Delete buffer" },
|
{ "<leader>dw", "<C-w>c", desc = "Delete window" },
|
||||||
w = { "<C-w>c", "Delete window" },
|
})
|
||||||
},
|
|
||||||
}, { prefix = "<leader>" })
|
|
||||||
|
|
||||||
-- buffer
|
-- buffer
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
["["] = {
|
{ "[b", "<cmd>bprevious<cr>", desc = "Previous buffer" },
|
||||||
b = { "<cmd>bprevious<cr>", "Previous buffer" },
|
{ "]b", "<cmd>bnext<cr>", desc = "Next buffer" },
|
||||||
},
|
|
||||||
["]"] = {
|
|
||||||
b = { "<cmd>bnext<cr>", "Next buffer" },
|
|
||||||
},
|
|
||||||
})
|
})
|
||||||
|
|
||||||
-- window
|
-- window
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
w = {
|
{ "<leader>w", group = "window" },
|
||||||
name = "window",
|
{ "<leader>w-", "<C-w>s", desc = "Split window vertically" },
|
||||||
["|"] = { "<C-w>v", "Split window horizontally" },
|
{ "<leader>ww", "<C-w>w", desc = "Switch window" },
|
||||||
["-"] = { "<C-w>s", "Split window vertically" },
|
{ "<leader>w|", "<C-w>v", desc = "Split window horizontally" },
|
||||||
w = { "<C-w>w", "Switch window" },
|
})
|
||||||
},
|
|
||||||
}, { prefix = "<leader>" })
|
|
||||||
|
|
||||||
-- better descriptions for navigation
|
-- better descriptions for navigation
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
["<leader>"] = {
|
{ "<leader>c", group = "code" },
|
||||||
f = { name = "file/find" },
|
{ "<leader>f", group = "file/find" },
|
||||||
g = { name = "git" },
|
{ "<leader>g", group = "git" },
|
||||||
c = { name = "code" },
|
{ "<leader>s", group = "search" },
|
||||||
s = { name = "search" },
|
{ "<leader>t", group = "toggle" },
|
||||||
t = { name = "toggle" },
|
{ "[", group = "prev" },
|
||||||
},
|
{ "]", group = "next" },
|
||||||
["["] = { name = "prev" },
|
{ "g", group = "goto" },
|
||||||
["]"] = { name = "next" },
|
|
||||||
g = { name = "goto" },
|
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Clear search with <esc>
|
-- Clear search with <esc>
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
["<esc>"] = { "<cmd>noh<cr><esc>", "Escape and clear hlsearch", mode = { "n", "i" } },
|
{ "<esc>", "<cmd>noh<cr><esc>", desc = "Escape and clear hlsearch", mode = { "i", "n" } },
|
||||||
})
|
})
|
||||||
|
|
||||||
-- better indenting
|
-- better indenting
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
["<"] = { "<gv", "Shift left" },
|
{ "<", "<gv", desc = "Shift left", mode = "v" },
|
||||||
[">"] = { ">gv", "Shift right" },
|
{ ">", ">gv", desc = "Shift right", mode = "v" },
|
||||||
}, { mode = "v" })
|
})
|
||||||
|
|
||||||
-- better yank in visual mode
|
-- better yank in visual mode
|
||||||
require("which-key").register({
|
require("which-key").add({
|
||||||
y = { "ygv<esc>", "Yank" },
|
{ "y", "ygv<esc>", desc = "Yank", mode = "v" },
|
||||||
}, { mode = "v" })
|
})
|
||||||
|
|
|
||||||
46
modules/programs/nvim/plugins/snippets/elixir.lua
Normal file
46
modules/programs/nvim/plugins/snippets/elixir.lua
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local sn = ls.snippet_node
|
||||||
|
local isn = ls.indent_snippet_node
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
local f = ls.function_node
|
||||||
|
local c = ls.choice_node
|
||||||
|
local d = ls.dynamic_node
|
||||||
|
local r = ls.restore_node
|
||||||
|
local events = require("luasnip.util.events")
|
||||||
|
local ai = require("luasnip.nodes.absolute_indexer")
|
||||||
|
local extras = require("luasnip.extras")
|
||||||
|
local l = extras.lambda
|
||||||
|
local rep = extras.rep
|
||||||
|
local p = extras.partial
|
||||||
|
local m = extras.match
|
||||||
|
local n = extras.nonempty
|
||||||
|
local dl = extras.dynamic_lambda
|
||||||
|
local fmt = require("luasnip.extras.fmt").fmt
|
||||||
|
local fmta = require("luasnip.extras.fmt").fmta
|
||||||
|
local conds = require("luasnip.extras.expand_conditions")
|
||||||
|
local postfix = require("luasnip.extras.postfix").postfix
|
||||||
|
local types = require("luasnip.util.types")
|
||||||
|
local parse = require("luasnip.util.parser").parse_snippet
|
||||||
|
local ms = ls.multi_snippet
|
||||||
|
local k = require("luasnip.nodes.key_indexer").new_key
|
||||||
|
|
||||||
|
local def_template = [[
|
||||||
|
def {fname}({args}) do
|
||||||
|
{final}
|
||||||
|
end
|
||||||
|
]]
|
||||||
|
|
||||||
|
local def = s(
|
||||||
|
"def",
|
||||||
|
fmt(def_template, {
|
||||||
|
fname = i(1, "fname"),
|
||||||
|
args = i(2),
|
||||||
|
final = i(3),
|
||||||
|
}, { priority = 1001 })
|
||||||
|
)
|
||||||
|
|
||||||
|
return {
|
||||||
|
def,
|
||||||
|
}
|
||||||
138
modules/programs/nvim/plugins/snippets/heex.lua
Normal file
138
modules/programs/nvim/plugins/snippets/heex.lua
Normal file
|
|
@ -0,0 +1,138 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local sn = ls.snippet_node
|
||||||
|
local isn = ls.indent_snippet_node
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
local f = ls.function_node
|
||||||
|
local c = ls.choice_node
|
||||||
|
local d = ls.dynamic_node
|
||||||
|
local r = ls.restore_node
|
||||||
|
local events = require("luasnip.util.events")
|
||||||
|
local ai = require("luasnip.nodes.absolute_indexer")
|
||||||
|
local extras = require("luasnip.extras")
|
||||||
|
local l = extras.lambda
|
||||||
|
local rep = extras.rep
|
||||||
|
local p = extras.partial
|
||||||
|
local m = extras.match
|
||||||
|
local n = extras.nonempty
|
||||||
|
local dl = extras.dynamic_lambda
|
||||||
|
local fmt = require("luasnip.extras.fmt").fmt
|
||||||
|
local fmta = require("luasnip.extras.fmt").fmta
|
||||||
|
local conds = require("luasnip.extras.expand_conditions")
|
||||||
|
local postfix = require("luasnip.extras.postfix").postfix
|
||||||
|
local types = require("luasnip.util.types")
|
||||||
|
local parse = require("luasnip.util.parser").parse_snippet
|
||||||
|
local ms = ls.multi_snippet
|
||||||
|
local k = require("luasnip.nodes.key_indexer").new_key
|
||||||
|
|
||||||
|
local pe = s(
|
||||||
|
"pe",
|
||||||
|
fmt("<%= {final} %>", {
|
||||||
|
final = i(1),
|
||||||
|
}, { priority = 1001 })
|
||||||
|
)
|
||||||
|
|
||||||
|
local ln = s(
|
||||||
|
"ln",
|
||||||
|
fmt(
|
||||||
|
[[
|
||||||
|
<.link navigate={{~p"{path}"}}">{final}</.link>
|
||||||
|
]],
|
||||||
|
{ path = i(1, "/"), final = i(2) },
|
||||||
|
{ priority = 1001 }
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
local lp = s(
|
||||||
|
"lp",
|
||||||
|
fmt(
|
||||||
|
[[
|
||||||
|
<.link patch={{~p"{path}"}}">{final}</.link>
|
||||||
|
]],
|
||||||
|
{ path = i(1, "/"), final = i(2) },
|
||||||
|
{ priority = 1001 }
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
local if_ = s(
|
||||||
|
"if",
|
||||||
|
fmt("<%= if {condition} do %>{final}<% end %>", { condition = i(1, "condition"), final = i(2) }, { priority = 1001 })
|
||||||
|
)
|
||||||
|
|
||||||
|
local ife = s(
|
||||||
|
"ife",
|
||||||
|
fmt(
|
||||||
|
[[
|
||||||
|
<%= if {condition} do %>
|
||||||
|
{when}
|
||||||
|
<% else %>
|
||||||
|
{final}
|
||||||
|
<% end %>"
|
||||||
|
]],
|
||||||
|
{ condition = i(1, "condition"), when = i(2), final = i(3) },
|
||||||
|
{ priority = 1001 }
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
local for_ = s(
|
||||||
|
"for",
|
||||||
|
fmt(
|
||||||
|
[[
|
||||||
|
<%= for {item} <- {list} do %>
|
||||||
|
{final}
|
||||||
|
<% end %>
|
||||||
|
]],
|
||||||
|
{ item = i(1, "item"), list = i(2, "items"), final = i(3) },
|
||||||
|
{ priority = 1001 }
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
local lc =
|
||||||
|
s("lc", fmt("<.live_component module={{{module}}} id={{{id}}} />", { module = i(1), id = i(2) }, { priority = 1001 }))
|
||||||
|
|
||||||
|
local slot = s(
|
||||||
|
"slot",
|
||||||
|
fmt("<:slot>{final}</:slot>", {
|
||||||
|
final = i(1),
|
||||||
|
}, { priority = 1001 })
|
||||||
|
)
|
||||||
|
|
||||||
|
local socketp = s(
|
||||||
|
"socketp",
|
||||||
|
fmt(
|
||||||
|
[[
|
||||||
|
socket =
|
||||||
|
socket
|
||||||
|
|> {final}
|
||||||
|
]],
|
||||||
|
{ final = i(1) },
|
||||||
|
{ priority = 1001 }
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
local fl = s(
|
||||||
|
"fl",
|
||||||
|
fmt(
|
||||||
|
[[
|
||||||
|
<{elem} :for={{{item} <- {list}}} class="{class}">
|
||||||
|
{final}
|
||||||
|
</{elem}>
|
||||||
|
]],
|
||||||
|
{ elem = i(1, "div"), item = i(2, "item"), list = i(3, "items"), class = i(4), final = i(5) },
|
||||||
|
{ priority = 1001, repeat_duplicates = true }
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
return {
|
||||||
|
pe,
|
||||||
|
ln,
|
||||||
|
lp,
|
||||||
|
if_,
|
||||||
|
ife,
|
||||||
|
for_,
|
||||||
|
lc,
|
||||||
|
slot,
|
||||||
|
socketp,
|
||||||
|
fl,
|
||||||
|
}
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, inputs, lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
config.home-manager.users.moritz.programs.neovim.lazy.plugins = [
|
config.home-manager.users.moritz.programs.neovim.lazy.plugins = [
|
||||||
(
|
(
|
||||||
let
|
let
|
||||||
|
nvim-treesitter = pkgs.vimPlugins.nvim-treesitter;
|
||||||
parserDir = pkgs.symlinkJoin {
|
parserDir = pkgs.symlinkJoin {
|
||||||
name = "tresitter-grammars-all";
|
name = "tresitter-grammars-all";
|
||||||
paths = pkgs.vimPlugins.nvim-treesitter.withAllGrammars.dependencies;
|
paths = nvim-treesitter.withAllGrammars.dependencies;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
plugin = pkgs.vimPlugins.nvim-treesitter;
|
plugin = nvim-treesitter;
|
||||||
event = [ "BufReadPost" "BufNewFile" ];
|
event = [ "BufReadPost" "BufNewFile" ];
|
||||||
opts = {
|
opts = {
|
||||||
sync_install = false;
|
sync_install = false;
|
||||||
|
|
@ -51,12 +52,10 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
conf =
|
conf =
|
||||||
''
|
/* lua */ ''
|
||||||
local final_opts = vim.tbl_deep_extend("keep", opts, { parser_install_dir = "${parserDir}" })
|
vim.opt.runtimepath:append("${parserDir}")
|
||||||
require('nvim-treesitter.configs').setup(final_opts)
|
local final_opts = vim.tbl_deep_extend("keep", opts, { parser_install_dir = "${parserDir}" })
|
||||||
'';
|
require('nvim-treesitter.configs').setup(final_opts)
|
||||||
init = ''
|
|
||||||
vim.opt.runtimepath:prepend("${parserDir}")
|
|
||||||
'';
|
'';
|
||||||
priority = 100;
|
priority = 100;
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
|
|
||||||
|
|
@ -1,33 +1,35 @@
|
||||||
{ pkgs, lib, inputs, ... }:
|
{ pkgs, lib, inputs, ... }:
|
||||||
|
|
||||||
with builtins;
|
let
|
||||||
|
inherit (lib) readFile;
|
||||||
|
in
|
||||||
{
|
{
|
||||||
config.home-manager.users.moritz.programs.neovim.lazy.plugins = with pkgs.vimPlugins; [
|
config.home-manager.users.moritz.programs.neovim.lazy.plugins = [
|
||||||
{
|
{
|
||||||
plugin = which-key-nvim;
|
plugin = pkgs.vimPlugins.which-key-nvim;
|
||||||
lazy = false;
|
lazy = false;
|
||||||
conf = readFile ./lua/which-key-nvim.lua;
|
conf = readFile ./lua/which-key-nvim.lua;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = catppuccin-nvim;
|
plugin = pkgs.vimPlugins.catppuccin-nvim;
|
||||||
conf = readFile ./lua/catppuccin-nvim.lua;
|
conf = readFile ./lua/catppuccin-nvim.lua;
|
||||||
lazy = false;
|
lazy = false;
|
||||||
priority = 99;
|
priority = 99;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = todo-comments-nvim;
|
plugin = pkgs.vimPlugins.todo-comments-nvim;
|
||||||
dependencies = [{ plugin = plenary-nvim; }];
|
dependencies = [{ plugin = pkgs.vimPlugins.plenary-nvim; }];
|
||||||
opts = { };
|
opts = { };
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = dressing-nvim;
|
plugin = pkgs.vimPlugins.dressing-nvim;
|
||||||
event = [ "VeryLazy" ];
|
event = [ "VeryLazy" ];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = gitsigns-nvim;
|
plugin = pkgs.vimPlugins.gitsigns-nvim;
|
||||||
event = [ "BufReadPost" "BufNewFile" ];
|
event = [ "BufReadPost" "BufNewFile" ];
|
||||||
conf = readFile ./lua/gitsigns-nvim.lua;
|
conf = readFile ./lua/gitsigns-nvim.lua;
|
||||||
dependencies = [{ plugin = which-key-nvim; }];
|
dependencies = [{ plugin = pkgs.vimPlugins.which-key-nvim; }];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
plugin = pkgs.vimUtils.buildVimPlugin {
|
plugin = pkgs.vimUtils.buildVimPlugin {
|
||||||
|
|
@ -38,8 +40,44 @@ with builtins;
|
||||||
cmd = [ "Hawtkeys" "HawtkeysAll" "HawtkeysDupes" ];
|
cmd = [ "Hawtkeys" "HawtkeysAll" "HawtkeysDupes" ];
|
||||||
opts = { };
|
opts = { };
|
||||||
dependencies = [
|
dependencies = [
|
||||||
{ plugin = plenary-nvim; }
|
{ plugin = pkgs.vimPlugins.plenary-nvim; }
|
||||||
{ plugin = nvim-treesitter; }
|
{ plugin = pkgs.vimPlugins.nvim-treesitter; }
|
||||||
|
];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
plugin = pkgs.vimPlugins.zen-mode-nvim;
|
||||||
|
keys = [
|
||||||
|
{ key = "<leader>tz"; cmd = "<cmd>ZenMode<cr>"; desc = "Zen mode"; }
|
||||||
|
];
|
||||||
|
conf = /* lua */ ''
|
||||||
|
require("zen-mode").setup({
|
||||||
|
plugins = {
|
||||||
|
tmux = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
'';
|
||||||
|
dependencies = [
|
||||||
|
{
|
||||||
|
plugin = pkgs.vimPlugins.twilight-nvim;
|
||||||
|
keys = [
|
||||||
|
{ key = "<leader>tZ"; cmd = "<cmd>Twilight<cr>"; desc = "Twilight mode"; }
|
||||||
|
];
|
||||||
|
conf = /* lua */ ''
|
||||||
|
require("twilight").setup({
|
||||||
|
context = 20,
|
||||||
|
expand = { -- for treesitter, we we always try to expand to the top-most ancestor with these types
|
||||||
|
"function",
|
||||||
|
"function_definition",
|
||||||
|
"if_statement",
|
||||||
|
"method",
|
||||||
|
"method_definition",
|
||||||
|
"table",
|
||||||
|
},
|
||||||
|
})
|
||||||
|
'';
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
{ config
|
{ config
|
||||||
, lib
|
, lib
|
||||||
, pkgs
|
, pkgs
|
||||||
, inputs
|
|
||||||
, ...
|
, ...
|
||||||
} @ args:
|
}:
|
||||||
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf mkOption types;
|
||||||
|
|
||||||
cfg = config.my.programs.river;
|
cfg = config.my.programs.river;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
@ -15,7 +16,7 @@ in
|
||||||
keyboardLayouts = mkOption {
|
keyboardLayouts = mkOption {
|
||||||
type = types.listOf types.str;
|
type = types.listOf types.str;
|
||||||
description = "list of keyboard layouts";
|
description = "list of keyboard layouts";
|
||||||
default = [ "de" "us" ];
|
default = [ "us" "de" ];
|
||||||
};
|
};
|
||||||
nvidiaSupport = mkEnableOption "nvidiaSupport";
|
nvidiaSupport = mkEnableOption "nvidiaSupport";
|
||||||
};
|
};
|
||||||
|
|
@ -25,7 +26,7 @@ in
|
||||||
my = {
|
my = {
|
||||||
programs = {
|
programs = {
|
||||||
wallpaper.enable = true;
|
wallpaper.enable = true;
|
||||||
foot.enable = true;
|
kitty.enable = true;
|
||||||
tofi.enable = true;
|
tofi.enable = true;
|
||||||
};
|
};
|
||||||
wallpapers.enable = true;
|
wallpapers.enable = true;
|
||||||
|
|
@ -49,22 +50,6 @@ in
|
||||||
};
|
};
|
||||||
wayland.windowManager.river = {
|
wayland.windowManager.river = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.river.overrideAttrs (old: {
|
|
||||||
src = inputs.river;
|
|
||||||
version = lib.my.mkVersionInput inputs.river;
|
|
||||||
# HACK: to change wlroots to 0.17.x
|
|
||||||
buildInputs = with pkgs; [
|
|
||||||
libGL
|
|
||||||
libevdev
|
|
||||||
libinput
|
|
||||||
libxkbcommon
|
|
||||||
pixman
|
|
||||||
udev
|
|
||||||
wayland-protocols
|
|
||||||
wlroots_0_17
|
|
||||||
xorg.libX11
|
|
||||||
];
|
|
||||||
});
|
|
||||||
settings = {
|
settings = {
|
||||||
border-width = 2;
|
border-width = 2;
|
||||||
declare-mode = [
|
declare-mode = [
|
||||||
|
|
@ -75,8 +60,7 @@ in
|
||||||
map = {
|
map = {
|
||||||
normal = {
|
normal = {
|
||||||
"Super Q" = "close";
|
"Super Q" = "close";
|
||||||
"Super Return" = ''spawn "systemctl --user is-active --quiet foot && footclient --no-wait || foot"'';
|
"Super Return" = "spawn kitty";
|
||||||
"Super+Shift Return" = "spawn foot";
|
|
||||||
"Super R" = ''spawn 'exec $(tofi-run --fuzzy-match=true)' '';
|
"Super R" = ''spawn 'exec $(tofi-run --fuzzy-match=true)' '';
|
||||||
"Super W" = ''spawn "pkill -USR1 waybar"'';
|
"Super W" = ''spawn "pkill -USR1 waybar"'';
|
||||||
"Super+Shift R" = "spawn ~/.config/river/init";
|
"Super+Shift R" = "spawn ~/.config/river/init";
|
||||||
|
|
@ -100,11 +84,13 @@ in
|
||||||
# bump in layout stack
|
# bump in layout stack
|
||||||
"Super Z" = "zoom";
|
"Super Z" = "zoom";
|
||||||
|
|
||||||
|
# lock screen
|
||||||
|
"Super+Alt L" = ''spawn "loginctl lock-session"'';
|
||||||
} //
|
} //
|
||||||
# tags
|
# tags
|
||||||
(
|
(
|
||||||
let
|
let
|
||||||
numbers = range 1 9;
|
numbers = lib.range 1 9;
|
||||||
toTag = num: "$((1 << (${toString num} - 1)))";
|
toTag = num: "$((1 << (${toString num} - 1)))";
|
||||||
|
|
||||||
mkMappings = num:
|
mkMappings = num:
|
||||||
|
|
@ -114,14 +100,14 @@ in
|
||||||
in
|
in
|
||||||
[
|
[
|
||||||
# Super+Control+[1-9] to toggle focus of tag [0-8]
|
# Super+Control+[1-9] to toggle focus of tag [0-8]
|
||||||
{ name = "Super ${numStr}"; value = "toggle-focused-tags ${tag}"; }
|
{ name = "Super ${numStr}"; value = "set-focused-tags ${tag}"; }
|
||||||
|
|
||||||
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
|
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
|
||||||
{ name = "Super+Shift ${numStr}"; value = "toggle-view-tags ${tag}"; }
|
{ name = "Super+Shift ${numStr}"; value = "toggle-view-tags ${tag}"; }
|
||||||
];
|
];
|
||||||
mappings = flatten (map mkMappings numbers);
|
mappings = lib.flatten (map mkMappings numbers);
|
||||||
in
|
in
|
||||||
listToAttrs mappings
|
lib.listToAttrs mappings
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
map-pointer = {
|
map-pointer = {
|
||||||
|
|
@ -139,6 +125,7 @@ in
|
||||||
when-typing = "enabled";
|
when-typing = "enabled";
|
||||||
};
|
};
|
||||||
set-cursor-warp = "on-focus-change";
|
set-cursor-warp = "on-focus-change";
|
||||||
|
keyboard-layout = "-options grp:win_space_toggle,caps:escape ${lib.concatStringsSep "," cfg.keyboardLayouts}";
|
||||||
};
|
};
|
||||||
extraConfig = /* bash */ ''
|
extraConfig = /* bash */ ''
|
||||||
rivercarro_pid="$(pidof rivercarro)"
|
rivercarro_pid="$(pidof rivercarro)"
|
||||||
|
|
@ -151,6 +138,14 @@ in
|
||||||
# add waybar as a status bar
|
# add waybar as a status bar
|
||||||
programs.waybar = {
|
programs.waybar = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = pkgs.waybar.overrideAttrs (old: {
|
||||||
|
patches = old.patches or [ ] ++ [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://gitlab.archlinux.org/archlinux/packaging/packages/waybar/-/raw/0306af03fcb6de6aee1e288f42b0bf1b223513bd/a544f4b2cdcf632f1a4424b89f6e3d85ef5aaa85.patch";
|
||||||
|
sha256 = "sha256-S/1oUj9Aj6BElNTsDY8CTcKtS1j7Gl54JFgCywH05pg=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
});
|
||||||
|
|
||||||
# start using systemd service
|
# start using systemd service
|
||||||
systemd = {
|
systemd = {
|
||||||
|
|
@ -169,11 +164,7 @@ in
|
||||||
modules-right = [ "network" "memory" "cpu" "battery" "clock" ];
|
modules-right = [ "network" "memory" "cpu" "battery" "clock" ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
style = ''
|
style = lib.readFile ./style.css;
|
||||||
#tags button.focused {
|
|
||||||
color: #ffffff
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# lock screen after timeout
|
# lock screen after timeout
|
||||||
|
|
@ -188,11 +179,11 @@ in
|
||||||
events = [
|
events = [
|
||||||
{
|
{
|
||||||
event = "before-sleep";
|
event = "before-sleep";
|
||||||
command = "${getExe pkgs.swaylock} -fF";
|
command = "${lib.getExe pkgs.swaylock} -fF";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
event = "lock";
|
event = "lock";
|
||||||
command = "${getExe pkgs.swaylock} -fF";
|
command = "${lib.getExe pkgs.swaylock} -fF";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
timeouts =
|
timeouts =
|
||||||
|
|
@ -239,7 +230,7 @@ in
|
||||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||||||
QT_QPA_PLATFORMTHEME = "qt5ct";
|
QT_QPA_PLATFORMTHEME = "qt5ct";
|
||||||
_JAVA_AWT_WM_NONEREPARENTING = "1";
|
_JAVA_AWT_WM_NONEREPARENTING = "1";
|
||||||
} // (optionalAttrs cfg.nvidiaSupport
|
} // (lib.optionalAttrs cfg.nvidiaSupport
|
||||||
{
|
{
|
||||||
GBM_BACKEND = "nvidia-drm";
|
GBM_BACKEND = "nvidia-drm";
|
||||||
GDK_BACKEND = "wayland";
|
GDK_BACKEND = "wayland";
|
||||||
|
|
@ -263,16 +254,16 @@ in
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
|
displayManager = {
|
||||||
|
autoLogin = {
|
||||||
|
enable = true;
|
||||||
|
user = "moritz";
|
||||||
|
};
|
||||||
|
defaultSession = "river";
|
||||||
|
};
|
||||||
xserver = {
|
xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
displayManager = {
|
displayManager.lightdm.enable = true;
|
||||||
lightdm.enable = true;
|
|
||||||
autoLogin = {
|
|
||||||
enable = true;
|
|
||||||
user = "moritz";
|
|
||||||
};
|
|
||||||
defaultSession = "river";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
@ -287,7 +278,7 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
genAttrs units mkAfter;
|
lib.genAttrs units mkAfter;
|
||||||
|
|
||||||
systemd.user.services =
|
systemd.user.services =
|
||||||
let
|
let
|
||||||
|
|
@ -297,6 +288,6 @@ in
|
||||||
wants = [ "river-session.target" ];
|
wants = [ "river-session.target" ];
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
genAttrs units mkAfter;
|
lib.genAttrs units mkAfter;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
339
modules/programs/river/style.css
Normal file
339
modules/programs/river/style.css
Normal file
|
|
@ -0,0 +1,339 @@
|
||||||
|
* {
|
||||||
|
/* `otf-font-awesome` is required to be installed for icons */
|
||||||
|
font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif;
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: rgba(43, 48, 59, 0.5);
|
||||||
|
border-bottom: 3px solid rgba(100, 114, 125, 0.5);
|
||||||
|
color: #ffffff;
|
||||||
|
transition-property: background-color;
|
||||||
|
transition-duration: .5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
window#waybar.empty {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
window#waybar.solo {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
window#waybar.termite {
|
||||||
|
background-color: #3F3F3F;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.chromium {
|
||||||
|
background-color: #000000;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
button {
|
||||||
|
/* Use box-shadow instead of border so the text isn't offset */
|
||||||
|
box-shadow: inset 0 -3px transparent;
|
||||||
|
/* Avoid rounded borders under each button name */
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||||
|
button:hover {
|
||||||
|
background: inherit;
|
||||||
|
box-shadow: inset 0 -3px #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* you can set a style on hover for any module like this */
|
||||||
|
#pulseaudio:hover {
|
||||||
|
background-color: #a37800;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
padding: 0 5px;
|
||||||
|
background-color: transparent;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.focused {
|
||||||
|
background-color: #64727D;
|
||||||
|
box-shadow: inset 0 -3px #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
background-color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mode {
|
||||||
|
background-color: #64727D;
|
||||||
|
box-shadow: inset 0 -3px #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock,
|
||||||
|
#battery,
|
||||||
|
#cpu,
|
||||||
|
#memory,
|
||||||
|
#disk,
|
||||||
|
#temperature,
|
||||||
|
#backlight,
|
||||||
|
#network,
|
||||||
|
#pulseaudio,
|
||||||
|
#wireplumber,
|
||||||
|
#custom-media,
|
||||||
|
#tray,
|
||||||
|
#mode,
|
||||||
|
#idle_inhibitor,
|
||||||
|
#scratchpad,
|
||||||
|
#power-profiles-daemon,
|
||||||
|
#mpd {
|
||||||
|
padding: 0 10px;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#window,
|
||||||
|
#workspaces {
|
||||||
|
margin: 0 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* If workspaces is the leftmost module, omit left margin */
|
||||||
|
.modules-left > widget:first-child > #workspaces {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* If workspaces is the rightmost module, omit right margin */
|
||||||
|
.modules-right > widget:last-child > #workspaces {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
background-color: #64727D;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
background-color: #ffffff;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging, #battery.plugged {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #26A65B;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
background-color: #ffffff;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Using steps() instead of linear as a timing function to limit cpu usage */
|
||||||
|
#battery.critical:not(.charging) {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
color: #ffffff;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.5s;
|
||||||
|
animation-timing-function: steps(12);
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
#power-profiles-daemon {
|
||||||
|
padding-right: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#power-profiles-daemon.performance {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#power-profiles-daemon.balanced {
|
||||||
|
background-color: #2980b9;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#power-profiles-daemon.power-saver {
|
||||||
|
background-color: #2ecc71;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
label:focus {
|
||||||
|
background-color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu {
|
||||||
|
background-color: #2ecc71;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory {
|
||||||
|
background-color: #9b59b6;
|
||||||
|
}
|
||||||
|
|
||||||
|
#disk {
|
||||||
|
background-color: #964B00;
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight {
|
||||||
|
background-color: #90b1b1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#network {
|
||||||
|
background-color: #2980b9;
|
||||||
|
}
|
||||||
|
|
||||||
|
#network.disconnected {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
background-color: #f1c40f;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.muted {
|
||||||
|
background-color: #90b1b1;
|
||||||
|
color: #2a5c45;
|
||||||
|
}
|
||||||
|
|
||||||
|
#wireplumber {
|
||||||
|
background-color: #fff0f5;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#wireplumber.muted {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media {
|
||||||
|
background-color: #66cc99;
|
||||||
|
color: #2a5c45;
|
||||||
|
min-width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-spotify {
|
||||||
|
background-color: #66cc99;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-vlc {
|
||||||
|
background-color: #ffa000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature {
|
||||||
|
background-color: #f0932b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature.critical {
|
||||||
|
background-color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
background-color: #2980b9;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray > .passive {
|
||||||
|
-gtk-icon-effect: dim;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray > .needs-attention {
|
||||||
|
-gtk-icon-effect: highlight;
|
||||||
|
background-color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor {
|
||||||
|
background-color: #2d3436;
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor.activated {
|
||||||
|
background-color: #ecf0f1;
|
||||||
|
color: #2d3436;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd {
|
||||||
|
background-color: #66cc99;
|
||||||
|
color: #2a5c45;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.disconnected {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.stopped {
|
||||||
|
background-color: #90b1b1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.paused {
|
||||||
|
background-color: #51a37a;
|
||||||
|
}
|
||||||
|
|
||||||
|
#language {
|
||||||
|
background: #00b093;
|
||||||
|
color: #740864;
|
||||||
|
padding: 0 5px;
|
||||||
|
margin: 0 5px;
|
||||||
|
min-width: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#keyboard-state {
|
||||||
|
background: #97e1ad;
|
||||||
|
color: #000000;
|
||||||
|
padding: 0 0px;
|
||||||
|
margin: 0 5px;
|
||||||
|
min-width: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#keyboard-state > label {
|
||||||
|
padding: 0 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#keyboard-state > label.locked {
|
||||||
|
background: rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
#scratchpad {
|
||||||
|
background: rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
#scratchpad.empty {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
#privacy {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#privacy-item {
|
||||||
|
padding: 0 5px;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#privacy-item.screenshare {
|
||||||
|
background-color: #cf5700;
|
||||||
|
}
|
||||||
|
|
||||||
|
#privacy-item.audio-in {
|
||||||
|
background-color: #1ca000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#privacy-item.audio-out {
|
||||||
|
background-color: #0069d4;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tags button {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tags button.occupied {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tags button.focused {
|
||||||
|
background-color: grey;
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue