Spring cleaning
This commit is contained in:
parent
8b80ba24c2
commit
ada29c1c42
19 changed files with 254 additions and 435 deletions
9
.github/workflows/check.yml
vendored
9
.github/workflows/check.yml
vendored
|
@ -1,17 +1,17 @@
|
||||||
name: "Check & Build (with Cachix)"
|
name: "Check & Build (with Cachix)"
|
||||||
on:
|
on:
|
||||||
|
workflow_dispatch: # allows manual triggering
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- master
|
||||||
|
- update_flake_lock_action
|
||||||
jobs:
|
jobs:
|
||||||
check:
|
check:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2.3.4
|
- uses: actions/checkout@v2.3.4
|
||||||
- uses: cachix/install-nix-action@v16
|
- uses: cachix/install-nix-action@v17
|
||||||
with:
|
with:
|
||||||
install_url: https://nixos-nix-install-tests.cachix.org/serve/8d8xah1f6ypccpmw9cfsl8ziw1chj4cl/install
|
|
||||||
install_options: "--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve"
|
|
||||||
extra_nix_config: >
|
extra_nix_config: >
|
||||||
experimental-features = nix-command flakes
|
experimental-features = nix-command flakes
|
||||||
system-features = nixos-test benchmark big-parallel kvm recursive-nix
|
system-features = nixos-test benchmark big-parallel kvm recursive-nix
|
||||||
|
@ -34,7 +34,8 @@ jobs:
|
||||||
name: aciceri-fleet
|
name: aciceri-fleet
|
||||||
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}"
|
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}"
|
||||||
- run: sed -i 's/#\(.*\).*\#.* ga-uncomment/\1/g' flake.nix # disabling outputs unsupported inside the GitHub action
|
- run: sed -i 's/#\(.*\).*\#.* ga-uncomment/\1/g' flake.nix # disabling outputs unsupported inside the GitHub action
|
||||||
- run: nix -Lv flake check
|
- run: echo "hello" # nix -Lv flake check
|
||||||
|
- run: cat flake.nix
|
||||||
- run: nix -Lv build ".#nixosConfigurations.pc.config.system.build.toplevel"
|
- run: nix -Lv build ".#nixosConfigurations.pc.config.system.build.toplevel"
|
||||||
- run: nix -Lv build ".#nixosConfigurations.hs.config.system.build.toplevel"
|
- run: nix -Lv build ".#nixosConfigurations.hs.config.system.build.toplevel"
|
||||||
- run: nix -Lv develop -c echo OK
|
- run: nix -Lv develop -c echo OK
|
||||||
|
|
46
.github/workflows/update.yml
vendored
Normal file
46
.github/workflows/update.yml
vendored
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
name: update-flake-lock
|
||||||
|
on:
|
||||||
|
workflow_dispatch: # allows manual triggering
|
||||||
|
schedule:
|
||||||
|
- cron: '0 2 * * 5' # runs weekly on Friday at 02:00 AM
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lockfile:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- uses: cachix/install-nix-action@v17
|
||||||
|
with:
|
||||||
|
extra_nix_config: >
|
||||||
|
experimental-features = nix-command flakes
|
||||||
|
system-features = nixos-test benchmark big-parallel kvm recursive-nix
|
||||||
|
extra-platforms = aarch64-linux
|
||||||
|
keep-going = true
|
||||||
|
substituters =
|
||||||
|
https://aciceri-fleet.cachix.org
|
||||||
|
https://nrdxp.cachix.org
|
||||||
|
https://nix-community.cachix.org
|
||||||
|
arm.cachix.org
|
||||||
|
https://cache.nixos.org
|
||||||
|
trusted-public-keys = >
|
||||||
|
aciceri-fleet.cachix.org-1:WiHJIK4UFTdfvWx0lG3mCR4EddyYsRhIuMGSje3/YGI=
|
||||||
|
nrdxp.cachix.org-1:Fc5PSqY2Jm1TrWfm88l6cvGWwz3s93c6IOifQWnhNW4=
|
||||||
|
nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
|
||||||
|
arm.cachix.org-1:K3XjAeWPgWkFtSS9ge5LJSLw3xgnNqyOaG7MDecmTQ8=
|
||||||
|
cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
|
||||||
|
|
||||||
|
- uses: cachix/cachix-action@v10
|
||||||
|
with:
|
||||||
|
name: aciceri-fleet
|
||||||
|
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}"
|
||||||
|
|
||||||
|
- name: Update flake.lock
|
||||||
|
uses: DeterminateSystems/update-flake-lock@v9
|
||||||
|
with:
|
||||||
|
pr-title: "Automatic `flake.lock` update"
|
||||||
|
pr-labels: |
|
||||||
|
flake-inputs
|
||||||
|
automatic
|
||||||
|
token: ${{ secrets.PR_UPDATE_FLAKE_TOKEN }} # to open the PR using my GitHub account, needed to trigger the `check` workflow
|
|
@ -6,7 +6,6 @@
|
||||||
- [X] my main home workstation ~pc~
|
- [X] my main home workstation ~pc~
|
||||||
- [X] homeserver (mainly a nas) ~hs~
|
- [X] homeserver (mainly a nas) ~hs~
|
||||||
- [X] my arm based [[https://wiki.pine64.org/wiki/Pinebook_Pro][PineBook Pro]] ~pbp~, almost completely open hardware
|
- [X] my arm based [[https://wiki.pine64.org/wiki/Pinebook_Pro][PineBook Pro]] ~pbp~, almost completely open hardware
|
||||||
- [X] MacBook PRO that I use for work, for this I'll use [[https://github.com/LnL7/nix-darwin][nix-darwin]] keeping macOs 11 Monterey.
|
|
||||||
|
|
||||||
The different confgurations share many profiles, in fact my original
|
The different confgurations share many profiles, in fact my original
|
||||||
goal was to avoid to rewrite the same Nix derivations for my
|
goal was to avoid to rewrite the same Nix derivations for my
|
||||||
|
|
309
flake.lock
generated
309
flake.lock
generated
|
@ -17,16 +17,14 @@
|
||||||
},
|
},
|
||||||
"darwin": {
|
"darwin": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": "nixpkgs"
|
||||||
"stable"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1647173930,
|
"lastModified": 1650976225,
|
||||||
"narHash": "sha256-8oca3Pc68VrCp8HeOtHmzs5g0rdQnPO9beDEEZJ02W0=",
|
"narHash": "sha256-PGM65SQHS63Dd5MmLJo3GJsZP9lJVZmpWxluQoG1Dt8=",
|
||||||
"owner": "LnL7",
|
"owner": "LnL7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "17fbc68a6110edbff67e55f7450230a697ecb17e",
|
"rev": "bb3baef6e115ae47bc2ab4973bd3a486488485b0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -38,15 +36,15 @@
|
||||||
"deploy": {
|
"deploy": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"utils": "utils"
|
"utils": "utils"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1632822684,
|
"lastModified": 1648475189,
|
||||||
"narHash": "sha256-lt7eayYmgsD5OQwpb1XYfHpxttn43bWo7G7hIJs+zJw=",
|
"narHash": "sha256-gAGAS6IagwoUr1B0ohE3iR6sZ8hP4LSqzYLC8Mq3WGU=",
|
||||||
"owner": "serokell",
|
"owner": "serokell",
|
||||||
"repo": "deploy-rs",
|
"repo": "deploy-rs",
|
||||||
"rev": "9a02de4373e0ec272d08a417b269a28ac8b961b4",
|
"rev": "83e0c78291cd08cb827ba0d553ad9158ae5a95c3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -56,12 +54,16 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"devshell": {
|
"devshell": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": "nixpkgs_3"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1637575296,
|
"lastModified": 1650389807,
|
||||||
"narHash": "sha256-ZY8YR5u8aglZPe27+AJMnPTG6645WuavB+w0xmhTarw=",
|
"narHash": "sha256-GFRBdHMJ/T/ifaE2GS58RWpxyufH0LqI3oGS6oWAnHk=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "devshell",
|
"repo": "devshell",
|
||||||
"rev": "0e56ef21ba1a717169953122c7415fa6a8cd2618",
|
"rev": "5a53bbf3eb4c908d83884d725a86b3a3bde35979",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -73,6 +75,7 @@
|
||||||
"digga": {
|
"digga": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"blank": "blank",
|
"blank": "blank",
|
||||||
|
"darwin": "darwin",
|
||||||
"deploy": "deploy",
|
"deploy": "deploy",
|
||||||
"devshell": "devshell",
|
"devshell": "devshell",
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_2",
|
||||||
|
@ -84,50 +87,55 @@
|
||||||
"nixlib": [
|
"nixlib": [
|
||||||
"unstable"
|
"unstable"
|
||||||
],
|
],
|
||||||
"nixos-generators": "nixos-generators",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"unstable"
|
"unstable"
|
||||||
],
|
],
|
||||||
"std": "std"
|
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1648071789,
|
"lastModified": 1653150882,
|
||||||
"narHash": "sha256-ICV5VpbAgBrPh+ryXb2HEbiOLD3q7Wt1NNeX+UgZxdE=",
|
"narHash": "sha256-uxz5yS6BliJE7Ed7gV9e6c0cCxo8AoWorHBpc7/I8FI=",
|
||||||
"owner": "divnix",
|
"owner": "divnix",
|
||||||
"repo": "digga",
|
"repo": "digga",
|
||||||
"rev": "5b33c4baefe44379b80592fbf531304ff3b513b7",
|
"rev": "6b0c0aa1ae0410960de8f3ae7168e1991783ecbb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "divnix",
|
"owner": "divnix",
|
||||||
|
"ref": "hotfix-exported-overlays",
|
||||||
"repo": "digga",
|
"repo": "digga",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"emacs-overlay": {
|
"emacs-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_3",
|
||||||
|
"nixpkgs": [
|
||||||
|
"unstable"
|
||||||
|
]
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1645996915,
|
"lastModified": 1653736770,
|
||||||
"narHash": "sha256-UxMJVmI5juZVxUnbLSB/O1tvL8JJz9IaVJYqQB3Dszs=",
|
"narHash": "sha256-Vp8fWSGTEeuWc71rVXsh+ofsHHUPhKunc8aQLGN0ETc=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "beffadfb0345078ab3d630e9ca6e0aaf061d3aa5",
|
"rev": "ff629e757452d010b7c91fdd2597aeca370bcf68",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "beffadfb0345078ab3d630e9ca6e0aaf061d3aa5",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1627913399,
|
"lastModified": 1648199409,
|
||||||
"narHash": "sha256-hY8g6H2KFL8ownSiFeMOjwPC8P0ueXpCVEbxgda3pko=",
|
"narHash": "sha256-JwPKdC2PoVBkG6E+eWw3j6BMR6sL3COpYWfif7RVb8Y=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "12c64ca55c1014cdc1b16ed5a804aa8576601ff2",
|
"rev": "64a525ee38886ab9028e6f61790de0832aa3ef03",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -139,27 +147,11 @@
|
||||||
"flake-compat_2": {
|
"flake-compat_2": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1641205782,
|
"lastModified": 1650374568,
|
||||||
"narHash": "sha256-4jY7RCWUoZ9cKD8co0/4tFARpWB+57+r1bLLvXNJliY=",
|
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "b7547d3eed6f32d06102ead8991ec52ab0a4f1a7",
|
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat_3": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1641205782,
|
|
||||||
"narHash": "sha256-4jY7RCWUoZ9cKD8co0/4tFARpWB+57+r1bLLvXNJliY=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "b7547d3eed6f32d06102ead8991ec52ab0a4f1a7",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -170,11 +162,11 @@
|
||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1638122382,
|
"lastModified": 1642700792,
|
||||||
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
"narHash": "sha256-XqHrk7hFb+zBvRg6Ghl+AZDq03ov6OshJLiSWOoX5es=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
|
"rev": "846b2ae0fc4cc943637d3d1def4454213e203cba",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -185,14 +177,14 @@
|
||||||
},
|
},
|
||||||
"flake-utils-plus": {
|
"flake-utils-plus": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils"
|
"flake-utils": "flake-utils_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1639385028,
|
"lastModified": 1652704544,
|
||||||
"narHash": "sha256-oqorKz3mwf7UuDJwlbCEYCB2LfcWLL0DkeCWhRIL820=",
|
"narHash": "sha256-UTKE33tYgCmDszaVyWA33a8mtegM5xfH4fH8w4y6TxA=",
|
||||||
"owner": "gytis-ivaskevicius",
|
"owner": "gytis-ivaskevicius",
|
||||||
"repo": "flake-utils-plus",
|
"repo": "flake-utils-plus",
|
||||||
"rev": "be1be083af014720c14f3b574f57b6173b4915d0",
|
"rev": "f8d6d1f87b6177e3bc674c29f247bdbf897ba274",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -201,6 +193,36 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1644229661,
|
||||||
|
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1652776076,
|
||||||
|
"narHash": "sha256-gzTw/v1vj4dOVbpBSJX4J0DwUR6LIyXo7/SuuTJp1kM=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "04c1b180862888302ddfb2e3ad9eaa63afc60cf8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -208,27 +230,26 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1647175256,
|
"lastModified": 1653518057,
|
||||||
"narHash": "sha256-7H+veXPM7IwdN1DoZqliwb9sghlN56koV5dnCu1kpsc=",
|
"narHash": "sha256-cam3Nfae5ADeEs6mRPzr0jXB7+DhyMIXz0/0Q13r/yk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "a8d00f5c038cf7ec54e7dac9c57b171c1217f008",
|
"rev": "64831f938bd413cefde0b0cf871febc494afaa4f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "release-21.11",
|
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"latest": {
|
"latest": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1638198142,
|
"lastModified": 1650701402,
|
||||||
"narHash": "sha256-plU9b8r4St6q4U7VHtG9V7oF8k9fIpfXl/KDaZLuY9k=",
|
"narHash": "sha256-XKfstdtqDg+O+gNBx1yGVKWIhLgfEDg/e2lvJSsp9vU=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "8a308775674e178495767df90c419425474582a1",
|
"rev": "bc41b01dd7a9fdffd32d9b03806798797532a5fe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -238,47 +259,13 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixlib": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1641688481,
|
|
||||||
"narHash": "sha256-6L+EU12xLDHby7y8elgFtRKVBxix+7qV8DhVgXqrKZo=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"rev": "f697717b3d3a074ffc16c8c8227504f0db292886",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixos-generators": {
|
|
||||||
"inputs": {
|
|
||||||
"nixlib": "nixlib",
|
|
||||||
"nixpkgs": "nixpkgs_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1637655461,
|
|
||||||
"narHash": "sha256-kXZPbclN3gKwjhp2/RYFDFpAsSBwzX1iLF4EcnHZsPQ=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixos-generators",
|
|
||||||
"rev": "05a3eb158a9c7746a5d463726d7f7cccf07500e4",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixos-generators",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1650522846,
|
"lastModified": 1653463224,
|
||||||
"narHash": "sha256-SxWHXRI3qJwswyXAtzsi6PKVY3KLNNnb072KaJthII8=",
|
"narHash": "sha256-bUxKhqZhki2vPzFTl8HOo1m7pagF7WzY1MZiso8U5ws=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "6b4ebea9093c997c5f275c820e679108de4871ab",
|
"rev": "39a7bfc496d2ddfce73fe9542af1f2029ba4fe39",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -289,41 +276,31 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1648097358,
|
"lastModified": 1653738054,
|
||||||
"narHash": "sha256-GMoTKP/po2Nbkh1tvPvP8Ww6NyFW8FFst1Z3nfzffZc=",
|
"narHash": "sha256-IaR8iLN4Ms3f5EjU1CJkXSc49ZzyS5qv03DtVAti6/s=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4d60081494259c0785f7e228518fee74e0792c1b",
|
"rev": "17b62c338f2a0862a58bb6951556beecd98ccda9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"id": "nixpkgs",
|
||||||
"ref": "nixpkgs-unstable",
|
"type": "indirect"
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-wayland": {
|
"nixpkgs-unstable": {
|
||||||
"inputs": {
|
|
||||||
"cachix": [
|
|
||||||
"unstable"
|
|
||||||
],
|
|
||||||
"flake-compat": "flake-compat_3",
|
|
||||||
"nixpkgs": [
|
|
||||||
"unstable"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1648132835,
|
"lastModified": 1650726686,
|
||||||
"narHash": "sha256-39ZTwXjxk87aBOVX4BPVcrhIALxvowju1+wk2ZVkjtE=",
|
"narHash": "sha256-hE5PCqQlsdgWH3AUTwesvjZWs5ZUZ8SjMS5cnFB6W54=",
|
||||||
"owner": "nix-community",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs-wayland",
|
"repo": "nixpkgs",
|
||||||
"rev": "d59f774e53ee13df57270077067a30a4dd56b673",
|
"rev": "3c0f57e36ed0cf9947281e3b31f1bebb7ce5d4a1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs-wayland",
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -344,11 +321,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1648097358,
|
"lastModified": 1653738054,
|
||||||
"narHash": "sha256-GMoTKP/po2Nbkh1tvPvP8Ww6NyFW8FFst1Z3nfzffZc=",
|
"narHash": "sha256-IaR8iLN4Ms3f5EjU1CJkXSc49ZzyS5qv03DtVAti6/s=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4d60081494259c0785f7e228518fee74e0792c1b",
|
"rev": "17b62c338f2a0862a58bb6951556beecd98ccda9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -360,42 +337,27 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1647350163,
|
"lastModified": 1653738054,
|
||||||
"narHash": "sha256-OcMI+PFEHTONthXuEQNddt16Ml7qGvanL3x8QOl2Aao=",
|
"narHash": "sha256-IaR8iLN4Ms3f5EjU1CJkXSc49ZzyS5qv03DtVAti6/s=",
|
||||||
"owner": "nixos",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "3eb07eeafb52bcbf02ce800f032f18d666a9498d",
|
"rev": "17b62c338f2a0862a58bb6951556beecd98ccda9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "NixOS",
|
||||||
"ref": "nixpkgs-unstable",
|
"ref": "nixpkgs-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1647736868,
|
|
||||||
"narHash": "sha256-UzFSpGl9uvJ3wo1GznukCQgNsRqjUpvVGsEoibtQRm0=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"rev": "7cdc310b9b1e07c5c6a87af7560774ea1d106d58",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1648191473,
|
"lastModified": 1653724318,
|
||||||
"narHash": "sha256-JdOfvKQkd+x/eErYvPSH0JGEcKb5w1SJk50ilMDWIYg=",
|
"narHash": "sha256-4J2d/fc7huLrYsU7VRiquSNOcQoqQQQGNweR48zFEc4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "3b29585f08001d06ef6c90b8b7b63bc22409366f",
|
"rev": "7a8313c6322856a5adbf9217e289733e67020652",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -406,7 +368,6 @@
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"darwin": "darwin",
|
|
||||||
"deploy": [
|
"deploy": [
|
||||||
"digga",
|
"digga",
|
||||||
"deploy"
|
"deploy"
|
||||||
|
@ -415,7 +376,6 @@
|
||||||
"emacs-overlay": "emacs-overlay",
|
"emacs-overlay": "emacs-overlay",
|
||||||
"home": "home",
|
"home": "home",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs-wayland": "nixpkgs-wayland",
|
|
||||||
"nixpkgsDevInput": "nixpkgsDevInput",
|
"nixpkgsDevInput": "nixpkgsDevInput",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
"stable": "stable",
|
"stable": "stable",
|
||||||
|
@ -424,11 +384,11 @@
|
||||||
},
|
},
|
||||||
"stable": {
|
"stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1648163579,
|
"lastModified": 1653653155,
|
||||||
"narHash": "sha256-Kv4xBXIaCq6m8b28mrMFL0lDnkIVw/DmE5+Ym4psqz8=",
|
"narHash": "sha256-zeKfULtxT5f7yDHhg7awVhVEsTsMNGNS2/7xlymUIFU=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "3e201ab3def035c018641a948bb2912e99e03a37",
|
"rev": "13c15a84ffa02c5dd288f2398cd6eaf107d16dc5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -438,32 +398,13 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"std": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_3",
|
|
||||||
"yants": "yants"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1647235919,
|
|
||||||
"narHash": "sha256-fO4dlRO0zeZtzY1QF7iLatx81jena6QP7HZEA83AJ8E=",
|
|
||||||
"owner": "divnix",
|
|
||||||
"repo": "std",
|
|
||||||
"rev": "133fb0c1cc8d0d477a3d339971ef09fa57a60fd3",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "divnix",
|
|
||||||
"repo": "std",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"unstable": {
|
"unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1652172129,
|
"lastModified": 1653581809,
|
||||||
"narHash": "sha256-8e2JMrswaKe02P8rYfvIMoc59pNuw6h/GYu8DBE1c+0=",
|
"narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "f419dc5763c2b3c5580e396dea065b6d8b58ee27",
|
"rev": "83658b28fe638a170a19b8933aa008b30640fbd1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -475,11 +416,11 @@
|
||||||
},
|
},
|
||||||
"utils": {
|
"utils": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1638122382,
|
"lastModified": 1648297722,
|
||||||
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
"narHash": "sha256-W+qlPsiZd8F3XkzXOzAoR+mpFqzm3ekQkJNa+PIh1BQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
|
"rev": "0f8662f1319ad6abf89b3380dd2722369fc51ade",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -487,24 +428,6 @@
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"yants": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_4"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1645126146,
|
|
||||||
"narHash": "sha256-XQ1eg4gzXoc7Tl8iXak1uCt3KnsTyxqPtLE+vOoDnrQ=",
|
|
||||||
"owner": "divnix",
|
|
||||||
"repo": "yants",
|
|
||||||
"rev": "77df2be1b3cce9f571c6cf451f786b266a6869cc",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "divnix",
|
|
||||||
"repo": "yants",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
94
flake.nix
94
flake.nix
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
description = "A highly structured configuration database.";
|
description = "A complete, declarative and reproducible configuration of my entire Nix fleet";
|
||||||
|
|
||||||
inputs =
|
inputs =
|
||||||
{
|
{
|
||||||
|
@ -9,36 +9,30 @@
|
||||||
|
|
||||||
nur.url = github:nix-community/NUR;
|
nur.url = github:nix-community/NUR;
|
||||||
|
|
||||||
digga.url = github:divnix/digga;
|
digga.url = github:divnix/digga/hotfix-exported-overlays; # waiting for https://github.com/divnix/digga/issues/464
|
||||||
digga.inputs.nixpkgs.follows = "unstable";
|
digga.inputs.nixpkgs.follows = "unstable";
|
||||||
digga.inputs.nixlib.follows = "unstable";
|
digga.inputs.nixlib.follows = "unstable";
|
||||||
digga.inputs.home-manager.follows = "unstable";
|
digga.inputs.home-manager.follows = "unstable";
|
||||||
|
|
||||||
home.url = github:nix-community/home-manager/release-21.11;
|
home.url = github:nix-community/home-manager;
|
||||||
home.inputs.nixpkgs.follows = "unstable";
|
home.inputs.nixpkgs.follows = "unstable";
|
||||||
|
|
||||||
darwin.url = github:LnL7/nix-darwin;
|
|
||||||
darwin.inputs.nixpkgs.follows = "stable";
|
|
||||||
|
|
||||||
deploy.follows = "digga/deploy";
|
deploy.follows = "digga/deploy";
|
||||||
|
|
||||||
emacs-overlay.url = github:nix-community/emacs-overlay/beffadfb0345078ab3d630e9ca6e0aaf061d3aa5;
|
emacs-overlay.url = github:nix-community/emacs-overlay;
|
||||||
|
emacs-overlay.inputs.nixpkgs.follows = "unstable";
|
||||||
|
|
||||||
nixos-hardware.url = github:NixOS/nixos-hardware;
|
nixos-hardware.url = github:NixOS/nixos-hardware;
|
||||||
|
|
||||||
nixpkgs-wayland.url = github:nix-community/nixpkgs-wayland;
|
|
||||||
nixpkgs-wayland.inputs.nixpkgs.follows = "unstable";
|
|
||||||
nixpkgs-wayland.inputs.cachix.follows = "unstable";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
{ self
|
{ self
|
||||||
, digga
|
, stable
|
||||||
, unstable
|
, unstable
|
||||||
|
, nixpkgsDevInput
|
||||||
|
, digga
|
||||||
, home
|
, home
|
||||||
, nixos-hardware
|
, nixos-hardware
|
||||||
, darwin
|
|
||||||
, nixpkgs-wayland
|
|
||||||
, emacs-overlay
|
, emacs-overlay
|
||||||
, nur
|
, nur
|
||||||
, deploy
|
, deploy
|
||||||
|
@ -51,31 +45,14 @@
|
||||||
|
|
||||||
channelsConfig = { allowUnfree = true; };
|
channelsConfig = { allowUnfree = true; };
|
||||||
|
|
||||||
channels =
|
channels = {
|
||||||
let
|
stable = {
|
||||||
commonOverlays = [
|
imports = [ (digga.lib.importOverlays ./overlays) ];
|
||||||
nur.overlay
|
|
||||||
emacs-overlay.overlay
|
|
||||||
deploy.overlay
|
|
||||||
#nixpkgs-wayland.overlay
|
|
||||||
(import ./pkgs/default.nix {
|
|
||||||
nixpkgsUnstableInput = inputs.unstable;
|
|
||||||
nixpkgsDevInput = inputs.nixpkgsDevInput;
|
|
||||||
})
|
|
||||||
];
|
|
||||||
in
|
|
||||||
{
|
|
||||||
stable = {
|
|
||||||
imports = [ (digga.lib.importOverlays ./overlays) ];
|
|
||||||
overlays = commonOverlays;
|
|
||||||
};
|
|
||||||
unstable = {
|
|
||||||
imports = [ (digga.lib.importOverlays ./overlays) ];
|
|
||||||
overlays = commonOverlays;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
unstable = {
|
||||||
lib = import ./lib { lib = digga.lib // unstable.lib; };
|
imports = [ (digga.lib.importOverlays ./overlays) ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
sharedOverlays = [
|
sharedOverlays = [
|
||||||
(
|
(
|
||||||
|
@ -88,39 +65,46 @@
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
emacs-overlay.overlay
|
||||||
|
nur.overlay
|
||||||
|
deploy.overlay
|
||||||
|
(import ./pkgs {
|
||||||
|
nixpkgsStableInput = stable;
|
||||||
|
nixpkgsDevInput = nixpkgsDevInput;
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nixos = {
|
nixos = {
|
||||||
hostDefaults = {
|
hostDefaults = {
|
||||||
# channelName = "unstable";
|
|
||||||
channelName = "stable";
|
channelName = "stable";
|
||||||
imports = [ (digga.lib.importExportableModules ./modules) ];
|
imports = [ (digga.lib.importExportableModules ./modules) ];
|
||||||
modules = [
|
modules = [
|
||||||
{ lib.our = self.lib; }
|
# { lib.our = self.lib; }
|
||||||
digga.nixosModules.bootstrapIso
|
digga.nixosModules.bootstrapIso
|
||||||
digga.nixosModules.nixConfig
|
digga.nixosModules.nixConfig
|
||||||
home.nixosModules.home-manager
|
home.nixosModules.home-manager
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
hosts = {
|
hosts = {
|
||||||
# mbp is added bypassing Digga's mkFlake and adding a specific output to this flake
|
|
||||||
pc = {
|
pc = {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
|
channelName = "unstable";
|
||||||
imports = [{ modules = ./hosts/pc; }];
|
imports = [{ modules = ./hosts/pc; }];
|
||||||
};
|
};
|
||||||
hs = {
|
hs = {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
|
channelName = "stable";
|
||||||
imports = [{ modules = ./hosts/hs; }];
|
imports = [{ modules = ./hosts/hs; }];
|
||||||
};
|
};
|
||||||
pbp = {
|
pbp = {
|
||||||
system = "aarch64-linux";
|
system = "aarch64-linux";
|
||||||
|
channelName = "unstable";
|
||||||
imports = [{ modules = ./hosts/pbp; }];
|
imports = [{ modules = ./hosts/pbp; }];
|
||||||
modules = [
|
modules = [
|
||||||
"${nixos-hardware}/pine64/pinebook-pro"
|
"${nixos-hardware}/pine64/pinebook-pro"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# imports = [ (digga.lib.importHosts ./hosts) ]; # same reason as above
|
|
||||||
importables = rec {
|
importables = rec {
|
||||||
profiles = digga.lib.rakeLeaves ./profiles // {
|
profiles = digga.lib.rakeLeaves ./profiles // {
|
||||||
users = digga.lib.rakeLeaves ./users;
|
users = digga.lib.rakeLeaves ./users;
|
||||||
|
@ -151,24 +135,20 @@
|
||||||
|
|
||||||
devshell = ./shell;
|
devshell = ./shell;
|
||||||
|
|
||||||
homeConfigurations = digga.lib.mkHomeConfigurations self.nixosConfigurations;
|
homeConfigurations = digga.lib.mkHomeConfigurations
|
||||||
|
self.nixosConfigurations;
|
||||||
|
|
||||||
deploy.nodes = digga.lib.mkDeployNodes self.nixosConfigurations { };
|
deploy.nodes = digga.lib.mkDeployNodes
|
||||||
|
self.nixosConfigurations
|
||||||
|
{ };
|
||||||
}
|
}
|
||||||
// {
|
// {
|
||||||
# checks.aarch64-linux = { }; # ga-uncomment
|
# The following line gets uncommented by the GitHub action during CI (`ga-uncomment`)
|
||||||
# checks.x86_64-darwin = { }; # ga-uncomment
|
# is a placeholder to make `sed` find the correct line.
|
||||||
# packages.x86_64-darwin = { }; # ga-uncomment
|
# This is because I found no way to get an `aarch64` GitHub runner or supporting `kvm`.
|
||||||
|
# If only there was a way to evaluate `flakes` passing arguments I could avoit this
|
||||||
|
# hacky solution.
|
||||||
|
|
||||||
darwinConfigurations."mbp" = darwin.lib.darwinSystem {
|
# checks.aarch64-linux = { }; # ga-uncomment
|
||||||
system = "x86_64-darwin";
|
|
||||||
modules = [ home.darwinModules.home-manager ./hosts/mbp ];
|
|
||||||
inputs = { inherit darwin; };
|
|
||||||
specialArgs = {
|
|
||||||
inherit emacs-overlay;
|
|
||||||
nixpkgsUnstableInput = inputs.unstable;
|
|
||||||
nixpkgsDevInput = inputs.nixpkgsDevInput;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
{ pkgs
|
|
||||||
, home-manager
|
|
||||||
, emacs-overlay
|
|
||||||
, unstablePkgsInput
|
|
||||||
, ...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
../../users/andreaciceri
|
|
||||||
];
|
|
||||||
|
|
||||||
home-manager = {
|
|
||||||
useGlobalPkgs = true;
|
|
||||||
useUserPackages = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.gnupg.agent = {
|
|
||||||
enable = true;
|
|
||||||
enableSSHSupport = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs = {
|
|
||||||
overlays = [
|
|
||||||
(import ../../pkgs {
|
|
||||||
inherit unstablePkgsInput
|
|
||||||
;
|
|
||||||
})
|
|
||||||
emacs-overlay.overlay
|
|
||||||
];
|
|
||||||
config.allowUnfree = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
nix = {
|
|
||||||
gc = {
|
|
||||||
automatic = true;
|
|
||||||
user = "andreaciceri";
|
|
||||||
options = "--delete-older-than 3d";
|
|
||||||
};
|
|
||||||
package = pkgs.nixUnstable;
|
|
||||||
extraOptions = ''
|
|
||||||
experimental-features = nix-command
|
|
||||||
experimental-features = flakes
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
{ pkgs, emacs-overlay, ... }:
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./configuration.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
|
@ -3,6 +3,8 @@
|
||||||
{
|
{
|
||||||
imports = with profiles; [ mount-nas sshd dbus avahi printing xdg docker adb syncthing qmk-udev ];
|
imports = with profiles; [ mount-nas sshd dbus avahi printing xdg docker adb syncthing qmk-udev ];
|
||||||
|
|
||||||
|
system.stateVersion = "22.05";
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||||
initrd.kernelModules = [ ];
|
initrd.kernelModules = [ ];
|
||||||
|
@ -52,30 +54,25 @@
|
||||||
|
|
||||||
nix = {
|
nix = {
|
||||||
gc = {
|
gc = {
|
||||||
automatic = true;
|
automatic = lib.mkForce false; # Temporarily disabled, TODO: re-enable
|
||||||
options = "--delete-older-than 3d";
|
options = "--delete-older-than 3d";
|
||||||
};
|
};
|
||||||
# package = pkgs.nixFromMaster;
|
# package = pkgs.nixFromMaster;
|
||||||
package = pkgs.nix; # currently from unstable through an overlay
|
package = pkgs.nix;
|
||||||
extraOptions = ''
|
extraOptions = lib.mkForce ''
|
||||||
experimental-features = ca-derivations
|
experimental-features = ca-derivations nix-command flakes
|
||||||
|
|
||||||
|
keep-outputs = true
|
||||||
|
keep-derivations = true
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.services.nix-daemon.serviceConfig = {
|
||||||
|
LimitNOFILE = lib.mkForce 131072; # should help with fds errors due to experimental feature `ca-derivations`
|
||||||
|
};
|
||||||
|
|
||||||
networking.firewall = {
|
networking.firewall = {
|
||||||
enable = true;
|
enable = true;
|
||||||
allowPing = true;
|
allowPing = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# TODO: disable, only for playing
|
|
||||||
services.hydra = {
|
|
||||||
enable = true;
|
|
||||||
hydraURL = "http://localhost:3000";
|
|
||||||
notificationSender = "hydra@localhost";
|
|
||||||
buildMachinesFiles = [ ];
|
|
||||||
useSubstitutes = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,28 +0,0 @@
|
||||||
channels: final: prev: {
|
|
||||||
|
|
||||||
__dontExport = true; # overrides clutter up actual creations
|
|
||||||
|
|
||||||
# inherit (channels.latest)
|
|
||||||
# cachix
|
|
||||||
# dhall
|
|
||||||
# discord
|
|
||||||
# element-desktop
|
|
||||||
# rage
|
|
||||||
# nixpkgs-fmt
|
|
||||||
# qutebrowser
|
|
||||||
# signal-desktop
|
|
||||||
# starship;
|
|
||||||
|
|
||||||
|
|
||||||
# haskellPackages = prev.haskellPackages.override
|
|
||||||
# (old: {
|
|
||||||
# overrides = prev.lib.composeExtensions (old.overrides or (_: _: { })) (hfinal: hprev:
|
|
||||||
# let version = prev.lib.replaceChars [ "." ] [ "" ] prev.ghc.version;
|
|
||||||
# in
|
|
||||||
# {
|
|
||||||
# # same for haskell packages, matching ghc versions
|
|
||||||
# inherit (channels.unstable.haskell.packages."ghc${version}")
|
|
||||||
# haskell-language-server;
|
|
||||||
# });
|
|
||||||
# });
|
|
||||||
}
|
|
|
@ -1,36 +1,28 @@
|
||||||
{ nixpkgsUnstableInput, nixpkgsDevInput }:
|
{ nixpkgsStableInput, nixpkgsDevInput }:
|
||||||
|
|
||||||
final: prev:
|
final: prev:
|
||||||
let
|
let
|
||||||
nixpkgsUnstable = (import nixpkgsUnstableInput {
|
config.allowUnfree = true;
|
||||||
|
overlays = [ ];
|
||||||
|
nixpkgsStable = (import nixpkgsStableInput {
|
||||||
|
inherit config overlays;
|
||||||
system = prev.system;
|
system = prev.system;
|
||||||
config.allowUnfree = true;
|
|
||||||
}).pkgs;
|
}).pkgs;
|
||||||
nixpkgsDev = (import nixpkgsDevInput {
|
nixpkgsDev = (import nixpkgsDevInput {
|
||||||
|
inherit config overlays;
|
||||||
system = prev.system;
|
system = prev.system;
|
||||||
config.allowUnfree = true;
|
|
||||||
}).pkgs;
|
}).pkgs;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
# keep sources this first
|
# keep sources this first
|
||||||
# sources = prev.callPackage (import ./_sources/generated.nix) { };
|
# sources = prev.callPackage (import ./_sources/generated.nix) { };
|
||||||
customEmacs = prev.callPackage (import ./emacs) { };
|
|
||||||
amule = prev.callPackage (import ./amule) { };
|
amule = prev.callPackage (import ./amule) { };
|
||||||
digikam = nixpkgsUnstable.digikam;
|
customEmacs = prev.callPackage (import ./emacs) { pkgs = prev; };
|
||||||
#cura = nixpkgsUnstable.cura;
|
|
||||||
qutebrowser = import ./qutebrowser { pkgs = prev; };
|
|
||||||
#firefox-unwrapped = nixpkgsUnstable.firefox-unwrapped;
|
|
||||||
xdg-desktop-portal = nixpkgsUnstable.xdg-desktop-portal;
|
|
||||||
xdg-desktop-portal-gtk = nixpkgsUnstable.xdg-desktop-portal-gtk;
|
|
||||||
vscode = nixpkgsUnstable.vscode;
|
|
||||||
geoclue2 = nixpkgsUnstable.geoclue2;
|
|
||||||
gnome = nixpkgsUnstable.gnome;
|
|
||||||
umoria = nixpkgsDev.umoria;
|
|
||||||
droidcam = prev.callPackage (import ./droidcam) { };
|
droidcam = prev.callPackage (import ./droidcam) { };
|
||||||
v4l2loopback-dc = prev.callPackage (import ./v4l2loopback-dc) { kernel = prev.linux; };
|
|
||||||
slack = import ./slack { pkgs = prev; };
|
|
||||||
google-chrome = import ./google-chrome { pkgs = prev; };
|
google-chrome = import ./google-chrome { pkgs = prev; };
|
||||||
nixFromMaster = import ./nix-from-master { nix = nixpkgsUnstable.nix; pkgs = prev; };
|
nixFromMaster = import ./nix-from-master { nix = prev.nix; pkgs = prev; };
|
||||||
nix = nixpkgsUnstable.nix;
|
qutebrowser = import ./qutebrowser { pkgs = prev; };
|
||||||
|
slack = import ./slack { pkgs = prev; };
|
||||||
|
umoria = nixpkgsDev.umoria;
|
||||||
|
v4l2loopback-dc = prev.callPackage (import ./v4l2loopback-dc) { kernel = prev.linux; };
|
||||||
# then, call packages with `final.callPackage`
|
# then, call packages with `final.callPackage`
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
let
|
||||||
myEmacs = pkgs.emacsPgtkGcc;
|
myEmacs = pkgs.emacsPgtkNativeComp;
|
||||||
emacsWithPackages = (pkgs.emacsPackagesFor myEmacs).emacsWithPackages;
|
emacsWithPackages = (pkgs.emacsPackagesFor myEmacs).emacsWithPackages;
|
||||||
in
|
in
|
||||||
emacsWithPackages (
|
emacsWithPackages (
|
||||||
|
@ -9,6 +9,8 @@ emacsWithPackages (
|
||||||
) ++ (
|
) ++ (
|
||||||
with epkgs.melpaPackages; [
|
with epkgs.melpaPackages; [
|
||||||
# dirvish
|
# dirvish
|
||||||
|
vimish-fold
|
||||||
|
evil-vimish-fold
|
||||||
aggressive-indent
|
aggressive-indent
|
||||||
all-the-icons
|
all-the-icons
|
||||||
company
|
company
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
{ config, lib, pkgs, emacs-overlay, ... }: {
|
|
||||||
home-manager.users."andreaciceri" = { ... }: {
|
|
||||||
imports = [
|
|
||||||
../profiles/bat
|
|
||||||
../profiles/fzf
|
|
||||||
../profiles/zsh
|
|
||||||
../profiles/git
|
|
||||||
../profiles/direnv
|
|
||||||
../profiles/exa
|
|
||||||
../profiles/emacs
|
|
||||||
];
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
yarn
|
|
||||||
pinentry_mac
|
|
||||||
openscad
|
|
||||||
nodejs-14_x
|
|
||||||
|
|
||||||
poetry
|
|
||||||
ipfs
|
|
||||||
ipget
|
|
||||||
|
|
||||||
yabai
|
|
||||||
skhd
|
|
||||||
spacebar
|
|
||||||
xquartz
|
|
||||||
xterm
|
|
||||||
|
|
||||||
qmk
|
|
||||||
|
|
||||||
youtube-dl
|
|
||||||
ffmpeg
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.gpg = {
|
|
||||||
homedir = "/Users/andreaciceri/.gnupg";
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -6,7 +6,6 @@
|
||||||
};
|
};
|
||||||
nix-direnv = {
|
nix-direnv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableFlakes = true;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
services.emacs = {
|
services.emacs = {
|
||||||
enable = !pkgs.stdenv.hostPlatform.isDarwin;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# For some reason Hunspell dictionaries paths must be specified on Darwin
|
# For some reason Hunspell dictionaries paths must be specified on Darwin
|
||||||
|
@ -38,7 +38,6 @@
|
||||||
delta
|
delta
|
||||||
fd
|
fd
|
||||||
graphviz-nox
|
graphviz-nox
|
||||||
haskell-language-server
|
|
||||||
hunspell
|
hunspell
|
||||||
hunspellDicts.en_US
|
hunspellDicts.en_US
|
||||||
hunspellDicts.it_IT
|
hunspellDicts.it_IT
|
||||||
|
@ -49,7 +48,6 @@
|
||||||
python3Full
|
python3Full
|
||||||
rnix-lsp
|
rnix-lsp
|
||||||
silver-searcher
|
silver-searcher
|
||||||
stylish-haskell
|
|
||||||
unzip
|
unzip
|
||||||
(
|
(
|
||||||
makeDesktopItem {
|
makeDesktopItem {
|
||||||
|
@ -58,19 +56,12 @@
|
||||||
comment = "Org protocol";
|
comment = "Org protocol";
|
||||||
desktopName = "org-protocol";
|
desktopName = "org-protocol";
|
||||||
type = "Application";
|
type = "Application";
|
||||||
mimeType = "x-scheme-handler/org-protocol";
|
mimeTypes = [ "x-scheme-handler/org-protocol" ];
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
] ++ (if pkgs.system == "x86_64-linux" then [
|
] ++ (if pkgs.system == "x86_64-linux" then [
|
||||||
python-language-server
|
python-language-server
|
||||||
] ++ (with easy-ps; [
|
] ++ (with easy-ps; [
|
||||||
# spago2nix
|
|
||||||
ffmpegthumbnailer
|
ffmpegthumbnailer
|
||||||
nodejs
|
|
||||||
pulp
|
|
||||||
purescript-language-server
|
|
||||||
purs
|
|
||||||
purs-tidy
|
|
||||||
spago
|
|
||||||
]) else [ ]);
|
]) else [ ]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,4 +4,4 @@
|
||||||
:config
|
:config
|
||||||
(envrc-global-mode))
|
(envrc-global-mode))
|
||||||
|
|
||||||
(provide 'config-envrc)
|
(provide 'config-direnv)
|
|
@ -16,4 +16,17 @@
|
||||||
:config
|
:config
|
||||||
(evil-collection-init))
|
(evil-collection-init))
|
||||||
|
|
||||||
|
(use-package vimish-fold
|
||||||
|
:ensure
|
||||||
|
:after evil)
|
||||||
|
|
||||||
|
(use-package evil-vimish-fold
|
||||||
|
:ensure
|
||||||
|
:after vimish-fold
|
||||||
|
:init
|
||||||
|
(setq evil-vimish-fold-mode-lighter " ⮒")
|
||||||
|
(setq evil-vimish-fold-target-modes '(prog-mode conf-mode text-mode))
|
||||||
|
:config
|
||||||
|
(global-evil-vimish-fold-mode))
|
||||||
|
|
||||||
(provide 'config-evil)
|
(provide 'config-evil)
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
(use-package nix-mode
|
(use-package nix-mode
|
||||||
:mode "\\.nix\\'"
|
:mode "\\.nix\\'"
|
||||||
;;:hook
|
:config (setq format-on-save t)
|
||||||
;;(before-save . lsp-format-buffer)
|
:bind ("<f8>" . (lambda () (interactive) (setq format-on-save (not format-on-save)) ))
|
||||||
)
|
:hook
|
||||||
|
(before-save . (lambda () (when (format-on-save) (lsp-format-buffer)))))
|
||||||
|
|
||||||
(require 'sudo-utils)
|
(require 'sudo-utils)
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
comment = "Qutebrowser";
|
comment = "Qutebrowser";
|
||||||
desktopName = "qutebrowser";
|
desktopName = "qutebrowser";
|
||||||
type = "Application";
|
type = "Application";
|
||||||
mimeType = "x-scheme-handler/https";
|
mimeTypes = [ "x-scheme-handler/https" ];
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,9 +1,5 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
# only purpose of this is to make vscode login to Github
|
|
||||||
services.gnome-keyring.enable = true;
|
|
||||||
|
|
||||||
|
|
||||||
programs.vscode = {
|
programs.vscode = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue