@@ -1,10 +1,10 @@
 | 
			
		||||
{ config, colors, ... }:
 | 
			
		||||
{ config, lib', ... }:
 | 
			
		||||
{
 | 
			
		||||
  services = {
 | 
			
		||||
    dunst = {
 | 
			
		||||
      enable = true;
 | 
			
		||||
      iconTheme = with config.gtk.iconTheme; { inherit name package; };
 | 
			
		||||
      settings = with colors.hex; {
 | 
			
		||||
      settings = with lib'.colors.hex; {
 | 
			
		||||
        global = {
 | 
			
		||||
          mouse_left_click = "close_current";
 | 
			
		||||
          mouse_right_click = "do_action";
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
{ pkgs, config, colors, ... }:
 | 
			
		||||
{ pkgs, config, lib', ... }:
 | 
			
		||||
{
 | 
			
		||||
  programs = {
 | 
			
		||||
    firefox = {
 | 
			
		||||
@@ -29,7 +29,7 @@
 | 
			
		||||
          font-bold = "Fira Mono:style=Bold:pixelsize=18";
 | 
			
		||||
        };
 | 
			
		||||
        scrollback.lines = 4000;
 | 
			
		||||
        colors = with colors.default; {
 | 
			
		||||
        colors = with lib'.colors.default; {
 | 
			
		||||
          inherit foreground background;
 | 
			
		||||
          regular0 = surface1;
 | 
			
		||||
          regular1 = red;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
{ pkgs, config, colors, inputs, ... }:
 | 
			
		||||
{ pkgs, config, lib', inputs, ... }:
 | 
			
		||||
{
 | 
			
		||||
  wayland = {
 | 
			
		||||
    windowManager = {
 | 
			
		||||
@@ -16,7 +16,7 @@
 | 
			
		||||
          + (with config.home.pointerCursor; ''
 | 
			
		||||
          exec-once=hyprctl setcursor ${name} ${toString size}
 | 
			
		||||
        '')
 | 
			
		||||
          + (with colors.argb { a = "ee"; };''
 | 
			
		||||
          + (with lib'.colors.argb { a = "ee"; };''
 | 
			
		||||
          general {
 | 
			
		||||
            col.active_border = 0x${mauve} 0x${flamingo} 135deg
 | 
			
		||||
            col.inactive_border = 0x${surface0}
 | 
			
		||||
@@ -27,7 +27,7 @@
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  home.file.tofi = {
 | 
			
		||||
    source = pkgs.writeText "tofi-config" (pkgs.lib.generators.toKeyValue { } (with colors.default; {
 | 
			
		||||
    source = pkgs.writeText "tofi-config" (pkgs.lib.generators.toKeyValue { } (with lib'.colors.default; {
 | 
			
		||||
      # https://github.com/philj56/tofi/blob/master/themes/fullscreen
 | 
			
		||||
      width = "100%";
 | 
			
		||||
      height = "100%";
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
{ config, pkgs, network, ... }:
 | 
			
		||||
{ config, pkgs, lib', ... }:
 | 
			
		||||
{
 | 
			
		||||
  imports = [
 | 
			
		||||
    ./networking.nix
 | 
			
		||||
@@ -12,7 +12,7 @@
 | 
			
		||||
    shell = pkgs.zsh;
 | 
			
		||||
    home = "/home/spark";
 | 
			
		||||
    extraGroups = [ "wheel" ];
 | 
			
		||||
    openssh.authorizedKeys.keys = network.commonSSHKeys;
 | 
			
		||||
    openssh.authorizedKeys.keys = lib'.network.commonSSHKeys;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  time.timeZone = "Asia/Kolkata";
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
{ config, pkgs, network, ... }:
 | 
			
		||||
{ config, pkgs, lib', ... }:
 | 
			
		||||
{
 | 
			
		||||
  networking = {
 | 
			
		||||
    hostName = "marisa";
 | 
			
		||||
@@ -41,7 +41,7 @@
 | 
			
		||||
        }];
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
    wireguard.interfaces.wg0 = with network.addresses.wireguard.ips; {
 | 
			
		||||
    wireguard.interfaces.wg0 = with lib'.network.addresses.wireguard.ips; {
 | 
			
		||||
      ips = [ marisa ];
 | 
			
		||||
      listenPort = 17840;
 | 
			
		||||
      privateKeyFile = "/var/secrets/wg.key";
 | 
			
		||||
@@ -50,7 +50,7 @@
 | 
			
		||||
          #Oracle VM1
 | 
			
		||||
          publicKey = "z0Y2VNEWcyVQVSqRHiwmiJ5/0MgSPM+HZfEcwIccSxM=";
 | 
			
		||||
          allowedIPs = [ remilia ];
 | 
			
		||||
          endpoint = "${network.addresses.domain.natto}:17840";
 | 
			
		||||
          endpoint = "${lib'.network.addresses.domain.natto}:17840";
 | 
			
		||||
          persistentKeepalive = 25;
 | 
			
		||||
        }
 | 
			
		||||
      ];
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
{ config, pkgs, network, ... }:
 | 
			
		||||
{ config, pkgs, lib', ... }:
 | 
			
		||||
{
 | 
			
		||||
  imports = [
 | 
			
		||||
    ./networking.nix
 | 
			
		||||
@@ -15,7 +15,7 @@
 | 
			
		||||
    shell = pkgs.zsh;
 | 
			
		||||
    home = "/home/bat";
 | 
			
		||||
    extraGroups = [ "wheel" ];
 | 
			
		||||
    openssh.authorizedKeys.keys = network.commonSSHKeys;
 | 
			
		||||
    openssh.authorizedKeys.keys = lib'.network.commonSSHKeys;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  system.stateVersion = "21.11";
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
{ config, pkgs, lib, network, ... }:
 | 
			
		||||
{ config, pkgs, lib', network, ... }:
 | 
			
		||||
{
 | 
			
		||||
  mailserver =
 | 
			
		||||
    let domain = network.addresses.domain.natto; in
 | 
			
		||||
    let domain = lib'.network.addresses.domain.natto; in
 | 
			
		||||
    rec {
 | 
			
		||||
      enable = true;
 | 
			
		||||
      fqdn = "mail.${domain}";
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
{ lib, config, network, pkgs, ... }:
 | 
			
		||||
{ lib, config, lib', pkgs, ... }:
 | 
			
		||||
{
 | 
			
		||||
  networking = {
 | 
			
		||||
    useDHCP = false;
 | 
			
		||||
@@ -27,7 +27,7 @@
 | 
			
		||||
        useDHCP = true;
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
    nat = with network.addresses.wireguard.ips; {
 | 
			
		||||
    nat = with lib'.network.addresses.wireguard.ips; {
 | 
			
		||||
      enable = true;
 | 
			
		||||
      externalInterface = "ens3";
 | 
			
		||||
      internalInterfaces = [ "wg0" ];
 | 
			
		||||
@@ -46,7 +46,7 @@
 | 
			
		||||
        }
 | 
			
		||||
      ];
 | 
			
		||||
    };
 | 
			
		||||
    wireguard.interfaces = with network.addresses.wireguard; {
 | 
			
		||||
    wireguard.interfaces = with lib'.network.addresses.wireguard; {
 | 
			
		||||
      wg0 = {
 | 
			
		||||
        ips = [ ips.remilia ];
 | 
			
		||||
        listenPort = 17840;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
{ config, pkgs, lib, network, ... }:
 | 
			
		||||
{ config, pkgs, lib, lib', ... }:
 | 
			
		||||
let
 | 
			
		||||
  domain = network.addresses.domain.natto;
 | 
			
		||||
  domain = lib'.network.addresses.domain.natto;
 | 
			
		||||
in
 | 
			
		||||
{
 | 
			
		||||
  services = {
 | 
			
		||||
@@ -40,7 +40,7 @@ in
 | 
			
		||||
            };
 | 
			
		||||
          };
 | 
			
		||||
        in
 | 
			
		||||
        with network.addresses.wireguard.ips; {
 | 
			
		||||
        with lib'.network.addresses.wireguard.ips; {
 | 
			
		||||
          "${domain}" = {
 | 
			
		||||
            addSSL = true;
 | 
			
		||||
            enableACME = true;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
{ config, pkgs, network, ... }:
 | 
			
		||||
{ config, pkgs, lib', ... }:
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  networking = {
 | 
			
		||||
@@ -18,7 +18,7 @@
 | 
			
		||||
      trustedInterfaces = [ "docker0" ];
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    wireguard.interfaces.wg0 = with network.addresses.wireguard.ips; {
 | 
			
		||||
    wireguard.interfaces.wg0 = with lib'.network.addresses.wireguard.ips; {
 | 
			
		||||
      ips = [ satori ];
 | 
			
		||||
      listenPort = 17840;
 | 
			
		||||
      privateKeyFile = "/var/secrets/wg.key";
 | 
			
		||||
@@ -27,7 +27,7 @@
 | 
			
		||||
          #Oracle VM1
 | 
			
		||||
          publicKey = "z0Y2VNEWcyVQVSqRHiwmiJ5/0MgSPM+HZfEcwIccSxM=";
 | 
			
		||||
          allowedIPs = [ remilia ];
 | 
			
		||||
          endpoint = "${network.addresses.domain.natto}:17840";
 | 
			
		||||
          endpoint = "${lib'.network.addresses.domain.natto}:17840";
 | 
			
		||||
          persistentKeepalive = 25;
 | 
			
		||||
        }
 | 
			
		||||
      ];
 | 
			
		||||
 
 | 
			
		||||
@@ -3,7 +3,10 @@
 | 
			
		||||
{
 | 
			
		||||
  services = {
 | 
			
		||||
    tor.enable = true;
 | 
			
		||||
    openssh.enable = true;
 | 
			
		||||
    openssh = {
 | 
			
		||||
      enable = true;
 | 
			
		||||
      settings.permitRootLogin = "yes";
 | 
			
		||||
    };
 | 
			
		||||
    ratbagd.enable = true;
 | 
			
		||||
    btrfs.autoScrub.enable = true;
 | 
			
		||||
    zfs.autoScrub.enable = true;
 | 
			
		||||
 
 | 
			
		||||
@@ -6,10 +6,12 @@
 | 
			
		||||
        _module.args = {
 | 
			
		||||
          inherit inputs self;
 | 
			
		||||
          flake = self;
 | 
			
		||||
          lib' = {
 | 
			
		||||
            colors = import ./colors.nix;
 | 
			
		||||
            network = import ./network.nix;
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
    }
 | 
			
		||||
  ];
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user