34 lines
No EOL
964 B
Nix
34 lines
No EOL
964 B
Nix
{ config, pkgs, ... }:
|
|
|
|
{
|
|
# Enable Flatpak
|
|
services.flatpak.enable = true;
|
|
|
|
system.activationScripts = {
|
|
flathub = ''
|
|
/run/current-system/sw/bin/flatpak remote-add --system --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
|
'';
|
|
};
|
|
|
|
# Flatpak can't access system fonts & icons
|
|
# Source:
|
|
# https://github.com/NixOS/nixpkgs/issues/119433
|
|
|
|
system.fsPackages = [ pkgs.bindfs ];
|
|
fileSystems = let
|
|
mkRoSymBind = path: {
|
|
device = path;
|
|
fsType = "fuse.bindfs";
|
|
options = [ "ro" "resolve-symlinks" "x-gvfs-hide" ];
|
|
};
|
|
aggregatedFonts = pkgs.buildEnv {
|
|
name = "system-fonts";
|
|
paths = config.fonts.packages;
|
|
pathsToLink = [ "/share/fonts" ];
|
|
};
|
|
in {
|
|
# Create an FHS mount to support flatpak host icons/fonts
|
|
"/usr/share/icons" = mkRoSymBind (config.system.path + "/share/icons");
|
|
"/usr/share/fonts" = mkRoSymBind (aggregatedFonts + "/share/fonts");
|
|
};
|
|
} |