From be802886d6d98de4b74e8154ce9e9c541385c2c6 Mon Sep 17 00:00:00 2001 From: muon Date: Sat, 25 Jan 2025 14:27:23 +0000 Subject: [PATCH] Add forgejo --- hosts/muon/configuration.nix | 1 + modules/home/desktop/media.nix | 3 +++ modules/nixos/server/docker/default.nix | 18 ++++++++---------- modules/nixos/server/git.nix | 14 +++++++++++++- 4 files changed, 25 insertions(+), 11 deletions(-) diff --git a/hosts/muon/configuration.nix b/hosts/muon/configuration.nix index ba5a537..604b3e8 100644 --- a/hosts/muon/configuration.nix +++ b/hosts/muon/configuration.nix @@ -27,6 +27,7 @@ in { mods.server.astral.enable = false; mods.server.astral.autoStart = false; + mods.docker.enable = true; mods.docker.media.enable = false; mods.server.sync.enable = true; diff --git a/modules/home/desktop/media.nix b/modules/home/desktop/media.nix index 2070299..4d8cfce 100644 --- a/modules/home/desktop/media.nix +++ b/modules/home/desktop/media.nix @@ -13,6 +13,9 @@ # Podcasts gpodder + + # Interactive + bottles ]; programs.mpv.enable = true; }; diff --git a/modules/nixos/server/docker/default.nix b/modules/nixos/server/docker/default.nix index a9c02a2..26dbea8 100644 --- a/modules/nixos/server/docker/default.nix +++ b/modules/nixos/server/docker/default.nix @@ -1,7 +1,5 @@ { pkgs, lib, config, ... }: { - imports = [ - ./media.nix - ]; + imports = [ ./media.nix ]; options.mods.docker = { enable = lib.mkEnableOption { @@ -14,19 +12,19 @@ environment.systemPackages = [ pkgs.arion - # Do install the docker CLI to talk to podman. - # Not needed when virtualisation.docker.enable = true; + # Do install the docker CLI to talk to podman. + # Not needed when virtualisation.docker.enable = true; pkgs.docker-client ]; # Arion works with Docker, but for NixOS-based containers, you need Podman # since NixOS 21.05. - virtualisation.docker.enable = false; - virtualisation.podman.enable = true; - virtualisation.podman.dockerSocket.enable = true; - virtualisation.podman.defaultNetwork.dnsname.enable = true; + virtualisation.docker.enable = true; + # virtualisation.podman.enable = true; + # virtualisation.podman.dockerSocket.enable = true; + # virtualisation.podman.defaultNetwork.dnsname.enable = true; # Use your username instead of `myuser` - users.extraUsers.${config.mods.user.name}.extraGroups = ["podman"]; + users.extraUsers.${config.mods.user.name}.extraGroups = [ "podman" ]; }; } diff --git a/modules/nixos/server/git.nix b/modules/nixos/server/git.nix index a3f25fb..018a73e 100644 --- a/modules/nixos/server/git.nix +++ b/modules/nixos/server/git.nix @@ -12,5 +12,17 @@ in with lib; { }; }; - config = mkIf cfg.enable { services.forgejo = { enable = true; }; }; + config = mkIf cfg.enable { + services.forgejo = { + enable = true; + stateDir = "/srv/forgejo"; + lfs.enable = true; + settings.server = { + HTTP_ADDR = "0.0.0.0"; + HTTP_PORT = port; + SSH_PORT = 91722; + DOMAIN = "git.muon.host"; + }; + }; + }; }