depot/pkgs/by-name/be/beatsabermodmanager/package.nix
Luke Granger-Brown 57725ef3ec Squashed 'third_party/nixpkgs/' content from commit 76612b17c0ce
git-subtree-dir: third_party/nixpkgs
git-subtree-split: 76612b17c0ce71689921ca12d9ffdc9c23ce40b2
2024-11-10 23:59:47 +00:00

68 lines
1.8 KiB
Nix

{
lib,
buildDotnetModule,
fetchFromGitHub,
dotnetCorePackages,
xdg-utils,
}:
buildDotnetModule rec {
pname = "beatsabermodmanager";
version = "0.0.5";
src = fetchFromGitHub {
owner = "affederaffe";
repo = "BeatSaberModManager";
rev = "v${version}";
hash = "sha256-HHWC+MAwJ+AMCuBzSuR7FbW3k+wLri0B9J1DftyfNEU=";
fetchSubmodules = true; # It vendors BSIPA-Linux
};
dotnet-sdk = with dotnetCorePackages; combinePackages [
sdk_7_0
sdk_6_0
];
dotnet-runtime = dotnetCorePackages.runtime_7_0;
projectFile = [ "BeatSaberModManager/BeatSaberModManager.csproj" ];
executables = [ "BeatSaberModManager" ];
nugetDeps = ./deps.nix;
preConfigureNuGet = ''
# This should really be in the upstream nuget.config
dotnet nuget add source https://api.nuget.org/v3/index.json \
-n nuget.org --configfile nuget.config
'';
# Required for OneClick
makeWrapperArgs = [
''--suffix PATH : "${lib.makeBinPath [ xdg-utils ]}"''
];
meta = with lib; {
description = "Yet another mod installer for Beat Saber, heavily inspired by ModAssistant";
mainProgram = "BeatSaberModManager";
homepage = "https://github.com/affederaffe/BeatSaberModManager";
longDescription = ''
BeatSaberModManager is yet another mod installer for Beat Saber, heavily inspired by ModAssistant
It strives to look more visually appealing and support both Windows and Linux, while still being as feature-rich as ModAssistant.
Features
- Windows and Linux support
- Dependency resolution
- Installed mod detection
- Mod uninstallation
- Theming support
- OneClick support for BeatSaver, ModelSaber and Playlists
'';
license = licenses.mit;
maintainers = with maintainers; [ atemu ];
platforms = with platforms; linux;
};
}