mirror of
https://github.com/nmasur/dotfiles
synced 2025-07-06 17:50:15 +00:00
Compare commits
13 Commits
sway
...
d84be966fc
Author | SHA1 | Date | |
---|---|---|---|
d84be966fc | |||
c9aa20c703 | |||
771d41254f | |||
90092c48ec | |||
159a6efe09 | |||
0008de7434 | |||
9826178c0e | |||
d2b1d95281 | |||
4c71797818 | |||
dba975fe86 | |||
1a9ab975d1 | |||
67251a6d8d | |||
967175df70 |
16
.github/workflows/update.yml
vendored
16
.github/workflows/update.yml
vendored
@ -33,6 +33,20 @@ jobs:
|
|||||||
- name: Check the Flake
|
- name: Check the Flake
|
||||||
run: nix flake check
|
run: nix flake check
|
||||||
- name: Enable Pull Request Automerge
|
- name: Enable Pull Request Automerge
|
||||||
run: gh pr merge --rebase --auto ${{ steps.update.outputs.pull-request-number }}
|
if: success()
|
||||||
|
run: |
|
||||||
|
gh pr merge \
|
||||||
|
--rebase \
|
||||||
|
--auto \
|
||||||
|
${{ steps.update.outputs.pull-request-number }}
|
||||||
|
env:
|
||||||
|
GH_TOKEN: ${{ github.token }}
|
||||||
|
- name: Close Pull Request If Failed
|
||||||
|
if: failure()
|
||||||
|
run: |
|
||||||
|
gh pr close \
|
||||||
|
--comment "Auto-closing pull request" \
|
||||||
|
--delete-branch \
|
||||||
|
${{ steps.update.outputs.pull-request-number }}
|
||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ github.token }}
|
GH_TOKEN: ${{ github.token }}
|
||||||
|
173
flake.lock
generated
173
flake.lock
generated
@ -17,6 +17,23 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"age": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1672087018,
|
||||||
|
"narHash": "sha256-LRxxJQLQkzoCNYGS/XBixVmYXoZ1mPHKvFicPGXYLcw=",
|
||||||
|
"owner": "FiloSottile",
|
||||||
|
"repo": "age",
|
||||||
|
"rev": "c6dcfa1efcaa27879762a934d5bea0d1b83a894c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "FiloSottile",
|
||||||
|
"ref": "v1.1.1",
|
||||||
|
"repo": "age",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"baleia-nvim-src": {
|
"baleia-nvim-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@ -73,11 +90,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691275315,
|
"lastModified": 1694810318,
|
||||||
"narHash": "sha256-9WN0IA0vNZSNxKHpy/bYvPnCw4VH/nr5iBv7c+7KUts=",
|
"narHash": "sha256-LuvrVj2oj9TzdnnwtQUClqcXjpgwCP01FFVBM7azGV8=",
|
||||||
"owner": "lnl7",
|
"owner": "lnl7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "829041cf10c4f6751a53c0a11ca2fd22ff0918d6",
|
"rev": "80bb201f4925cdda5a7a3c7b1900fb26bb2af2e8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -94,11 +111,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1690739034,
|
"lastModified": 1694808292,
|
||||||
"narHash": "sha256-roW02IaiQ3gnEEDMCDWL5YyN+C4nBf/te6vfL7rG0jk=",
|
"narHash": "sha256-zSZ8IfZfv6nK0z+wNuM0Tqx6c9b4+Q5Xn9FIpunWBwA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "4015740375676402a2ee6adebc3c30ea625b9a94",
|
"rev": "0faae8adf6d790df2c3d00437ccad7cd5c531c70",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -114,11 +131,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691196340,
|
"lastModified": 1694651982,
|
||||||
"narHash": "sha256-b1haFWCbFJkiUkeTQCkNjr8hFq/8JlMPaQwNpGlcvxI=",
|
"narHash": "sha256-oI8jrtIvLll+ADzm+qQqy58ybFeA1J1GlNgL3Q5hvGs=",
|
||||||
"owner": "bandithedoge",
|
"owner": "bandithedoge",
|
||||||
"repo": "nixpkgs-firefox-darwin",
|
"repo": "nixpkgs-firefox-darwin",
|
||||||
"rev": "6081c33185dba05da784d9f2a392861af025bf1a",
|
"rev": "a376e3619b40947054e2c5e93fbcc00aa9e24477",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -144,12 +161,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1678901627,
|
"lastModified": 1687709756,
|
||||||
"narHash": "sha256-U02riOqrKKzwjsxc/400XnElV+UtPUQWpANPlyazjH0=",
|
"narHash": "sha256-Y5wKlQSkgEK2weWdOu4J3riRd+kV/VCgHsqLNTTWQ/0=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "93a2b84fc4b70d9e089d029deacc3583435c2ed6",
|
"rev": "dbabf0ca0c0c4bce6ea5eaf65af5cb694d2082c7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -160,7 +180,7 @@
|
|||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1685518550,
|
"lastModified": 1685518550,
|
||||||
@ -178,14 +198,14 @@
|
|||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1689068808,
|
"lastModified": 1692799911,
|
||||||
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
|
"narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
|
"rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -197,11 +217,11 @@
|
|||||||
"hmts-nvim-src": {
|
"hmts-nvim-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691223193,
|
"lastModified": 1693226725,
|
||||||
"narHash": "sha256-Zsl4s3e4upWiU2mXKqiQcUGxslPzzebKKXfzaHiNq48=",
|
"narHash": "sha256-jUuztOqNBltC3axa7s3CPJz9Cmukfwkf846+Z/gAxCU=",
|
||||||
"owner": "calops",
|
"owner": "calops",
|
||||||
"repo": "hmts.nvim",
|
"repo": "hmts.nvim",
|
||||||
"rev": "1d40963804925754672940d07ddb250d19efec2e",
|
"rev": "14fd941d7ec2bb98314a1aacaa2573d97f1629ab",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -217,11 +237,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691225770,
|
"lastModified": 1694643239,
|
||||||
"narHash": "sha256-O5slH8nW8msTAqVAS5rkvdHSkjmrO+JauuSDzZCmv2M=",
|
"narHash": "sha256-pv2k/5FvyirDE8g4TNehzwZ0T4UOMMmqWSQnM/luRtE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "0a014a729cdd54d9919ff36b714d047909d7a4c8",
|
"rev": "d9b88b43524db1591fb3d9410a21428198d75d49",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -276,16 +296,16 @@
|
|||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1680544266,
|
"lastModified": 1691372739,
|
||||||
"narHash": "sha256-d/TusDXmIo8IT5DNRA21lN+nOVSER8atIx9TJteR6LQ=",
|
"narHash": "sha256-fZ8KfBMcIFO/R7xaWtB85SFeuUjb9SCH8fxYBnY8068=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "nil",
|
"repo": "nil",
|
||||||
"rev": "56a1fa87b98a9508920f4b0ab8fe36d5b54b2362",
|
"rev": "97abe7d3d48721d4e0fcc1876eea83bb4247825b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"ref": "2023-04-03",
|
"ref": "2023-08-09",
|
||||||
"repo": "nil",
|
"repo": "nil",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@ -313,11 +333,11 @@
|
|||||||
},
|
},
|
||||||
"nixlib": {
|
"nixlib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1689469483,
|
"lastModified": 1693701915,
|
||||||
"narHash": "sha256-2SBhY7rZQ/iNCxe04Eqxlz9YK9KgbaTMBssq3/BgdWY=",
|
"narHash": "sha256-waHPLdDYUOHSEtMKKabcKIMhlUOHPOOPQ9UyFeEoovs=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "02fea408f27186f139153e1ae88f8ab2abd9c22c",
|
"rev": "f5af57d3ef9947a70ac86e42695231ac1ad00c25",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -334,11 +354,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1690133435,
|
"lastModified": 1693791338,
|
||||||
"narHash": "sha256-YNZiefETggroaTLsLJG2M+wpF0pJPwiauKG4q48ddNU=",
|
"narHash": "sha256-wHmtB5H8AJTUaeGHw+0hsQ6nU4VyvVrP2P4NeCocRzY=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixos-generators",
|
"repo": "nixos-generators",
|
||||||
"rev": "b1171de4d362c022130c92d7c8adc4bf2b83d586",
|
"rev": "8ee78470029e641cddbd8721496da1316b47d3b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -349,11 +369,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691186842,
|
"lastModified": 1694767346,
|
||||||
"narHash": "sha256-wxBVCvZUwq+XS4N4t9NqsHV4E64cPVqQ2fdDISpjcw0=",
|
"narHash": "sha256-5uH27SiVFUwsTsqC5rs3kS7pBoNhtoy9QfTP9BmknGk=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "18036c0be90f4e308ae3ebcab0e14aae0336fe42",
|
"rev": "ace5093e36ab1e95cb9463863491bee90d5a4183",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -365,11 +385,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1690470004,
|
"lastModified": 1694048570,
|
||||||
"narHash": "sha256-l57RmPhPz9r1LGDg/0v8bYgJO8R+GGTQZtkIxE7negU=",
|
"narHash": "sha256-PEQptwFCVaJ+jLFJgrZll2shQ9VI/7xVhrCYkJo8iIw=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "9462344318b376e157c94fa60c20a25b913b2381",
|
"rev": "4f77ea639305f1de0a14d9d41eef83313360638c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -382,11 +402,11 @@
|
|||||||
"null-ls-nvim-src": {
|
"null-ls-nvim-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1688652536,
|
"lastModified": 1691810493,
|
||||||
"narHash": "sha256-6KJtj9pbvBm6fOVpnyzO2fEVC+cVrw2XtZHOgq9ieIw=",
|
"narHash": "sha256-cWA0rzkOp/ekVKaFee7iea1lhnqKtWUIU+fW5M950wI=",
|
||||||
"owner": "jose-elias-alvarez",
|
"owner": "jose-elias-alvarez",
|
||||||
"repo": "null-ls.nvim",
|
"repo": "null-ls.nvim",
|
||||||
"rev": "db09b6c691def0038c456551e4e2772186449f35",
|
"rev": "0010ea927ab7c09ef0ce9bf28c2b573fc302f5a7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -397,11 +417,11 @@
|
|||||||
},
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691289987,
|
"lastModified": 1694814340,
|
||||||
"narHash": "sha256-sbbDlVzxlP+bBTdhyyzJ6C0APUNU/sChuLmNU9ehkmg=",
|
"narHash": "sha256-eo9444JGI/G9jZF+X3xmS5TMRuIT4VYPKyZQ11iF65Q=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nur",
|
"repo": "nur",
|
||||||
"rev": "cf2f5d8ad452795e5aca290c95eedc829d3da7ec",
|
"rev": "9b70f21fd41d3b96580e7ca4a3d1c29e87bdab36",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -430,11 +450,11 @@
|
|||||||
"nvim-tree-lua-src": {
|
"nvim-tree-lua-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691292370,
|
"lastModified": 1694306329,
|
||||||
"narHash": "sha256-YQRirmp8QerxwF9qdrSrUKJZiVrBb6ZWpUTfM8H7fl4=",
|
"narHash": "sha256-Rv3DdlqRppEum09N4cKRlj0xdPbf5QLYHzYDuxb55w8=",
|
||||||
"owner": "kyazdani42",
|
"owner": "kyazdani42",
|
||||||
"repo": "nvim-tree.lua",
|
"repo": "nvim-tree.lua",
|
||||||
"rev": "904f95cd9db31d1800998fa428e78e418a50181d",
|
"rev": "94c7c810af205c0f00c8f105dcf490c8eb17658a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -446,23 +466,36 @@
|
|||||||
"nvim-treesitter-src": {
|
"nvim-treesitter-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681121236,
|
"lastModified": 1691831669,
|
||||||
"narHash": "sha256-iPsPDLhVKJ14iP1/2cCgcY9SCKK/DQz9Y0mQB1DqNiM=",
|
"narHash": "sha256-1Iuvq0hVQ7LyBYOkJ5d07NkwbGcR1K61ZZmAAA7ABGs=",
|
||||||
"owner": "nvim-treesitter",
|
"owner": "nvim-treesitter",
|
||||||
"repo": "nvim-treesitter",
|
"repo": "nvim-treesitter",
|
||||||
"rev": "cc360a9beb1b30d172438f640e2c3450358c4086",
|
"rev": "63260da18bf273c76b8e2ea0db84eb901cab49ce",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nvim-treesitter",
|
"owner": "nvim-treesitter",
|
||||||
"ref": "v0.9.0",
|
"ref": "v0.9.1",
|
||||||
"repo": "nvim-treesitter",
|
"repo": "nvim-treesitter",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"proton-ge": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"narHash": "sha256-/68J3aVmHqrrcNk4DkYSBzfNyIQmbcUGg3yOlDq1ts8=",
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-14/GE-Proton8-14.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-14/GE-Proton8-14.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"Comment-nvim-src": "Comment-nvim-src",
|
"Comment-nvim-src": "Comment-nvim-src",
|
||||||
|
"age": "age",
|
||||||
"baleia-nvim-src": "baleia-nvim-src",
|
"baleia-nvim-src": "baleia-nvim-src",
|
||||||
"bufferline-nvim-src": "bufferline-nvim-src",
|
"bufferline-nvim-src": "bufferline-nvim-src",
|
||||||
"cmp-nvim-lsp-src": "cmp-nvim-lsp-src",
|
"cmp-nvim-lsp-src": "cmp-nvim-lsp-src",
|
||||||
@ -483,6 +516,7 @@
|
|||||||
"nvim-lspconfig-src": "nvim-lspconfig-src",
|
"nvim-lspconfig-src": "nvim-lspconfig-src",
|
||||||
"nvim-tree-lua-src": "nvim-tree-lua-src",
|
"nvim-tree-lua-src": "nvim-tree-lua-src",
|
||||||
"nvim-treesitter-src": "nvim-treesitter-src",
|
"nvim-treesitter-src": "nvim-treesitter-src",
|
||||||
|
"proton-ge": "proton-ge",
|
||||||
"telescope-nvim-src": "telescope-nvim-src",
|
"telescope-nvim-src": "telescope-nvim-src",
|
||||||
"telescope-project-nvim-src": "telescope-project-nvim-src",
|
"telescope-project-nvim-src": "telescope-project-nvim-src",
|
||||||
"toggleterm-nvim-src": "toggleterm-nvim-src",
|
"toggleterm-nvim-src": "toggleterm-nvim-src",
|
||||||
@ -509,11 +543,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1680488274,
|
"lastModified": 1688783586,
|
||||||
"narHash": "sha256-0vYMrZDdokVmPQQXtFpnqA2wEgCCUXf5a3dDuDVshn0=",
|
"narHash": "sha256-HHaM2hk2azslv1kH8zmQxXo2e7i5cKgzNIuK4yftzB0=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "7ec2ff598a172c6e8584457167575b3a1a5d80d8",
|
"rev": "7a29283cc242c2486fc67f60b431ef708046d176",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -552,6 +586,21 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"telescope-nvim-src": {
|
"telescope-nvim-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@ -605,17 +654,17 @@
|
|||||||
"tree-sitter-bash": {
|
"tree-sitter-bash": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1688032601,
|
"lastModified": 1692987612,
|
||||||
"narHash": "sha256-gl5F3IeZa2VqyH/qFj8ey2pRbGq4X8DL5wiyvRrH56U=",
|
"narHash": "sha256-SP6s1bUvh1cXt3xQzdY9yVWq0BstfP1tjBedSQPPDC4=",
|
||||||
"owner": "tree-sitter",
|
"owner": "tree-sitter",
|
||||||
"repo": "tree-sitter-bash",
|
"repo": "tree-sitter-bash",
|
||||||
"rev": "493646764e7ad61ce63ce3b8c59ebeb37f71b841",
|
"rev": "cc65fbeb028e7892f59bf3a609212bb0afbaa2d0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "tree-sitter",
|
"owner": "tree-sitter",
|
||||||
|
"ref": "v0.20.3",
|
||||||
"repo": "tree-sitter-bash",
|
"repo": "tree-sitter-bash",
|
||||||
"rev": "493646764e7ad61ce63ce3b8c59ebeb37f71b841",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -723,11 +772,11 @@
|
|||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1690553050,
|
"lastModified": 1694522206,
|
||||||
"narHash": "sha256-pK3kF30OykL3v6P8UP6ipihlS34KoGq9SryCj3tHrFw=",
|
"narHash": "sha256-mb34WlyHi/whE6gIMEtXKfGRALzvB6/U7CYdUnJKN+c=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NixOS-WSL",
|
"repo": "NixOS-WSL",
|
||||||
"rev": "f7a95a37306c46b42e9ce751977c44c752fd5eca",
|
"rev": "e7d93d0f478b6fbb47c00d03449dc3d08b90abb7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
25
flake.nix
25
flake.nix
@ -58,12 +58,13 @@
|
|||||||
|
|
||||||
# Nix language server
|
# Nix language server
|
||||||
nil = {
|
nil = {
|
||||||
url = "github:oxalica/nil/2023-04-03";
|
url = "github:oxalica/nil/2023-08-09";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Neovim plugins
|
# Neovim plugins
|
||||||
nvim-lspconfig-src = {
|
nvim-lspconfig-src = {
|
||||||
|
# https://github.com/neovim/nvim-lspconfig/tags
|
||||||
url = "github:neovim/nvim-lspconfig/v0.1.6";
|
url = "github:neovim/nvim-lspconfig/v0.1.6";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
@ -84,7 +85,8 @@
|
|||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
nvim-treesitter-src = {
|
nvim-treesitter-src = {
|
||||||
url = "github:nvim-treesitter/nvim-treesitter/v0.9.0";
|
# https://github.com/nvim-treesitter/nvim-treesitter/tags
|
||||||
|
url = "github:nvim-treesitter/nvim-treesitter/v0.9.1";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
telescope-nvim-src = {
|
telescope-nvim-src = {
|
||||||
@ -120,8 +122,7 @@
|
|||||||
tree-sitter-bash = {
|
tree-sitter-bash = {
|
||||||
# Fix: bash highlighting doesn't work as of this commit:
|
# Fix: bash highlighting doesn't work as of this commit:
|
||||||
# https://github.com/NixOS/nixpkgs/commit/49cce41b7c5f6b88570a482355d9655ca19c1029
|
# https://github.com/NixOS/nixpkgs/commit/49cce41b7c5f6b88570a482355d9655ca19c1029
|
||||||
url =
|
url = "github:tree-sitter/tree-sitter-bash/v0.20.3";
|
||||||
"github:tree-sitter/tree-sitter-bash/493646764e7ad61ce63ce3b8c59ebeb37f71b841";
|
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
tree-sitter-python = {
|
tree-sitter-python = {
|
||||||
@ -150,6 +151,20 @@
|
|||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Age encryption (pin because of failed builds)
|
||||||
|
age = {
|
||||||
|
url = "github:FiloSottile/age/v1.1.1";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
# GE version of Proton for game compatibility
|
||||||
|
# Alternatively, could consider using https://github.com/fufexan/nix-gaming
|
||||||
|
proton-ge = {
|
||||||
|
url =
|
||||||
|
"https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-14/GE-Proton8-14.tar.gz";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
# Nextcloud Apps
|
# Nextcloud Apps
|
||||||
nextcloud-news = {
|
nextcloud-news = {
|
||||||
url =
|
url =
|
||||||
@ -208,6 +223,8 @@
|
|||||||
(import ./overlays/mpv-scripts.nix inputs)
|
(import ./overlays/mpv-scripts.nix inputs)
|
||||||
(import ./overlays/nextcloud-apps.nix inputs)
|
(import ./overlays/nextcloud-apps.nix inputs)
|
||||||
(import ./overlays/betterlockscreen.nix)
|
(import ./overlays/betterlockscreen.nix)
|
||||||
|
(import ./overlays/age.nix inputs)
|
||||||
|
(import ./overlays/proton-ge.nix inputs)
|
||||||
];
|
];
|
||||||
|
|
||||||
# System types to support.
|
# System types to support.
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
unfreePackages = [
|
unfreePackages = [
|
||||||
(lib.mkIf config._1password.enable "onepassword-password-manager")
|
(lib.mkIf config._1password.enable "onepassword-password-manager")
|
||||||
"okta-browser-plugin"
|
"okta-browser-plugin"
|
||||||
|
"wappalyzer"
|
||||||
];
|
];
|
||||||
|
|
||||||
home-manager.users.${config.user} = {
|
home-manager.users.${config.user} = {
|
||||||
|
@ -11,10 +11,23 @@
|
|||||||
|
|
||||||
config = lib.mkIf (config.gui.enable && config.kitty.enable) {
|
config = lib.mkIf (config.gui.enable && config.kitty.enable) {
|
||||||
|
|
||||||
terminal = "${pkgs.kitty}/bin/kitty";
|
# Set the Rofi-Systemd terminal for viewing logs
|
||||||
|
# Using optionalAttrs because only available in NixOS
|
||||||
|
environment = { } // lib.attrsets.optionalAttrs
|
||||||
|
(builtins.hasAttr "sessionVariables" config.environment) {
|
||||||
|
sessionVariables.ROFI_SYSTEMD_TERM = "${pkgs.kitty}/bin/kitty";
|
||||||
|
};
|
||||||
|
|
||||||
home-manager.users.${config.user} = {
|
home-manager.users.${config.user} = {
|
||||||
|
|
||||||
|
# Set the i3 terminal
|
||||||
|
xsession.windowManager.i3.config.terminal =
|
||||||
|
lib.mkIf pkgs.stdenv.isLinux "kitty";
|
||||||
|
|
||||||
|
# Set the Rofi terminal for running programs
|
||||||
|
programs.rofi.terminal =
|
||||||
|
lib.mkIf pkgs.stdenv.isLinux "${pkgs.kitty}/bin/kitty";
|
||||||
|
|
||||||
# Display images in the terminal
|
# Display images in the terminal
|
||||||
programs.fish.shellAliases = {
|
programs.fish.shellAliases = {
|
||||||
icat = "kitty +kitten icat";
|
icat = "kitty +kitten icat";
|
||||||
|
@ -65,6 +65,12 @@ key("n", "<C-Down>", ":resize -2<CR>", { silent = true })
|
|||||||
key("n", "<C-Left>", ":vertical resize -2<CR>", { silent = true })
|
key("n", "<C-Left>", ":vertical resize -2<CR>", { silent = true })
|
||||||
key("n", "<C-Right>", ":vertical resize +2<CR>", { silent = true })
|
key("n", "<C-Right>", ":vertical resize +2<CR>", { silent = true })
|
||||||
|
|
||||||
|
-- Quickfix
|
||||||
|
key("n", "]q", ":cnext<CR>")
|
||||||
|
key("n", "[q", ":cprevious<CR>")
|
||||||
|
key("n", "co", ":copen<CR>")
|
||||||
|
key("n", "cq", ":cclose<CR>")
|
||||||
|
|
||||||
-- Other
|
-- Other
|
||||||
key("n", "<A-CR>", ":noh<CR>", { silent = true }) --- Clear search in VimWiki
|
key("n", "<A-CR>", ":noh<CR>", { silent = true }) --- Clear search in VimWiki
|
||||||
key("n", "Y", "y$") --- Copy to end of line
|
key("n", "Y", "y$") --- Copy to end of line
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
glow # Markdown previews
|
glow # Markdown previews
|
||||||
skate # Key-value store
|
skate # Key-value store
|
||||||
charm # Manage account and filesystem
|
charm # Manage account and filesystem
|
||||||
|
pop # Send emails from a TUI
|
||||||
];
|
];
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
home-manager.users.${config.user} = {
|
home-manager.users.${config.user} = {
|
||||||
|
|
||||||
# Packages used in abbreviations and aliases
|
# Packages used in abbreviations and aliases
|
||||||
home.packages = with pkgs; [ curl exa ];
|
home.packages = with pkgs; [ curl ];
|
||||||
|
|
||||||
programs.fish = {
|
programs.fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@ -15,8 +15,8 @@
|
|||||||
# Version of bash which works much better on the terminal
|
# Version of bash which works much better on the terminal
|
||||||
bash = "${pkgs.bashInteractive}/bin/bash";
|
bash = "${pkgs.bashInteractive}/bin/bash";
|
||||||
|
|
||||||
# Use exa instead of ls for fancier output
|
# Use eza (exa) instead of ls for fancier output
|
||||||
ls = "exa --group";
|
ls = "${pkgs.eza}/bin/eza --group";
|
||||||
|
|
||||||
# Move files to XDG trash on the commandline
|
# Move files to XDG trash on the commandline
|
||||||
trash = lib.mkIf pkgs.stdenv.isLinux "${pkgs.trash-cli}/bin/trash-put";
|
trash = lib.mkIf pkgs.stdenv.isLinux "${pkgs.trash-cli}/bin/trash-put";
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
"$cmd_duration"
|
"$cmd_duration"
|
||||||
"$character"
|
"$character"
|
||||||
];
|
];
|
||||||
# right_format = "$nix_shell";
|
right_format = "$nix_shell";
|
||||||
character = {
|
character = {
|
||||||
success_symbol = "[❯](bold green)";
|
success_symbol = "[❯](bold green)";
|
||||||
error_symbol = "[❯](bold red)";
|
error_symbol = "[❯](bold red)";
|
||||||
|
@ -55,6 +55,15 @@ local function worklayout()
|
|||||||
local layout = concat(left, right, laptop)
|
local layout = concat(left, right, laptop)
|
||||||
hs.layout.apply(layout)
|
hs.layout.apply(layout)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
-- Reload Hammerspoon whenever layout changes
|
||||||
|
hs.screen.watcher.new(function()
|
||||||
|
-- Pause for 5 seconds to give time for layout to change
|
||||||
|
hs.timer.doAfter(5, function()
|
||||||
|
-- Perform the actual reload
|
||||||
|
hs.reload()
|
||||||
|
end)
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
return worklayout
|
return worklayout
|
||||||
|
@ -42,6 +42,7 @@
|
|||||||
"obsidian" # Obsidian packaging on Nix is not available for macOS
|
"obsidian" # Obsidian packaging on Nix is not available for macOS
|
||||||
"scroll-reverser" # Different scroll style for mouse vs. trackpad
|
"scroll-reverser" # Different scroll style for mouse vs. trackpad
|
||||||
"steam" # Not packaged for Nix
|
"steam" # Not packaged for Nix
|
||||||
|
"epic-games" # Not packaged for Nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -22,6 +22,11 @@
|
|||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Adapted in part from: https://github.com/Shawn8901/nix-configuration/blob/1c48be94238a9f463cf0bbd1e1842a4454286514/modules/nixos/steam-compat-tools/default.nix
|
||||||
|
# Based on: https://github.com/NixOS/nixpkgs/issues/73323
|
||||||
|
environment.sessionVariables.STEAM_EXTRA_COMPAT_TOOLS_PATHS =
|
||||||
|
lib.makeBinPath [ pkgs.proton-ge-custom ];
|
||||||
|
|
||||||
# Seems like NetworkManager can help speed up Steam launch
|
# Seems like NetworkManager can help speed up Steam launch
|
||||||
# https://www.reddit.com/r/archlinux/comments/qguhco/steam_startup_time_arch_1451_seconds_fedora_34/hi8opet/
|
# https://www.reddit.com/r/archlinux/comments/qguhco/steam_startup_time_arch_1451_seconds_fedora_34/hi8opet/
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
@ -5,7 +5,6 @@
|
|||||||
./fonts.nix
|
./fonts.nix
|
||||||
./gtk.nix
|
./gtk.nix
|
||||||
./i3.nix
|
./i3.nix
|
||||||
./keybinds.nix
|
|
||||||
./picom.nix
|
./picom.nix
|
||||||
./polybar.nix
|
./polybar.nix
|
||||||
./rofi.nix
|
./rofi.nix
|
||||||
@ -14,6 +13,14 @@
|
|||||||
|
|
||||||
options = {
|
options = {
|
||||||
|
|
||||||
|
launcherCommand = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
description = "Command to use for launching";
|
||||||
|
};
|
||||||
|
systemdSearch = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
description = "Command to use for interacting with systemd";
|
||||||
|
};
|
||||||
altTabCommand = lib.mkOption {
|
altTabCommand = lib.mkOption {
|
||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
description = "Command to use for choosing windows";
|
description = "Command to use for choosing windows";
|
||||||
@ -30,30 +37,14 @@
|
|||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
description = "Command to use for quick calculations";
|
description = "Command to use for quick calculations";
|
||||||
};
|
};
|
||||||
launcherCommand = lib.mkOption {
|
toggleBarCommand = lib.mkOption {
|
||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
description = "Command to use for launching";
|
description = "Command to hide and show the status bar.";
|
||||||
};
|
|
||||||
lockScreenCommand = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "Command to use to lock the screen";
|
|
||||||
};
|
};
|
||||||
powerCommand = lib.mkOption {
|
powerCommand = lib.mkOption {
|
||||||
type = lib.types.str;
|
type = lib.types.str;
|
||||||
description = "Command to use for power options menu";
|
description = "Command to use for power options menu";
|
||||||
};
|
};
|
||||||
systemdSearch = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "Command to use for interacting with systemd";
|
|
||||||
};
|
|
||||||
terminal = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "Package to use for graphical terminal";
|
|
||||||
};
|
|
||||||
toggleBarCommand = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "Command to hide and show the status bar.";
|
|
||||||
};
|
|
||||||
wallpaper = lib.mkOption {
|
wallpaper = lib.mkOption {
|
||||||
type = lib.types.path;
|
type = lib.types.path;
|
||||||
description = "Wallpaper background image file";
|
description = "Wallpaper background image file";
|
||||||
|
@ -2,22 +2,11 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
|
lockCmd =
|
||||||
|
"${pkgs.betterlockscreen}/bin/betterlockscreen --lock --display 1 --blur 0.5 --span";
|
||||||
lockUpdate =
|
lockUpdate =
|
||||||
"${pkgs.betterlockscreen}/bin/betterlockscreen --update ${config.wallpaper} --display 1 --span";
|
"${pkgs.betterlockscreen}/bin/betterlockscreen --update ${config.wallpaper} --display 1 --span";
|
||||||
|
|
||||||
workspaces = {
|
|
||||||
"1" = "1:I";
|
|
||||||
"2" = "2:II";
|
|
||||||
"3" = "3:III";
|
|
||||||
"4" = "4:IV";
|
|
||||||
"5" = "5:V";
|
|
||||||
"6" = "6:VI";
|
|
||||||
"7" = "7:VII";
|
|
||||||
"8" = "8:VIII";
|
|
||||||
"9" = "9:IX";
|
|
||||||
"10" = "10:X";
|
|
||||||
};
|
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
|
||||||
config = lib.mkIf pkgs.stdenv.isLinux {
|
config = lib.mkIf pkgs.stdenv.isLinux {
|
||||||
@ -34,18 +23,29 @@ in {
|
|||||||
home-manager.users.${config.user} = {
|
home-manager.users.${config.user} = {
|
||||||
xsession.windowManager.i3 = {
|
xsession.windowManager.i3 = {
|
||||||
enable = config.services.xserver.enable;
|
enable = config.services.xserver.enable;
|
||||||
config = let modifier = "Mod4"; # Super key
|
config = let
|
||||||
|
modifier = "Mod4"; # Super key
|
||||||
|
ws1 = "1:I";
|
||||||
|
ws2 = "2:II";
|
||||||
|
ws3 = "3:III";
|
||||||
|
ws4 = "4:IV";
|
||||||
|
ws5 = "5:V";
|
||||||
|
ws6 = "6:VI";
|
||||||
|
ws7 = "7:VII";
|
||||||
|
ws8 = "8:VIII";
|
||||||
|
ws9 = "9:IX";
|
||||||
|
ws10 = "10:X";
|
||||||
in {
|
in {
|
||||||
modifier = modifier;
|
modifier = modifier;
|
||||||
assigns = {
|
assigns = {
|
||||||
"${workspaces."1"}" = [{ class = "Firefox"; }];
|
"${ws1}" = [{ class = "Firefox"; }];
|
||||||
"${workspaces."2"}" = [
|
"${ws2}" = [
|
||||||
{ class = "kitty"; }
|
{ class = "kitty"; }
|
||||||
{ class = "aerc"; }
|
{ class = "aerc"; }
|
||||||
{ class = "obsidian"; }
|
{ class = "obsidian"; }
|
||||||
];
|
];
|
||||||
"${workspaces."3"}" = [{ class = "discord"; }];
|
"${ws3}" = [{ class = "discord"; }];
|
||||||
"${workspaces."4"}" = [{ class = "Steam"; }];
|
"${ws4}" = [ { class = "steam"; } { class = "Steam"; } ];
|
||||||
};
|
};
|
||||||
bars = [{ command = "echo"; }]; # Disable i3bar
|
bars = [{ command = "echo"; }]; # Disable i3bar
|
||||||
colors = let
|
colors = let
|
||||||
@ -91,7 +91,129 @@ in {
|
|||||||
newWindow = "urgent";
|
newWindow = "urgent";
|
||||||
followMouse = false;
|
followMouse = false;
|
||||||
};
|
};
|
||||||
keybindings = { };
|
keybindings = {
|
||||||
|
|
||||||
|
# Adjust screen brightness
|
||||||
|
"Shift+F12" =
|
||||||
|
"exec ${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 + 30 && sleep 1; exec ${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 + 30";
|
||||||
|
"Shift+F11" =
|
||||||
|
"exec ${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 - 30 && sleep 1; exec ${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 - 30";
|
||||||
|
"XF86MonBrightnessUp" =
|
||||||
|
"exec ${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 + 30 && sleep 1; exec ${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 + 30";
|
||||||
|
"XF86MonBrightnessDown" =
|
||||||
|
"exec ${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 - 30 && sleep 1; exec ${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 - 30";
|
||||||
|
|
||||||
|
# Media player controls
|
||||||
|
"XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
||||||
|
"XF86AudioStop" = "exec ${pkgs.playerctl}/bin/playerctl stop";
|
||||||
|
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
||||||
|
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
||||||
|
|
||||||
|
# Launchers
|
||||||
|
"${modifier}+Return" =
|
||||||
|
"exec --no-startup-id kitty; workspace ${ws2}; layout tabbed";
|
||||||
|
"${modifier}+space" =
|
||||||
|
"exec --no-startup-id ${config.launcherCommand}";
|
||||||
|
"${modifier}+Shift+s" =
|
||||||
|
"exec --no-startup-id ${config.systemdSearch}";
|
||||||
|
"${modifier}+Shift+a" =
|
||||||
|
"exec --no-startup-id ${config.audioSwitchCommand}";
|
||||||
|
"Mod1+Tab" = "exec --no-startup-id ${config.altTabCommand}";
|
||||||
|
"${modifier}+Shift+period" =
|
||||||
|
"exec --no-startup-id ${config.powerCommand}";
|
||||||
|
"${modifier}+Shift+m" =
|
||||||
|
"exec --no-startup-id ${config.brightnessCommand}";
|
||||||
|
"${modifier}+c" =
|
||||||
|
"exec --no-startup-id ${config.calculatorCommand}";
|
||||||
|
"${modifier}+Shift+c" = "reload";
|
||||||
|
"${modifier}+Shift+r" = "restart";
|
||||||
|
"${modifier}+Shift+q" = ''
|
||||||
|
exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"'';
|
||||||
|
"${modifier}+Shift+x" = "exec ${lockCmd}";
|
||||||
|
"${modifier}+Mod1+h" =
|
||||||
|
"exec --no-startup-id kitty sh -c '${pkgs.home-manager}/bin/home-manager switch --flake ${config.dotfilesPath}#${config.networking.hostName} || read'";
|
||||||
|
"${modifier}+Mod1+r" =
|
||||||
|
"exec --no-startup-id kitty sh -c 'doas nixos-rebuild switch --flake ${config.dotfilesPath}#${config.networking.hostName} || read'";
|
||||||
|
|
||||||
|
# Window options
|
||||||
|
"${modifier}+q" = "kill";
|
||||||
|
"${modifier}+b" = "exec ${config.toggleBarCommand}";
|
||||||
|
"${modifier}+f" = "fullscreen toggle";
|
||||||
|
"${modifier}+h" = "focus left";
|
||||||
|
"${modifier}+j" = "focus down";
|
||||||
|
"${modifier}+k" = "focus up";
|
||||||
|
"${modifier}+l" = "focus right";
|
||||||
|
"${modifier}+Left" = "focus left";
|
||||||
|
"${modifier}+Down" = "focus down";
|
||||||
|
"${modifier}+Up" = "focus up";
|
||||||
|
"${modifier}+Right" = "focus right";
|
||||||
|
"${modifier}+Shift+h" = "move left";
|
||||||
|
"${modifier}+Shift+j" = "move down";
|
||||||
|
"${modifier}+Shift+k" = "move up";
|
||||||
|
"${modifier}+Shift+l" = "move right";
|
||||||
|
"${modifier}+Shift+Left" = "move left";
|
||||||
|
"${modifier}+Shift+Down" = "move down";
|
||||||
|
"${modifier}+Shift+Up" = "move up";
|
||||||
|
"${modifier}+Shift+Right" = "move right";
|
||||||
|
|
||||||
|
# Tiling
|
||||||
|
"${modifier}+i" = "split h";
|
||||||
|
"${modifier}+v" = "split v";
|
||||||
|
"${modifier}+s" = "layout stacking";
|
||||||
|
"${modifier}+t" = "layout tabbed";
|
||||||
|
"${modifier}+e" = "layout toggle split";
|
||||||
|
"${modifier}+Shift+space" = "floating toggle";
|
||||||
|
"${modifier}+Control+space" = "focus mode_toggle";
|
||||||
|
"${modifier}+a" = "focus parent";
|
||||||
|
|
||||||
|
# Workspaces
|
||||||
|
"${modifier}+1" = "workspace ${ws1}";
|
||||||
|
"${modifier}+2" = "workspace ${ws2}";
|
||||||
|
"${modifier}+3" = "workspace ${ws3}";
|
||||||
|
"${modifier}+4" = "workspace ${ws4}";
|
||||||
|
"${modifier}+5" = "workspace ${ws5}";
|
||||||
|
"${modifier}+6" = "workspace ${ws6}";
|
||||||
|
"${modifier}+7" = "workspace ${ws7}";
|
||||||
|
"${modifier}+8" = "workspace ${ws8}";
|
||||||
|
"${modifier}+9" = "workspace ${ws9}";
|
||||||
|
"${modifier}+0" = "workspace ${ws10}";
|
||||||
|
|
||||||
|
# Move windows
|
||||||
|
"${modifier}+Shift+1" =
|
||||||
|
"move container to workspace ${ws1}; workspace ${ws1}";
|
||||||
|
"${modifier}+Shift+2" =
|
||||||
|
"move container to workspace ${ws2}; workspace ${ws2}";
|
||||||
|
"${modifier}+Shift+3" =
|
||||||
|
"move container to workspace ${ws3}; workspace ${ws3}";
|
||||||
|
"${modifier}+Shift+4" =
|
||||||
|
"move container to workspace ${ws4}; workspace ${ws4}";
|
||||||
|
"${modifier}+Shift+5" =
|
||||||
|
"move container to workspace ${ws5}; workspace ${ws5}";
|
||||||
|
"${modifier}+Shift+6" =
|
||||||
|
"move container to workspace ${ws6}; workspace ${ws6}";
|
||||||
|
"${modifier}+Shift+7" =
|
||||||
|
"move container to workspace ${ws7}; workspace ${ws7}";
|
||||||
|
"${modifier}+Shift+8" =
|
||||||
|
"move container to workspace ${ws8}; workspace ${ws8}";
|
||||||
|
"${modifier}+Shift+9" =
|
||||||
|
"move container to workspace ${ws9}; workspace ${ws9}";
|
||||||
|
"${modifier}+Shift+0" =
|
||||||
|
"move container to workspace ${ws10}; workspace ${ws10}";
|
||||||
|
|
||||||
|
# Move screens
|
||||||
|
"${modifier}+Control+l" = "move workspace to output right";
|
||||||
|
"${modifier}+Control+h" = "move workspace to output left";
|
||||||
|
|
||||||
|
# Resizing
|
||||||
|
"${modifier}+r" = ''mode "resize"'';
|
||||||
|
"${modifier}+Control+Shift+h" =
|
||||||
|
"resize shrink width 10 px or 10 ppt";
|
||||||
|
"${modifier}+Control+Shift+j" =
|
||||||
|
"resize grow height 10 px or 10 ppt";
|
||||||
|
"${modifier}+Control+Shift+k" =
|
||||||
|
"resize shrink height 10 px or 10 ppt";
|
||||||
|
"${modifier}+Control+Shift+l" = "resize grow width 10 px or 10 ppt";
|
||||||
|
};
|
||||||
modes = { };
|
modes = { };
|
||||||
startup = [
|
startup = [
|
||||||
{
|
{
|
||||||
@ -100,15 +222,16 @@ in {
|
|||||||
notification = false;
|
notification = false;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
command = "i3-msg focus right, workspace ${workspaces."2"}";
|
command =
|
||||||
|
"i3-msg workspace ${ws2}, move workspace to output right";
|
||||||
notification = false;
|
notification = false;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
command = "i3-msg focus left, workspace ${workspaces."1"}";
|
command =
|
||||||
|
"i3-msg workspace ${ws1}, move workspace to output left";
|
||||||
notification = false;
|
notification = false;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
terminal = config.terminal;
|
|
||||||
window = {
|
window = {
|
||||||
border = 0;
|
border = 0;
|
||||||
hideEdgeBorders = "smart";
|
hideEdgeBorders = "smart";
|
||||||
@ -116,74 +239,22 @@ in {
|
|||||||
};
|
};
|
||||||
workspaceAutoBackAndForth = false;
|
workspaceAutoBackAndForth = false;
|
||||||
workspaceOutputAssign = [ ];
|
workspaceOutputAssign = [ ];
|
||||||
|
# gaps = {
|
||||||
|
# bottom = 8;
|
||||||
|
# top = 8;
|
||||||
|
# left = 8;
|
||||||
|
# right = 8;
|
||||||
|
# horizontal = 15;
|
||||||
|
# vertical = 15;
|
||||||
|
# inner = 15;
|
||||||
|
# outer = 0;
|
||||||
|
# smartBorders = "off";
|
||||||
|
# smartGaps = false;
|
||||||
|
# };
|
||||||
};
|
};
|
||||||
extraConfig = "";
|
extraConfig = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
services.sxhkd.keybindings = let
|
|
||||||
|
|
||||||
# Shortcuts
|
|
||||||
i3-msg = "${pkgs.i3}/bin/i3-msg";
|
|
||||||
|
|
||||||
in {
|
|
||||||
|
|
||||||
# Window navigation
|
|
||||||
"super + {_,shift +}{h,j,k,l}" =
|
|
||||||
''${i3-msg} "{focus,move} {left,down,up,right}"'';
|
|
||||||
"super + {_,shift +}{Left,Down,Up,Right}" =
|
|
||||||
''${i3-msg} "{focus,move} {left,down,up,right}"'';
|
|
||||||
"super + q" = ''${i3-msg} "kill"'';
|
|
||||||
"super + f" = ''${i3-msg} "fullscreen toggle"'';
|
|
||||||
|
|
||||||
# Screen management
|
|
||||||
"super + control + l" = ''${i3-msg} "move workspace to output right"'';
|
|
||||||
"super + control + h" = ''${i3-msg} "move workspace to output left"'';
|
|
||||||
|
|
||||||
# Window layouts and tiling
|
|
||||||
"super + {i,v}" = ''${i3-msg} "split {h,v}"'';
|
|
||||||
"super + {s,t,e}" =
|
|
||||||
''${i3-msg} "layout {stacking,tabbed,toggle split}"'';
|
|
||||||
"super + shift + space" = ''${i3-msg} "floating toggle"'';
|
|
||||||
"super + control + space" = ''${i3-msg} "focus mode_toggle"'';
|
|
||||||
"super + a" = ''${i3-msg} "focus parent"'';
|
|
||||||
|
|
||||||
# Launch terminal
|
|
||||||
"super + Return" = ''
|
|
||||||
${i3-msg} "exec --no-startup-id ${config.terminal}; workspace ${
|
|
||||||
workspaces."2"
|
|
||||||
}; layout tabbed"'';
|
|
||||||
|
|
||||||
# Restart and reload
|
|
||||||
"super + shift + {c,r}" = ''${i3-msg} "{reload,restart}"'';
|
|
||||||
"super + shift + q" = ''
|
|
||||||
${pkgs.i3}/bin/i3-nagbar -t warning -m "Exit i3?" -B "Yes, exit i3" "${i3-msg} exit"'';
|
|
||||||
|
|
||||||
# Resize
|
|
||||||
"super + r : {h,j,k,l}" =
|
|
||||||
''${i3-msg} "resize {shrink,grow} width 10px or 10 ppt"'';
|
|
||||||
"super + r : {j,k}" =
|
|
||||||
''${i3-msg} "resize {shrink,grow} height 10px or 10 ppt"'';
|
|
||||||
|
|
||||||
} // (
|
|
||||||
|
|
||||||
# Bind navigation by number
|
|
||||||
let
|
|
||||||
bindWorkspace = num: workspace:
|
|
||||||
lib.attrsets.nameValuePair ("super + ${num}")
|
|
||||||
(''${i3-msg} "workspace ${workspace}"'');
|
|
||||||
in lib.mapAttrs' bindWorkspace workspaces
|
|
||||||
|
|
||||||
) // (
|
|
||||||
|
|
||||||
# Bind move container to workspace by number
|
|
||||||
let
|
|
||||||
bindWorkspace = num: workspace:
|
|
||||||
lib.attrsets.nameValuePair ("super + shift +${num}") (''
|
|
||||||
${i3-msg} "move container to workspace ${workspace}; workspace ${workspace}"'');
|
|
||||||
in lib.mapAttrs' bindWorkspace workspaces
|
|
||||||
|
|
||||||
);
|
|
||||||
|
|
||||||
programs.fish.functions = {
|
programs.fish.functions = {
|
||||||
update-lock-screen = lib.mkIf config.services.xserver.enable {
|
update-lock-screen = lib.mkIf config.services.xserver.enable {
|
||||||
description = "Update lockscreen with wallpaper";
|
description = "Update lockscreen with wallpaper";
|
||||||
@ -204,20 +275,17 @@ in {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
lockScreenCommand =
|
|
||||||
"${pkgs.betterlockscreen}/bin/betterlockscreen --lock --display 1 --blur 0.5 --span";
|
|
||||||
|
|
||||||
# Ref: https://github.com/betterlockscreen/betterlockscreen/blob/next/system/betterlockscreen%40.service
|
# Ref: https://github.com/betterlockscreen/betterlockscreen/blob/next/system/betterlockscreen%40.service
|
||||||
systemd.services.lock = {
|
systemd.services.lock = {
|
||||||
enable = config.services.xserver.enable;
|
enable = config.services.xserver.enable;
|
||||||
description = "Lock the screen before suspend";
|
description = "Lock the screen on resume from suspend";
|
||||||
before = [ "sleep.target" "suspend.target" ];
|
before = [ "sleep.target" "suspend.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
User = config.user;
|
User = config.user;
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
Environment = "DISPLAY=:0";
|
Environment = "DISPLAY=:0";
|
||||||
TimeoutSec = "infinity";
|
TimeoutSec = "infinity";
|
||||||
ExecStart = config.lockScreenCommand;
|
ExecStart = lockCmd;
|
||||||
ExecStartPost = "${pkgs.coreutils-full}/bin/sleep 1";
|
ExecStartPost = "${pkgs.coreutils-full}/bin/sleep 1";
|
||||||
};
|
};
|
||||||
wantedBy = [ "sleep.target" "suspend.target" ];
|
wantedBy = [ "sleep.target" "suspend.target" ];
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
{ config, pkgs, ... }: {
|
|
||||||
|
|
||||||
home-manager.users.${config.user} = {
|
|
||||||
services.sxhkd = {
|
|
||||||
enable = true;
|
|
||||||
keybindings = {
|
|
||||||
|
|
||||||
# Adjust screen brightness (TODO: replace with pkgs.light?)
|
|
||||||
"shift + {F11,F12}" = ''
|
|
||||||
${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 {- 30,+ 30} && sleep 1; \\
|
|
||||||
${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 {- 30,+ 30}
|
|
||||||
'';
|
|
||||||
"XF86MonBrightness{Down,Up}" = ''
|
|
||||||
${pkgs.ddcutil}/bin/ddcutil --display 1 setvcp 10 {- 30,+ 30} && sleep 1; \\
|
|
||||||
${pkgs.ddcutil}/bin/ddcutil --display 2 setvcp 10 {- 30,+ 30}
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Media controls
|
|
||||||
"XF86Audio{Play,Stop,Next,Prev}" =
|
|
||||||
"${pkgs.playerctl}/bin/playerctl {play-pause,stop,next,previous}";
|
|
||||||
|
|
||||||
# Toggle bar
|
|
||||||
"super + b" = config.toggleBarCommand;
|
|
||||||
|
|
||||||
# Launchers
|
|
||||||
"super + space" = config.launcherCommand;
|
|
||||||
"super + shift + s" = config.systemdSearch;
|
|
||||||
"super + shift + a" = config.audioSwitchCommand;
|
|
||||||
"alt + Tab" = config.altTabCommand;
|
|
||||||
"super + shift + period" = config.powerCommand;
|
|
||||||
"super + shift + m" = config.brightnessCommand;
|
|
||||||
"super + c" = config.calculatorCommand;
|
|
||||||
"super + shift + x" = config.lockScreenCommand;
|
|
||||||
"super + alt + h" =
|
|
||||||
"${config.terminal} sh -c '${pkgs.home-manager}/bin/home-manager switch --flake ${config.dotfilesPath}#${config.networking.hostName} || read'";
|
|
||||||
"super + alt + r" =
|
|
||||||
"${config.terminal} sh -c 'doas nixos-rebuild switch --flake ${config.dotfilesPath}#${config.networking.hostName} || read'";
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
xsession.windowManager.i3.config.startup = [{
|
|
||||||
|
|
||||||
command = "pkill sxhkd; sxhkd";
|
|
||||||
always = true;
|
|
||||||
notification = false;
|
|
||||||
}];
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
@ -1,6 +1,6 @@
|
|||||||
{ config, pkgs, lib, ... }: {
|
{ config, pkgs, lib, ... }: {
|
||||||
|
|
||||||
config = lib.mkIf config.services.xserver.enable {
|
config = lib.mkIf (pkgs.stdenv.isLinux && config.services.xserver.enable) {
|
||||||
home-manager.users.${config.user} = {
|
home-manager.users.${config.user} = {
|
||||||
|
|
||||||
services.picom = {
|
services.picom = {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{ config, pkgs, lib, ... }: {
|
{ config, pkgs, lib, ... }: {
|
||||||
|
|
||||||
config = lib.mkIf config.services.xserver.enable {
|
config = lib.mkIf (pkgs.stdenv.isLinux && config.services.xserver.enable) {
|
||||||
|
|
||||||
toggleBarCommand = "polybar-msg cmd toggle";
|
toggleBarCommand = "polybar-msg cmd toggle";
|
||||||
|
|
||||||
|
@ -8,10 +8,11 @@ in {
|
|||||||
|
|
||||||
imports = [ ./rofi/power.nix ./rofi/brightness.nix ];
|
imports = [ ./rofi/power.nix ./rofi/brightness.nix ];
|
||||||
|
|
||||||
config = lib.mkIf config.services.xserver.enable {
|
config = lib.mkIf (pkgs.stdenv.isLinux && config.services.xserver.enable) {
|
||||||
|
|
||||||
# Set the Rofi-Systemd terminal for viewing logs
|
# Set the Rofi-Systemd terminal for viewing logs
|
||||||
environment.sessionVariables.ROFI_SYSTEMD_TERM = config.terminal;
|
environment.sessionVariables.ROFI_SYSTEMD_TERM =
|
||||||
|
lib.mkIf config.kitty.enable "${pkgs.kitty}/bin/kitty";
|
||||||
|
|
||||||
home-manager.users.${config.user} = {
|
home-manager.users.${config.user} = {
|
||||||
|
|
||||||
@ -23,13 +24,6 @@ in {
|
|||||||
programs.rofi = {
|
programs.rofi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
cycle = true;
|
cycle = true;
|
||||||
extraConfig = {
|
|
||||||
show-icons = true;
|
|
||||||
kb-cancel = "Escape,Super+space";
|
|
||||||
modi = "window,run,ssh,emoji,calc,systemd";
|
|
||||||
sort = true;
|
|
||||||
# levenshtein-sort = true;
|
|
||||||
};
|
|
||||||
location = "center";
|
location = "center";
|
||||||
pass = { };
|
pass = { };
|
||||||
plugins = [ pkgs.rofi-calc pkgs.rofi-emoji pkgs.rofi-systemd ];
|
plugins = [ pkgs.rofi-calc pkgs.rofi-emoji pkgs.rofi-systemd ];
|
||||||
@ -65,7 +59,7 @@ in {
|
|||||||
border = mkLiteral "0px";
|
border = mkLiteral "0px";
|
||||||
border-radius = mkLiteral "0px";
|
border-radius = mkLiteral "0px";
|
||||||
border-color = mkLiteral config.theme.colors.base04;
|
border-color = mkLiteral config.theme.colors.base04;
|
||||||
children = map mkLiteral [ "inputbar" "listview" ];
|
children = map mkLiteral [ "inputbar" "message" "listview" ];
|
||||||
spacing = mkLiteral "10px";
|
spacing = mkLiteral "10px";
|
||||||
padding = mkLiteral "10px";
|
padding = mkLiteral "10px";
|
||||||
};
|
};
|
||||||
@ -149,9 +143,15 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
terminal = config.terminal;
|
|
||||||
xoffset = 0;
|
xoffset = 0;
|
||||||
yoffset = -20;
|
yoffset = -20;
|
||||||
|
extraConfig = {
|
||||||
|
show-icons = true;
|
||||||
|
kb-cancel = "Escape,Super+space";
|
||||||
|
modi = "window,run,ssh,emoji,calc,systemd";
|
||||||
|
sort = true;
|
||||||
|
# levenshtein-sort = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
home.file.".local/share/rofi/themes" = {
|
home.file.".local/share/rofi/themes" = {
|
||||||
|
0
modules/nixos/graphical/rofi/brightness.nix
Normal file → Executable file
0
modules/nixos/graphical/rofi/brightness.nix
Normal file → Executable file
0
modules/nixos/graphical/rofi/power.nix
Normal file → Executable file
0
modules/nixos/graphical/rofi/power.nix
Normal file → Executable file
@ -1,25 +0,0 @@
|
|||||||
{ config, lib, ... }: {
|
|
||||||
|
|
||||||
config = lib.mkIf config.gui.enable {
|
|
||||||
|
|
||||||
programs.sway = {
|
|
||||||
enable = true;
|
|
||||||
package = null; # Use home-manager Sway instead
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.users.${config.user} = {
|
|
||||||
|
|
||||||
wayland.windowManager.sway = {
|
|
||||||
enable = true;
|
|
||||||
config =
|
|
||||||
config.home-manager.users.${config.user}.xsession.windowManager.i3.config;
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
# TODO: swaybg
|
|
||||||
# TODO: swaylock
|
|
||||||
|
|
||||||
}
|
|
5
overlays/age.nix
Normal file
5
overlays/age.nix
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# Pin age because it is failing to build
|
||||||
|
|
||||||
|
inputs: _final: prev: {
|
||||||
|
age = prev.age.overrideAttrs (old: { src = inputs.age; });
|
||||||
|
}
|
@ -22,7 +22,7 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
in {
|
in {
|
||||||
caddy-cloudflare = prev.buildGo118Module {
|
caddy-cloudflare = prev.buildGo120Module {
|
||||||
pname = "caddy-cloudflare";
|
pname = "caddy-cloudflare";
|
||||||
version = prev.caddy.version;
|
version = prev.caddy.version;
|
||||||
runVend = true;
|
runVend = true;
|
||||||
@ -31,7 +31,7 @@ in {
|
|||||||
|
|
||||||
src = prev.caddy.src;
|
src = prev.caddy.src;
|
||||||
|
|
||||||
vendorSha256 = "sha256:CrHqJcJ0knX+txQ5qvzW4JrU8vfi3FO3M/xtislIC1M=";
|
vendorSha256 = "sha256:mwIsWJYKuEZpOU38qZOG1LEh4QpK4EO0/8l4UGsroU8=";
|
||||||
|
|
||||||
overrideModAttrs = (_: {
|
overrideModAttrs = (_: {
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
|
@ -4,14 +4,17 @@ inputs: _final: prev: {
|
|||||||
news = prev.fetchNextcloudApp {
|
news = prev.fetchNextcloudApp {
|
||||||
url = inputs.nextcloud-news.outPath;
|
url = inputs.nextcloud-news.outPath;
|
||||||
sha256 = inputs.nextcloud-news.narHash;
|
sha256 = inputs.nextcloud-news.narHash;
|
||||||
|
license = "agpl3Plus";
|
||||||
};
|
};
|
||||||
external = prev.fetchNextcloudApp {
|
external = prev.fetchNextcloudApp {
|
||||||
url = inputs.nextcloud-external.outPath;
|
url = inputs.nextcloud-external.outPath;
|
||||||
sha256 = inputs.nextcloud-external.narHash;
|
sha256 = inputs.nextcloud-external.narHash;
|
||||||
|
license = "agpl3Plus";
|
||||||
};
|
};
|
||||||
cookbook = prev.fetchNextcloudApp {
|
cookbook = prev.fetchNextcloudApp {
|
||||||
url = inputs.nextcloud-cookbook.outPath;
|
url = inputs.nextcloud-cookbook.outPath;
|
||||||
sha256 = inputs.nextcloud-cookbook.narHash;
|
sha256 = inputs.nextcloud-cookbook.narHash;
|
||||||
|
license = "agpl3Plus";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
15
overlays/proton-ge.nix
Normal file
15
overlays/proton-ge.nix
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# Adapted from:
|
||||||
|
# https://github.com/Shawn8901/nix-configuration/blob/182a45a6b193143ff7ff8e78bb66f7b869ea48d4/packages/proton-ge-custom/default.nix
|
||||||
|
# Based on: https://github.com/NixOS/nixpkgs/issues/73323
|
||||||
|
|
||||||
|
inputs: _final: prev: {
|
||||||
|
proton-ge-custom = prev.stdenv.mkDerivation (finalAttrs: rec {
|
||||||
|
name = "proton-ge-custom";
|
||||||
|
version = "0.1"; # Made up
|
||||||
|
src = inputs.proton-ge;
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp -r ${src}/* -t $out/bin/
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
}
|
Reference in New Issue
Block a user