diff --git a/flake.nix b/flake.nix index 2ba5834..f5bb503 100644 --- a/flake.nix +++ b/flake.nix @@ -2,9 +2,7 @@ description = "System Configuration"; inputs = { - nixpkgs = { - url = "github:nixos/nixpkgs?ref=nixos-25.11"; - }; + nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-25.11"; home-manager = { url = "github:nix-community/home-manager?ref=release-25.11"; inputs.nixpkgs.follows = "nixpkgs"; @@ -16,7 +14,11 @@ }; outputs = - { self, nixpkgs, ... }@inputs: + { + self, + nixpkgs, + ... + }@inputs: let local = import ./lib; mkNixosConfig = diff --git a/home-manager/features/3d-printing.nix b/home-manager/features/3d-printing.nix index acf68ff..e3c5808 100644 --- a/home-manager/features/3d-printing.nix +++ b/home-manager/features/3d-printing.nix @@ -1,14 +1,40 @@ -{ pkgs, ... }: +{ + pkgs, + ... +}: +let + freecad-wrapped = pkgs.symlinkJoin { + name = "freecad-wrapped"; + paths = [ pkgs.freecad ]; + buildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/freecad \ + --prefix MESA_LOADER_DRIVER_OVERRIDE : zink \ + --prefix __EGL_VENDOR_LIBRARY_FILENAMES : ${pkgs.mesa}/share/glvnd/egl_vendor.d/50_mesa.json + ''; + }; + + bambu-studio-wrapped = pkgs.symlinkJoin { + name = "bambu-studio-wrapped"; + paths = [ pkgs.bambu-studio ]; + buildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/bambu-studio \ + --prefix MESA_LOADER_DRIVER_OVERRIDE : zink \ + --prefix __EGL_VENDOR_LIBRARY_FILENAMES : ${pkgs.mesa}/share/glvnd/egl_vendor.d/50_mesa.json + ''; + }; +in { home.packages = with pkgs; [ - bambu-studio + bambu-studio-wrapped LycheeSlicer orca-slicer blender - freecad + freecad-wrapped openscad ];