1{
2 lib,
3 fetchFromGitHub,
4 rustPlatform,
5 installShellFiles,
6}:
7
8rustPlatform.buildRustPackage rec {
9 pname = "ferium";
10 version = "4.7.1";
11
12 src = fetchFromGitHub {
13 owner = "gorilla-devs";
14 repo = "ferium";
15 rev = "v${version}";
16 hash = "sha256-eeQjezB6pRdnPADLgDLo8b+bUSP12gfBhFNt/uYCwHU=";
17 };
18
19 cargoHash = "sha256-3YKFKngyLg2ah4GY+LlbPbnVks7/xFawnMf3D1gjmwI=";
20
21 # Disable the GUI file picker so that GTK/XDG dependencies aren't used
22 buildNoDefaultFeatures = true;
23
24 # Requires an internet connection
25 doCheck = false;
26
27 nativeBuildInputs = [ installShellFiles ];
28
29 postInstall = ''
30 for shell in bash fish zsh; do
31 $out/bin/ferium complete $shell > ferium.$shell
32 installShellCompletion ferium.$shell
33 done
34 '';
35
36 meta = with lib; {
37 description = "Fast and multi-source CLI program for managing Minecraft mods and modpacks from Modrinth, CurseForge, and GitHub Releases";
38 mainProgram = "ferium";
39 homepage = "https://github.com/gorilla-devs/ferium";
40 license = licenses.mpl20;
41 maintainers = with maintainers; [
42 leo60228
43 soupglasses
44 ];
45 };
46}