After getting a decent KDE system working (QEMU VM), I tried installing an Xfce system. Using the same main config, I removed the KDE-specific settings and replaced them with Xfce ones. The system seemed to install fine, but…
One package - nerdfonts
- is only installing (1) font set: Fira Code. I’ve tried reinstalling the nerdfonts
package, but I’m only seeing it grab the Fira Code
fonts. When I upgrade my KDE system yesterday, there was no changes to the installed fonts.
configuration.nix
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running ‘nixos-help’).
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
];
system.stateVersion = "23.11";
# ----- GRUB bootloader ----- #
boot.loader = {
efi = {
canTouchEfiVariables = true;
efiSysMountPoint = "/boot/efi";
};
grub = {
efiSupport = true;
device = "nodev";
};
};
# ----- Networking ----- #
networking = {
hostName = "nixos-xfce";
networkmanager.enable = true;
firewall = {
enable = true;
allowedTCPPorts = [ 22 ];
};
};
# ----- NFS mounts ----- #
fileSystems."/media/host" = {
device = "dss-endeavouros:/";
fsType = "nfs";
options = [ "nfsvers=4.2" "x-systemd.automount" "noauto" ];
};
# ----- Locale settings ----- #
time.timeZone = "America/Los_Angeles";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
# ----- Xfce Desktop Environment ----- #
services.xserver = {
enable = true;
layout = "us";
xkbVariant = "";
displayManager = {
autoLogin.enable = true;
autoLogin.user = "vm-guest";
lightdm.enable = true;
defaultSession = "xfce";
};
desktopManager = {
xterm.enable = false;
xfce.enable = true;
};
};
# ----- VM Guest user ----- #
users.users.vm-guest = {
isNormalUser = true;
description = "Virtual machine guest account";
createHome = true;
extraGroups = [ "networkmanager" "wheel" ];
uid = 59999;
initialPassword = "";
};
# ----- Printing ----- #
services = {
avahi = {
enable = true;
nssmdns = true;
openFirewall = true;
};
printing = {
enable = true;
drivers = [ pkgs.hplip ];
};
};
# ----- Sound ----- #
sound.enable = true;
hardware.pulseaudio.enable = false;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
# ----- Packages, program settings ----- #
nixpkgs.config.allowUnfree = true;
boot.kernelPackages = pkgs.linuxPackages_latest;
environment.systemPackages = with pkgs; [
# system
# package does not install services or config, so on hold for now
# firewalld
conky
lsb-release
partition-manager
qemu_kvm
spice-vdagent
xdg-user-dirs
# development
git
man-pages
man-pages-posix
(python311Full.withPackages (ps: with ps; [
distro
psutil
pyaml ]))
# other programs
bat
duf
fd
inxi
lsd
lynis
nano
ncdu
nerdfonts
nmap
unison
# Xfce apps will go here; will add after initial install
];
programs = {
nano.syntaxHighlight = true;
nano.nanorc = ''
set atblanks
set autoindent
set boldtext
set breaklonglines
set casesensitive
set constantshow
set historylog
set indicator
set linenumbers
set locking
set matchbrackets "(<[{)>]}"
set mouse
set nonewlines
set softwrap
set tabsize 4
set tabstospaces
set trimblanks
set titlecolor bold,white,magenta
set promptcolor black,yellow
set statuscolor bold,white,magenta
set errorcolor bold,white,red
set spotlightcolor black,orange
set selectedcolor lightwhite,cyan
set stripecolor ,yellow
set scrollercolor magenta
set numbercolor magenta
set keycolor lightmagenta
set functioncolor magenta
extendsyntax python tabgives " "
extendsyntax makefile tabgives " "
bind ^X cut main
bind ^C copy main
bind ^V paste all
bind ^Q exit all
bind ^S savefile main
bind ^F whereis all
bind ^G findnext all
bind ^R replace main
unbind ^U all
unbind ^N main
unbind ^Y all
unbind M-J main
unbind M-T main
bind ^Z undo main
'';
partition-manager.enable = true;
};
# ----- Services, security settings ----- #
services = {
fstrim.enable = true;
openssh.enable = true;
qemuGuest.enable = true;
spice-vdagentd.enable = true;
};
security = {
rtkit.enable = true;
sudo.wheelNeedsPassword = false;
};
}
Everything else is working fine, it’s just the nerdfonts
package. Is there another set of packages I need to install on Xfce? I haven’t yet added any Xfce-specific package, so this is a very stripped-down system.