{ 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 communication ungoogled-chromium discord signal-desktop-bin # Development tools (moving vscodium to unstable) git go cargo rustc rust-analyzer rustfmt nodejs_24 python3Full openssh nodePackages."pnpm" openssl ffmpeg vscodium usbutils qmk-udev-rules qmk # Desktop applications bitwarden-desktop vlc streamrip supersonic nextcloud-client zotero prismlauncher lrcget obs-studio slack impression # Gaming luanti duckstation dolphin-emu ryubing # GNOME extensions gnomeExtensions.appindicator ] # Packages from the unstable channel (unstablePkgs) ++ (with unstablePkgs; [ onlyoffice-desktopeditors ]); }