{ lib, osConfig, pkgs, ... }: let userConfig = osConfig.host.users.leyla; hardware = osConfig.host.hardware; in { imports = [ ./vscode.nix ./firefox.nix ]; nixpkgs.config = { allowUnfree = true; }; home = { packages = lib.lists.optionals userConfig.isTerminalUser ( with pkgs; [ # command line tools sox yt-dlp ffmpeg imagemagick ] ) ++ ( lib.lists.optionals userConfig.isDesktopUser ( (with pkgs; [ # helvetica font aileron gnomeExtensions.dash-to-dock # development tools dbeaver-bin bruno proxmark3 ]) ++ ( lib.lists.optionals hardware.directAccess.enable (with pkgs; [ #foss platforms signal-desktop-bin bitwarden ungoogled-chromium libreoffice inkscape gimp krita freecad # cura # kicad-small makemkv onionshare # rhythmbox (lib.mkIf hardware.graphicsAcceleration.enable obs-studio) # wireshark # rpi-imager # fritzing mfoc tor-browser anki pdfarranger calibre qbittorrent # proprietary platforms discord obsidian # steam (lib.mkIf hardware.graphicsAcceleration.enable davinci-resolve) # development tools # androidStudioPackages.canary jetbrains.idea-community qFlipper # system tools protonvpn-gui openvpn noisetorch # hardware management tools (lib.mkIf hardware.piperMouse.enable piper) (lib.mkIf hardware.openRGB.enable openrgb) (lib.mkIf hardware.viaKeyboard.enable via) ]) ) ) ); }; }