nixpkgs/pkgs/games/ferium/default.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

56 lines
1.3 KiB
Nix
Raw Permalink Normal View History

2024-04-09 11:00:18 +00:00
{
lib,
stdenv,
fetchFromGitHub,
rustPlatform,
Security,
SystemConfiguration,
installShellFiles,
}:
2022-05-15 21:57:03 +00:00
rustPlatform.buildRustPackage rec {
pname = "ferium";
2024-09-17 12:59:28 +00:00
version = "4.7.1";
2022-05-15 21:57:03 +00:00
src = fetchFromGitHub {
owner = "gorilla-devs";
repo = pname;
rev = "v${version}";
2024-09-17 12:59:28 +00:00
hash = "sha256-eeQjezB6pRdnPADLgDLo8b+bUSP12gfBhFNt/uYCwHU=";
2022-05-15 21:57:03 +00:00
};
2024-04-09 11:00:18 +00:00
buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
Security
SystemConfiguration
];
2022-05-15 21:57:03 +00:00
treewide: migrate to fetchCargoVendor, batch 2 Cargo 1.84.0 seems to have changed the output format of cargo vendor again, once again invalidating fetchCargoTarball FOD hashes. It's time to fix this once and for all, switching across the board to fetchCargoVendor, which is not dependent on cargo vendor's output format. It should be possible to reproduce this diff. To generate it, I first ran: xargs sed -i 's/^\(. *\)\(cargoHash =\)/\1useFetchCargoVendor = true;\n\1cargoHash =/' The following manually identified list of files were given as standard input: pkgs/applications/audio/listenbrainz-mpd/default.nix pkgs/applications/audio/minidsp/default.nix pkgs/applications/audio/muso/default.nix pkgs/applications/audio/parrot/default.nix pkgs/applications/blockchains/electrs/default.nix pkgs/applications/blockchains/snarkos/default.nix pkgs/applications/blockchains/teos/default.nix pkgs/applications/blockchains/zcash/default.nix pkgs/applications/display-managers/greetd/default.nix pkgs/applications/display-managers/greetd/regreet.nix pkgs/applications/display-managers/greetd/tuigreet.nix pkgs/applications/display-managers/greetd/wlgreet.nix pkgs/applications/editors/emacs/elisp-packages/manual-packages/lspce/module.nix pkgs/applications/editors/neovim/gnvim/default.nix pkgs/applications/editors/vim/plugins/non-generated/LanguageClient-neovim/default.nix pkgs/applications/editors/vim/plugins/non-generated/avante-nvim/default.nix pkgs/applications/editors/vim/plugins/non-generated/codesnap-nvim/default.nix pkgs/applications/editors/vim/plugins/non-generated/cord-nvim/default.nix pkgs/applications/editors/vim/plugins/non-generated/nvim-spectre/default.nix pkgs/applications/editors/vim/plugins/non-generated/sg-nvim/default.nix pkgs/applications/editors/vim/plugins/non-generated/sniprun/default.nix pkgs/applications/editors/vim/plugins/non-generated/vim-markdown-composer/default.nix pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/adapter.nix pkgs/applications/editors/zee/default.nix pkgs/applications/gis/whitebox-tools/default.nix pkgs/applications/graphics/emulsion/default.nix pkgs/applications/graphics/menyoki/default.nix pkgs/applications/misc/binocle/default.nix pkgs/applications/misc/cobalt/default.nix pkgs/applications/misc/eureka-ideas/default.nix pkgs/applications/misc/inherd-quake/default.nix pkgs/applications/misc/inlyne/default.nix pkgs/applications/misc/klipper-estimator/default.nix pkgs/applications/misc/mdzk/default.nix pkgs/applications/misc/pastel/default.nix pkgs/applications/misc/pomodoro/default.nix pkgs/applications/misc/pueue/default.nix pkgs/applications/misc/reddsaver/default.nix pkgs/applications/misc/stork/default.nix pkgs/applications/misc/terminal-typeracer/default.nix pkgs/applications/networking/browsers/asuka/default.nix pkgs/applications/networking/feedreaders/tuifeed/default.nix pkgs/applications/networking/geph/default.nix pkgs/applications/networking/gopher/phetch/default.nix pkgs/applications/networking/instant-messengers/twitch-tui/default.nix pkgs/applications/networking/irc/tiny/default.nix pkgs/applications/networking/mhost/default.nix pkgs/applications/networking/mujmap/default.nix pkgs/applications/networking/p2p/synapse-bt/default.nix pkgs/applications/office/activitywatch/default.nix pkgs/applications/science/machine-learning/finalfrontier/default.nix pkgs/applications/science/machine-learning/finalfusion-utils/default.nix pkgs/applications/science/misc/rink/default.nix pkgs/applications/system/coolercontrol/coolercontrol-gui.nix pkgs/applications/version-management/gfold/default.nix pkgs/applications/version-management/git-absorb/default.nix pkgs/applications/version-management/git-branchless/default.nix pkgs/applications/version-management/git-cliff/default.nix pkgs/applications/version-management/git-credential-keepassxc/default.nix pkgs/applications/version-management/git-gone/default.nix pkgs/applications/version-management/git-quickfix/default.nix pkgs/applications/version-management/git-stack/default.nix pkgs/applications/version-management/git-trim/default.nix pkgs/applications/version-management/git-workspace/default.nix pkgs/applications/version-management/gitoxide/default.nix pkgs/applications/version-management/lucky-commit/default.nix pkgs/applications/virtualization/crosvm/default.nix pkgs/applications/virtualization/rust-hypervisor-firmware/default.nix pkgs/applications/window-managers/dwm/dwm-status.nix pkgs/applications/window-managers/i3/auto-layout.nix pkgs/applications/window-managers/i3/cycle-focus.nix pkgs/applications/window-managers/i3/i3-ratiosplit.nix pkgs/applications/window-managers/i3/status-rust.nix pkgs/applications/window-managers/i3/wmfocus.nix pkgs/applications/window-managers/i3/wsr.nix pkgs/build-support/mitm-cache/default.nix pkgs/development/compilers/gleam/default.nix pkgs/development/compilers/kind2/default.nix pkgs/development/embedded/fpga/ecpdap/default.nix pkgs/development/interpreters/evcxr/default.nix pkgs/development/interpreters/wasmer/default.nix pkgs/development/interpreters/wasmtime/default.nix pkgs/development/tools/analysis/dotenv-linter/default.nix pkgs/development/tools/build-managers/fac/default.nix pkgs/development/tools/build-managers/moon/default.nix pkgs/development/tools/cocogitto/default.nix pkgs/development/tools/continuous-integration/buildkite-test-collector-rust/default.nix pkgs/development/tools/database/dynein/default.nix pkgs/development/tools/database/indradb/default.nix pkgs/development/tools/database/surrealdb-migrations/default.nix pkgs/development/tools/dump_syms/default.nix pkgs/development/tools/fnm/default.nix pkgs/development/tools/geckodriver/default.nix pkgs/development/tools/git-ps-rs/default.nix pkgs/development/tools/gptcommit/default.nix pkgs/development/tools/graphql-client/default.nix pkgs/development/tools/hors/default.nix pkgs/development/tools/htmlq/default.nix pkgs/development/tools/jless/default.nix pkgs/development/tools/kdash/default.nix pkgs/development/tools/kubie/default.nix pkgs/development/tools/misc/dura/default.nix pkgs/development/tools/misc/pwninit/default.nix pkgs/development/tools/misc/texlab/default.nix pkgs/development/tools/misc/tokei/default.nix pkgs/development/tools/pactorio/default.nix pkgs/development/tools/parsing/tree-sitter/default.nix pkgs/development/tools/perseus-cli/default.nix pkgs/development/tools/py-spy/default.nix pkgs/development/tools/rbspy/default.nix pkgs/development/tools/remodel/default.nix pkgs/development/tools/rover/default.nix pkgs/development/tools/rover/update.sh pkgs/development/tools/rubyfmt/default.nix pkgs/development/tools/rust/bindgen/unwrapped.nix pkgs/development/tools/rust/cargo-audit/default.nix pkgs/development/tools/rust/cargo-bazel/default.nix pkgs/development/tools/rust/cargo-c/default.nix pkgs/development/tools/rust/cargo-cache/default.nix pkgs/development/tools/rust/cargo-clone/default.nix pkgs/development/tools/rust/cargo-codspeed/default.nix pkgs/development/tools/rust/cargo-crev/default.nix pkgs/development/tools/rust/cargo-cyclonedx/default.nix pkgs/development/tools/rust/cargo-edit/default.nix pkgs/development/tools/rust/cargo-flamegraph/default.nix pkgs/development/tools/rust/cargo-fund/default.nix pkgs/development/tools/rust/cargo-hf2/default.nix pkgs/development/tools/rust/cargo-lambda/default.nix pkgs/development/tools/rust/cargo-ndk/default.nix pkgs/development/tools/rust/cargo-outdated/default.nix pkgs/development/tools/rust/cargo-udeps/default.nix pkgs/development/tools/rust/cargo-vet/default.nix pkgs/development/tools/rust/cargo-watch/default.nix pkgs/development/tools/rust/cargo-whatfeatures/default.nix pkgs/development/tools/rust/cargo-zigbuild/default.nix pkgs/development/tools/rust/duckscript/default.nix pkgs/development/tools/rust/rustup/default.nix pkgs/development/tools/rust/sqlx-cli/default.nix pkgs/development/tools/sentry-cli/default.nix pkgs/development/tools/spr/default.nix pkgs/development/tools/viceroy/default.nix pkgs/development/tools/wrangler_1/default.nix pkgs/games/blightmud/default.nix pkgs/games/ferium/default.nix pkgs/kde/gear/akonadi-search/default.nix pkgs/kde/gear/angelfish/default.nix pkgs/kde/gear/kdepim-addons/default.nix pkgs/misc/cliscord/default.nix pkgs/misc/t-rec/default.nix pkgs/misc/wiki-tui/default.nix pkgs/os-specific/linux/scx/scx_rustscheds.nix pkgs/servers/bindle/default.nix pkgs/servers/dns/doh-proxy-rust/default.nix pkgs/servers/gemini/stargazer/default.nix pkgs/servers/geospatial/martin/default.nix pkgs/servers/krill/default.nix pkgs/servers/monitoring/laurel/default.nix pkgs/servers/monitoring/prometheus/wireguard-exporter.nix pkgs/servers/oxigraph/default.nix pkgs/servers/piping-server-rust/default.nix pkgs/servers/rtrtr/default.nix pkgs/servers/sql/postgresql/ext/pgvecto-rs/default.nix pkgs/servers/sql/postgresql/ext/pgx_ulid.nix pkgs/servers/sql/postgresql/ext/timescaledb_toolkit.nix pkgs/shells/nushell/default.nix pkgs/shells/nushell/plugins/dbus.nix pkgs/shells/nushell/plugins/formats.nix pkgs/shells/nushell/plugins/gstat.nix pkgs/shells/nushell/plugins/highlight.nix pkgs/shells/nushell/plugins/net.nix pkgs/shells/nushell/plugins/polars.nix pkgs/shells/nushell/plugins/query.nix pkgs/shells/nushell/plugins/skim.nix pkgs/shells/nushell/plugins/units.nix pkgs/tools/X11/xidlehook/default.nix pkgs/tools/admin/coldsnap/default.nix pkgs/tools/admin/procs/default.nix pkgs/tools/backup/awsbck/default.nix pkgs/tools/backup/bupstash/default.nix pkgs/tools/backup/monolith/default.nix pkgs/tools/backup/rdedup/default.nix pkgs/tools/misc/aoc-cli/default.nix pkgs/tools/misc/apkeep/default.nix pkgs/tools/misc/didyoumean/default.nix pkgs/tools/misc/dijo/default.nix pkgs/tools/misc/diskus/default.nix pkgs/tools/misc/eludris/default.nix pkgs/tools/misc/fclones/default.nix pkgs/tools/misc/fclones/gui.nix pkgs/tools/misc/ffsend/default.nix pkgs/tools/misc/flowgger/default.nix pkgs/tools/misc/gh-cal/default.nix pkgs/tools/misc/grex/default.nix pkgs/tools/misc/hiksink/default.nix pkgs/tools/misc/hyperfine/default.nix pkgs/tools/misc/iay/default.nix pkgs/tools/misc/jsonwatch/default.nix pkgs/tools/misc/killport/default.nix pkgs/tools/misc/lighthouse-steamvr/default.nix pkgs/tools/misc/lorri/default.nix pkgs/tools/misc/nvfancontrol/default.nix pkgs/tools/misc/octofetch/default.nix pkgs/tools/misc/owofetch/default.nix pkgs/tools/misc/rust-motd/default.nix pkgs/tools/misc/shadowenv/default.nix pkgs/tools/misc/sheldon/default.nix pkgs/tools/misc/starship/default.nix pkgs/tools/misc/synth/default.nix pkgs/tools/misc/tab-rs/default.nix pkgs/tools/misc/tmux-sessionizer/default.nix pkgs/tools/misc/toastify/default.nix pkgs/tools/misc/topgrade/default.nix pkgs/tools/misc/tremor-rs/default.nix pkgs/tools/misc/vrc-get/default.nix pkgs/tools/misc/wagyu/default.nix pkgs/tools/misc/watchexec/default.nix pkgs/tools/networking/bore-cli/default.nix pkgs/tools/networking/bore/default.nix pkgs/tools/networking/cocom/default.nix pkgs/tools/networking/drill/default.nix pkgs/tools/networking/fast-ssh/default.nix pkgs/tools/networking/ifwifi/default.nix pkgs/tools/networking/innernet/default.nix pkgs/tools/networking/lychee/default.nix pkgs/tools/networking/mozwire/default.nix pkgs/tools/networking/ockam/default.nix pkgs/tools/networking/onetun/default.nix pkgs/tools/networking/rosenpass/default.nix pkgs/tools/networking/s3rs/default.nix pkgs/tools/networking/shadowsocks-rust/default.nix pkgs/tools/networking/suckit/default.nix pkgs/tools/networking/wg-netmanager/default.nix pkgs/tools/nix/nixci/default.nix pkgs/tools/package-management/nix-du/default.nix pkgs/tools/package-management/nix-template/default.nix pkgs/tools/security/age-plugin-ledger/default.nix pkgs/tools/security/feroxbuster/default.nix pkgs/tools/security/genpass/default.nix pkgs/tools/security/gpg-tui/default.nix pkgs/tools/security/kbs2/default.nix pkgs/tools/security/lethe/default.nix pkgs/tools/security/rblake2sum/default.nix pkgs/tools/security/rblake3sum/default.nix pkgs/tools/security/rucredstash/default.nix pkgs/tools/security/rustscan/default.nix pkgs/tools/security/solo2-cli/default.nix pkgs/tools/text/amber/default.nix pkgs/tools/text/chars/default.nix pkgs/tools/text/coloursum/default.nix pkgs/tools/text/diffr/default.nix pkgs/tools/text/fastmod/default.nix pkgs/tools/text/igrep/default.nix pkgs/tools/text/languagetool-rust/default.nix pkgs/tools/text/mdbook-admonish/default.nix pkgs/tools/text/mdbook-epub/default.nix pkgs/tools/text/mdbook-footnote/default.nix pkgs/tools/text/mdbook-katex/default.nix pkgs/tools/text/mdbook-mermaid/default.nix pkgs/tools/text/mdbook-pdf/default.nix pkgs/tools/text/mdbook-plantuml/default.nix pkgs/tools/text/mdbook-toc/default.nix pkgs/tools/text/mdcat/default.nix pkgs/tools/text/pinyin-tool/default.nix pkgs/tools/text/ruplacer/default.nix pkgs/tools/typesetting/tex/texpresso/tectonic.nix pkgs/tools/video/yaydl/default.nix Then I ran: xargs -n 1 nix-update --version=skip With this list of attributes corresponding to the changed files given as standard input: listenbrainz-mpd minidsp muso parrot electrs snarkos teos teos-watchtower-plugin zcash greetd.greetd greetd.regreet greetd.tuigreet greetd.wlgreet emacsPackages.lspce.lspce-module gnvim.unwrapped vimPlugins.LanguageClient-neovim.LanguageClient-neovim-bin vimPlugins.avante-nvim.avante-nvim-lib vimPlugins.codesnap-nvim.codesnap-lib vimPlugins.cord-nvim.cord-nvim-rust vimPlugins.nvim-spectre.spectre_oxi vimPlugins.sg-nvim.sg-nvim-rust vimPlugins.sniprun.sniprun-bin vimPlugins.vim-markdown-composer.vim-markdown-composer-bin vscode-extensions.vadimcn.vscode-lldb.adapter zee whitebox-tools emulsion menyoki binocle cobalt eureka-ideas inherd-quake inlyne klipper-estimator mdzk pastel pomodoro pueue reddsaver stork terminal-typeracer asuka tuifeed geph.cli phetch twitch-tui tiny mhost mujmap synapse-bt aw-server-rust finalfrontier finalfusion-utils rink coolercontrol.coolercontrol-gui gfold git-absorb git-branchless git-cliff git-credential-keepassxc git-gone git-quickfix git-stack git-trim git-workspace gitoxide lucky-commit crosvm rust-hypervisor-firmware dwm-status i3status-rust i3-auto-layout i3-cycle-focus i3-ratiosplit wmfocus i3wsr mitm-cache gleam kind2 ecpdap evcxr wasmer wasmtime dotenv-linter fac-build moon cocogitto buildkite-test-collector-rust dynein indradb-client indradb-server surrealdb-migrations dump_syms fnm geckodriver git-ps-rs gptcommit graphql-client hors htmlq jless kdash kubie dura pwninit texlab tokei pactorio tree-sitter perseus-cli py-spy rbspy remodel rover rover rubyfmt rust-bindgen-unwrapped cargo-audit cargo-bazel cargo-c cargo-cache cargo-clone cargo-codspeed cargo-crev cargo-cyclonedx cargo-edit cargo-flamegraph cargo-fund cargo-hf2 cargo-lambda cargo-ndk cargo-outdated cargo-udeps cargo-vet cargo-watch cargo-whatfeatures cargo-zigbuild duckscript rustup sqlx-cli sentry-cli spr viceroy wrangler_1 blightmud ferium kdePackages.akonadi-search kdePackages.angelfish kdePackages.kdepim-addons cliscord t-rec wiki-tui scx.rustscheds bindle doh-proxy-rust stargazer martin krill laurel prometheus-wireguard-exporter oxigraph piping-server-rust rtrtr postgresql16Packages.pgvecto-rs postgresql16Packages.pgx_ulid postgresql16Packages.timescaledb_toolkit nushell nushellPlugins.dbus nushellPlugins.formats nushellPlugins.gstat nushellPlugins.highlight nushellPlugins.net nushellPlugins.polars nushellPlugins.query nushellPlugins.skim nushellPlugins.units xidlehook coldsnap procs awsbck bupstash monolith rdedup aoc-cli apkeep didyoumean dijo diskus eludris fclones fclones-gui ffsend flowgger gh-cal grex hiksink hyperfine iay jsonwatch killport lighthouse-steamvr lorri nvfancontrol octofetch owofetch rust-motd shadowenv sheldon starship synth tab-rs tmux-sessionizer toastify topgrade tremor-rs vrc-get wagyu watchexec bore-cli bore cocom drill fast-ssh ifwifi innernet lychee mozwire ockam onetun rosenpass s3rs shadowsocks-rust suckit wg-netmanager nixci nix-du nix-template age-plugin-ledger feroxbuster genpass gpg-tui kbs2 lethe rblake2sum rblake3sum rucredstash rustscan solo2-cli amber chars coloursum diffr fastmod igrep languagetool-rust mdbook-admonish mdbook-epub mdbook-footnote mdbook-katex mdbook-mermaid mdbook-pdf mdbook-plantuml mdbook-toc mdcat pinyin-tool ruplacer texpresso.tectonic yaydl The list of files for the first command and the list of attributes for the second command are in the same order, so it should be easy enough to check their correspondence by putting them side by side. It might be possible to parallelize the nix-update operations using xargs' -P option. I haven't tested it.
2025-01-23 11:15:44 +00:00
useFetchCargoVendor = true;
cargoHash = "sha256-3YKFKngyLg2ah4GY+LlbPbnVks7/xFawnMf3D1gjmwI=";
2022-05-15 21:57:03 +00:00
# Disable the GUI file picker so that GTK/XDG dependencies aren't used
buildNoDefaultFeatures = true;
2022-05-15 21:57:03 +00:00
# Requires an internet connection
doCheck = false;
2022-05-15 21:57:03 +00:00
2022-07-20 23:01:17 +00:00
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
for shell in bash fish zsh; do
$out/bin/ferium complete $shell > ferium.$shell
installShellCompletion ferium.$shell
done
'';
2022-05-15 21:57:03 +00:00
meta = with lib; {
description = "Fast and multi-source CLI program for managing Minecraft mods and modpacks from Modrinth, CurseForge, and GitHub Releases";
mainProgram = "ferium";
homepage = "https://github.com/gorilla-devs/ferium";
2022-05-15 21:57:03 +00:00
license = licenses.mpl20;
maintainers = with maintainers; [
leo60228
soupglasses
];
2022-05-15 21:57:03 +00:00
};
}