feat(nixos): add Bambu Studio Flatpak
Manage the user Flatpak through nix-flatpak and enable printer discovery through the host firewall.
This commit is contained in:
1 parent
45f7e280d3
commit
c7e3c093b4
4 files changed
+57
No files matched your search
@@ -43,6 +43,7 @@
|
|||||||
modules.shell.omp.enable = true;
|
modules.shell.omp.enable = true;
|
||||||
|
|
||||||
modules.desktop.enable = true;
|
modules.desktop.enable = true;
|
||||||
|
modules.desktop.apps.bambu-studio.enable = true;
|
||||||
modules.desktop.apps.obsidian.enable = true;
|
modules.desktop.apps.obsidian.enable = true;
|
||||||
modules.desktop.apps.r2modman.enable = true;
|
modules.desktop.apps.r2modman.enable = true;
|
||||||
modules.desktop.emulation.enable = true;
|
modules.desktop.emulation.enable = true;
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
util,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
# Bambu Studio for preparing and monitoring Bambu Lab prints.
|
||||||
|
let
|
||||||
|
user = config.user.name;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.desktop.apps.bambu-studio.enable =
|
||||||
|
lib.mkEnableOption "Bambu Studio for preparing and monitoring Bambu Lab prints";
|
||||||
|
|
||||||
|
config = lib.mkIf config.modules.desktop.apps.bambu-studio.enable {
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
|
home-manager.sharedModules = [ inputs.nix-flatpak.homeManagerModules.nix-flatpak ];
|
||||||
|
home-manager.users.${user}.services.flatpak = {
|
||||||
|
enable = true;
|
||||||
|
packages = [ "com.bambulab.BambuStudio" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Bambu printers announce themselves with SSDP multicast or broadcast traffic.
|
||||||
|
networking.firewall.allowedUDPPorts = [
|
||||||
|
1990
|
||||||
|
2021
|
||||||
|
];
|
||||||
|
|
||||||
|
registry.window-icon.${config.networking.hostName}.bambu-studio = {
|
||||||
|
class = "[Bb]ambu[Ss]tudio";
|
||||||
|
icon = util.glyph "f1b2";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Generated
+17
@@ -321,6 +321,22 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-flatpak": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1767983141,
|
||||||
|
"narHash": "sha256-7ZCulYUD9RmJIDULTRkGLSW1faMpDlPKcbWJLYHoXcs=",
|
||||||
|
"owner": "gmodena",
|
||||||
|
"repo": "nix-flatpak",
|
||||||
|
"rev": "440818969ac2cbd77bfe025e884d0aa528991374",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "gmodena",
|
||||||
|
"ref": "v0.7.0",
|
||||||
|
"repo": "nix-flatpak",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -456,6 +472,7 @@
|
|||||||
"firefox-addons": "firefox-addons",
|
"firefox-addons": "firefox-addons",
|
||||||
"gitea-axi": "gitea-axi",
|
"gitea-axi": "gitea-axi",
|
||||||
"home-manager": "home-manager_3",
|
"home-manager": "home-manager_3",
|
||||||
|
"nix-flatpak": "nix-flatpak",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixpkgs-stable": "nixpkgs-stable",
|
"nixpkgs-stable": "nixpkgs-stable",
|
||||||
|
|||||||
@@ -16,6 +16,9 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Installs Flatpak applications declaratively.
|
||||||
|
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.7.0";
|
||||||
|
|
||||||
# Provides signed AMO extensions pinned by version and hash.
|
# Provides signed AMO extensions pinned by version and hash.
|
||||||
firefox-addons = {
|
firefox-addons = {
|
||||||
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
||||||
|
|||||||
Reference in new issue
Block a user