forked from pub-solar/os
Merge branch 'main' into feature/basic-iso
This commit is contained in:
commit
970e6de8a7
10
.envrc
10
.envrc
|
@ -1,3 +1,13 @@
|
||||||
# reload when these files change
|
# reload when these files change
|
||||||
watch_file shell/* flake.nix
|
watch_file shell/* flake.nix
|
||||||
use flake || use nix
|
use flake || use nix
|
||||||
|
|
||||||
|
#watch_file flake.nix
|
||||||
|
#watch_file shell.nix
|
||||||
|
#
|
||||||
|
#{
|
||||||
|
# # shell gc root dir
|
||||||
|
# mkdir -p "$(direnv_layout_dir)"
|
||||||
|
#
|
||||||
|
# eval "$(nix print-dev-env --profile $(direnv_layout_dir)/flake-profile)"
|
||||||
|
#} || use nix
|
||||||
|
|
13
README.md
13
README.md
|
@ -58,14 +58,15 @@ following giants][giants]:
|
||||||
- [devshell](https://github.com/numtide/devshell)
|
- [devshell](https://github.com/numtide/devshell)
|
||||||
|
|
||||||
## Divnix
|
## Divnix
|
||||||
The divnix org is an open space that spontaniously formed out of "the Nix".
|
The divnix org is an open space that spontaneously formed out of "the Nix".
|
||||||
It is really just a place where otherwise unrelated people a) get
|
It is really just a place where otherwise unrelated people work
|
||||||
together and b) stuff done.
|
together and get stuff done.
|
||||||
|
|
||||||
It's a place to stop "geeking out in isolation" (or within company boundaries),
|
It's a place to stop "geeking out in isolation" (or within company boundaries).
|
||||||
experiment and learn together and iterate quickly on best practices. That's what it is.
|
A place to experiment, learn together, and iterate quickly on best practices.
|
||||||
|
That's what it is.
|
||||||
|
|
||||||
It might eventually become a non-profit if that's not too complicated or if those
|
It might eventually become a non-profit if that's not too complicated or, if those
|
||||||
goals are sufficiently upstreamed into "the Nix", dissolved.
|
goals are sufficiently upstreamed into "the Nix", dissolved.
|
||||||
|
|
||||||
# License
|
# License
|
||||||
|
|
|
@ -14,7 +14,7 @@ to easily setup those secret files declaratively.
|
||||||
[agenix][agenix] encrypts secrets and stores them as .age files in your repository.
|
[agenix][agenix] encrypts secrets and stores them as .age files in your repository.
|
||||||
Age files are encrypted with multiple ssh public keys, so any host or user with a
|
Age files are encrypted with multiple ssh public keys, so any host or user with a
|
||||||
matching ssh private key can read the data. The [age module][age module] will add those
|
matching ssh private key can read the data. The [age module][age module] will add those
|
||||||
encrypted files to the nix store and decrypt them on activation to `/run/secrets`.
|
encrypted files to the nix store and decrypt them on activation to `/run/agenix`.
|
||||||
|
|
||||||
### Setup
|
### Setup
|
||||||
All hosts must have openssh enabled, this is done by default in the core profile.
|
All hosts must have openssh enabled, this is done by default in the core profile.
|
||||||
|
|
295
flake.lock
295
flake.lock
|
@ -7,11 +7,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1641576265,
|
"lastModified": 1648942457,
|
||||||
"narHash": "sha256-G4W39k5hdu2kS13pi/RhyTOySAo7rmrs7yMUZRH0OZI=",
|
"narHash": "sha256-i29Z1t3sVfCNfpp+KAfeExvpqHQSbLO1KWylTtfradU=",
|
||||||
"owner": "ryantm",
|
"owner": "ryantm",
|
||||||
"repo": "agenix",
|
"repo": "agenix",
|
||||||
"rev": "08b9c96878b2f9974fc8bde048273265ad632357",
|
"rev": "0d5e59ed645e4c7b60174bc6f6aac6a203dc0b01",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -87,11 +87,32 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1642495030,
|
"lastModified": 1650976225,
|
||||||
"narHash": "sha256-u1ZlFbLWzkM6zOfuZ1tr0tzTuDWucOYwALPWDWLorkE=",
|
"narHash": "sha256-PGM65SQHS63Dd5MmLJo3GJsZP9lJVZmpWxluQoG1Dt8=",
|
||||||
"owner": "LnL7",
|
"owner": "LnL7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "bcdb6022b3a300abf59cb5d0106c158940f5120e",
|
"rev": "bb3baef6e115ae47bc2ab4973bd3a486488485b0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"darwin_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"digga",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1650976225,
|
||||||
|
"narHash": "sha256-PGM65SQHS63Dd5MmLJo3GJsZP9lJVZmpWxluQoG1Dt8=",
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "bb3baef6e115ae47bc2ab4973bd3a486488485b0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -102,7 +123,6 @@
|
||||||
},
|
},
|
||||||
"deploy": {
|
"deploy": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"fenix": "fenix",
|
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixos"
|
"nixos"
|
||||||
|
@ -110,26 +130,33 @@
|
||||||
"utils": "utils"
|
"utils": "utils"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1639771334,
|
"lastModified": 1648475189,
|
||||||
"narHash": "sha256-4hgZmsCPaL5QlcEijHmzaYYrEwHtUFqraCUrCqLGJOo=",
|
"narHash": "sha256-gAGAS6IagwoUr1B0ohE3iR6sZ8hP4LSqzYLC8Mq3WGU=",
|
||||||
"owner": "input-output-hk",
|
"owner": "serokell",
|
||||||
"repo": "deploy-rs",
|
"repo": "deploy-rs",
|
||||||
"rev": "7267eab9139ca4476fd8ed49e2e8652bba4c037f",
|
"rev": "83e0c78291cd08cb827ba0d553ad9158ae5a95c3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "input-output-hk",
|
"owner": "serokell",
|
||||||
"repo": "deploy-rs",
|
"repo": "deploy-rs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"devshell": {
|
"devshell": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"digga",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
"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": {
|
||||||
|
@ -141,10 +168,12 @@
|
||||||
"digga": {
|
"digga": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"blank": "blank",
|
"blank": "blank",
|
||||||
|
"darwin": "darwin_2",
|
||||||
"deploy": [
|
"deploy": [
|
||||||
"deploy"
|
"deploy"
|
||||||
],
|
],
|
||||||
"devshell": "devshell",
|
"devshell": "devshell",
|
||||||
|
"flake-compat": "flake-compat_2",
|
||||||
"flake-utils-plus": "flake-utils-plus",
|
"flake-utils-plus": "flake-utils-plus",
|
||||||
"home-manager": [
|
"home-manager": [
|
||||||
"home"
|
"home"
|
||||||
|
@ -153,17 +182,17 @@
|
||||||
"nixlib": [
|
"nixlib": [
|
||||||
"nixos"
|
"nixos"
|
||||||
],
|
],
|
||||||
"nixos-generators": "nixos-generators",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixos"
|
"nixos"
|
||||||
]
|
],
|
||||||
|
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643510242,
|
"lastModified": 1651210705,
|
||||||
"narHash": "sha256-9C9DyJhQ5bevk0CEEjGct+U9EqUgHg8T70nxz47zjMI=",
|
"narHash": "sha256-2RzKrjEnWDhsBQ4Et2gm2LjV5pXyszeqV1xNe+LtNT8=",
|
||||||
"owner": "divnix",
|
"owner": "divnix",
|
||||||
"repo": "digga",
|
"repo": "digga",
|
||||||
"rev": "33bfb05b8a148d8ad6a842de74e22209bf9fe5d7",
|
"rev": "0ffa2dff5ede12a03ca83fbc514972f94cf18f42",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -172,33 +201,14 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"fenix": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_3",
|
|
||||||
"rust-analyzer-src": "rust-analyzer-src"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1639117493,
|
|
||||||
"narHash": "sha256-67H9uXUdauaqMfkcKzpgHR3GeOKPAwOs6G3C1VpT67o=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "fenix",
|
|
||||||
"rev": "94b5686cad2ed210da106b0b7e1e212dab43fbf2",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "fenix",
|
|
||||||
"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": {
|
||||||
|
@ -210,11 +220,27 @@
|
||||||
"flake-compat_2": {
|
"flake-compat_2": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1627913399,
|
"lastModified": 1650374568,
|
||||||
"narHash": "sha256-hY8g6H2KFL8ownSiFeMOjwPC8P0ueXpCVEbxgda3pko=",
|
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "12c64ca55c1014cdc1b16ed5a804aa8576601ff2",
|
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_3": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1648199409,
|
||||||
|
"narHash": "sha256-JwPKdC2PoVBkG6E+eWw3j6BMR6sL3COpYWfif7RVb8Y=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "64a525ee38886ab9028e6f61790de0832aa3ef03",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -243,11 +269,11 @@
|
||||||
"flake-utils": "flake-utils_3"
|
"flake-utils": "flake-utils_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1639385028,
|
"lastModified": 1647259887,
|
||||||
"narHash": "sha256-oqorKz3mwf7UuDJwlbCEYCB2LfcWLL0DkeCWhRIL820=",
|
"narHash": "sha256-yEkMbEHVO9qydluQ3uHGWX1PkfZhgDKxnd1rhZYZ72w=",
|
||||||
"owner": "gytis-ivaskevicius",
|
"owner": "gytis-ivaskevicius",
|
||||||
"repo": "flake-utils-plus",
|
"repo": "flake-utils-plus",
|
||||||
"rev": "be1be083af014720c14f3b574f57b6173b4915d0",
|
"rev": "06dba5f3b4fa2cc0bfc98ce9cd6f9a4d8db11d46",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -273,11 +299,11 @@
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1638122382,
|
"lastModified": 1644229661,
|
||||||
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
|
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -288,11 +314,11 @@
|
||||||
},
|
},
|
||||||
"flake-utils_4": {
|
"flake-utils_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1638122382,
|
"lastModified": 1644229661,
|
||||||
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
|
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -303,11 +329,11 @@
|
||||||
},
|
},
|
||||||
"flake-utils_5": {
|
"flake-utils_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1638122382,
|
"lastModified": 1649676176,
|
||||||
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
|
"narHash": "sha256-OWKJratjt2RW151VUlJPRALb7OU2S5s+f0vLj4o1bHM=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
|
"rev": "a4b154ebbdc88c8498a5c7b01589addc9e9cb678",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -323,11 +349,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1642653493,
|
"lastModified": 1651007218,
|
||||||
"narHash": "sha256-22mGPjiHUo2Jmze4IjXCJLjeK2mbvvCztHmUyUMr4yw=",
|
"narHash": "sha256-NkQAMtqW0PSJTbLHalyZtaqj0ai2TZMOedug9yDIcFw=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "28b9ae40c45c5e7711c353fee1b7af734e293979",
|
"rev": "d14adb99f3fb562ec74ad18c032efc154b438034",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -339,11 +365,11 @@
|
||||||
},
|
},
|
||||||
"latest": {
|
"latest": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643347846,
|
"lastModified": 1650701402,
|
||||||
"narHash": "sha256-O0tyXF//ppRpe9yT1Uu5n34yI2MWDyY6ZiJ4Qn5zIkE=",
|
"narHash": "sha256-XKfstdtqDg+O+gNBx1yGVKWIhLgfEDg/e2lvJSsp9vU=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5bb20f9dc70e9ee16e21cc404b6508654931ce41",
|
"rev": "bc41b01dd7a9fdffd32d9b03806798797532a5fe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -355,11 +381,11 @@
|
||||||
},
|
},
|
||||||
"latest_2": {
|
"latest_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643347846,
|
"lastModified": 1651007983,
|
||||||
"narHash": "sha256-O0tyXF//ppRpe9yT1Uu5n34yI2MWDyY6ZiJ4Qn5zIkE=",
|
"narHash": "sha256-GNay7yDPtLcRcKCNHldug85AhAvBpTtPEJWSSDYBw8U=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5bb20f9dc70e9ee16e21cc404b6508654931ce41",
|
"rev": "e10da1c7f542515b609f8dfbcf788f3d85b14936",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -376,11 +402,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1639947939,
|
"lastModified": 1650265945,
|
||||||
"narHash": "sha256-pGsM8haJadVP80GFq4xhnSpNitYNQpaXk4cnA796Cso=",
|
"narHash": "sha256-SO8+1db4jTOjnwP++29vVgImLIfETSXyoz0FuLkiikE=",
|
||||||
"owner": "nmattia",
|
"owner": "nmattia",
|
||||||
"repo": "naersk",
|
"repo": "naersk",
|
||||||
"rev": "2fc8ce9d3c025d59fee349c1f80be9785049d653",
|
"rev": "e8f9f8d037774becd82fce2781e1abdb7836d7df",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -392,14 +418,16 @@
|
||||||
"nix-dram": {
|
"nix-dram": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_4",
|
"flake-utils": "flake-utils_4",
|
||||||
"nixpkgs": "nixpkgs_5"
|
"nixpkgs": [
|
||||||
|
"latest"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643638527,
|
"lastModified": 1649569158,
|
||||||
"narHash": "sha256-NoRwXgTk3zHaTM4egk4MbEnV7RTXWUTon3OiG0GHjhE=",
|
"narHash": "sha256-Wtmiyu/1d+3YGGcRxTnQyEtnJaKKR/Ry0kNbOY48Afs=",
|
||||||
"owner": "dramforever",
|
"owner": "dramforever",
|
||||||
"repo": "nix-dram",
|
"repo": "nix-dram",
|
||||||
"rev": "86350dcada08e6f41fedd20f8c25a3a199a3be7d",
|
"rev": "84c47c0dc93c77f7edfd996f71618d278844c1c4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -410,11 +438,11 @@
|
||||||
},
|
},
|
||||||
"nixlib": {
|
"nixlib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1641688481,
|
"lastModified": 1636849918,
|
||||||
"narHash": "sha256-6L+EU12xLDHby7y8elgFtRKVBxix+7qV8DhVgXqrKZo=",
|
"narHash": "sha256-nzUK6dPcTmNVrgTAC1EOybSMsrcx+QrVPyqRdyKLkjA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "f697717b3d3a074ffc16c8c8227504f0db292886",
|
"rev": "28a5b0557f14124608db68d3ee1f77e9329e9dd5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -425,16 +453,16 @@
|
||||||
},
|
},
|
||||||
"nixos": {
|
"nixos": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643630271,
|
"lastModified": 1651093906,
|
||||||
"narHash": "sha256-0H+50Ys/8/rjE+64vpFRjwnDwthDfHh45IDpZ2BiECg=",
|
"narHash": "sha256-kHXSbv+Hc73eV0/JVJ5YsJGr08bA4vJ3/XZew5PgZg0=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "83a53b4adf04607af34060b2f7699a412fc9bc3d",
|
"rev": "feea25c58657fa81d16e0e51f80e1a02ef4cbd49",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"ref": "release-21.11",
|
"ref": "nixos-21.11",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -442,14 +470,14 @@
|
||||||
"nixos-generators": {
|
"nixos-generators": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixlib": "nixlib",
|
"nixlib": "nixlib",
|
||||||
"nixpkgs": "nixpkgs_4"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1637655461,
|
"lastModified": 1650997411,
|
||||||
"narHash": "sha256-kXZPbclN3gKwjhp2/RYFDFpAsSBwzX1iLF4EcnHZsPQ=",
|
"narHash": "sha256-r4a3qsSv5UTtx+pxTUEdOphBkwTx1+AAVog3c457A0M=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixos-generators",
|
"repo": "nixos-generators",
|
||||||
"rev": "05a3eb158a9c7746a5d463726d7f7cccf07500e4",
|
"rev": "3cdf22c79bc80910e2b610cd59fcb8408354ddbc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -460,11 +488,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1641965797,
|
"lastModified": 1650522846,
|
||||||
"narHash": "sha256-AfxfIzAZbt9aAzpVBn0Bwhd/M4Wix7G91kEjm9H6FPo=",
|
"narHash": "sha256-SxWHXRI3qJwswyXAtzsi6PKVY3KLNNnb072KaJthII8=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "87a35a0d58f546dc23f37b4f6af575d0e4be6a7a",
|
"rev": "6b4ebea9093c997c5f275c820e679108de4871ab",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -489,65 +517,34 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643634174,
|
"lastModified": 1650726686,
|
||||||
"narHash": "sha256-LpfTneNuLmXuTyR4hPXtr92g1YAZymJUQxdHjTCi79w=",
|
"narHash": "sha256-hE5PCqQlsdgWH3AUTwesvjZWs5ZUZ8SjMS5cnFB6W54=",
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "589235201f2e0717bee4915bffff5330fa00ff41",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1638986258,
|
|
||||||
"narHash": "sha256-OceRdctKZRSgqQxVRvvNB0MaEnFMzQqjUffecoDE9eI=",
|
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "581d2d6c9cd5c289002203581d8aa0861963a933",
|
"rev": "3c0f57e36ed0cf9947281e3b31f1bebb7ce5d4a1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_4": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1643381941,
|
|
||||||
"narHash": "sha256-pHTwvnN4tTsEKkWlXQ8JMY423epos8wUOhthpwJjtpc=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "5efc8ca954272c4376ac929f4c5ffefcc20551d5",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
"ref": "nixpkgs-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643524588,
|
"lastModified": 1637186689,
|
||||||
"narHash": "sha256-Qh5AazxdOQRORbGkkvpKoovDl6ej/4PhDabFsqnueqw=",
|
"narHash": "sha256-NU7BhgnwA/3ibmCeSzFK6xGi+Bari9mPfn+4cBmyEjw=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "efeefb2af1469a5d1f0ae7ca8f0dfd9bb87d5cfb",
|
"rev": "7fad01d9d5a3f82081c00fb57918d64145dc904c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixpkgs-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -567,18 +564,18 @@
|
||||||
},
|
},
|
||||||
"nvfetcher": {
|
"nvfetcher": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_3",
|
||||||
"flake-utils": "flake-utils_5",
|
"flake-utils": "flake-utils_5",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixos"
|
"nixos"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643518077,
|
"lastModified": 1650169042,
|
||||||
"narHash": "sha256-FHhKjrPxvCv1aywLeqJi3kARDql7cwaj2jcpWp42Xhw=",
|
"narHash": "sha256-x8469XNOU/ebIh5YCuvjcOAaAptwHjkEl1aTFrevu1o=",
|
||||||
"owner": "berberman",
|
"owner": "berberman",
|
||||||
"repo": "nvfetcher",
|
"repo": "nvfetcher",
|
||||||
"rev": "1b4adc9dac4c5f2c3ce14fdaf2702f9ce6bec491",
|
"rev": "db780dba6923e531b5aedca502a36d3d9627fca9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -589,8 +586,16 @@
|
||||||
},
|
},
|
||||||
"poetry2nix": {
|
"poetry2nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": [
|
||||||
"nixpkgs": "nixpkgs_2"
|
"bud",
|
||||||
|
"beautysh",
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"bud",
|
||||||
|
"beautysh",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1633382856,
|
"lastModified": 1633382856,
|
||||||
|
@ -618,35 +623,19 @@
|
||||||
"naersk": "naersk",
|
"naersk": "naersk",
|
||||||
"nix-dram": "nix-dram",
|
"nix-dram": "nix-dram",
|
||||||
"nixos": "nixos",
|
"nixos": "nixos",
|
||||||
|
"nixos-generators": "nixos-generators",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
"nvfetcher": "nvfetcher"
|
"nvfetcher": "nvfetcher"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-analyzer-src": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1639071661,
|
|
||||||
"narHash": "sha256-4YySLORuK0qGGIEJj78S7CZ4jy4GIHJ5ks17k5AWblo=",
|
|
||||||
"owner": "rust-analyzer",
|
|
||||||
"repo": "rust-analyzer",
|
|
||||||
"rev": "2534b7db1a093543d5bd759b3a1ca9e34418fa31",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "rust-analyzer",
|
|
||||||
"ref": "nightly",
|
|
||||||
"repo": "rust-analyzer",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"utils": {
|
"utils": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1637014545,
|
"lastModified": 1648297722,
|
||||||
"narHash": "sha256-26IZAc5yzlD9FlDT54io1oqG/bBoyka+FJk5guaX4x4=",
|
"narHash": "sha256-W+qlPsiZd8F3XkzXOzAoR+mpFqzm3ekQkJNa+PIh1BQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "bba5dcc8e0b20ab664967ad83d24d64cb64ec4f4",
|
"rev": "0f8662f1319ad6abf89b3380dd2722369fc51ade",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
21
flake.nix
21
flake.nix
|
@ -2,12 +2,13 @@
|
||||||
description = "A highly structured configuration database.";
|
description = "A highly structured configuration database.";
|
||||||
|
|
||||||
nixConfig.extra-experimental-features = "nix-command flakes";
|
nixConfig.extra-experimental-features = "nix-command flakes";
|
||||||
nixConfig.extra-substituters = "https://nrdxp.cachix.org https://nix-community.cachix.org";
|
nixConfig.extra-substituters = "https://nix-dram.cachix.org https://dram.cachix.org https://nrdxp.cachix.org https://nix-community.cachix.org";
|
||||||
nixConfig.extra-trusted-public-keys = "nrdxp.cachix.org-1:Fc5PSqY2Jm1TrWfm88l6cvGWwz3s93c6IOifQWnhNW4= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=";
|
nixConfig.extra-trusted-public-keys = "nix-dram.cachix.org-1:CKjZ0L1ZiqH3kzYAZRt8tg8vewAx5yj8Du/+iR8Efpg= dram.cachix.org-1:baoy1SXpwYdKbqdTbfKGTKauDDeDlHhUpC+QuuILEMY= nrdxp.cachix.org-1:Fc5PSqY2Jm1TrWfm88l6cvGWwz3s93c6IOifQWnhNW4= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=";
|
||||||
|
|
||||||
inputs =
|
inputs =
|
||||||
{
|
{
|
||||||
nixos.url = "github:nixos/nixpkgs/release-21.11";
|
# Track channels with commits tested and built by hydra
|
||||||
|
nixos.url = "github:nixos/nixpkgs/nixos-21.11";
|
||||||
latest.url = "github:nixos/nixpkgs/nixos-unstable";
|
latest.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
digga.url = "github:divnix/digga";
|
digga.url = "github:divnix/digga";
|
||||||
|
@ -26,7 +27,7 @@
|
||||||
darwin.url = "github:LnL7/nix-darwin";
|
darwin.url = "github:LnL7/nix-darwin";
|
||||||
darwin.inputs.nixpkgs.follows = "nixos";
|
darwin.inputs.nixpkgs.follows = "nixos";
|
||||||
|
|
||||||
deploy.url = "github:input-output-hk/deploy-rs";
|
deploy.url = "github:serokell/deploy-rs";
|
||||||
deploy.inputs.nixpkgs.follows = "nixos";
|
deploy.inputs.nixpkgs.follows = "nixos";
|
||||||
|
|
||||||
agenix.url = "github:ryantm/agenix";
|
agenix.url = "github:ryantm/agenix";
|
||||||
|
@ -40,8 +41,11 @@
|
||||||
|
|
||||||
nixos-hardware.url = "github:nixos/nixos-hardware";
|
nixos-hardware.url = "github:nixos/nixos-hardware";
|
||||||
|
|
||||||
|
nixos-generators.url = "github:nix-community/nixos-generators";
|
||||||
|
|
||||||
# PubSolarOS additions
|
# PubSolarOS additions
|
||||||
nix-dram.url = "github:dramforever/nix-dram";
|
nix-dram.url = "github:dramforever/nix-dram";
|
||||||
|
nix-dram.inputs.nixpkgs.follows = "latest";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
|
@ -142,15 +146,6 @@
|
||||||
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 { };
|
||||||
|
|
||||||
defaultTemplate = self.templates.bud;
|
|
||||||
templates.bud.path = ./.;
|
|
||||||
templates.bud.description = "bud template";
|
|
||||||
|
|
||||||
}
|
|
||||||
//
|
|
||||||
{
|
|
||||||
budModules = { devos = import ./shell/bud; };
|
|
||||||
}
|
}
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,6 +106,23 @@
|
||||||
cursor = "0xe3e1e4";
|
cursor = "0xe3e1e4";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Colors used for the search bar and match highlighting.
|
||||||
|
search = {
|
||||||
|
# Allowed values are CellForeground/CellBackground, which reference the
|
||||||
|
# affected cell, or hexadecimal colors like #ff00ff.
|
||||||
|
matches = {
|
||||||
|
foreground = "0xe5c463";
|
||||||
|
background = "0x1a181a";
|
||||||
|
};
|
||||||
|
focused_match = {
|
||||||
|
foreground = "0xe5c463";
|
||||||
|
background = "0xe3e1e4";
|
||||||
|
};
|
||||||
|
#bar =
|
||||||
|
# background = "#c5c8c6";
|
||||||
|
# foreground = "#1d1f21";
|
||||||
|
};
|
||||||
|
|
||||||
# Normal colors
|
# Normal colors
|
||||||
normal = {
|
normal = {
|
||||||
black = "0x1a181a";
|
black = "0x1a181a";
|
||||||
|
|
|
@ -20,6 +20,8 @@ in
|
||||||
gnome3.simple-scan
|
gnome3.simple-scan
|
||||||
# Tools like pdfunite
|
# Tools like pdfunite
|
||||||
poppler_utils
|
poppler_utils
|
||||||
|
# tool for annotating PDFs
|
||||||
|
xournalpp
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -15,33 +15,16 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
sonokai = pkgs.vimUtils.buildVimPlugin {
|
|
||||||
name = "sonokai";
|
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "sainnhe";
|
|
||||||
repo = "sonokai";
|
|
||||||
rev = "51e7ee8b13f9c2e4eae33f8d745eaa1f320b0ae6";
|
|
||||||
sha256 = "0svqr6dnpk2p5qhb6j0rllns8f0f4886wxpx69wgazjx84bx728i";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
suda = pkgs.vimUtils.buildVimPlugin {
|
|
||||||
name = "suda";
|
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "lambdalisue";
|
|
||||||
repo = "suda.vim";
|
|
||||||
rev = "fbb138f5090c3db4dabeba15326397a09df6b73b";
|
|
||||||
sha256 = "ztZ5UPd2y4Mkore/QLfMCwjM0Qy4eWCOw535NzDSfgY=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
workspace = pkgs.vimUtils.buildVimPlugin {
|
workspace = pkgs.vimUtils.buildVimPlugin {
|
||||||
name = "vim-workspace";
|
name = "vim-workspace";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "thaerkh";
|
owner = "thaerkh";
|
||||||
repo = "vim-workspace";
|
repo = "vim-workspace";
|
||||||
rev = "faa835406990171bbbeff9254303dad49bad17cb";
|
rev = "c26b473f9b073f24bacecd38477f44c5cd1f5a62";
|
||||||
sha256 = "w6CcFcIplwUVcvx54rbTwThBxus1k7yHot2TpdNQ61M=";
|
sha256 = "sha256-XV7opLyfkHIDO0+JJaO/x0za0gsHuklrzapTGdLHJmI=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
beautify = pkgs.vimUtils.buildVimPlugin {
|
beautify = pkgs.vimUtils.buildVimPlugin {
|
||||||
name = "vim-beautify";
|
name = "vim-beautify";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
|
@ -51,6 +34,16 @@ let
|
||||||
sha256 = "QPTCl6KaGcAjTS5yVDov9yxmv0fDaFoPLMsrtVIG6GQ=";
|
sha256 = "QPTCl6KaGcAjTS5yVDov9yxmv0fDaFoPLMsrtVIG6GQ=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
apprentice = pkgs.vimUtils.buildVimPlugin {
|
||||||
|
name = "vim-apprentice";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "romainl";
|
||||||
|
repo = "Apprentice";
|
||||||
|
rev = "ecd41698037f15a58125b349be76dbd2595bfb6d";
|
||||||
|
sha256 = "sha256-9s7Yzn3IEJBjcyUq9NBIQ9wb45Xr7jOkEIoWf0lAYYg=";
|
||||||
|
};
|
||||||
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -97,16 +90,20 @@ in
|
||||||
instant-nvim
|
instant-nvim
|
||||||
|
|
||||||
ack-vim
|
ack-vim
|
||||||
airline
|
vim-airline
|
||||||
editorconfig-vim
|
editorconfig-vim
|
||||||
nnn-vim
|
nnn-vim
|
||||||
suda
|
quick-scope
|
||||||
|
suda-vim
|
||||||
syntastic
|
syntastic
|
||||||
vim-gutentags
|
vim-gutentags
|
||||||
vim-vinegar
|
vim-vinegar
|
||||||
workspace
|
workspace
|
||||||
|
|
||||||
sonokai
|
sonokai
|
||||||
|
vim-hybrid-material
|
||||||
|
vim-airline-themes
|
||||||
|
apprentice
|
||||||
|
|
||||||
fugitive
|
fugitive
|
||||||
vim-gitgutter
|
vim-gitgutter
|
||||||
|
|
|
@ -8,43 +8,43 @@ set completeopt=menuone,noinsert,noselect
|
||||||
" Avoid showing extra messages when using completion
|
" Avoid showing extra messages when using completion
|
||||||
set shortmess+=c
|
set shortmess+=c
|
||||||
|
|
||||||
" Configure neovim 5 experimental LSPs
|
" Configure neovim 0.6+ experimental LSPs
|
||||||
" https://github.com/neovim/nvim-lspconfig
|
" https://github.com/neovim/nvim-lspconfig
|
||||||
" https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md
|
" https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md
|
||||||
|
" https://github.com/neovim/nvim-lspconfig/wiki/UI-Customization
|
||||||
" https://gitlab.com/Iron_E/dotfiles/-/blob/master/.config/nvim/lua/_config/plugin/nvim_lsp.lua
|
" https://gitlab.com/Iron_E/dotfiles/-/blob/master/.config/nvim/lua/_config/plugin/nvim_lsp.lua
|
||||||
lua <<EOF
|
lua <<EOF
|
||||||
local nvim_lsp = require('lspconfig')
|
local nvim_lsp = require('lspconfig')
|
||||||
|
|
||||||
|
-- Mappings (global)
|
||||||
|
-- See `:help vim.diagnostic.*` for documentation on any of the below functions
|
||||||
|
local opts = { noremap=true, silent=true }
|
||||||
|
vim.api.nvim_set_keymap('n', '<leader>e', '<cmd>lua vim.diagnostic.open_float()<CR>', opts)
|
||||||
|
vim.api.nvim_set_keymap('n', 'g[', '<cmd>lua vim.diagnostic.goto_prev()<CR>', opts)
|
||||||
|
vim.api.nvim_set_keymap('n', 'g]', '<cmd>lua vim.diagnostic.goto_next()<CR>', opts)
|
||||||
|
vim.api.nvim_set_keymap('n', '<leader>dq', '<cmd>lua vim.diagnostic.setloclist()<CR>', opts)
|
||||||
|
vim.api.nvim_set_keymap('n', '<leader>f', '<cmd>lua vim.lsp.buf.formatting()<CR>', opts)
|
||||||
|
|
||||||
-- Use an on_attach function to only map the following keys
|
-- Use an on_attach function to only map the following keys
|
||||||
-- after the language server attaches to the current buffer
|
-- after the language server attaches to the current buffer
|
||||||
local on_attach = function(client, bufnr)
|
local on_attach = function(client, bufnr)
|
||||||
local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end
|
|
||||||
local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end
|
|
||||||
|
|
||||||
-- Enable completion triggered by <c-x><c-o>
|
-- Enable completion triggered by <c-x><c-o>
|
||||||
buf_set_option('omnifunc', 'v:lua.vim.lsp.omnifunc')
|
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
||||||
|
|
||||||
-- Mappings.
|
|
||||||
local opts = { noremap=true, silent=true }
|
|
||||||
|
|
||||||
|
-- Mappings (available if LSP is configured and attached to buffer)
|
||||||
-- See `:help vim.lsp.*` for documentation on any of the below functions
|
-- See `:help vim.lsp.*` for documentation on any of the below functions
|
||||||
buf_set_keymap('n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>', opts)
|
||||||
buf_set_keymap('n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>', opts)
|
||||||
buf_set_keymap('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', opts)
|
||||||
buf_set_keymap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
|
||||||
buf_set_keymap('n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
|
||||||
buf_set_keymap('n', '<leader>wa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<leader>wa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', opts)
|
||||||
buf_set_keymap('n', '<leader>wr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<leader>wr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>', opts)
|
||||||
buf_set_keymap('n', '<leader>wl', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<leader>wl', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>', opts)
|
||||||
buf_set_keymap('n', '<leader>D', '<cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<leader>D', '<cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
|
||||||
buf_set_keymap('n', '<leader>rn', '<cmd>lua vim.lsp.buf.rename()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<leader>rn', '<cmd>lua vim.lsp.buf.rename()<CR>', opts)
|
||||||
buf_set_keymap('n', '<leader>ca', '<cmd>lua vim.lsp.buf.code_action()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<leader>ca', '<cmd>lua vim.lsp.buf.code_action()<CR>', opts)
|
||||||
buf_set_keymap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
|
||||||
buf_set_keymap('n', '<leader>e', '<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>', opts)
|
|
||||||
buf_set_keymap('n', '<leader>dp', '<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>', opts)
|
|
||||||
buf_set_keymap('n', '<leader>dn', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>', opts)
|
|
||||||
buf_set_keymap('n', '<leader>q', '<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>', opts)
|
|
||||||
buf_set_keymap('n', '<leader>f', '<cmd>lua vim.lsp.buf.formatting()<CR>', opts)
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -123,11 +123,8 @@ lua <<EOF
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
}
|
}
|
||||||
else -- Use the LSP's configuration.
|
else -- Use the LSP's configuration.
|
||||||
local on_attach_setting = on_attach
|
lsp_settings.on_attach = on_attach
|
||||||
|
lsp_settings.capabilities = capabilities
|
||||||
lsp_settings.on_attach = function()
|
|
||||||
if on_attach_setting then on_attach_setting() end
|
|
||||||
end
|
|
||||||
|
|
||||||
nvim_lsp[lsp_key].setup(lsp_settings)
|
nvim_lsp[lsp_key].setup(lsp_settings)
|
||||||
end
|
end
|
||||||
|
@ -182,21 +179,27 @@ lua <<EOF
|
||||||
{ name = 'luasnip' },
|
{ name = 'luasnip' },
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-- Configure diagnostics
|
||||||
|
vim.diagnostic.config({
|
||||||
|
virtual_text = false,
|
||||||
|
signs = true,
|
||||||
|
underline = true,
|
||||||
|
update_in_insert = false,
|
||||||
|
severity_sort = false,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Change diagnostic symbols in the sign column (gutter)
|
||||||
|
local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
|
||||||
|
for type, icon in pairs(signs) do
|
||||||
|
local hl = "DiagnosticSign" .. type
|
||||||
|
vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl })
|
||||||
|
end
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
" Visualize diagnostics
|
|
||||||
let g:diagnostic_enable_virtual_text = 1
|
|
||||||
let g:diagnostic_trimmed_virtual_text = '40'
|
|
||||||
" Don't show diagnostics while in insert mode
|
|
||||||
let g:diagnostic_insert_delay = 1
|
|
||||||
|
|
||||||
" Show diagnostic popup on cursor hold
|
" Show diagnostic popup on cursor hold
|
||||||
autocmd CursorHold * lua vim.lsp.diagnostic.show_line_diagnostics({ focusable = false })
|
autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, { focus = false, scope = "cursor" })
|
||||||
|
|
||||||
" Goto previous/next diagnostic warning/error
|
|
||||||
" nnoremap <silent> g[ <cmd>PrevDiagnosticCycle<cr>
|
|
||||||
" nnoremap <silent> g] <cmd>NextDiagnosticCycle<cr>
|
|
||||||
|
|
||||||
" have a fixed column for the diagnostics to appear in
|
" have a fixed column for the diagnostics to appear in
|
||||||
" this removes the jitter when warnings/errors flow in
|
" this removes the jitter when warnings/errors flow in
|
||||||
set signcolumn=yes
|
set signcolumn=yes:2
|
||||||
|
|
|
@ -4,6 +4,10 @@ autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab
|
||||||
|
|
||||||
let g:gutentags_file_list_command = 'git ls-files'
|
let g:gutentags_file_list_command = 'git ls-files'
|
||||||
|
|
||||||
|
" quick-scope
|
||||||
|
" https://github.com/unblevable/quick-scope
|
||||||
|
let g:qs_highlight_on_keys = ['f', 'F', 't', 'T']
|
||||||
|
|
||||||
" Golang
|
" Golang
|
||||||
" Go test, Def, Decls shortcut
|
" Go test, Def, Decls shortcut
|
||||||
nmap <Leader>got :GoTest<CR>:botright copen<CR>
|
nmap <Leader>got :GoTest<CR>:botright copen<CR>
|
||||||
|
|
|
@ -14,3 +14,19 @@ let g:airline#extensions#tabline#formatter = 'unique_tail_improved'
|
||||||
let g:airline_powerline_fonts = 1 " Use powerline fonts
|
let g:airline_powerline_fonts = 1 " Use powerline fonts
|
||||||
let g:airline_theme = 'sonokai'
|
let g:airline_theme = 'sonokai'
|
||||||
|
|
||||||
|
" Customize fzf colors to match your color scheme
|
||||||
|
" - fzf#wrap translates this to a set of `--color` options
|
||||||
|
let g:fzf_colors =
|
||||||
|
\ { 'fg': ['fg', 'Normal'],
|
||||||
|
\ 'bg': ['bg', 'Normal'],
|
||||||
|
\ 'hl': ['fg', 'Comment'],
|
||||||
|
\ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
|
||||||
|
\ 'bg+': ['bg', 'CursorLine', 'CursorColumn'],
|
||||||
|
\ 'hl+': ['fg', 'Statement'],
|
||||||
|
\ 'info': ['fg', 'PreProc'],
|
||||||
|
\ 'border': ['fg', 'Ignore'],
|
||||||
|
\ 'prompt': ['fg', 'Conditional'],
|
||||||
|
\ 'pointer': ['fg', 'Exception'],
|
||||||
|
\ 'marker': ['fg', 'Keyword'],
|
||||||
|
\ 'spinner': ['fg', 'Label'],
|
||||||
|
\ 'header': ['fg', 'Comment'] }
|
||||||
|
|
|
@ -23,6 +23,8 @@ channels: final: prev: {
|
||||||
obs-studio
|
obs-studio
|
||||||
obs-studio-plugins
|
obs-studio-plugins
|
||||||
looking-glass-client
|
looking-glass-client
|
||||||
|
nix-direnv
|
||||||
|
vimPlugins
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -65,6 +65,7 @@ in
|
||||||
manix
|
manix
|
||||||
nix-index
|
nix-index
|
||||||
nix-tree
|
nix-tree
|
||||||
|
nixpkgs-review
|
||||||
# Build broken, python2.7-PyJWT-2.0.1.drv' failed
|
# Build broken, python2.7-PyJWT-2.0.1.drv' failed
|
||||||
#nixops
|
#nixops
|
||||||
psos
|
psos
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
{ pkgs, lib, budUtils, ... }: {
|
|
||||||
bud.cmds = with pkgs; {
|
|
||||||
get = {
|
|
||||||
writer = budUtils.writeBashWithPaths [ nixUnstable git coreutils ];
|
|
||||||
synopsis = "get [DEST]";
|
|
||||||
help = "Copy the desired template to DEST";
|
|
||||||
script = ./get.bash;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -48,10 +48,11 @@ in
|
||||||
(docs mdbook)
|
(docs mdbook)
|
||||||
(devos inputs.deploy.packages.${pkgs.system}.deploy-rs)
|
(devos inputs.deploy.packages.${pkgs.system}.deploy-rs)
|
||||||
]
|
]
|
||||||
|
|
||||||
++ lib.optional
|
++ lib.optional
|
||||||
(system != "i686-linux")
|
(system != "i686-linux")
|
||||||
(devos cachix)
|
(devos cachix)
|
||||||
|
++ lib.optional
|
||||||
|
(system != "aarch64-darwin")
|
||||||
|
(devos inputs.nixos-generators.defaultPackage.${pkgs.system})
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue