mirror of
https://github.com/Jokiller230/puzzlevision.git
synced 2025-09-10 12:50:05 +00:00
feat(modules): add homepage service
feat(resources): add homepage service config files and assets
This commit is contained in:
parent
7b2e828c8f
commit
580a65beb8
9 changed files with 171 additions and 0 deletions
40
modules/nixos/services/homepage/default.nix
Normal file
40
modules/nixos/services/homepage/default.nix
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
namespace,
|
||||||
|
config,
|
||||||
|
host,
|
||||||
|
...
|
||||||
|
}: with lib; with lib.${namespace};
|
||||||
|
let
|
||||||
|
cfg = config.${namespace}.services.homepage;
|
||||||
|
homepageConfigDirectory = lib.snowfall.fs.get-file "resources/services/homepage";
|
||||||
|
in {
|
||||||
|
options.${namespace}.services.homepage = { enable = mkEnableOption "Enable Homepage, an intuitive dashboard for your services."; };
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d /var/lib/containers/homepage/config 0700 root root -"
|
||||||
|
"d /var/lib/containers/homepage/images 0700 root root -"
|
||||||
|
|
||||||
|
"f /var/lib/containers/homepage 0700 root root - - - exec cp -r ${homepageConfigDirectory}/* /var/lib/containers/homepage"
|
||||||
|
];
|
||||||
|
|
||||||
|
virtualisation.oci-containers.containers.vaultwarden = {
|
||||||
|
image = "ghcr.io/gethomepage/homepage:latest";
|
||||||
|
autoStart = true;
|
||||||
|
hostname = host;
|
||||||
|
labels = {
|
||||||
|
"traefik.enable" = "true";
|
||||||
|
"traefik.http.routers.homepage.entrypoints" = "websecure";
|
||||||
|
"traefik.http.routers.homepage.rule" = "Host(`home.thevoid.cafe`)";
|
||||||
|
"traefik.http.services.homepage.loadbalancer.server.port" = "3000";
|
||||||
|
};
|
||||||
|
volumes = [
|
||||||
|
"/var/lib/containers/homepage/config:/app/config:rw"
|
||||||
|
"/var/lib/containers/homepage/images:/app/public/images:rw"
|
||||||
|
"/var/run/docker.sock:/var/run/docker.sock:ro" # Optional, used for docker integration.
|
||||||
|
];
|
||||||
|
extraOptions = ["--network=proxy"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
30
resources/services/homepage/config/bookmarks.yaml
Normal file
30
resources/services/homepage/config/bookmarks.yaml
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/en/configs/bookmarks
|
||||||
|
|
||||||
|
- IT:
|
||||||
|
- Github:
|
||||||
|
- abbr: GH
|
||||||
|
href: https://github.com/
|
||||||
|
- Codeberg:
|
||||||
|
- icon: mdi-image-filter-hdr-outline
|
||||||
|
href: https://codeberg.org/
|
||||||
|
- Stackoverflow:
|
||||||
|
- abbr: SO
|
||||||
|
href: https://stackoverflow.com/
|
||||||
|
|
||||||
|
- Social:
|
||||||
|
- Reddit:
|
||||||
|
- abbr: RE
|
||||||
|
href: https://reddit.com/
|
||||||
|
- Whatsapp:
|
||||||
|
- icon: mdi-chat-outline
|
||||||
|
href: https://web.whatsapp.com/
|
||||||
|
|
||||||
|
- Fun:
|
||||||
|
- YouTube:
|
||||||
|
- icon: mdi-video-vintage
|
||||||
|
href: https://youtube.com/
|
||||||
|
- A-Dark-Room:
|
||||||
|
- icon: mdi-campfire
|
||||||
|
href: https://adarkroom.doublespeakgames.com/
|
10
resources/services/homepage/config/docker.yaml
Normal file
10
resources/services/homepage/config/docker.yaml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/en/configs/docker/
|
||||||
|
|
||||||
|
# my-docker:
|
||||||
|
# host: 127.0.0.1
|
||||||
|
# port: 2375
|
||||||
|
|
||||||
|
default-docker:
|
||||||
|
socket: /var/run/docker.sock
|
14
resources/services/homepage/config/services.yaml
Normal file
14
resources/services/homepage/config/services.yaml
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/en/configs/services
|
||||||
|
|
||||||
|
- System:
|
||||||
|
- Fritz!Box:
|
||||||
|
name: Fritz!Box
|
||||||
|
icon: avmfritzbox.png
|
||||||
|
href: http://192.168.1.1
|
||||||
|
description: Home router configuration
|
||||||
|
widget:
|
||||||
|
type: "fritzbox"
|
||||||
|
url: http://192.168.1.1
|
||||||
|
ping: http://192.168.1.1
|
54
resources/services/homepage/config/settings.yaml
Normal file
54
resources/services/homepage/config/settings.yaml
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/en/configs/settings
|
||||||
|
|
||||||
|
title: Jo's Home
|
||||||
|
background:
|
||||||
|
image: /images/blossoms.png
|
||||||
|
blur: md
|
||||||
|
opacity: 45
|
||||||
|
|
||||||
|
favicon: /images/logo.png
|
||||||
|
|
||||||
|
theme: dark
|
||||||
|
color: zinc
|
||||||
|
iconStyle: theme
|
||||||
|
|
||||||
|
layout:
|
||||||
|
Media:
|
||||||
|
style: row
|
||||||
|
columns: 1
|
||||||
|
Utilities:
|
||||||
|
style: column
|
||||||
|
columns: 2
|
||||||
|
Entertainment:
|
||||||
|
style: column
|
||||||
|
column: 3
|
||||||
|
System:
|
||||||
|
style: column
|
||||||
|
columns: 3
|
||||||
|
Development:
|
||||||
|
style: row
|
||||||
|
columns: 2
|
||||||
|
Social:
|
||||||
|
style: column
|
||||||
|
columns: 3
|
||||||
|
IT:
|
||||||
|
style: column
|
||||||
|
columns: 3
|
||||||
|
Fun:
|
||||||
|
style: column
|
||||||
|
columns: 3
|
||||||
|
|
||||||
|
headerStyle: clean
|
||||||
|
|
||||||
|
target: _blank
|
||||||
|
|
||||||
|
quicklaunch:
|
||||||
|
searchDescriptions: true
|
||||||
|
hideInternetSearch: false
|
||||||
|
hideVisitURL: false
|
||||||
|
|
||||||
|
hideVersion: true
|
||||||
|
|
||||||
|
showStats: false
|
22
resources/services/homepage/config/widgets.yaml
Normal file
22
resources/services/homepage/config/widgets.yaml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
---
|
||||||
|
# For configuration options and examples, please see:
|
||||||
|
# https://gethomepage.dev/en/configs/widgets
|
||||||
|
|
||||||
|
- resources:
|
||||||
|
label: System
|
||||||
|
cpu: true
|
||||||
|
memory: true
|
||||||
|
uptime: true
|
||||||
|
units: metric
|
||||||
|
|
||||||
|
- resources:
|
||||||
|
label: Storage
|
||||||
|
disk: /
|
||||||
|
|
||||||
|
- datetime:
|
||||||
|
text_size: xl
|
||||||
|
format:
|
||||||
|
timeStyle: short
|
||||||
|
dateStyle: long
|
||||||
|
hourCycle: h23
|
||||||
|
locale: de
|
BIN
resources/services/homepage/images/blossoms.png
Normal file
BIN
resources/services/homepage/images/blossoms.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.9 MiB |
BIN
resources/services/homepage/images/logo.png
Normal file
BIN
resources/services/homepage/images/logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
|
@ -47,6 +47,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
vaultwarden.enable = true;
|
vaultwarden.enable = true;
|
||||||
|
homepage.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue