Some Minor Refactoring (no it's not

This commit is contained in:
Jill 2022-11-15 06:19:54 +01:00
parent 27d13902e0
commit 07f9ac6a9e
11 changed files with 424 additions and 45 deletions

View File

@ -20,13 +20,34 @@
"type": "github"
}
},
"emacs-overlay": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1666527089,
"narHash": "sha256-FDcMUWaL9XmZKGT+cLTH07sSxm14BJ4+49AYFTpITNI=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "92c3c295daea9e71578b2e4f0cbe9906013c1adc",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "emacs-overlay",
"type": "github"
}
},
"flake-utils": {
"locked": {
"lastModified": 1631561581,
"narHash": "sha256-3VQMV5zvxaVLvqqUrNz3iJelLw30mIVSfZmAaauM3dA=",
"lastModified": 1659877975,
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "7e5bf3925f6fbdfaf50a2a7ca0be2879c4261d19",
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
"type": "github"
},
"original": {
@ -37,11 +58,11 @@
},
"flake-utils_2": {
"locked": {
"lastModified": 1656928814,
"narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=",
"lastModified": 1631561581,
"narHash": "sha256-3VQMV5zvxaVLvqqUrNz3iJelLw30mIVSfZmAaauM3dA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249",
"rev": "7e5bf3925f6fbdfaf50a2a7ca0be2879c4261d19",
"type": "github"
},
"original": {
@ -80,6 +101,21 @@
"type": "github"
}
},
"flake-utils_5": {
"locked": {
"lastModified": 1656928814,
"narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -101,6 +137,67 @@
"type": "github"
}
},
"hyprland": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"wlroots": "wlroots"
},
"locked": {
"lastModified": 1667561425,
"narHash": "sha256-StR+7yu1cj72OOPSAYbfWNKkBHTXRsbp743H3k3qm1Y=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "34ad837fd93a55c2a234381c9077fba1c2fd154c",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "Hyprland",
"type": "github"
}
},
"hyprpaper": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1667775402,
"narHash": "sha256-+k/21qDW+RKBKFKkjRmntWemJR8/5bZyyoDTKr/emCU=",
"owner": "hyprwm",
"repo": "hyprpaper",
"rev": "6d3a15f33cedaa8f01b0f96c8d2a1f8de24bbb33",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprpaper",
"type": "github"
}
},
"hyprpicker": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1666947305,
"narHash": "sha256-jgiDWLwCf6PQhXLUtSk4btaS/jZwJed2XLnlA51ANQk=",
"owner": "hyprwm",
"repo": "hyprpicker",
"rev": "06be1c9348fdf8ff58fd05f54b62bdd73544db6a",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprpicker",
"type": "github"
}
},
"jillo": {
"inputs": {
"mkNodePackage": "mkNodePackage",
@ -122,7 +219,7 @@
},
"mkNodePackage": {
"inputs": {
"flake-utils": "flake-utils",
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs",
"npmlock2nix": "npmlock2nix",
"pnpm2nix": "pnpm2nix"
@ -143,8 +240,10 @@
},
"nix-minecraft": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs_3"
"flake-utils": "flake-utils_3",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1666188576,
@ -239,22 +338,6 @@
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1650161686,
"narHash": "sha256-70ZWAlOQ9nAZ08OU6WY7n4Ij2kOO199dLfNlvO/+pf8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "1ffba9f2f683063c2b14c9f4d12c55ad5f4ed887",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1666164185,
"narHash": "sha256-5v+YB4ijeUfg5LCz9ck4gIpCPhIS+qn02OyPJO48bCE=",
@ -269,7 +352,7 @@
"type": "indirect"
}
},
"nixpkgs_5": {
"nixpkgs_4": {
"locked": {
"lastModified": 1659219666,
"narHash": "sha256-pzYr5fokQPHv7CmUXioOhhzDy/XyWOIXP4LZvv/T7Mk=",
@ -284,7 +367,7 @@
"type": "indirect"
}
},
"nixpkgs_6": {
"nixpkgs_5": {
"locked": {
"lastModified": 1659102345,
"narHash": "sha256-Vbzlz254EMZvn28BhpN8JOi5EuKqnHZ3ujFYgFcSGvk=",
@ -337,11 +420,15 @@
"root": {
"inputs": {
"agenix": "agenix",
"emacs-overlay": "emacs-overlay",
"home-manager": "home-manager",
"hyprland": "hyprland",
"hyprpaper": "hyprpaper",
"hyprpicker": "hyprpicker",
"jillo": "jillo",
"nix-minecraft": "nix-minecraft",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_4",
"nixpkgs": "nixpkgs_3",
"nixpkgs-master": "nixpkgs-master",
"nixpkgs-unstable": "nixpkgs-unstable",
"watch-party": "watch-party"
@ -349,8 +436,8 @@
},
"rust-overlay": {
"inputs": {
"flake-utils": "flake-utils_4",
"nixpkgs": "nixpkgs_6"
"flake-utils": "flake-utils_5",
"nixpkgs": "nixpkgs_5"
},
"locked": {
"lastModified": 1659179790,
@ -368,8 +455,8 @@
},
"watch-party": {
"inputs": {
"flake-utils": "flake-utils_3",
"nixpkgs": "nixpkgs_5",
"flake-utils": "flake-utils_4",
"nixpkgs": "nixpkgs_4",
"rust-overlay": "rust-overlay"
},
"locked": {
@ -382,6 +469,24 @@
"type": "git",
"url": "file:///home/oatmealine/watch-party"
}
},
"wlroots": {
"flake": false,
"locked": {
"host": "gitlab.freedesktop.org",
"lastModified": 1666466001,
"narHash": "sha256-ZjxAnqtcGmHQHKL1Z9sIraDnzIqrJleWcJXfPtzAm74=",
"owner": "wlroots",
"repo": "wlroots",
"rev": "c2d2773df57750081b16d56da13b5015d752cbd7",
"type": "gitlab"
},
"original": {
"host": "gitlab.freedesktop.org",
"owner": "wlroots",
"repo": "wlroots",
"type": "gitlab"
}
}
},
"root": "root",

View File

@ -14,19 +14,46 @@
home-manager.inputs.nixpkgs.follows = "nixpkgs";
# agenix - age-encrypted secrets
agenix.url = "github:ryantm/agenix";
agenix.inputs.nixpkgs.follows = "nixpkgs";
agenix = {
url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-hardware.url = "github:nixos/nixos-hardware";
nixos-hardware.inputs.nixpkgs.follows = "nixpkgs";
nixos-hardware = {
url = "github:nixos/nixos-hardware";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-minecraft.url = "github:Infinidoge/nix-minecraft";
nix-minecraft = {
url = "github:Infinidoge/nix-minecraft";
inputs.nixpkgs.follows = "nixpkgs";
};
jillo.url = "/home/oatmealine/jillo";
watch-party.url = "/home/oatmealine/watch-party";
emacs-overlay = {
url = "github:nix-community/emacs-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:hyprwm/Hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprpaper = {
url = "github:hyprwm/hyprpaper";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprpicker = {
url = "github:hyprwm/hyprpicker";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, nixpkgs-master, nix-minecraft, ... }:
outputs = inputs @ { self, nixpkgs, nixpkgs-unstable, nixpkgs-master, nix-minecraft, hyprland, hyprpaper, hyprpicker, ... }:
let
system = "x86_64-linux";
@ -53,5 +80,3 @@
devShell."${system}" = import ./shell.nix { inherit pkgs; };
};
}

View File

@ -18,4 +18,8 @@
hostname = "mayflower@BMW-M550d-xDrive"; # car 5
ssh = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCIeoFll8XBRwu6vbQHUj4LNbvRvLMTdqUP1su9hGxow8olGKIZf/nINkt+/B5w4UumLFnOOROIWVhSH/04oxGVCWdk29ibPo3yYJIAoQrqOXYWCrGpMDd0z2n/0CwyXRAqmQ4rubnUZtnlabYCLh0eWMu9ZRSsSrQ+MiaUHES/vv1MxlLWHoEGfhLzoq7SyIsK88Mirgu9lSeHd/+2JybkQ9kNEWTxnzUPKwOMT0zLGo7vNLmfPhJ1WilQoV4F8skDbbgFNRuLO13ZDn6W2jqZ+zjf3H9khzPivG+oaKfHLMDD/zCwHM3rm3JyJzX7GF9EV73AqbNkzzsf54vKhYRT";
}
{
hostname = "aether@phone";
ssh = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP5LPWVgsFAH9XErXGZB+lzwb/+7EiEb6eatNWoJag5i JuiceSSH";
}
]

View File

View File

@ -0,0 +1,13 @@
{ config, options, pkgs, lib, ... }:
with lib;
let
cfg = config.modules.editors.doomemacs;
in {
options.modules.editors.doomemacs = {
enable = mkOption {
type = types.bool;
default = false;
};
};
}

110
modules/hyprland.nix Normal file
View File

@ -0,0 +1,110 @@
{ config, pkgs, options, lib, ... }:
with lib;
let
cfg = config.modules.hyprland;
in {
options.modules.hyprland = {
enable = mkOption {
type = types.bool;
default = false;
};
};
config = mkIf cfg.enable {
programs.hyprland = {
enable = true;
};
home._.wayland.windowManager.hyprland = {
enable = true;
extraConfig = ''
monitor=,preferred,auto,1
input {
kb_layout = us
follow_mouse = 1
touchpad {
natural_scroll = yes
}
sensitivity = -0.2
}
general {
main_mod = SUPER
gaps_in = 4
gaps_out = 4
border_size = 2
col.active_border = rgba(f7cd23ff)
col.inactive_border = rbga(0f0f0fff)
cursor_inactive_timeout = 5
damage_tracking = full
layout = dwindle
}
decoration {
multisample_edges = true
rounding = 4
active_opacity = 1.0
inactive_opacity = 0.8
fullscreen_opacity = 1.9
blur = true
blur_size = 6
blur_passes = 2
blur_new_optimizations = on
drop_shadow = true
shadow_range = 4
shadow_render_
col.shadow = rgba(0f0f0f33)
col.shadow_inactive = rgba(0f0f0f1e)
}
gestures {
workspace_swipe = on
}
animations {
enable = true
bezier = workspacesBezier, 0.1, 0.9, 0.1, 0.9
bezier = fadeBezier, 0, 0, 0.6, 1
animation = fade, 1, 8, fadeBezier
animation = windows, 1, 8, fadeBezier, popin 60%
animation = workspaces, 1, 4, workspacesbezier, slide
}
$mainMod = SUPER
bind = $mainMod, enter, exec, alacritty
bind = $mainMod, C, killactive,
bind = $mainMod, P, exec, nwggrid
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
'';
};
};
}

16
modules/hyprpaper.nix Normal file
View File

@ -0,0 +1,16 @@
{ pkgs, options, config, lib, ... }:
with lib;
let
cfg = config.modules.hyprpaper;
in {
options.modules.hyprpaper = {
enable = mkOption {
type = types.bool;
default = false;
};
};
config = mkIf cfg.enable {
};
}

42
modules/services/mosh.nix Normal file
View File

@ -0,0 +1,42 @@
{ config, lib, pkgs, options, ... }:
with lib;
let
cfg = config.modules.services.glitch-soc;
in {
options.modules.services.glitch-soc = {
enable = mkOption {
type = types.bool;
default = false;
};
domain = mkOption {
type = types.str;
default = "feditest.oat.zone";
};
};
config = mkIf cfg.enable {
services = {
mastodon = {
enable = true;
configureNginx = true;
localDomain = cfg.domain;
package = pkgs._.glitch-soc;
smtp = {
fromAddress = "mastodon@${cfg.domain}";
user = "mastodon";
};
extraConfig = {
AUTHORIZED_FETCH = "false";
LIMITED_FEDERATION_MODE = "true";
MAX_TOOT_CHARS = "69420";
MAX_DISPLAY_NAME_CHARS = "32";
MAX_BIO_CHARS = "69420";
};
};
};
};
}

View File

@ -10,13 +10,18 @@ in {
default = false;
};
package = mkOption {
type = types.package;
default = pkgs.nextcloud24;
};
domain = mkOption {
type = types.str;
default = null;
};
};
config = mkIf cfg.enable {
config = mkIf cfg.enable (trace "the balls" {
assertions = [
{ assertion = cfg.domain != null;
description = "Nextcloud requires a domain.";
@ -25,9 +30,42 @@ in {
services.nextcloud = {
enable = true;
package = pkgs.nextcloud24;
package = cfg.package;
hostName = cfg.domain;
config.adminpassFile = "/etc/nextcloudpass";
config = {
dbtype = "pgsql";
dbuser = "nextcloud";
dbhost = "/run/postgresql";
dbname = "nextcloud";
adminpassFile = "/etc/nextcloudpass";
adminuser = "root";
# "log_type" = "systemd";
# "syslog_tag" = "Nextcloud";
# loglevel = "3";
};
};
};
services.nginx.virtualHosts.${cfg.domain} = {
forceSSL = true;
enableACME = true;
locations."^~ /.well-known" = {};
};
services.postgresql = {
enable = true;
ensureDatabases = [ "nextcloud" ];
ensureUsers = [
{ name = "nextcloud";
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
}
];
};
systemd.services."nextcloud-setup" = {
requires = ["postgresql.service"];
after = ["postgresql.service"];
};
networking.firewall.allowedTCPPorts = [ 80 443 ];
});
}

View File

@ -0,0 +1,26 @@
{ config, lib, options, pkgs, ... }:
with lib;
let
cfg = config.modules.services.writefreely;
in {
options.modules.services.writefreely = {
enable = mkOption {
type = types.bool;
default = false;
};
package = mkOption {
type = types.package;
default = pkgs.writefreely;
};
user = mkOption {
type = types.str;
default = "writefreely";
};
};
config = mkIf cfg.enable {
};
}

2
result
View File

@ -1 +1 @@
/nix/store/gzfm8qnjflwp4yd8v5ikjf7pz86957z5-nixos-system-dark-firepit-22.05.20221019.c5203ab
/nix/store/sslhrsnzddsq0j115ac87d61bivxhamm-nixos-system-dark-firepit-22.05.20221019.c5203ab