{ config, pkgs, ... }: let unstablePkgs = import (builtins.fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz") { config = { allowUnfree = true; }; }; in { # Allow unfree packages for the default (stable) nixpkgs. nixpkgs.config.allowUnfree = true; # System packages environment.systemPackages = # Packages from the stable channel (pkgs) with pkgs; [ # Browsers and comms ungoogled-chromium discord signal-desktop-bin # Development tools git go cargo rustc rust-analyzer rustfmt nodejs_24 python3Full openssh nodePackages."pnpm" openssl ffmpeg vscodium usbutils qmk-udev-rules qmk scanmem # Desktop applications bitwarden-desktop vlc streamrip supersonic nextcloud-client zotero prismlauncher lrcget slack impression ardour bottles # Gaming luanti duckstation dolphin-emu ryubing # GNOME extensions gnomeExtensions.appindicator ] # Unstable packages ++ (with unstablePkgs; [ onlyoffice-desktopeditors ]); }