Update nixpkgs. Move to new dashy service
This commit is contained in:
parent
87ddad27a4
commit
75ae399b5a
@ -14,7 +14,7 @@ in
|
|||||||
# akonadi
|
# akonadi
|
||||||
# kmail
|
# kmail
|
||||||
# plasma5Packages.kmail-account-wizard
|
# plasma5Packages.kmail-account-wizard
|
||||||
kate
|
kdePackages.kate
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,41 +0,0 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.services.dashy;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.services.dashy = {
|
|
||||||
enable = mkEnableOption "dashy";
|
|
||||||
imageTag = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
default = "latest";
|
|
||||||
};
|
|
||||||
port = mkOption {
|
|
||||||
type = types.int;
|
|
||||||
default = 56815;
|
|
||||||
};
|
|
||||||
configFile = lib.mkOption {
|
|
||||||
type = lib.types.path;
|
|
||||||
description = "Path to the YAML configuration file";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
virtualisation.oci-containers.containers = {
|
|
||||||
dashy = {
|
|
||||||
image = "lissy93/dashy:${cfg.imageTag}";
|
|
||||||
environment = {
|
|
||||||
TZ = "${config.time.timeZone}";
|
|
||||||
};
|
|
||||||
ports = [
|
|
||||||
"127.0.0.1:${toString cfg.port}:80"
|
|
||||||
];
|
|
||||||
volumes = [
|
|
||||||
"${cfg.configFile}:/app/public/conf.yml"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
@ -18,7 +18,6 @@
|
|||||||
./iodine.nix
|
./iodine.nix
|
||||||
./searx.nix
|
./searx.nix
|
||||||
./gitea-actions-runner.nix
|
./gitea-actions-runner.nix
|
||||||
./dashy.nix
|
|
||||||
./librechat.nix
|
./librechat.nix
|
||||||
./actualbudget.nix
|
./actualbudget.nix
|
||||||
./unifi.nix
|
./unifi.nix
|
||||||
|
@ -24,7 +24,7 @@ in
|
|||||||
SHOW_FOOTER_VERSION = false;
|
SHOW_FOOTER_VERSION = false;
|
||||||
};
|
};
|
||||||
ui = {
|
ui = {
|
||||||
DEFAULT_THEME = "arc-green";
|
DEFAULT_THEME = "gitea-dark";
|
||||||
};
|
};
|
||||||
service = {
|
service = {
|
||||||
DISABLE_REGISTRATION = true;
|
DISABLE_REGISTRATION = true;
|
||||||
|
6
flake.lock
generated
6
flake.lock
generated
@ -208,11 +208,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731278633,
|
"lastModified": 1740374225,
|
||||||
"narHash": "sha256-3yxgMFssoDGm9rWJiAGfJRPctr06gaefjnpUltphkAQ=",
|
"narHash": "sha256-Dnmzy5YWUVj3BNaZo5jRpZslXexbNKEk3ADGGcz9RpY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "871087c18d344abaa569e7d1b7c1af576aab877f",
|
"rev": "3349acd765bdffe454f7c8bbc450855577c1a6cf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -137,6 +137,7 @@
|
|||||||
src = nixpkgs;
|
src = nixpkgs;
|
||||||
patches = [
|
patches = [
|
||||||
./patches/gamepadui.patch
|
./patches/gamepadui.patch
|
||||||
|
./patches/dont-break-nix-serve.patch
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
patchedNixpkgs = nixpkgs.lib.fix (self: (import "${patchedNixpkgsSrc}/flake.nix").outputs { self = nixpkgs; });
|
patchedNixpkgs = nixpkgs.lib.fix (self: (import "${patchedNixpkgsSrc}/flake.nix").outputs { self = nixpkgs; });
|
||||||
|
307
machines/storage/s0/dashy.nix
Normal file
307
machines/storage/s0/dashy.nix
Normal file
@ -0,0 +1,307 @@
|
|||||||
|
{
|
||||||
|
appConfig = {
|
||||||
|
theme = "vaporware";
|
||||||
|
customColors = {
|
||||||
|
"material-dark-original" = {
|
||||||
|
primary = "#f36558";
|
||||||
|
background = "#39434C";
|
||||||
|
"background-darker" = "#eb615c";
|
||||||
|
"material-light" = "#f36558";
|
||||||
|
"item-text-color" = "#ff948a";
|
||||||
|
"curve-factor" = "5px";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
enableErrorReporting = false;
|
||||||
|
layout = "auto";
|
||||||
|
iconSize = "large";
|
||||||
|
language = "en";
|
||||||
|
startingView = "default";
|
||||||
|
defaultOpeningMethod = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
statusCheckInterval = 20;
|
||||||
|
faviconApi = "faviconkit";
|
||||||
|
routingMode = "history";
|
||||||
|
enableMultiTasking = false;
|
||||||
|
webSearch = {
|
||||||
|
disableWebSearch = false;
|
||||||
|
searchEngine = "duckduckgo";
|
||||||
|
openingMethod = "sametab";
|
||||||
|
searchBangs = { };
|
||||||
|
};
|
||||||
|
enableFontAwesome = true;
|
||||||
|
cssThemes = [ ];
|
||||||
|
externalStyleSheet = [ ];
|
||||||
|
hideComponents = {
|
||||||
|
hideHeading = false;
|
||||||
|
hideNav = false;
|
||||||
|
hideSearch = false;
|
||||||
|
hideSettings = false;
|
||||||
|
hideFooter = false;
|
||||||
|
hideSplashScreen = false;
|
||||||
|
};
|
||||||
|
auth = {
|
||||||
|
enableGuestAccess = false;
|
||||||
|
users = [ ];
|
||||||
|
enableKeycloak = false;
|
||||||
|
keycloak = { };
|
||||||
|
};
|
||||||
|
allowConfigEdit = true;
|
||||||
|
enableServiceWorker = false;
|
||||||
|
disableContextMenu = false;
|
||||||
|
disableUpdateChecks = false;
|
||||||
|
disableSmartSort = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
pageInfo = {
|
||||||
|
title = "s0";
|
||||||
|
description = "s0";
|
||||||
|
};
|
||||||
|
|
||||||
|
sections = [
|
||||||
|
(
|
||||||
|
let
|
||||||
|
# Define the media section items once.
|
||||||
|
mediaItems = {
|
||||||
|
jellyfin = {
|
||||||
|
title = "Jellyfin";
|
||||||
|
icon = "hl-jellyfin";
|
||||||
|
url = "https://jellyfin.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "0_1956_jellyfin";
|
||||||
|
};
|
||||||
|
sonarr = {
|
||||||
|
title = "Sonarr";
|
||||||
|
description = "Manage TV";
|
||||||
|
icon = "hl-sonarr";
|
||||||
|
url = "https://sonarr.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "1_1956_sonarr";
|
||||||
|
};
|
||||||
|
radarr = {
|
||||||
|
title = "Radarr";
|
||||||
|
description = "Manage Movies";
|
||||||
|
icon = "hl-radarr";
|
||||||
|
url = "https://radarr.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "2_1956_radarr";
|
||||||
|
};
|
||||||
|
lidarr = {
|
||||||
|
title = "Lidarr";
|
||||||
|
description = "Manage Music";
|
||||||
|
icon = "hl-lidarr";
|
||||||
|
url = "https://lidarr.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "3_1956_lidarr";
|
||||||
|
};
|
||||||
|
prowlarr = {
|
||||||
|
title = "Prowlarr";
|
||||||
|
description = "Indexers";
|
||||||
|
icon = "hl-prowlarr";
|
||||||
|
url = "https://prowlarr.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "4_1956_prowlarr";
|
||||||
|
};
|
||||||
|
bazarr = {
|
||||||
|
title = "Bazarr";
|
||||||
|
description = "Subtitles";
|
||||||
|
icon = "hl-bazarr";
|
||||||
|
url = "https://bazarr.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "5_1956_bazarr";
|
||||||
|
};
|
||||||
|
navidrome = {
|
||||||
|
title = "Navidrome";
|
||||||
|
description = "Play Music";
|
||||||
|
icon = "hl-navidrome";
|
||||||
|
url = "https://music.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "6_1956_navidrome";
|
||||||
|
};
|
||||||
|
transmission = {
|
||||||
|
title = "Transmission";
|
||||||
|
description = "Torrenting";
|
||||||
|
icon = "hl-transmission";
|
||||||
|
url = "https://transmission.s0.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "7_1956_transmission";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# Build the list once.
|
||||||
|
mediaList = [
|
||||||
|
mediaItems.jellyfin
|
||||||
|
mediaItems.sonarr
|
||||||
|
mediaItems.radarr
|
||||||
|
mediaItems.lidarr
|
||||||
|
mediaItems.prowlarr
|
||||||
|
mediaItems.bazarr
|
||||||
|
mediaItems.navidrome
|
||||||
|
mediaItems.transmission
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
name = "Media & Entertainment";
|
||||||
|
icon = "fas fa-photo-video";
|
||||||
|
displayData = {
|
||||||
|
sortBy = "most-used";
|
||||||
|
cols = 1;
|
||||||
|
rows = 1;
|
||||||
|
collapsed = false;
|
||||||
|
hideForGuests = false;
|
||||||
|
};
|
||||||
|
items = mediaList;
|
||||||
|
filteredItems = mediaList;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
(
|
||||||
|
let
|
||||||
|
networkItems = {
|
||||||
|
gateway = {
|
||||||
|
title = "Gateway";
|
||||||
|
description = "openwrt";
|
||||||
|
icon = "hl-openwrt";
|
||||||
|
url = "http://openwrt.lan/";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "0_746_gateway";
|
||||||
|
};
|
||||||
|
wireless = {
|
||||||
|
title = "Wireless";
|
||||||
|
description = "openwrt (ish)";
|
||||||
|
icon = "hl-openwrt";
|
||||||
|
url = "http://PacketProvocateur.lan";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "1_746_wireless";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networkList = [
|
||||||
|
networkItems.gateway
|
||||||
|
networkItems.wireless
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
name = "Network";
|
||||||
|
icon = "fas fa-network-wired";
|
||||||
|
items = networkList;
|
||||||
|
filteredItems = networkList;
|
||||||
|
displayData = {
|
||||||
|
sortBy = "default";
|
||||||
|
rows = 1;
|
||||||
|
cols = 1;
|
||||||
|
collapsed = false;
|
||||||
|
hideForGuests = false;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
let
|
||||||
|
servicesItems = {
|
||||||
|
matrix = {
|
||||||
|
title = "Matrix";
|
||||||
|
description = "";
|
||||||
|
icon = "hl-matrix";
|
||||||
|
url = "https://chat.neet.space";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "0_836_matrix";
|
||||||
|
};
|
||||||
|
radio = {
|
||||||
|
title = "Radio";
|
||||||
|
description = "Radio service";
|
||||||
|
icon = "generative";
|
||||||
|
url = "https://radio.runyan.org";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "1_836_radio";
|
||||||
|
};
|
||||||
|
mumble = {
|
||||||
|
title = "Mumble";
|
||||||
|
description = "voice.neet.space";
|
||||||
|
icon = "hl-mumble";
|
||||||
|
url = "https://voice.neet.space";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = false;
|
||||||
|
id = "2_836_mumble";
|
||||||
|
};
|
||||||
|
irc = {
|
||||||
|
title = "IRC";
|
||||||
|
description = "irc.neet.dev";
|
||||||
|
icon = "hl-thelounge";
|
||||||
|
url = "https://irc.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "3_836_irc";
|
||||||
|
};
|
||||||
|
git = {
|
||||||
|
title = "Git";
|
||||||
|
description = "git.neet.dev";
|
||||||
|
icon = "hl-gitea";
|
||||||
|
url = "https://git.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "4_836_git";
|
||||||
|
};
|
||||||
|
nextcloud = {
|
||||||
|
title = "Nextcloud";
|
||||||
|
description = "neet.cloud";
|
||||||
|
icon = "hl-nextcloud";
|
||||||
|
url = "https://neet.cloud";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "5_836_nextcloud";
|
||||||
|
};
|
||||||
|
roundcube = {
|
||||||
|
title = "Roundcube";
|
||||||
|
description = "mail.neet.dev";
|
||||||
|
icon = "hl-roundcube";
|
||||||
|
url = "https://mail.neet.dev";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "6_836_roundcube";
|
||||||
|
};
|
||||||
|
jitsimeet = {
|
||||||
|
title = "Jitsi Meet";
|
||||||
|
description = "meet.neet.space";
|
||||||
|
icon = "hl-jitsimeet";
|
||||||
|
url = "https://meet.neet.space";
|
||||||
|
target = "sametab";
|
||||||
|
statusCheck = true;
|
||||||
|
id = "7_836_jitsimeet";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
servicesList = [
|
||||||
|
servicesItems.matrix
|
||||||
|
servicesItems.radio
|
||||||
|
servicesItems.mumble
|
||||||
|
servicesItems.irc
|
||||||
|
servicesItems.git
|
||||||
|
servicesItems.nextcloud
|
||||||
|
servicesItems.roundcube
|
||||||
|
servicesItems.jitsimeet
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
name = "Services";
|
||||||
|
icon = "fas fa-monitor-heart-rate";
|
||||||
|
items = servicesList;
|
||||||
|
filteredItems = servicesList;
|
||||||
|
displayData = {
|
||||||
|
sortBy = "default";
|
||||||
|
rows = 1;
|
||||||
|
cols = 1;
|
||||||
|
collapsed = false;
|
||||||
|
hideForGuests = false;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
)
|
||||||
|
];
|
||||||
|
}
|
@ -1,241 +0,0 @@
|
|||||||
appConfig:
|
|
||||||
theme: vaporware
|
|
||||||
customColors:
|
|
||||||
material-dark-original:
|
|
||||||
primary: '#f36558'
|
|
||||||
background: '#39434C'
|
|
||||||
background-darker: '#eb615c'
|
|
||||||
material-light: '#f36558'
|
|
||||||
item-text-color: '#ff948a'
|
|
||||||
curve-factor: 5px
|
|
||||||
enableErrorReporting: false
|
|
||||||
layout: auto
|
|
||||||
iconSize: large
|
|
||||||
language: en
|
|
||||||
startingView: default
|
|
||||||
defaultOpeningMethod: sametab
|
|
||||||
statusCheck: true
|
|
||||||
statusCheckInterval: 20
|
|
||||||
faviconApi: faviconkit
|
|
||||||
routingMode: history
|
|
||||||
enableMultiTasking: false
|
|
||||||
webSearch:
|
|
||||||
disableWebSearch: false
|
|
||||||
searchEngine: duckduckgo
|
|
||||||
openingMethod: sametab
|
|
||||||
searchBangs: {}
|
|
||||||
enableFontAwesome: true
|
|
||||||
cssThemes: []
|
|
||||||
externalStyleSheet: []
|
|
||||||
hideComponents:
|
|
||||||
hideHeading: false
|
|
||||||
hideNav: false
|
|
||||||
hideSearch: false
|
|
||||||
hideSettings: false
|
|
||||||
hideFooter: false
|
|
||||||
hideSplashScreen: false
|
|
||||||
auth:
|
|
||||||
enableGuestAccess: false
|
|
||||||
users: []
|
|
||||||
enableKeycloak: false
|
|
||||||
keycloak: {}
|
|
||||||
allowConfigEdit: true
|
|
||||||
enableServiceWorker: false
|
|
||||||
disableContextMenu: false
|
|
||||||
disableUpdateChecks: false
|
|
||||||
disableSmartSort: false
|
|
||||||
pageInfo:
|
|
||||||
title: s0
|
|
||||||
description: s0
|
|
||||||
sections:
|
|
||||||
- name: Media & Entertainment
|
|
||||||
icon: fas fa-photo-video
|
|
||||||
displayData:
|
|
||||||
sortBy: most-used
|
|
||||||
cols: 1
|
|
||||||
rows: 1
|
|
||||||
collapsed: false
|
|
||||||
hideForGuests: false
|
|
||||||
items:
|
|
||||||
- &ref_0
|
|
||||||
title: Jellyfin
|
|
||||||
icon: hl-jellyfin
|
|
||||||
url: https://jellyfin.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 0_1956_jellyfin
|
|
||||||
- &ref_1
|
|
||||||
title: Sonarr
|
|
||||||
description: Manage TV
|
|
||||||
icon: hl-sonarr
|
|
||||||
url: https://sonarr.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 1_1956_sonarr
|
|
||||||
- &ref_2
|
|
||||||
title: Radarr
|
|
||||||
description: Manage Movies
|
|
||||||
icon: hl-radarr
|
|
||||||
url: https://radarr.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 2_1956_radarr
|
|
||||||
- &ref_3
|
|
||||||
title: Lidarr
|
|
||||||
description: Manage Music
|
|
||||||
icon: hl-lidarr
|
|
||||||
url: https://lidarr.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 3_1956_lidarr
|
|
||||||
- &ref_4
|
|
||||||
title: Prowlarr
|
|
||||||
description: Indexers
|
|
||||||
icon: hl-prowlarr
|
|
||||||
url: https://prowlarr.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 4_1956_prowlarr
|
|
||||||
- &ref_5
|
|
||||||
title: Bazarr
|
|
||||||
description: Subtitles
|
|
||||||
icon: hl-bazarr
|
|
||||||
url: https://bazarr.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 5_1956_bazarr
|
|
||||||
- &ref_6
|
|
||||||
title: Navidrome
|
|
||||||
description: Play Music
|
|
||||||
icon: hl-navidrome
|
|
||||||
url: https://music.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 6_1956_navidrome
|
|
||||||
- &ref_7
|
|
||||||
title: Transmission
|
|
||||||
description: Torrenting
|
|
||||||
icon: hl-transmission
|
|
||||||
url: https://transmission.s0.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 7_1956_transmission
|
|
||||||
filteredItems:
|
|
||||||
- *ref_0
|
|
||||||
- *ref_1
|
|
||||||
- *ref_2
|
|
||||||
- *ref_3
|
|
||||||
- *ref_4
|
|
||||||
- *ref_5
|
|
||||||
- *ref_6
|
|
||||||
- *ref_7
|
|
||||||
- name: Network
|
|
||||||
icon: fas fa-network-wired
|
|
||||||
items:
|
|
||||||
- &ref_8
|
|
||||||
title: Gateway
|
|
||||||
description: openwrt
|
|
||||||
icon: hl-openwrt
|
|
||||||
url: http://openwrt.lan/
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 0_746_gateway
|
|
||||||
- &ref_9
|
|
||||||
title: Wireless
|
|
||||||
description: openwrt (ish)
|
|
||||||
icon: hl-openwrt
|
|
||||||
url: http://PacketProvocateur.lan
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 1_746_wireless
|
|
||||||
filteredItems:
|
|
||||||
- *ref_8
|
|
||||||
- *ref_9
|
|
||||||
displayData:
|
|
||||||
sortBy: default
|
|
||||||
rows: 1
|
|
||||||
cols: 1
|
|
||||||
collapsed: false
|
|
||||||
hideForGuests: false
|
|
||||||
- name: Services
|
|
||||||
icon: fas fa-monitor-heart-rate
|
|
||||||
items:
|
|
||||||
- &ref_10
|
|
||||||
title: Matrix
|
|
||||||
description: ''
|
|
||||||
icon: hl-matrix
|
|
||||||
url: https://chat.neet.space
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 0_836_matrix
|
|
||||||
- &ref_11
|
|
||||||
title: Radio
|
|
||||||
description: Radio service
|
|
||||||
icon: generative
|
|
||||||
url: https://radio.runyan.org
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 1_836_radio
|
|
||||||
- &ref_12
|
|
||||||
title: Mumble
|
|
||||||
description: voice.neet.space
|
|
||||||
icon: hl-mumble
|
|
||||||
url: https://voice.neet.space
|
|
||||||
target: sametab
|
|
||||||
statusCheck: false
|
|
||||||
id: 2_836_mumble
|
|
||||||
- &ref_13
|
|
||||||
title: IRC
|
|
||||||
description: irc.neet.dev
|
|
||||||
icon: hl-thelounge
|
|
||||||
url: https://irc.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 3_836_irc
|
|
||||||
- &ref_14
|
|
||||||
title: Git
|
|
||||||
description: git.neet.dev
|
|
||||||
icon: hl-gitea
|
|
||||||
url: https://git.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 4_836_git
|
|
||||||
- &ref_15
|
|
||||||
title: Nextcloud
|
|
||||||
description: neet.cloud
|
|
||||||
icon: hl-nextcloud
|
|
||||||
url: https://neet.cloud
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 5_836_nextcloud
|
|
||||||
- &ref_16
|
|
||||||
title: Roundcube
|
|
||||||
description: mail.neet.dev
|
|
||||||
icon: hl-roundcube
|
|
||||||
url: https://mail.neet.dev
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 6_836_roundcube
|
|
||||||
- &ref_17
|
|
||||||
title: Jitsi Meet
|
|
||||||
description: meet.neet.space
|
|
||||||
icon: hl-jitsimeet
|
|
||||||
url: https://meet.neet.space
|
|
||||||
target: sametab
|
|
||||||
statusCheck: true
|
|
||||||
id: 7_836_jitsimeet
|
|
||||||
filteredItems:
|
|
||||||
- *ref_10
|
|
||||||
- *ref_11
|
|
||||||
- *ref_12
|
|
||||||
- *ref_13
|
|
||||||
- *ref_14
|
|
||||||
- *ref_15
|
|
||||||
- *ref_16
|
|
||||||
- *ref_17
|
|
||||||
displayData:
|
|
||||||
sortBy: default
|
|
||||||
rows: 1
|
|
||||||
cols: 1
|
|
||||||
collapsed: false
|
|
||||||
hideForGuests: false
|
|
@ -171,17 +171,24 @@
|
|||||||
openFirewall = false; # All nginx services are internal
|
openFirewall = false; # All nginx services are internal
|
||||||
virtualHosts =
|
virtualHosts =
|
||||||
let
|
let
|
||||||
mkVirtualHost = external: internal:
|
mkHost = external: config:
|
||||||
{
|
{
|
||||||
${external} = {
|
${external} = {
|
||||||
useACMEHost = "s0.neet.dev"; # Use wildcard cert
|
useACMEHost = "s0.neet.dev"; # Use wildcard cert
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
locations."/" = {
|
locations."/" = config;
|
||||||
proxyPass = internal;
|
|
||||||
proxyWebsockets = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
mkVirtualHost = external: internal:
|
||||||
|
mkHost external {
|
||||||
|
proxyPass = internal;
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
mkStaticHost = external: static:
|
||||||
|
mkHost external {
|
||||||
|
root = static;
|
||||||
|
tryFiles = "$uri /index.html ";
|
||||||
|
};
|
||||||
in
|
in
|
||||||
lib.mkMerge [
|
lib.mkMerge [
|
||||||
(mkVirtualHost "bazarr.s0.neet.dev" "http://vpn.containers:6767")
|
(mkVirtualHost "bazarr.s0.neet.dev" "http://vpn.containers:6767")
|
||||||
@ -193,7 +200,7 @@
|
|||||||
(mkVirtualHost "unifi.s0.neet.dev" "https://localhost:8443")
|
(mkVirtualHost "unifi.s0.neet.dev" "https://localhost:8443")
|
||||||
(mkVirtualHost "music.s0.neet.dev" "http://localhost:4533")
|
(mkVirtualHost "music.s0.neet.dev" "http://localhost:4533")
|
||||||
(mkVirtualHost "jellyfin.s0.neet.dev" "http://localhost:8096")
|
(mkVirtualHost "jellyfin.s0.neet.dev" "http://localhost:8096")
|
||||||
(mkVirtualHost "s0.neet.dev" "http://localhost:56815")
|
(mkStaticHost "s0.neet.dev" config.services.dashy.finalDrv)
|
||||||
{
|
{
|
||||||
# Landing page LAN redirect
|
# Landing page LAN redirect
|
||||||
"s0" = {
|
"s0" = {
|
||||||
@ -255,7 +262,7 @@
|
|||||||
virtualisation.podman.dockerSocket.enable = true; # TODO needed?
|
virtualisation.podman.dockerSocket.enable = true; # TODO needed?
|
||||||
services.dashy = {
|
services.dashy = {
|
||||||
enable = true;
|
enable = true;
|
||||||
configFile = ./dashy.yaml;
|
settings = import ./dashy.nix;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.unifi = {
|
services.unifi = {
|
||||||
|
15
patches/dont-break-nix-serve.patch
Normal file
15
patches/dont-break-nix-serve.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
diff --git a/nixos/modules/services/video/frigate.nix b/nixos/modules/services/video/frigate.nix
|
||||||
|
index 49f8ed673816..643b59d68dde 100644
|
||||||
|
--- a/nixos/modules/services/video/frigate.nix
|
||||||
|
+++ b/nixos/modules/services/video/frigate.nix
|
||||||
|
@@ -482,10 +482,6 @@ in
|
||||||
|
};
|
||||||
|
};
|
||||||
|
extraConfig = ''
|
||||||
|
- # Frigate wants to connect on 127.0.0.1:5000 for unauthenticated requests
|
||||||
|
- # https://github.com/NixOS/nixpkgs/issues/370349
|
||||||
|
- listen 127.0.0.1:5000;
|
||||||
|
-
|
||||||
|
# vod settings
|
||||||
|
vod_base_url "";
|
||||||
|
vod_segments_base_url "";
|
Loading…
x
Reference in New Issue
Block a user