Compare commits
5 Commits
b5ab8944b4
...
fc52217007
Author | SHA1 | Date | |
---|---|---|---|
|
fc52217007 | ||
|
c743cc1dfa | ||
|
ad305da519 | ||
|
68baa3023d | ||
|
fa97662278 |
16
flake.lock
generated
16
flake.lock
generated
@ -136,17 +136,17 @@
|
|||||||
},
|
},
|
||||||
"nixos-unstable": {
|
"nixos-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751984180,
|
"lastModified": 1753429684,
|
||||||
"narHash": "sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X+xgOL0=",
|
"narHash": "sha256-9h7+4/53cSfQ/uA3pSvCaBepmZaz/dLlLVJnbQ+SJjk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "9807714d6944a957c2e036f84b0ff8caf9930bc0",
|
"rev": "7fd36ee82c0275fb545775cc5e4d30542899511d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "9807714d6944a957c2e036f84b0ff8caf9930bc0",
|
"rev": "7fd36ee82c0275fb545775cc5e4d30542899511d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -200,17 +200,17 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752308619,
|
"lastModified": 1753345091,
|
||||||
"narHash": "sha256-pzrVLKRQNPrii06Rm09Q0i0dq3wt2t2pciT/GNq5EZQ=",
|
"narHash": "sha256-CdX2Rtvp5I8HGu9swBmYuq+ILwRxpXdJwlpg8jvN4tU=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "650e572363c091045cdbc5b36b0f4c1f614d3058",
|
"rev": "3ff0e34b1383648053bba8ed03f201d3466f90c9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "650e572363c091045cdbc5b36b0f4c1f614d3058",
|
"rev": "3ff0e34b1383648053bba8ed03f201d3466f90c9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/650e572363c091045cdbc5b36b0f4c1f614d3058";
|
nixpkgs.url = "github:NixOS/nixpkgs/3ff0e34b1383648053bba8ed03f201d3466f90c9";
|
||||||
nixos-unstable.url = "github:NixOS/nixpkgs/9807714d6944a957c2e036f84b0ff8caf9930bc0";
|
nixos-unstable.url = "github:NixOS/nixpkgs/7fd36ee82c0275fb545775cc5e4d30542899511d";
|
||||||
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
|
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
|
||||||
local-unstable.url = "path:///home/giulio/dev/nixpkgs";
|
local-unstable.url = "path:///home/giulio/dev/nixpkgs";
|
||||||
pepeflake.url = "git+https://git.giugl.io/peperunas/pepeflake";
|
pepeflake.url = "git+https://git.giugl.io/peperunas/pepeflake";
|
||||||
|
@ -195,63 +195,17 @@ in
|
|||||||
package = pkgs.unstablePkgs.ollama-cuda;
|
package = pkgs.unstablePkgs.ollama-cuda;
|
||||||
backendDomain = "ollama.giugl.io";
|
backendDomain = "ollama.giugl.io";
|
||||||
acceleration = "cuda";
|
acceleration = "cuda";
|
||||||
|
|
||||||
|
frontend = {
|
||||||
|
enable = true;
|
||||||
|
domain = "pino.giugl.io";
|
||||||
|
package = pkgs.unstablePkgs.open-webui;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
homeassistant = {
|
homeassistant = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.unstablePkgs.home-assistant;
|
|
||||||
domain = "home.giugl.io";
|
domain = "home.giugl.io";
|
||||||
extraComponents = [
|
|
||||||
"otbr"
|
|
||||||
"litterrobot"
|
|
||||||
"apple_tv"
|
|
||||||
"homekit"
|
|
||||||
"homekit_controller"
|
|
||||||
"spotify"
|
|
||||||
"hue"
|
|
||||||
"sonos"
|
|
||||||
"tplink"
|
|
||||||
"ollama"
|
|
||||||
"wyoming"
|
|
||||||
"whisper"
|
|
||||||
"piper"
|
|
||||||
"isal"
|
|
||||||
"radarr"
|
|
||||||
"sonarr"
|
|
||||||
"mqtt"
|
|
||||||
"mqtt_eventstream"
|
|
||||||
"mqtt_json"
|
|
||||||
"mqtt_room"
|
|
||||||
"mqtt_statestream"
|
|
||||||
"github"
|
|
||||||
"webostv"
|
|
||||||
"reolink"
|
|
||||||
"onvif"
|
|
||||||
"xiaomi_miio"
|
|
||||||
"ring"
|
|
||||||
];
|
|
||||||
|
|
||||||
extraPackages = python3Packages: with pkgs.unstablePkgs.python3Packages; [
|
|
||||||
pyporscheconnectapi
|
|
||||||
];
|
|
||||||
|
|
||||||
config = {
|
|
||||||
http = {
|
|
||||||
server_host = "127.0.0.1";
|
|
||||||
server_port = 8123;
|
|
||||||
use_x_forwarded_for = true;
|
|
||||||
trusted_proxies = [ "127.0.0.1" ];
|
|
||||||
};
|
|
||||||
homeassistant = {
|
|
||||||
name = "Brigettine Square";
|
|
||||||
latitude = 52.1958;
|
|
||||||
longitude = 0.180746;
|
|
||||||
unit_system = "metric";
|
|
||||||
};
|
|
||||||
default_config = { };
|
|
||||||
automation = "!include automations.yaml";
|
|
||||||
frontend.themes = "!include_dir_merge_named themes";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
headscale = {
|
headscale = {
|
||||||
@ -274,9 +228,6 @@ in
|
|||||||
enable = true;
|
enable = true;
|
||||||
domain = "music.giugl.io";
|
domain = "music.giugl.io";
|
||||||
package = pkgs.unstablePkgs.navidrome;
|
package = pkgs.unstablePkgs.navidrome;
|
||||||
|
|
||||||
enableBeets = true;
|
|
||||||
beetsPackage = pkgs.unstablePkgs.beets;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
languagetool = {
|
languagetool = {
|
||||||
|
@ -35,8 +35,7 @@ in
|
|||||||
|
|
||||||
frontend = {
|
frontend = {
|
||||||
enable = mkEnableOption "Enable LLM frontend service (Open WebUI)"; # Defaults to false
|
enable = mkEnableOption "Enable LLM frontend service (Open WebUI)"; # Defaults to false
|
||||||
uiPackage = mkPackageOption pkgs "open-webui" { };
|
package = mkPackageOption pkgs "open-webui" { };
|
||||||
tikaPackage = mkPackageOption pkgs "tika" { }; # Tika for document processing with Open WebUI
|
|
||||||
domain = mkOption {
|
domain = mkOption {
|
||||||
type = types.nullOr types.str;
|
type = types.nullOr types.str;
|
||||||
default = null;
|
default = null;
|
||||||
@ -50,7 +49,7 @@ in
|
|||||||
{
|
{
|
||||||
environment.systemPackages =
|
environment.systemPackages =
|
||||||
(if cfg.enable then [ cfg.package ] else [ ]) ++
|
(if cfg.enable then [ cfg.package ] else [ ]) ++
|
||||||
(if cfg.enable && cfg.frontend.enable then [ cfg.frontend.uiPackage cfg.frontend.tikaPackage ] else [ ]);
|
(if cfg.enable && cfg.frontend.enable then [ cfg.frontend.package ] else [ ]);
|
||||||
}
|
}
|
||||||
|
|
||||||
# Backend Ollama Service Configuration
|
# Backend Ollama Service Configuration
|
||||||
@ -85,12 +84,12 @@ in
|
|||||||
(mkIf (cfg.enable && cfg.frontend.enable) {
|
(mkIf (cfg.enable && cfg.frontend.enable) {
|
||||||
services.open-webui = {
|
services.open-webui = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = cfg.frontend.uiPackage;
|
package = cfg.frontend.package;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.tika = {
|
services.docling-serve = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = cfg.frontend.tikaPackage;
|
package = pkgs.unstablePkgs.docling-serve;
|
||||||
};
|
};
|
||||||
|
|
||||||
pepe.core.vhost.hosts = optionalAttrs (cfg.frontend.domain != null) {
|
pepe.core.vhost.hosts = optionalAttrs (cfg.frontend.domain != null) {
|
||||||
|
@ -20,12 +20,13 @@ let
|
|||||||
rope
|
rope
|
||||||
mypy
|
mypy
|
||||||
pylsp-mypy
|
pylsp-mypy
|
||||||
|
black
|
||||||
]);
|
]);
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
home = {
|
home = {
|
||||||
packages = with actualPkgs; [
|
packages = with actualPkgs; [
|
||||||
black
|
# black
|
||||||
helix
|
helix
|
||||||
clang-tools
|
clang-tools
|
||||||
rust-analyzer
|
rust-analyzer
|
||||||
|
Loading…
x
Reference in New Issue
Block a user