Compare commits
4 commits
5d88905c2a
...
748e4a4e96
Author | SHA1 | Date | |
---|---|---|---|
748e4a4e96 | |||
65ce9f116d | |||
a00aed15d1 | |||
6144bd8786 |
11 changed files with 55 additions and 68 deletions
|
@ -1,20 +1,14 @@
|
|||
# Willem
|
||||
# Dafoe
|
||||
|
||||
Willem is a server running on a Raspberry Pi 400 offering the following services:
|
||||
- [Gitea](git.vatthauer.xyz)
|
||||
- [Vaultwarden](bitwarden.vatthauer.xyz)
|
||||
Dafoe is a server running on a CX11 cloud server by [Hetzner](hetzner.com).
|
||||
The server offers the following services:
|
||||
- [Resumee Website](www.vatthauery.xyz)
|
||||
- [Forgejo (Git)](git.vatthauer.xyz)
|
||||
- [Vaultwarden](vaultwarden.vatthauer.xyz)
|
||||
- [Static file hosting](files.vatthauer.xyz)
|
||||
- [Nextcloud](cloud.vatthauer.xyz)
|
||||
|
||||
There are daily backups of the Gitea instance using Restic via B2.
|
||||
## Installation on Raspberry Pi 400
|
||||
### Resources
|
||||
- https://nixos.wiki/wiki/NixOS_on_ARM/Raspberry_Pi_4
|
||||
- https://nixos.wiki/wiki/NixOS_on_ARM#Installation
|
||||
There are daily backups of the Forgejo instance using Restic via B2.
|
||||
|
||||
### Step by step
|
||||
1. Follow the [generic installation steps](https://nixos.wiki/wiki/NixOS_on_ARM#Installation) to get NixOS up and running on the Pi.
|
||||
2. Generate the default `configuration.nix` via `sudo nixos-generate-config` and do a first rebuild `sudo nixos-rebuild switch`
|
||||
3. Somehow get this repository onto the machine and `cd` into it
|
||||
4. We need git: `nix-shell -p git`
|
||||
5. Build the flake via `sudo nixos-rebuild switch --flake .`
|
||||
6. At this point you can restart
|
||||
7. Login, set password, move the repository to `/home/leonv/nixos`
|
||||
## Installation
|
||||
https://wiki.nixos.org/wiki/Install_NixOS_on_Hetzner_Cloud
|
|
@ -89,12 +89,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||
"plexmediaserver"
|
||||
];
|
||||
|
||||
services.jellyfin.enable = true;
|
||||
|
||||
system.stateVersion = "23.11"; # Did you read the comment?
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
security.acme.certs = {
|
||||
"git.vatthauer.xyz".email = "leonvatthauer@outlook.com";
|
||||
"vaultwarden.vatthauer.xyz".email = "leonvatthauer@outlook.com";
|
||||
"video.vatthauer.xyz".email = "leonvatthauer@outlook.com";
|
||||
"files.vatthauer.xyz".email = "leonvatthauer@outlook.com";
|
||||
"www.vatthauer.xyz".email = "leonvatthauer@outlook.com";
|
||||
"cloud.vatthauer.xyz".email = "leonvatthauer@outlook.com";
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
./ddns.nix
|
||||
./nginx.nix
|
||||
./forgejo.nix
|
||||
#./printing.nix
|
||||
./restic.nix
|
||||
./ssh.nix
|
||||
./vaultwarden.nix
|
||||
|
|
|
@ -24,13 +24,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
services.nginx.virtualHosts."video.vatthauer.xyz" = {
|
||||
enableACME = true;
|
||||
forceSSL = false;
|
||||
locations."/" = {
|
||||
proxyPass = "http://localhost:8096";
|
||||
};
|
||||
};
|
||||
services.nginx.virtualHosts."www.vatthauer.xyz" = {
|
||||
serverAliases = [ "vatthauer.xyz" ];
|
||||
forceSSL = true;
|
||||
|
@ -48,7 +41,5 @@
|
|||
services.nginx.virtualHosts."cloud.vatthauer.xyz" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
#locations."/".proxyPass = "http://localhost:8080";
|
||||
# nextcloud does location setup itself
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
# Enable CUPS to print documents.
|
||||
services.avahi = {
|
||||
enable = true;
|
||||
publish.enable = true;
|
||||
publish.userServices = true;
|
||||
};
|
||||
services.printing = {
|
||||
enable = true;
|
||||
drivers = [ pkgs.splix ];
|
||||
browsing = true;
|
||||
listenAddresses = [ "*:631" ];
|
||||
allowFrom = [ "all" ];
|
||||
defaultShared = true;
|
||||
extraConf = ''
|
||||
BrowseLocalProtocols all
|
||||
'';
|
||||
};
|
||||
}
|
3
gunther/README.md
Normal file
3
gunther/README.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
# Gunther
|
||||
My home setup.
|
||||
![neofetch screenshot](specs.png)
|
|
@ -13,6 +13,13 @@
|
|||
home.packages = with pkgs; [
|
||||
# theme for gtk applications
|
||||
orchis-theme
|
||||
(catppuccin-gtk.override {
|
||||
accents = [ "flamingo" ];
|
||||
size = "compact";
|
||||
tweaks = [ "rimless" "black" ];
|
||||
variant = "macchiato";
|
||||
})
|
||||
|
||||
nextcloud-client
|
||||
ausweisapp
|
||||
|
||||
|
@ -20,7 +27,6 @@
|
|||
z3
|
||||
|
||||
# stuff
|
||||
tidal-hifi
|
||||
jq
|
||||
vlc
|
||||
openvpn
|
||||
|
@ -44,12 +50,8 @@
|
|||
# development
|
||||
jetbrains.idea-ultimate
|
||||
gnumake
|
||||
# texliveFull
|
||||
# texlive.combined.scheme-full
|
||||
# ltex-ls
|
||||
ghostscript
|
||||
jdk11
|
||||
coq
|
||||
gcc
|
||||
haskell.compiler.ghc981
|
||||
cabal-install
|
||||
|
@ -78,27 +80,24 @@
|
|||
inputs.hyprland-contrib.packages.${pkgs.system}.grimblast
|
||||
bluez
|
||||
htop
|
||||
archiver
|
||||
gnome.file-roller
|
||||
discord
|
||||
zip
|
||||
# emacs
|
||||
shellcheck
|
||||
|
||||
# yubikey
|
||||
yubico-pam
|
||||
yubikey-manager
|
||||
|
||||
# agda
|
||||
# proof assistants
|
||||
(agda.withPackages [
|
||||
agdaPackages.standard-library
|
||||
agdaPackages.agda-categories
|
||||
])
|
||||
|
||||
coq
|
||||
lean4
|
||||
|
||||
# for emacs
|
||||
texlab
|
||||
shellcheck
|
||||
];
|
||||
|
||||
xdg.configHome = /home/leonv/.config;
|
||||
|
@ -146,6 +145,9 @@
|
|||
font = {
|
||||
name = "NotoSans Nerd Font";
|
||||
};
|
||||
gtk3 = {
|
||||
extraConfig.gtk-application-prefer-dark-theme = true;
|
||||
};
|
||||
};
|
||||
home.sessionVariables.GTK_THEME = "Catppuccin-Macchiato-Compact-Flamingo-Dark";
|
||||
home.sessionPath = [ "$HOME/.config/emacs/bin" ];
|
||||
|
@ -154,5 +156,14 @@
|
|||
enable = true;
|
||||
};
|
||||
|
||||
|
||||
dconf.settings = {
|
||||
# GTK4 Setup
|
||||
"org/gnome/desktop/interface" = {
|
||||
gtk-theme = "Catppuccin-Macchiato-Compact-Flamingo-Dark";
|
||||
color-scheme = "prefer-dark";
|
||||
};
|
||||
};
|
||||
|
||||
services.mpris-proxy.enable = true;
|
||||
}
|
||||
|
|
BIN
gunther/specs.png
Normal file
BIN
gunther/specs.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 71 KiB |
18
iso/README.md
Normal file
18
iso/README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
# ISO
|
||||
This "host" is used for generating a bootable (flakes-enabled) NixOS image with sane default programs.
|
||||
|
||||
The image contains the following:
|
||||
|
||||
- Plasma 6 as graphical environment
|
||||
- Calamares installer
|
||||
- Git
|
||||
- Vim
|
||||
- Parted
|
||||
- GParted
|
||||
|
||||
The graphical environment will autologin to the user `nixos`, alternatively there is a default user `leonv` with password `leonv`.
|
||||
|
||||
## Building the Image
|
||||
```sh
|
||||
nix build .#nixosConfigurations.iso.config.system.build.isoImage
|
||||
```
|
|
@ -57,12 +57,10 @@
|
|||
|
||||
# List packages installed in system profile.
|
||||
environment.systemPackages = with pkgs; [
|
||||
# for connecting to nas
|
||||
nfs-utils
|
||||
|
||||
# some standards for convenience
|
||||
vim
|
||||
parted
|
||||
gparted
|
||||
git
|
||||
];
|
||||
|
||||
|
|
Loading…
Reference in a new issue