mirror of
https://github.com/Nexoniarz/nexoniarz-config-nixos.git
synced 2026-11-03 04:24:27 +00:00
Add RTL-SDR support; switch to Limine + SDDM; drop Hyprland-era leftovers
RTL-SDR Blog V4. The V4 swapped the R820T2 tuner for an R828D behind a built-in HF upconverter, so it needs the rtlsdrblog fork of librtlsdr -- the stock Osmocom one reports no supported devices. pkgs.rtl-sdr on this channel already is that fork (rtl-sdr-blog 1.3.5), so hardware.rtl-sdr's default package is correct as-is. That also blacklists the DVB-T drivers that otherwise grab the dongle on plug-in, and ships udev rules handing it to plugdev at 0660 -- hence plugdev in the user's groups, or every SDR app needs root. Apps: SDR++ and rtl_433; the rtl_* CLI tools come with the driver. Both SDR apps are overridden to drop hardware we do not own. SDR++ and rtl_433 default to supporting every radio ever made, which pulled in UHD (1.4 GB of USRP firmware), BladeRF and LimeSuite. gqrx was the original choice but reaches UHD through gr-osmosdr's gr-uhd feature; SDR++ uses no GNU Radio at all. Per-package overrides rather than a global overlay, so nothing else is affected. Bootloader: systemd-boot -> Limine, themed to match the Gruvbox icon theme. Limine installs to its own EFI directory and adds its own NVRAM entry, so systemd-boot stays on the ESP as a firmware-menu fallback. Display manager: lightdm -> SDDM with wayland.enable. Budgie in this channel ships only a Wayland session (labwc) and was already running as one; lightdm just handles that badly. SDDM's greeter runs on weston, not kwin, so no KDE compositor comes along. Qt defaults over Budgie's GTK/MATE apps. The Budgie module force-enables gnome-terminal and installs nemo, eom, pluma, atril, engrampa, mate-calc and mate-system-monitor; environment.budgie.excludePackages drops all of them in favour of konsole, dolphin, gwenview, kate, okular, ark, kcalc and plasma-systemmonitor. default-apps.nix rewritten to match: 113 associations, video to vlc, audio to elisa, text/code to kate, and /etc/xdg/xdg-terminals.list pointing at konsole. Fixes a real bug there -- inode/directory was mapped to gwenview, so folders opened in the image viewer. Hyprland-era leftovers removed. system-telemetry and weather-fetch fed Quickshell panels that no longer exist; brightness-ctl and hotspot-start lost their keybinds. jq went with weather-fetch. Also dropped gnome-screenshot, playerctl and imv. vault-toggle and strip-metadata stay -- they never depended on Hyprland. Comments trimmed throughout: deleted anything restating the code, kept the ones recording a why you cannot recover by reading it (systemd.gpt_auto, disable_ertm, ptrace_scope, the stable ethernet MAC, the mimeapps.list parser gotcha). system.nix went 225 -> 166 lines. README rewritten -- it still described Hyprland, Quickshell and Kitty. Screenshot dropped.
This commit is contained in:
parent
d332ed2ef6
commit
33bf94bd4c
14 changed files with 177 additions and 396 deletions
|
|
@ -1,38 +1,50 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
# --- Budgie: X11 desktop environment, lightdm login manager ---
|
||||
# Budgie ships only a Wayland session here (labwc); xserver stays on for
|
||||
# Xwayland and for the xkb layout below.
|
||||
services.xserver.enable = true;
|
||||
services.xserver.displayManager.lightdm.enable = true;
|
||||
services.desktopManager.budgie.enable = true;
|
||||
|
||||
# SDDM replaces lightdm: Qt, and it actually launches Wayland sessions.
|
||||
# Its own greeter runs on weston, not kwin, so no KDE compositor tags along.
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
|
||||
security.polkit.enable = true;
|
||||
|
||||
# Keyboard layout for console/X11/lightdm
|
||||
services.xserver.xkb = {
|
||||
layout = "pl";
|
||||
variant = "";
|
||||
};
|
||||
|
||||
# Thumbnails + trash/volume mount integration for Dolphin and Budgie's
|
||||
# default Nemo file manager alike.
|
||||
services.tumbler.enable = true;
|
||||
services.gvfs.enable = true;
|
||||
|
||||
# Drop the xterm fallback terminal xserver.nix installs unconditionally —
|
||||
# Konsole is the real terminal here.
|
||||
# xserver.nix installs xterm unconditionally; Konsole is the terminal here.
|
||||
services.xserver.excludePackages = [ pkgs.xterm ];
|
||||
|
||||
# GTK/Qt themselves stay at their stock defaults (no forced dark mode, no
|
||||
# custom CSS) — only the icon and cursor theme are picked explicitly, via
|
||||
# Budgie's own GSettings-override hook rather than a custom script.
|
||||
# (extraGSettingsOverridePackages is for packages that ship their own
|
||||
# gsettings-schema overrides, e.g. plugins — not theme packages, which
|
||||
# just need to be on the system path for their icons/cursors to resolve.)
|
||||
# Budgie's module installs GTK/MATE apps that duplicate the Qt ones in
|
||||
# apps.nix. Excluding gnome-terminal also flips programs.gnome-terminal.enable
|
||||
# off — the module gates that on this same list.
|
||||
environment.budgie.excludePackages = with pkgs; [
|
||||
nemo # -> dolphin
|
||||
gnome-terminal # -> konsole
|
||||
eom # -> gwenview
|
||||
pluma # -> kate
|
||||
atril # -> okular
|
||||
engrampa # -> ark
|
||||
mate-calc # -> kcalc
|
||||
mate-system-monitor # -> plasma-systemmonitor
|
||||
];
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.gruvbox-plus-icons
|
||||
pkgs.bibata-cursors
|
||||
];
|
||||
|
||||
services.desktopManager.budgie.extraGSettingsOverrides = ''
|
||||
[org.gnome.desktop.interface]
|
||||
icon-theme='Gruvbox-Plus-Dark'
|
||||
|
|
|
|||
Loading…
Reference in a new issue