diff --git a/modules/home/desktop/gnome/default.nix b/modules/home/desktop/gnome/default.nix index 0fac146..523ad09 100644 --- a/modules/home/desktop/gnome/default.nix +++ b/modules/home/desktop/gnome/default.nix @@ -42,7 +42,7 @@ in enable-blur = mkOpt bool true "Whether to enable blur-my-shell application blur."; }; }; - wallpaper = mkOpt str (builtins.toString ./wallpapers/rocket-launch.jpg) "Specify the path of your prefered Gnome wallpaper."; + wallpaper = mkOpt str (builtins.toString ./wallpapers/car-wreck.png) "Specify the path of your prefered Gnome wallpaper."; }; config = mkIf osConfig.${namespace}.desktop.gnome.enable { @@ -81,5 +81,97 @@ in picture-uri-dark = cfg.wallpaper; }; }; + + home.file.".local/share/themes/catppuccin-macchiato/gnome-shell/gnome-shell.css".text = '' + #panel { + + /*background-color: #131313;*/ + + background-color: rgba(0, 0, 0, 0); + + /*background-color: transparent;*/ + + font-weight: bold; + + /*height: 2.2em;*/ + + height: 2.3em; + + transition-duration: 250ms; + + /*Custom panel settings */ + + /*margin: 5px 35px 0 35px;*/ + + margin: 5px 22px 0 22px; + + border-radius: 10px; + + #panel .panel-button { + + background-color: rgba(19, 19, 19, 0.8); + + font-weight: bold; + + /*color: #f2f2f2;*/ + + /*color: #131313;*/ + + -natural-hpadding: 12px; + + -minimum-hpadding: 6px; + + transition-duration: 150ms; + + border: 0px solid transparent; + + /*border: none;*/ + + /*border-radius: 99px;*/ + + border-radius: 10px; + + /*margin: 5px;*/ + + margin-left: 5px; + + margin-right: 5px; + + #panel .panel-button:active, + + #panel .panel-button:overview, + + #panel .panel-button:focus, + + #panel .panel-button:checked { + + box-shadow: inset 0 0 0 100px rgba(242, 242, 242, 0.2); + + /*background-color: #8c7feb;*/ + + background-color: #b299d1; + + /*background-color: #b299d1;*/ + + /*color: #8c7feb;*/ + + color: #131313; + + /*background-color: rgba(163, 153, 235, 1);*/ + + } + + #panel .panel-button:hover { + + box-shadow: inset 0 0 0 100px rgba(242, 242, 242, 0.15); + + background-color: #a399eb; + + color: #131313; + + /*box-shadow: inset 0 0 0 100px rgba(183, 176, 235, 0.15);*/ + + } + ''; }; } diff --git a/modules/home/desktop/gnome/wallpapers/car-wreck.png b/modules/home/desktop/gnome/wallpapers/car-wreck.png new file mode 100644 index 0000000..2af1b0b Binary files /dev/null and b/modules/home/desktop/gnome/wallpapers/car-wreck.png differ diff --git a/modules/home/desktop/gnome/wallpapers/crane.png b/modules/home/desktop/gnome/wallpapers/crane.png new file mode 100644 index 0000000..f343e5c Binary files /dev/null and b/modules/home/desktop/gnome/wallpapers/crane.png differ diff --git a/modules/nixos/admin/default.nix b/modules/nixos/admin/default.nix new file mode 100644 index 0000000..bb2d1fe --- /dev/null +++ b/modules/nixos/admin/default.nix @@ -0,0 +1,16 @@ +{ + lib, + namespace, + ... +}: +let + inherit (lib) types; + inherit (lib.${namespace}) mkOpt; +in +{ + options.${namespace}.admin = with types; { + name = mkOpt str "Jo" "The short name of the system admin."; + full-name = mkOpt str "Johannes Reckers" "The full name of the system admin."; + email = mkOpt str "system@thevoid.cafe" "The E-Mail of the system admin. (Used for system services by default)"; + }; +} diff --git a/modules/nixos/services/forgejo/default.nix b/modules/nixos/services/forgejo/default.nix new file mode 100644 index 0000000..395ae2c --- /dev/null +++ b/modules/nixos/services/forgejo/default.nix @@ -0,0 +1,56 @@ +{ + lib, + config, + namespace, + ... +}: +let + inherit (lib) mkEnableOption mkIf; + cfg = config.${namespace}.services.forgejo; +in +{ + options.${namespace}.services.forgejo = { + enable = mkEnableOption "Whether to enable the forgejo git service."; + }; + + config = mkIf cfg.enable { + services.forgejo = { + enable = true; + + database = { + type = "postgres"; + }; + lfs.enable = true; + settings = { + server = { + DOMAIN = "git.thevoid.cafe"; + ROOT_URL = "https://git.thevoid.cafe/"; + HTTP_PORT = "3030"; + }; + service.DISABLE_REGISTRATION = true; + actions = { + ENABLED = true; + DEFAULT_ACTIONS_URL = "github"; + }; + }; + }; + + # TODO: finish this configuration + + services.traefik = { + dynamicConfigOptions = { + http = { + routers.forgejo = { + entryPoints = ["websecure"]; + rule = "Host(`git.thevoid.cafe`)"; + service = "forgejo"; + }; + + services.forgejo.loadbalancer.server = { + url = "http://localhost:3030"; + }; + }; + }; + }; + }; +} diff --git a/modules/nixos/services/traefik/default.nix b/modules/nixos/services/traefik/default.nix index 921a046..645d69d 100644 --- a/modules/nixos/services/traefik/default.nix +++ b/modules/nixos/services/traefik/default.nix @@ -11,7 +11,7 @@ in { enable = mkEnableOption "Enable the Traefik service."; cloudflareEmail = mkOption { type = types.str; - default = "system@thevoid.cafe"; + default = config.${namespace}.admin.email; example = "system@thevoid.cafe"; description = "Specify the E-Mail associated with your Cloudflare account for ACME."; }; diff --git a/systems/x86_64-linux/puzzlevision/default.nix b/systems/x86_64-linux/puzzlevision/default.nix index 741689d..b79807e 100644 --- a/systems/x86_64-linux/puzzlevision/default.nix +++ b/systems/x86_64-linux/puzzlevision/default.nix @@ -53,8 +53,8 @@ puzzlevision = { archetypes.workstation.enable = true; security.yubikey = { - enable = true; - enable-agent = true; + enable = true; + enable-agent = true; }; };