Compare commits

..

5 Commits

Author SHA1 Message Date
Giulio De Pasquale
fc52217007 Merge branch 'master' of ssh://git.giugl.io/peperunas/nixos 2025-07-26 12:38:26 +01:00
Giulio De Pasquale
c743cc1dfa refactor(modules/services/llm): rename frontend packages and update service configurations
- Renamed `uiPackage` to `package` for consistency with service naming
- Replaced `tika` service with `docling-serve` using unstable package source
- Updated service dependencies to use `pkgs.unstablePkgs.docling-serve`
- Simplified package configuration logic for frontend services
2025-07-26 12:17:49 +01:00
Giulio De Pasquale
ad305da519 chore(home): add and comment out black in package list 2025-07-26 12:17:15 +01:00
Giulio De Pasquale
68baa3023d architect: removed home assistant and beets 2025-07-26 10:24:17 +01:00
Giulio De Pasquale
fa97662278 bump 2025-07-26 10:24:02 +01:00
5 changed files with 23 additions and 72 deletions

16
flake.lock generated
View File

@ -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"
} }
}, },

View File

@ -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";

View File

@ -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 = {

View File

@ -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) {

View File

@ -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