Files
dotfiles/nix-shared/system/essential.nix

108 lines
2.0 KiB
Nix
Raw Normal View History

{
pkgs,
lib,
inputs,
...
}: let
system = pkgs.stdenv.hostPlatform.system;
inputPackageOrNull = inputName: packageName: let
input = inputs.${inputName} or null;
packages = if input == null then null else input.packages or null;
systemPackages = if packages == null then null else packages.${system} or null;
in
if systemPackages == null then null else systemPackages.${packageName} or null;
git-blame-rank = inputs.git-blame-rank.packages.${system}.default;
coquiTtsStreamer = inputPackageOrNull "coqui-tts-streamer" "default";
keepbook = inputs.keepbook.packages.${system}.keepbook.overrideAttrs (_: {
# Upstream checks currently depend on TS artifacts that are not built in Nix.
doCheck = false;
});
2023-06-28 22:27:09 -06:00
commonPkgs = lib.filter (pkg: lib.meta.availableOn pkgs.stdenv.hostPlatform pkg) ((with pkgs; [
2023-06-18 00:40:15 -06:00
automake
2022-09-27 09:38:29 -06:00
bazel
bento4
2023-06-18 00:40:15 -06:00
bind
2021-07-10 15:21:29 -06:00
binutils
2023-07-28 13:30:05 -06:00
cachix
bubblewrap
2023-06-18 00:40:15 -06:00
cmake
2026-04-20 12:58:55 -07:00
dex
2023-06-18 00:40:15 -06:00
direnv
fd
2023-12-22 22:13:14 -07:00
ffmpeg
2023-06-18 00:40:15 -06:00
file
2021-07-13 03:37:03 -06:00
gawk
2023-06-18 00:40:15 -06:00
gcc
2025-08-14 01:39:38 -06:00
gh
2024-03-01 00:58:37 -07:00
git-fame
git-blame-rank
git-lfs
git-sync
git
gnumake
home-manager
2021-07-11 13:34:38 -06:00
htop
ispell
jq
2024-03-15 01:32:03 +00:00
just
keepbook
lsof
2023-06-29 13:37:34 -06:00
magic-wormhole-rs
2023-05-14 15:15:10 -06:00
ncdu
fastfetch
2023-12-21 16:08:34 -07:00
neovim
2023-05-14 15:15:10 -06:00
nix-index
nix-search-cli
2021-07-19 19:38:04 -06:00
pass
patchelf
pstree
2022-09-27 09:38:29 -06:00
rclone
2021-07-10 15:21:29 -06:00
ripgrep
2021-07-11 22:55:55 +00:00
silver-searcher
skim
2021-07-10 15:21:29 -06:00
tmux
2026-04-24 15:08:19 -07:00
zellij
unzip
2021-07-10 15:21:29 -06:00
wget
2024-12-12 01:01:40 -07:00
xkcdpass
2021-07-10 15:22:38 -06:00
yubikey-manager
])
++ lib.optionals (coquiTtsStreamer != null) [coquiTtsStreamer]
++ lib.optionals (builtins.hasAttr "git-sync-rs" pkgs) [pkgs.git-sync-rs]);
linuxOnly = with pkgs; [
dex
dpkg
efibootmgr
emacs-auto
gparted
inotify-tools
iotop
lshw
mesa-demos
pciutils
pulseaudio
python-with-my-packages
runc
sshfs
sysz
gdb
gitFull
udiskie
usbutils
tzupdate
];
darwinOnly = with pkgs; [
2021-07-10 15:21:29 -06:00
];
in {
nixpkgs.config.allowBroken = true;
environment.systemPackages =
commonPkgs
++ lib.optionals pkgs.stdenv.isLinux linuxOnly
++ lib.optionals pkgs.stdenv.isDarwin darwinOnly;
2021-07-10 15:21:29 -06:00
}