default.nix (2238B)
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 "com.mojang.Minecraft"."Session Bus Policy" = { 67 "org.freedesktop.secrets" = "talk"; 68 }; 69 }; 70 71 packages = [ 72 "com.adamcake.Bolt" 73 "com.discordapp.Discord" 74 "com.github.Matoking.protontricks" 75 "com.mojang.Minecraft" 76 "com.slack.Slack" 77 "com.spotify.Client" 78 "com.valvesoftware.Steam" 79 "io.github.lullabyX.sone" 80 "org.freedesktop.Platform.VulkanLayer.gamescope//25.08" 81 "org.freedesktop.Platform.VulkanLayer.MangoHud//25.08" 82 "org.onlyoffice.desktopeditors" 83 "org.signal.Signal" 84 "xyz.tytanium.DoorKnocker" 85 ]; 86 }; 87 88 environment.persistence."/fix" = { 89 directories = [ "/var/lib/flatpak" ]; 90 users.${user}.directories = [ ".var/app" ]; 91 }; 92 }