Merge pull request 'Nixos 22.11 Racoon' (#153) from nixos-22-11-racoon into main

Reviewed-on: pub-solar/os#153
Reviewed-by: b12f <hello@benjaminbaedorf.eu>
Reviewed-by: hensoko <hensoko@gssws.de>
This commit is contained in:
teutat3s 2023-01-28 15:10:59 +01:00
commit e06730fdde
14 changed files with 275 additions and 155 deletions

View file

@ -42,11 +42,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1667419884, "lastModified": 1668784520,
"narHash": "sha256-oLNw87ZI5NxTMlNQBv1wG2N27CUzo9admaFlnmavpiY=", "narHash": "sha256-gGgVAMwYPPmrfnvnoRi6OkEB5KRsNTb9uYzEceLdO/g=",
"owner": "LnL7", "owner": "LnL7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "cfc0125eafadc9569d3d6a16ee928375b77e3100", "rev": "6349b99bc2b96ded34d068a88c7c5ced406b7f7f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -85,11 +85,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1659725433, "lastModified": 1668797197,
"narHash": "sha256-1ZxuK67TL29YLw88vQ18Y2Y6iYg8Jb7I6/HVzmNB6nM=", "narHash": "sha256-0w6iD3GSSQbIeSFVDzAAQZB+hDq670ZTms3d9XI+BtM=",
"owner": "serokell", "owner": "serokell",
"repo": "deploy-rs", "repo": "deploy-rs",
"rev": "41f15759dd8b638e7b4f299730d94d5aa46ab7eb", "rev": "2a3c5f70eee04a465aa534d8bd4fcc9bb3c4a8ce",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -192,11 +192,11 @@
"flake-compat_3": { "flake-compat_3": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1650374568, "lastModified": 1668681692,
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "b4a34015c698c7793d592d66adbab377907a2be8", "rev": "009399224d5e398d03b22badca40a37ac85412a1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -289,19 +289,20 @@
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"nixos" "nixos"
] ],
"utils": "utils_2"
}, },
"locked": { "locked": {
"lastModified": 1667677389, "lastModified": 1669071065,
"narHash": "sha256-y9Zdq8vtsn0T5TO1iTvWA7JndYIAGjzCjbYVi/hOSmA=", "narHash": "sha256-KBpgj3JkvlPsJ3duOZqFJe6tgr+wc75t8sFmgRbBSbw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "87d55517f6f36aa1afbd7a4a064869d5a1d405b8", "rev": "f7641a3ff398ccce952e19a199d775934e518c1d",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-22.05", "ref": "release-22.11",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
@ -324,11 +325,11 @@
}, },
"latest_2": { "latest_2": {
"locked": { "locked": {
"lastModified": 1667629849, "lastModified": 1669320964,
"narHash": "sha256-P+v+nDOFWicM4wziFK9S/ajF2lc0N2Rg9p6Y35uMoZI=", "narHash": "sha256-EBFw+ge12Pcr3qCk8If3/eMBAoQLR7ytndXZoRevUtM=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "3bacde6273b09a21a8ccfba15586fb165078fb62", "rev": "27ccd29078f974ddbdd7edc8e38c8c8ae003c877",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -375,16 +376,16 @@
}, },
"nixos": { "nixos": {
"locked": { "locked": {
"lastModified": 1667653703, "lastModified": 1669379897,
"narHash": "sha256-Xow4vx52/g5zkhlgZnMEm/TEXsj+13jTPCc2jIhW1xU=", "narHash": "sha256-XM3xBfQD5tOtV4KAhQHyh53cJdqkLwotZa5JJIUjbQc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "f09ad462c5a121d0239fde645aacb2221553a217", "rev": "8690906c4d80db5d85f52313a8487bf2e7b8d4c5",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-22.05", "ref": "nixos-22.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -395,11 +396,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1666812839, "lastModified": 1669065280,
"narHash": "sha256-0nBDgjPU+iDsvz89W+cDEyhnFGSwCJmwDl/gMGqYiU0=", "narHash": "sha256-3+pq1oJWjGDLfd8G/vR3IIFZ+EQ/aglukA0bTiMlf3o=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-generators", "repo": "nixos-generators",
"rev": "41f3518bc194389df22a3d198215eae75e6b5ab9", "rev": "50aeec40f2072d2ab267c8ec8a345573704ec110",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -410,11 +411,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1667768008, "lastModified": 1669146234,
"narHash": "sha256-PGbX0s2hhXGnZDFVE6UIhPSOf5YegpWs5dUXpT/14F0=", "narHash": "sha256-HEby7EG1yaq1oT2Ze6Cvok9CFju1XHkSvVHmkptLW9U=",
"owner": "nixos", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "f6483e0def85efb9c1e884efbaff45a5e7aabb34", "rev": "0099253ad0b5283f06ffe31cf010af3f9ad7837d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -520,6 +521,21 @@
"repo": "flake-utils", "repo": "flake-utils",
"type": "github" "type": "github"
} }
},
"utils_2": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -8,7 +8,7 @@
inputs = inputs =
{ {
# Track channels with commits tested and built by hydra # Track channels with commits tested and built by hydra
nixos.url = "github:nixos/nixpkgs/nixos-22.05"; nixos.url = "github:nixos/nixpkgs/nixos-22.11";
latest.url = "github:nixos/nixpkgs/nixos-unstable"; latest.url = "github:nixos/nixpkgs/nixos-unstable";
flake-compat.url = "github:edolstra/flake-compat"; flake-compat.url = "github:edolstra/flake-compat";
@ -20,7 +20,7 @@
digga.inputs.home-manager.follows = "home"; digga.inputs.home-manager.follows = "home";
digga.inputs.deploy.follows = "deploy"; digga.inputs.deploy.follows = "deploy";
home.url = "github:nix-community/home-manager/release-22.05"; home.url = "github:nix-community/home-manager/release-22.11";
home.inputs.nixpkgs.follows = "nixos"; home.inputs.nixpkgs.follows = "nixos";
darwin.url = "github:LnL7/nix-darwin"; darwin.url = "github:LnL7/nix-darwin";

View file

@ -2,5 +2,5 @@
# Both things below are for # Both things below are for
# https://github.com/NixOS/nixpkgs/issues/124215 # https://github.com/NixOS/nixpkgs/issues/124215
documentation.info.enable = lib.mkForce false; documentation.info.enable = lib.mkForce false;
nix.sandboxPaths = [ "/bin/sh=${pkgs.bash}/bin/sh" ]; nix.settings.extra-sandbox-paths = [ "/bin/sh=${pkgs.bash}/bin/sh" ];
} }

View file

@ -1,10 +1,12 @@
{ config, pkgs, lib, ... }:
with lib;
let cfg = config.pub-solar.core;
in
{ {
config,
pkgs,
lib,
...
}:
with lib; let
cfg = config.pub-solar.core;
in {
options.pub-solar.core = { options.pub-solar.core = {
enableCaddy = mkOption { enableCaddy = mkOption {
type = types.bool; type = types.bool;
@ -39,12 +41,13 @@ in
networking.firewall.enable = true; networking.firewall.enable = true;
# Customized binary caches list (with fallback to official binary cache) # Customized binary caches list (with fallback to official binary cache)
nix.binaryCaches = cfg.binaryCaches; nix.settings.substituters = cfg.binaryCaches;
nix.binaryCachePublicKeys = cfg.publicKeys; nix.settings.trusted-public-keys = cfg.publicKeys;
# These entries get added to /etc/hosts # These entries get added to /etc/hosts
networking.hosts = { networking.hosts = {
"127.0.0.1" = [ ] "127.0.0.1" =
[]
++ lib.optionals cfg.enableCaddy ["caddy.local"] ++ lib.optionals cfg.enableCaddy ["caddy.local"]
++ lib.optionals config.pub-solar.printing.enable ["cups.local"] ++ lib.optionals config.pub-solar.printing.enable ["cups.local"]
++ lib.optionals cfg.enableHelp ["help.local"]; ++ lib.optionals cfg.enableHelp ["help.local"];

View file

@ -1,19 +1,25 @@
{ config, pkgs, lib, inputs, ... }:
{ {
config,
pkgs,
lib,
inputs,
...
}: {
nix = { nix = {
# Use default version alias for nix package # Use default version alias for nix package
package = pkgs.nix; package = pkgs.nix;
# Improve nix store disk usage
autoOptimiseStore = true;
gc.automatic = true; gc.automatic = true;
optimise.automatic = true; optimise.automatic = true;
settings = {
# Improve nix store disk usage
auto-optimise-store = true;
# Prevents impurities in builds # Prevents impurities in builds
useSandbox = true; sandbox = true;
# give root and @wheel special privileges with nix # give root and @wheel special privileges with nix
trustedUsers = [ "root" "@wheel" ]; trusted-users = ["root" "@wheel"];
# This is just a representation of the nix default # This is just a representation of the nix default
systemFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ]; system-features = ["nixos-test" "benchmark" "big-parallel" "kvm"];
};
# Generally useful nix option defaults # Generally useful nix option defaults
extraOptions = '' extraOptions = ''
min-free = 536870912 min-free = 536870912

View file

@ -19,7 +19,7 @@ in
ansible-lint ansible-lint
restic restic
shellcheck shellcheck
terraform_0_15 terraform
]; ];
}; };
}; };

View file

@ -1,17 +1,21 @@
{ lib, config, pkgs, ... }: {
with lib; lib,
let config,
pkgs,
...
}:
with lib; let
psCfg = config.pub-solar; psCfg = config.pub-solar;
cfg = config.pub-solar.docker; cfg = config.pub-solar.docker;
in in {
{
options.pub-solar.docker = { options.pub-solar.docker = {
enable = mkEnableOption "Life in metal boxes"; enable = mkEnableOption "Life in metal boxes";
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
virtualisation.docker.enable = true; virtualisation.docker.enable = true;
users.users = with pkgs; pkgs.lib.setAttrByPath [ psCfg.user.name ] { users.users = with pkgs;
pkgs.lib.setAttrByPath [psCfg.user.name] {
extraGroups = ["docker"]; extraGroups = ["docker"];
}; };

View file

@ -66,29 +66,97 @@
x = 0; x = 0;
y = 0; y = 0;
}; };
use_thin_strokes = true;
}; };
key_bindings = [ key_bindings = [
{ key = "V"; mods = "Control|Alt"; action = "Paste"; } {
{ key = "C"; mods = "Control|Alt"; action = "Copy"; } key = "V";
{ key = "Paste"; action = "Paste"; } mods = "Control|Alt";
{ key = "Copy"; action = "Copy"; } action = "Paste";
{ key = "Q"; mods = "Command"; action = "Quit"; } }
{ key = "W"; mods = "Command"; action = "Quit"; } {
{ key = "Insert"; mods = "Shift"; action = "PasteSelection"; } key = "C";
{ key = "Key0"; mods = "Control"; action = "ResetFontSize"; } mods = "Control|Alt";
{ key = "Equals"; mods = "Control"; action = "IncreaseFontSize"; } action = "Copy";
{ key = "PageUp"; mods = "Shift"; action = "ScrollPageUp"; } }
{ key = "PageDown"; mods = "Shift"; action = "ScrollPageDown"; } {
{ key = "Minus"; mods = "Control"; action = "DecreaseFontSize"; } key = "Paste";
{ key = "H"; mode = "Vi|~Search"; action = "ScrollToBottom"; } action = "Paste";
{ key = "H"; mode = "Vi|~Search"; action = "ToggleViMode"; } }
{ key = "I"; mode = "Vi|~Search"; action = "Up"; } {
{ key = "K"; mode = "Vi|~Search"; action = "Down"; } key = "Copy";
{ key = "J"; mode = "Vi|~Search"; action = "Left"; } action = "Copy";
{ key = "L"; mode = "Vi|~Search"; action = "Right"; } }
{
key = "Q";
mods = "Command";
action = "Quit";
}
{
key = "W";
mods = "Command";
action = "Quit";
}
{
key = "Insert";
mods = "Shift";
action = "PasteSelection";
}
{
key = "Key0";
mods = "Control";
action = "ResetFontSize";
}
{
key = "Equals";
mods = "Control";
action = "IncreaseFontSize";
}
{
key = "PageUp";
mods = "Shift";
action = "ScrollPageUp";
}
{
key = "PageDown";
mods = "Shift";
action = "ScrollPageDown";
}
{
key = "Minus";
mods = "Control";
action = "DecreaseFontSize";
}
{
key = "H";
mode = "Vi|~Search";
action = "ScrollToBottom";
}
{
key = "H";
mode = "Vi|~Search";
action = "ToggleViMode";
}
{
key = "I";
mode = "Vi|~Search";
action = "Up";
}
{
key = "K";
mode = "Vi|~Search";
action = "Down";
}
{
key = "J";
mode = "Vi|~Search";
action = "Left";
}
{
key = "L";
mode = "Vi|~Search";
action = "Right";
}
]; ];
# Base16 Burn 256 - alacritty color config # Base16 Burn 256 - alacritty color config
@ -164,12 +232,30 @@
}; };
indexed_colors = [ indexed_colors = [
{ index = 16; color = "0xdf5923"; } {
{ index = 17; color = "0xd70000"; } index = 16;
{ index = 18; color = "0x2d2a2e"; } color = "0xdf5923";
{ index = 19; color = "0x303030"; } }
{ index = 20; color = "0xd3d1d4"; } {
{ index = 21; color = "0x303030"; } index = 17;
color = "0xd70000";
}
{
index = 18;
color = "0x2d2a2e";
}
{
index = 19;
color = "0x303030";
}
{
index = 20;
color = "0xd3d1d4";
}
{
index = 21;
color = "0x303030";
}
]; ];
}; };
} }

View file

@ -1,9 +1,12 @@
{ lib, config, pkgs, ... }:
with lib;
let
psCfg = config.pub-solar;
in
{ {
lib,
config,
pkgs,
...
}:
with lib; let
psCfg = config.pub-solar;
in {
options.pub-solar.sway = { options.pub-solar.sway = {
enable = mkEnableOption "Life in boxes"; enable = mkEnableOption "Life in boxes";
@ -29,7 +32,7 @@ in
''; '';
}) })
({ {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
linuxPackages.v4l2loopback linuxPackages.v4l2loopback
]; ];
@ -49,12 +52,12 @@ in
}; };
}; };
extraPortals = with pkgs; [xdg-desktop-portal-gtk]; extraPortals = with pkgs; [xdg-desktop-portal-gtk];
gtkUsePortal = true;
}; };
services.pipewire.enable = true; services.pipewire.enable = true;
home-manager = with pkgs; pkgs.lib.setAttrByPath [ "users" psCfg.user.name ] { home-manager = with pkgs;
pkgs.lib.setAttrByPath ["users" psCfg.user.name] {
home.packages = with pkgs; [ home.packages = with pkgs; [
sway sway
grim grim
@ -102,6 +105,6 @@ in
xdg.configFile."sway/config.d/applications.conf".source = ./config/config.d/applications.conf; xdg.configFile."sway/config.d/applications.conf".source = ./config/config.d/applications.conf;
xdg.configFile."sway/config.d/systemd.conf".source = ./config/config.d/systemd.conf; xdg.configFile."sway/config.d/systemd.conf".source = ./config/config.d/systemd.conf;
}; };
}) }
]); ]);
} }

View file

@ -13,6 +13,7 @@ set expandtab
set shiftwidth=2 set shiftwidth=2
set number set number
set relativenumber set relativenumber
set mouse=
set undolevels=1000 set undolevels=1000
set undoreload=10000 set undoreload=10000

View file

@ -73,8 +73,7 @@ lua <<EOF
end end
-- Add additional capabilities supported by nvim-cmp -- Add additional capabilities supported by nvim-cmp
local capabilities = vim.lsp.protocol.make_client_capabilities() local capabilities = require('cmp_nvim_lsp').default_capabilities()
capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities)
-- vscode HTML lsp needs this https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#html -- vscode HTML lsp needs this https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#html
capabilities.textDocument.completion.completionItem.snippetSupport = true capabilities.textDocument.completion.completionItem.snippetSupport = true

View file

@ -1,11 +1,13 @@
{ pkgs, lib, ... }: {
let pkgs,
lib,
...
}: let
folder = ./.; folder = ./.;
toImport = name: value: folder + ("/" + name); toImport = name: value: folder + ("/" + name);
filterCaches = key: value: value == "regular" && lib.hasSuffix ".nix" key && key != "default.nix"; filterCaches = key: value: value == "regular" && lib.hasSuffix ".nix" key && key != "default.nix";
imports = lib.mapAttrsToList toImport (lib.filterAttrs filterCaches (builtins.readDir folder)); imports = lib.mapAttrsToList toImport (lib.filterAttrs filterCaches (builtins.readDir folder));
in in {
{
inherit imports; inherit imports;
nix.binaryCaches = [ "https://cache.nixos.org/" ]; nix.settings.substituters = ["https://cache.nixos.org/"];
} }

View file

@ -1,9 +1,9 @@
{ {
nix = { nix.settings = {
binaryCaches = [ substituters = [
"https://nix-community.cachix.org" "https://nix-community.cachix.org"
]; ];
binaryCachePublicKeys = [ trusted-public-keys = [
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
]; ];
}; };

View file

@ -1,9 +1,9 @@
{ {
nix = { nix.settings = {
binaryCaches = [ substituters = [
"https://nrdxp.cachix.org" "https://nrdxp.cachix.org"
]; ];
binaryCachePublicKeys = [ trusted-public-keys = [
"nrdxp.cachix.org-1:Fc5PSqY2Jm1TrWfm88l6cvGWwz3s93c6IOifQWnhNW4=" "nrdxp.cachix.org-1:Fc5PSqY2Jm1TrWfm88l6cvGWwz3s93c6IOifQWnhNW4="
]; ];
}; };