default.nix (2063B)
1 { 2 lib, 3 config, 4 pkgs, 5 6 nix-flatpak, 7 8 user, 9 ... 10 }: 11 { 12 imports = [ 13 nix-flatpak.nixosModules.nix-flatpak 14 ]; 15 16 home-manager.sharedModules = [ 17 nix-flatpak.homeManagerModules.nix-flatpak 18 ]; 19 20 services.flatpak = { 21 enable = true; 22 uninstallUnmanaged = true; 23 24 update.auto = { 25 enable = true; 26 onCalendar = "daily"; 27 }; 28 29 overrides = 30 let 31 hmConfig = config.home-manager.users.${user}; 32 33 storePath = 34 path: 35 lib.pipe path [ 36 (rootPaths: pkgs.closureInfo { inherit rootPaths; }) 37 (closureInfo: builtins.readFile "${closureInfo}/store-paths") 38 (lib.splitString "\n") 39 (builtins.filter (p: p != "")) 40 (map (p: "${p}:ro")) 41 ]; 42 in 43 { 44 global = { 45 Context.filesystems = [ 46 "xdg-config/MangoHud:ro" 47 "${hmConfig.home-files}/.config/MangoHud/MangoHud.conf:ro" 48 "${hmConfig.home-files}/.local/share/icons:ro" 49 "${hmConfig.xdg.dataFile."icons/default/index.theme".source}:ro" 50 ] 51 ++ (storePath hmConfig.home.pointerCursor.package); 52 53 Environment = { 54 XCURSOR_PATH = "${hmConfig.home-files}/.local/share/icons"; 55 }; 56 }; 57 58 "com.adamcake.Bolt".Environment = { 59 _JAVA_AWT_WM_NONREPARENTING = "1"; 60 }; 61 62 "org.signal.Signal".Environment = { 63 SIGNAL_PASSWORD_STORE = "gnome-libsecret"; 64 }; 65 }; 66 67 packages = [ 68 "com.adamcake.Bolt" 69 "com.discordapp.Discord" 70 "com.slack.Slack" 71 "com.spotify.Client" 72 "com.valvesoftware.Steam" 73 "org.freedesktop.Platform.VulkanLayer.MangoHud//25.08" 74 "org.freedesktop.Platform.VulkanLayer.gamescope//25.08" 75 "org.onlyoffice.desktopeditors" 76 "org.signal.Signal" 77 "xyz.tytanium.DoorKnocker" 78 "com.github.Matoking.protontricks" 79 ]; 80 }; 81 82 environment.persistence."/fix" = { 83 directories = [ "/var/lib/flatpak" ]; 84 users.${user}.directories = [ ".var/app" ]; 85 }; 86 }