install prusaslicer with flatpak

This commit is contained in:
Tyler Starr 2025-05-21 21:58:46 -07:00
parent 72b6c537c5
commit 97f0bc5b3c
10 changed files with 48 additions and 17 deletions

17
provision/flake.lock generated
View File

@ -117,6 +117,22 @@
"url": "https://github.com/Jovian-Experiments/Jovian-NixOS" "url": "https://github.com/Jovian-Experiments/Jovian-NixOS"
} }
}, },
"nix-flatpak": {
"locked": {
"lastModified": 1739444422,
"narHash": "sha256-iAVVHi7X3kWORftY+LVbRiStRnQEob2TULWyjMS6dWg=",
"owner": "gmodena",
"repo": "nix-flatpak",
"rev": "5e54c3ca05a7c7d968ae1ddeabe01d2a9bc1e177",
"type": "github"
},
"original": {
"owner": "gmodena",
"ref": "v0.6.0",
"repo": "nix-flatpak",
"type": "github"
}
},
"nixos-wsl": { "nixos-wsl": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
@ -175,6 +191,7 @@
"agenix": "agenix", "agenix": "agenix",
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"jovian-nixos": "jovian-nixos", "jovian-nixos": "jovian-nixos",
"nix-flatpak": "nix-flatpak",
"nixos-wsl": "nixos-wsl", "nixos-wsl": "nixos-wsl",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
} }

View File

@ -10,9 +10,10 @@
jovian-nixos.flake = false; jovian-nixos.flake = false;
nixos-wsl.url = "github:nix-community/NixOS-WSL"; nixos-wsl.url = "github:nix-community/NixOS-WSL";
nixos-wsl.inputs.nixpkgs.follows = "nixpkgs"; nixos-wsl.inputs.nixpkgs.follows = "nixpkgs";
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.6.0";
}; };
outputs = inputs @ { self, nixpkgs, home-manager, jovian-nixos, agenix, nixos-wsl, ... }: outputs = inputs @ { self, nixpkgs, home-manager, jovian-nixos, agenix, nixos-wsl, nix-flatpak, ... }:
let let
system = "x86_64-linux"; system = "x86_64-linux";
hosts = builtins.fromJSON (builtins.readFile ./hosts.json); hosts = builtins.fromJSON (builtins.readFile ./hosts.json);
@ -21,7 +22,7 @@
nixosConfigurations = lib.mapAttrs (hostname: hostConfig: nixosConfigurations = lib.mapAttrs (hostname: hostConfig:
lib.nixosSystem (import ./hosts/${hostConfig.role} { lib.nixosSystem (import ./hosts/${hostConfig.role} {
inherit lib; inherit lib;
inherit system inputs agenix home-manager jovian-nixos nixos-wsl; inherit system inputs agenix home-manager jovian-nixos nixos-wsl nix-flatpak;
specialArgs = { specialArgs = {
user = hostConfig.user; user = hostConfig.user;
hostname = "${hostname}"; hostname = "${hostname}";

View File

@ -1,15 +1,16 @@
{ lib, specialArgs, system, inputs, agenix, home-manager, jovian-nixos, ... }: { lib, specialArgs, system, inputs, agenix, home-manager, jovian-nixos, nix-flatpak, ... }:
let let
user = specialArgs.user; user = specialArgs.user;
hostname = specialArgs.hostname; hostname = specialArgs.hostname;
in { in {
inherit system; inherit system;
specialArgs = { inherit user hostname inputs home-manager jovian-nixos; }; specialArgs = { inherit user hostname inputs home-manager jovian-nixos nix-flatpak; };
modules = [ modules = [
./configuration.nix ./configuration.nix
./hardware.nix ./hardware.nix
../../modules ../../modules
agenix.nixosModules.default agenix.nixosModules.default
nix-flatpak.nixosModules.nix-flatpak
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@ -1,15 +1,16 @@
{ lib, specialArgs, system, inputs, agenix, home-manager, ... }: { lib, specialArgs, system, inputs, agenix, home-manager, nix-flatpak, ... }:
let let
user = specialArgs.user; user = specialArgs.user;
hostname = specialArgs.hostname; hostname = specialArgs.hostname;
in { in {
inherit system; inherit system;
specialArgs = { inherit user hostname inputs home-manager; }; specialArgs = { inherit user hostname inputs home-manager nix-flatpak; };
modules = [ modules = [
./configuration.nix ./configuration.nix
../../modules ../../modules
/etc/nixos/hardware-configuration.nix /etc/nixos/hardware-configuration.nix
agenix.nixosModules.default agenix.nixosModules.default
nix-flatpak.nixosModules.nix-flatpak
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@ -1,15 +1,16 @@
{ lib, specialArgs, system, inputs, agenix, home-manager, ... }: { lib, specialArgs, system, inputs, agenix, home-manager, nix-flatpak, ... }:
let let
user = specialArgs.user; user = specialArgs.user;
hostname = specialArgs.hostname; hostname = specialArgs.hostname;
in { in {
inherit system; inherit system;
specialArgs = { inherit user hostname inputs home-manager; }; specialArgs = { inherit user hostname inputs home-manager nix-flatpak; };
modules = [ modules = [
./configuration.nix ./configuration.nix
./hardware.nix ./hardware.nix
../../modules ../../modules
agenix.nixosModules.default agenix.nixosModules.default
nix-flatpak.nixosModules.nix-flatpak
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@ -1,15 +1,16 @@
{ lib, specialArgs, system, inputs, agenix, home-manager, ... }: { lib, specialArgs, system, inputs, agenix, home-manager, nix-flatpak, ... }:
let let
user = specialArgs.user; user = specialArgs.user;
hostname = specialArgs.hostname; hostname = specialArgs.hostname;
in { in {
inherit system; inherit system;
specialArgs = { inherit user hostname inputs home-manager; }; specialArgs = { inherit user hostname inputs home-manager nix-flatpak; };
modules = [ modules = [
./configuration.nix ./configuration.nix
./hardware.nix ./hardware.nix
../../modules ../../modules
agenix.nixosModules.default agenix.nixosModules.default
nix-flatpak.nixosModules.nix-flatpak
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@ -1,15 +1,16 @@
{ lib, specialArgs, system, inputs, agenix, home-manager, ... }: { lib, specialArgs, system, inputs, agenix, home-manager, nix-flatpak, ... }:
let let
user = specialArgs.user; user = specialArgs.user;
hostname = specialArgs.hostname; hostname = specialArgs.hostname;
in { in {
inherit system; inherit system;
specialArgs = { inherit user inputs home-manager; }; specialArgs = { inherit user inputs home-manager nix-flatpak; };
modules = [ modules = [
./configuration.nix ./configuration.nix
./hardware.nix ./hardware.nix
../../modules ../../modules
agenix.nixosModules.default agenix.nixosModules.default
nix-flatpak.nixosModules.nix-flatpak
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@ -1,15 +1,16 @@
{ lib, specialArgs, system, inputs, agenix, home-manager, ... }: { lib, specialArgs, system, inputs, agenix, home-manager, nix-flatpak, ... }:
let let
user = specialArgs.user; user = specialArgs.user;
hostname = specialArgs.hostname; hostname = specialArgs.hostname;
in { in {
inherit system; inherit system;
specialArgs = { inherit user hostname inputs home-manager; }; specialArgs = { inherit user hostname inputs home-manager nix-flatpak; };
modules = [ modules = [
./configuration.nix ./configuration.nix
./hardware.nix ./hardware.nix
../../modules ../../modules
agenix.nixosModules.default agenix.nixosModules.default
nix-flatpak.nixosModules.nix-flatpak
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@ -1,9 +1,14 @@
{ lib, ... }: { lib, config, ... }:
{
let cfg = config.modules.base-plus;
in {
imports = [ imports = [
../../programs/beancount.nix ../../programs/beancount.nix
../../programs/borg.nix ../../programs/borg.nix
../../programs/yt-dlp.nix ../../programs/yt-dlp.nix
]; ];
options.modules.base-plus.enable = lib.mkEnableOption "base-plus"; options.modules.base-plus.enable = lib.mkEnableOption "base-plus";
config = lib.mkIf cfg.enable {
services.flatpak.enable = true;
};
} }

View File

@ -8,7 +8,9 @@ in {
blender # Open-source 3D creation suite for modeling, animation, rendering, and more blender # Open-source 3D creation suite for modeling, animation, rendering, and more
freecad # Open-source parametric 3D CAD modeler freecad # Open-source parametric 3D CAD modeler
openscad # Open-source script-only based modeller openscad # Open-source script-only based modeller
prusa-slicer # Slicing software optimized for Prusa 3D printers, offering user-friendly interface and settings ];
services.flatpak.packages = [
"com.prusa3d.PrusaSlicer"
]; ];
}; };
} }