Compare commits
No commits in common. "748e4a4e9645a0655f3c98727a4a2e0202b3e7c9" and "5d88905c2a5c396b80c01c89381c3c4ef975fb73" have entirely different histories.
748e4a4e96
...
5d88905c2a
11 changed files with 68 additions and 55 deletions
|
@ -1,14 +1,20 @@
|
|||
# Dafoe
|
||||
# Willem
|
||||
|
||||
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)
|
||||
Willem is a server running on a Raspberry Pi 400 offering the following services:
|
||||
- [Gitea](git.vatthauer.xyz)
|
||||
- [Vaultwarden](bitwarden.vatthauer.xyz)
|
||||
|
||||
There are daily backups of the Forgejo instance using Restic via B2.
|
||||
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
|
||||
|
||||
## Installation
|
||||
https://wiki.nixos.org/wiki/Install_NixOS_on_Hetzner_Cloud
|
||||
### 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`
|
|
@ -89,6 +89,12 @@
|
|||
};
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||
"plexmediaserver"
|
||||
];
|
||||
|
||||
services.jellyfin.enable = true;
|
||||
|
||||
system.stateVersion = "23.11"; # Did you read the comment?
|
||||
}
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
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,6 +5,7 @@
|
|||
./ddns.nix
|
||||
./nginx.nix
|
||||
./forgejo.nix
|
||||
#./printing.nix
|
||||
./restic.nix
|
||||
./ssh.nix
|
||||
./vaultwarden.nix
|
||||
|
|
|
@ -24,6 +24,13 @@
|
|||
};
|
||||
};
|
||||
|
||||
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;
|
||||
|
@ -41,5 +48,7 @@
|
|||
services.nginx.virtualHosts."cloud.vatthauer.xyz" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
#locations."/".proxyPass = "http://localhost:8080";
|
||||
# nextcloud does location setup itself
|
||||
};
|
||||
}
|
||||
|
|
20
dafoe/services/printing.nix
Normal file
20
dafoe/services/printing.nix
Normal file
|
@ -0,0 +1,20 @@
|
|||
{ 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
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -1,3 +0,0 @@
|
|||
# Gunther
|
||||
My home setup.
|
||||
![neofetch screenshot](specs.png)
|
|
@ -13,13 +13,6 @@
|
|||
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
|
||||
|
||||
|
@ -27,6 +20,7 @@
|
|||
z3
|
||||
|
||||
# stuff
|
||||
tidal-hifi
|
||||
jq
|
||||
vlc
|
||||
openvpn
|
||||
|
@ -50,8 +44,12 @@
|
|||
# development
|
||||
jetbrains.idea-ultimate
|
||||
gnumake
|
||||
# texliveFull
|
||||
# texlive.combined.scheme-full
|
||||
# ltex-ls
|
||||
ghostscript
|
||||
jdk11
|
||||
coq
|
||||
gcc
|
||||
haskell.compiler.ghc981
|
||||
cabal-install
|
||||
|
@ -80,24 +78,27 @@
|
|||
inputs.hyprland-contrib.packages.${pkgs.system}.grimblast
|
||||
bluez
|
||||
htop
|
||||
archiver
|
||||
gnome.file-roller
|
||||
discord
|
||||
zip
|
||||
# emacs
|
||||
shellcheck
|
||||
|
||||
# yubikey
|
||||
yubico-pam
|
||||
yubikey-manager
|
||||
|
||||
# proof assistants
|
||||
# agda
|
||||
(agda.withPackages [
|
||||
agdaPackages.standard-library
|
||||
agdaPackages.agda-categories
|
||||
])
|
||||
coq
|
||||
|
||||
lean4
|
||||
|
||||
# for emacs
|
||||
texlab
|
||||
shellcheck
|
||||
];
|
||||
|
||||
xdg.configHome = /home/leonv/.config;
|
||||
|
@ -145,9 +146,6 @@
|
|||
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" ];
|
||||
|
@ -156,14 +154,5 @@
|
|||
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;
|
||||
}
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 71 KiB |
|
@ -1,18 +0,0 @@
|
|||
# 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,10 +57,12 @@
|
|||
|
||||
# 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