Welcome Everyone,
I’m newbie to NixOS. Installed it about two weeks ago on metal but played in VM before that flew times.
I slowly coming around with stuff there are things I can’t figure out or find searching on web so I hope you can provide some advise here…
I can’t get Plasma Disk displaying smart status where GSmartControl displays all except NVMe disk
I got smartmontools, gsmartcontrol and libsForQt5.plasma-disks declared as system packages, played with smartd but no luck.
services.smartd.enable = true;
services.smartd.autodetect = true;
services.smartd.notifications.x11 = {
enable = true;
display = ":${toString config.services.xserver.display}";
};
HDDtemp works when run from terminal sudo hddtemp /dev/sda but can’t get smartd working so I can’t use it in conky. Tried to read from it using nc but got bunch of errors as return.
EDIT: Wrong piece copied below:
hardware.sensor.hddtemp = {
enable = true;
drives = [ "/dev/disk/by-path/*" ];
dbEntries = [
"INTEL SSDSC2KB240G8" "190" "C" "INTEL SSDSC2KB240G8"
"CT1000MX500SSD1" "194" "C" "Crucial CT1000MX500SSD1"
"WDC WDS240G2G0A-00JH30" "194" "C" "WDC WDS240G2G0A-00JH30"
];
};
And there is Double Commander… will not open/mount unmounted drive like on any other distro. It gives me “Disk is not available” error when trying to open. I need open the disk from KDE’s system tray or from Gnome Disk Utility.
It also doesn’t displaying majority of file types even when xdg.mime.enable = true;
is enabled.
When run from shell it only complains about Breeze theme missing.
Some of my config files:
configuration.nix:
{ config, pkgs, ... }:
{
# modules imports
imports = [
./modules/common.nix
./modules/games.nix
./modules/printer.nix
];
# network host name
networking.hostName = "asus-pc";
# Enable AMD GPU
boot.initrd.kernelModules = [ "amdgpu" ];
services.xserver.videoDrivers = [ "amdgpu" ];
hardware.opengl.extraPackages = with pkgs; [
rocm-opencl-icd
rocm-opencl-runtime
amdvlk
];
hardware.opengl.extraPackages32 = with pkgs; [
driversi686Linux.amdvlk
];
#hardware.opengl.driSupport = true; # included in common.nix
#hardware.opengl.driSupport32Bit = true; # included in common.nix
# Define disk temperature sentors for hddtemp
hardware.sensor.hddtemp.dbEntries = [
"INTEL SSDSC2KB240G8" "190" "C" "INTEL SSDSC2KB240G8"
"CT1000MX500SSD1" "194" "C" "Crucial CT1000MX500SSD1"
"WDC WDS240G2G0A-00JH30" "194" "C" "WDC WDS240G2G0A-00JH30"
];
}
common.nix:
{ config, pkgs, inputs, ... }:
{
# Import configuration modules
imports =
[ /etc/nixos/hardware-configuration.nix # Include the results of the hardware scan.
./android.nix
./bluetooth.nix
./experimental.nix
./homemgr.nix
./opensnitch.nix
./syncthing.nix
./virtmanager.nix
./zsh.nix
];
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# Automatic Upgrades
system.autoUpgrade = {
enable = false;
allowReboot = false;
};
# Nix options
nix.settings.auto-optimise-store = true;
nix.gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 7d";
};
# Bootloader.
boot.loader = {
systemd-boot.enable = true;
systemd-boot.configurationLimit = 25;
efi.canTouchEfiVariables = true;
timeout = 10;
};
boot.kernelPackages = pkgs.linuxPackages_latest;
boot.plymouth.enable = true;
# Hardware support
hardware.cpu.intel.updateMicrocode = true;
hardware.opengl = {
driSupport = true;
driSupport32Bit = true;
};
# Enable networking
networking = {
networkmanager.enable = true;
enableIPv6 = false;
firewall.enable = true;
firewall.allowedTCPPortRanges = [
{ from = 1714; to = 1764; } # KDE Connect
];
firewall.allowedUDPPortRanges = [
{ from = 1714; to = 1764; } # KDE Connect
];
};
# Set your time zone.
time.timeZone = "Europe/London";
# Select internationalisation properties.
i18n.defaultLocale = "en_GB.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_GB.UTF-8";
LC_IDENTIFICATION = "en_GB.UTF-8";
LC_MEASUREMENT = "en_GB.UTF-8";
LC_MONETARY = "en_GB.UTF-8";
LC_NAME = "en_GB.UTF-8";
LC_NUMERIC = "en_GB.UTF-8";
LC_PAPER = "en_GB.UTF-8";
LC_TELEPHONE = "en_GB.UTF-8";
LC_TIME = "en_GB.UTF-8";
};
# Enable the X11 & Desktop Environments.
services.xserver = {
enable = true;
displayManager.sddm.enable = true;
exportConfiguration = true;
desktopManager.plasma5.enable = true;
desktopManager.plasma5.useQtScaling = true;
desktopManager.mate.enable = true;
};
environment.plasma5.excludePackages = with pkgs; [ libsForQt5.elisa ];
# Configure keymap in X11
services.xserver = {
xkb.layout = "pl,gb";
xkb.variant = "";
xkb.options = "compose:menu, grp:win_space_toggle";
};
# Setting up fonts
fonts.packages = with pkgs; [
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
font-awesome
terminus-nerdfont
terminus_font
];
# Configure console
console = {
packages = with pkgs; [ terminus_font ];
font = "ter-i22b";
keyMap = "us";
};
# Enable sound with pipewire.
sound.enable = false;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
wireplumber.enable = true;
#jack.enable = true;
};
# Define a user account.
users.users.thom = {
isNormalUser = true;
description = "Thom";
extraGroups = [ "networkmanager" "wheel" "disk" "cdrom" ];
packages = with pkgs; [ ];
};
# Enable programs
programs.dconf.enable = true;
programs.git.enable = true;
# List services that you want to enable:
services.dbus.enable = true;
services.fstrim.enable = true;
services.fwupd.enable = true;
services.power-profiles-daemon.enable = true;
services.thermald.enable = true;
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
# Hardware info
clinfo
fwupd
glxinfo
gsmartcontrol
hwinfo
usbutils
pciutils
smartmontools
vulkan-tools
# GUI DE tools
gnome.gnome-disk-utility
kate
kcharselect
libsForQt5.kcalc
libsForQt5.kdeconnect-kde
libsForQt5.plasma-disks
pavucontrol
# Feel and look
papirus-icon-theme
qogir-kde
qogir-theme
qogir-icon-theme
# Conky
conky
hddtemp
jq
lm_sensors
lsb-release
# Internet
akregator
brave
firefox
ktorrent
signal-desktop
thunderbird
tor-browser-bundle-bin
# Media
audacious
ffmpeg
freetube
kid3
mpv
shortwave
strawberry
tidal-hifi
vlc
# Graphics
krita
pinta
# Development
notepadqq
vscodium
# Office
freeoffice
hunspell
joplin-desktop
keepassxc
libreoffice-qt
standardnotes
# Emulators
fsuae
fsuae-launcher
# File Tools
doublecmd
#veracrypt
# Backup, sync
backintime
grsync
#nextcloud-client
# System
appimage-run
home-manager
psmisc
# Shell commands
bat
duf
eza
htop
lsof
mc
ncdu
neofetch
unrar
unzip
p7zip
tldr
wget
# Wine
winetricks
winePackages.fonts
wineWowPackages.stable
# Hardware Support
rivalcfg # mouse lights control software
];
# This value determines the NixOS release
system.stateVersion = "23.11";
}
experimental.nix:
{ config, pkgs, ... }:
{
# Enable Flakes
#nix.settings.experimental-features = [ "nix-command" "flakes" ];
hardware.sensor.hddtemp = {
enable = true;
drives = [ "/dev/disk/by-path/*" ];
};
services.avahi = {
enable = true;
nssmdns = true;
openFirewall = true;
};
services.smartd.enable = true;
services.smartd.autodetect = true;
services.smartd.notifications.x11 = {
enable = true;
display = ":${toString config.services.xserver.display}";
};
# Packages installed
environment.systemPackages = with pkgs; [
alacritty
kitty
# XDG Portals
xdg-desktop-portal
xdg-desktop-portal-gtk
xdg-desktop-portal-kde
xdg-desktop-portal-wlr
xdg-utils
];
# XDG Desktop Portals, XDG MINE
xdg.portal.enable = true;
xdg.portal.wlr.enable = true;
xdg.portal.xdgOpenUsePortal = true;
xdg.portal.extraPortals = with pkgs; [
xdg-desktop-portal-gtk
xdg-desktop-portal-kde
xdg-desktop-portal-wlr
];
xdg.portal.config.common.default = "*";
xdg.mime.enable = true;
# Make Firefox use the native file picker
programs.firefox.preferences.widget.use-xdg-desktop-portal.file-picker = 1;
}