# Modern CLI tools and utilities { inputs, lib, config, pkgs, ... }: with pkgs; let wrapBin = p: a: b: pkgs.writeShellScriptBin b '' #!/usr/bin/env bash exec ${p}/bin/${a} $@ ''; pythonPackages = pkgs.python311.withPackages (p: with p; [ python-lsp-server pyls-flake8 pyls-isort pyls-spyder # pylsp-mypy pylsqpack black pipenv # nosetests pytest yt-dlp opencv4 west pyelftools ]); in { imports = [ ./modules/yabai/yabai.nix ./modules/skhd/skhd.nix ]; nixpkgs.overlays = [ (final: prev: { maven363 = prev.maven.overrideAttrs (old: rec { pname = "apache-maven"; version = "3.6.3"; src = prev.pkgs.fetchurl { url = "mirror://apache/maven/maven-3/${version}/binaries/${pname}-${version}-bin.tar.gz"; sha256 = "sha256-Jq2R11GzqaUwh676dD9OFqF3QdORWyGc90ESv4ekOMU="; }; }); }) ]; nixpkgs.config.permittedInsecurePackages = [ "hadoop-3.3.1" "libressl-3.4.3" ]; nix = { configureBuildUsers = true; settings = { substituters = [ "https://cache.nixos.org/" "https://cache.iog.io" "https://haskell-language-server.cachix.org" "https://nix-community.cachix.org" ]; trusted-users = ["@admin"]; trusted-public-keys = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ=" "haskell-language-server.cachix.org-1:juFfHrwkOxqIOZShtC4YC1uT1bBcq2RSvC7OMKx0Nz8=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ]; experimental-features = ["ca-derivations" "nix-command" "flakes"]; keep-outputs = true; keep-derivations = true; auto-optimise-store = true; max-jobs = 32; cores = 0; http-connections = 64; }; package = nixUnstable; }; nix.extraOptions = "" + lib.optionalString (pkgs.system == "aarch64-darwin") '' extra-platforms = x86_64-darwin aarch64-darwin ''; environment.systemPackages = with pkgs; [ gitAndTools.gitFull neovim vim ripgrep openvpn aria2 ranger ncdu ffmpeg cachix # hyper-haskell cabal-install ghc #(haskell-language-server.override {supportedGhcVersions = ["943"];}) (aspellWithDicts (ds: with ds; [en en-computers en-science])) rdesktop entr fd fzf texlive.combined.scheme-full imagemagick alejandra (wrapBin alejandra "alejandra --quiet" "nixfmt") # nixfmt # nixpkgs-fmt pythonPackages # commandNotFound shellcheck shfmt graphviz htop exa openconnect yq bat delta gnutar netcat-gnu jetbrains.idea-community pywal kcat leetcode-cli nodejs redis # hadoop direnv nix-direnv pgformatter pgcli sbt scala_2_12 scalafix scalafmt coursier metals protobuf mycli # apktool no darwin docker lima llvmPackages_14.clangUseLLVM headscale kitty alacritty # add packages w3m emacs parinfer-rust sshuttle maven363 openssh (wrapBin openssh "ssh" "fuckyou") gnupg gzip esptool cmake wget patchelf ninja wireguard-tools wireguard-go dfu-programmer dua # progs ]; }