Compare commits

..

2 Commits

6 changed files with 40 additions and 55 deletions

View File

@ -1,5 +1,7 @@
## Felixalbs nixos config ## Felixalbs nixos config
![](https://github.com/NixOS/nixos-artwork/blob/master/releases/24.05-uakari/uakari.png?raw=true)
Contains configurations for some nixos servers, some nixos desktops and a [nix-darwin](https://github.com/LnL7/nix-darwin) host. Contains configurations for some nixos servers, some nixos desktops and a [nix-darwin](https://github.com/LnL7/nix-darwin) host.
Secrets are managed with [sops-nix](https://github.com/Mic92/sops-nix). Secrets are managed with [sops-nix](https://github.com/Mic92/sops-nix).

6
flake.lock generated
View File

@ -227,11 +227,11 @@
}, },
"unstable": { "unstable": {
"locked": { "locked": {
"lastModified": 1710631334, "lastModified": 1716948383,
"narHash": "sha256-rL5LSYd85kplL5othxK5lmAtjyMOBg390sGBTb3LRMM=", "narHash": "sha256-SzDKxseEcHR5KzPXLwsemyTR/kaM9whxeiJohbL04rs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c75037bbf9093a2acb617804ee46320d6d1fea5a", "rev": "ad57eef4ef0659193044870c731987a6df5cf56b",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -33,8 +33,17 @@
, voyager-addons , voyager-addons
, ... }@inputs: , ... }@inputs:
let let
overlay-unstable = final: prev: { pkgs-overlay = final: prev: {
unstable = unstable.legacyPackages.${prev.system}; unstable = unstable.legacyPackages.${prev.system};
python311 = prev.python311.override {
packageOverrides = self: super: {
# k5test is broken on darwin, as of 24.05
gssapi = super.gssapi.overrideAttrs (old: {
doInstallCheck = false;
});
};
};
}; };
in in
{ {
@ -46,7 +55,7 @@
}; };
modules = [ modules = [
# Overlays-module makes "pkgs.unstable" available in configuration.nix # Overlays-module makes "pkgs.unstable" available in configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; }) ({ config, pkgs, ... }: { nixpkgs.overlays = [ pkgs-overlay ]; })
./hosts/voyager/configuration.nix ./hosts/voyager/configuration.nix
voyager-addons.nixosModules.default voyager-addons.nixosModules.default
@ -65,7 +74,7 @@
}; };
modules = [ modules = [
# Overlays-module makes "pkgs.unstable" available in configuration.nix # Overlays-module makes "pkgs.unstable" available in configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; }) ({ config, pkgs, ... }: { nixpkgs.overlays = [ pkgs-overlay ]; })
./hosts/defiant/configuration.nix ./hosts/defiant/configuration.nix
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
@ -84,7 +93,7 @@
}; };
modules = [ modules = [
# Overlays-module makes "pkgs.unstable" available in configuration.nix # Overlays-module makes "pkgs.unstable" available in configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; }) ({ config, pkgs, ... }: { nixpkgs.overlays = [ pkgs-overlay ]; })
./hosts/edison/configuration.nix ./hosts/edison/configuration.nix
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
@ -102,7 +111,7 @@
}; };
modules = [ modules = [
# Overlays-module makes "pkgs.unstable" available in configuration.nix # Overlays-module makes "pkgs.unstable" available in configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; }) ({ config, pkgs, ... }: { nixpkgs.overlays = [ pkgs-overlay ]; })
./hosts/burnham/configuration.nix ./hosts/burnham/configuration.nix
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
@ -120,7 +129,7 @@
}; };
modules = [ modules = [
./hosts/redshirt/configuration.nix ./hosts/redshirt/configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; }) ({ config, pkgs, ... }: { nixpkgs.overlays = [ pkgs-overlay ]; })
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
]; ];
}; };
@ -133,7 +142,7 @@
}; };
modules = [ modules = [
./hosts/worf/configuration.nix ./hosts/worf/configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; }) ({ config, pkgs, ... }: { nixpkgs.overlays = [ pkgs-overlay ]; })
home-manager.darwinModules.home-manager { home-manager.darwinModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@ -14,6 +14,7 @@
}; };
dynamic_padding = true; dynamic_padding = true;
dynamic_title = true;
decorations = "none"; # full/none/transparent/buttonless decorations = "none"; # full/none/transparent/buttonless
@ -46,9 +47,9 @@
size = 14; size = 14;
}; };
draw_bold_text_with_bright_colors = true;
colors = { colors = {
draw_bold_text_with_bright_colors = true;
# # Tomorrow Night Bright # # Tomorrow Night Bright
# primary = { # primary = {
# background = "0x141414"; # background = "0x141414";
@ -150,10 +151,10 @@
# indexed_colors: [] # indexed_colors: []
}; };
visual_bell = { bell = {
animation = "EaseOutExpo"; animation = "Ease";
color = "0xffffff"; color = "0xffffff";
duration = 200; duration = 100;
}; };
# Key bindings # Key bindings
@ -308,29 +309,19 @@
# - { key: Delete, chars: "\x1b[3~" } # - { key: Delete, chars: "\x1b[3~" }
mouse = {
double_click = { threshold = 300; };
triple_click = { threshold = 300; };
hide_when_typing = false;
};
selection = { selection = {
semantic_escape_chars = ",`|:\"' ()[]{}<>"; semantic_escape_chars = ",`|:\"' ()[]{}<>";
save_to_clipboard = false; save_to_clipboard = false;
}; };
mouse_bindings = [
{ mouse = "Middle"; action = "PasteSelection"; }
];
cursor = { cursor = {
style = "Block"; style = {
blinking = true; shape = "Block";
blinking = "on";
};
unfocused_hollow = true; unfocused_hollow = true;
}; };
dynamic_title = true;
}; };
}; };
} }

View File

@ -7,14 +7,9 @@ let
maxUploadSize = "256M"; maxUploadSize = "256M";
in { in {
options.services.snappymail = { options.services.snappymail = {
enable = mkEnableOption (lib.mdDoc "Snappymail"); enable = mkEnableOption "Snappymail";
package = mkOption { package = mkPackageOption pkgs "snappymail" { };
type = types.package;
default = pkgs.snappymail;
defaultText = lib.mdDoc "pkgs.snappymail";
description = lib.mdDoc "Which snappymail package to use.";
};
dataDir = mkOption { dataDir = mkOption {
type = types.str; type = types.str;
@ -23,8 +18,8 @@ in {
}; };
hostname = mkOption { hostname = mkOption {
type = types.str; type = types.nullOr types.str;
/* default = null; */ default = null;
example = "mail.example.com"; example = "mail.example.com";
description = "Enable nginx with this hostname, null disables nginx"; description = "Enable nginx with this hostname, null disables nginx";
}; };
@ -32,13 +27,13 @@ in {
user = mkOption { user = mkOption {
type = types.str; type = types.str;
default = "snappymail"; default = "snappymail";
description = lib.mdDoc "System user under which snappymail runs"; description = "System user under which snappymail runs";
}; };
group = mkOption { group = mkOption {
type = types.str; type = types.str;
default = "snappymail"; default = "snappymail";
description = lib.mdDoc "System group under which snappymail runs"; description = "System group under which snappymail runs";
}; };
}; };
@ -48,8 +43,6 @@ in {
description = "Snappymail service"; description = "Snappymail service";
group = cfg.group; group = cfg.group;
home = cfg.dataDir; home = cfg.dataDir;
useDefaultShell = true;
createHome = true;
isSystemUser = true; isSystemUser = true;
}; };
}; };
@ -88,8 +81,9 @@ in {
locations."^~ /data".extraConfig = '' locations."^~ /data".extraConfig = ''
deny all; deny all;
''; '';
locations."~ \.php$".extraConfig = '' locations."~ \\.php$".extraConfig = ''
include ${pkgs.nginx}/conf/fastcgi_params; include ${config.services.nginx.package}/conf/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:${config.services.phpfpm.pools.snappymail.socket}; fastcgi_pass unix:${config.services.phpfpm.pools.snappymail.socket};
''; '';

View File

@ -11,11 +11,9 @@
]; ];
home.packages = with pkgs; [ home.packages = with pkgs; [
# alacritty
emacs-macport emacs-macport
iterm2 iterm2
prismlauncher # prismlauncher
ripes
spotify spotify
borgbackup borgbackup
@ -23,20 +21,11 @@
gnutar gnutar
nix-index nix-index
nodejs nodejs
pinentry
rbw
tldr tldr
unstable.snicat unstable.snicat
zellij zellij
(python311.withPackages (ps: with ps; [ (python311.withPackages (ps: with ps; [
pygments
jupyter
numpy
scipy
pwntools pwntools
pycryptodome pycryptodome
requests requests