diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index d36a416b4dd5..b495525479fb 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -12544,6 +12544,12 @@ githubId = 3967312; name = "Jocelyn Thode"; }; + jocimsus = { + email = "joe.susatiyo@gmail.com"; + github = "JocimSus"; + githubId = 123136424; + name = "Joachim Susatiyo"; + }; joedevivo = { github = "joedevivo"; githubId = 55951; diff --git a/pkgs/by-name/fi/filebrowser-quantum/package.nix b/pkgs/by-name/fi/filebrowser-quantum/package.nix new file mode 100644 index 000000000000..df9cef0c6285 --- /dev/null +++ b/pkgs/by-name/fi/filebrowser-quantum/package.nix @@ -0,0 +1,79 @@ +{ + lib, + fetchFromGitHub, + buildGoModule, + buildNpmPackage, +}: + +let + version = "1.1.0-stable"; + + src = fetchFromGitHub { + owner = "gtsteffaniak"; + repo = "filebrowser"; + tag = "v${version}"; + hash = "sha256-S3MtqIqmFYDY053HX8yYGxHc6ev0Y8eXbe24TL8PtYQ="; + }; + + frontend = buildNpmPackage { + pname = "filebrowser-quantum-frontend"; + inherit version src; + + sourceRoot = "${src.name}/frontend"; + npmDepsHash = "sha256-pJR5m1XrqeHwOADWMnFDtHivaKCBqqdG2O6fWql7ugA="; + + buildPhase = '' + runHook preBuild + + npm run build:docker + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out + cp -r dist/* $out + + runHook postInstall + ''; + }; + +in +buildGoModule { + pname = "filebrowser-quantum"; + inherit version src; + + sourceRoot = "${src.name}/backend"; + + vendorHash = "sha256-t4cREfkj+z+EvgXjzqYc8xs0jhTMUZMjcHxkkuuLpZs="; + + preBuild = '' + mkdir -p http/embed + cp -r ${frontend}/* http/embed/ + ''; + + postInstall = '' + mv $out/bin/backend $out/bin/filebrowser-quantum + ''; + + ldflags = [ + "-w" + "-s" + "-X github.com/gtsteffaniak/filebrowser/backend/version.CommitSHA=testingCommit" + "-X github.com/gtsteffaniak/filebrowser/backend/version.Version=testing" + ]; + + meta = { + description = "Access and manage your files from the web"; + homepage = "https://github.com/gtsteffaniak/filebrowser"; + changelog = "https://github.com/gtsteffaniak/filebrowser/blob/v${version}/CHANGELOG.md"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ + jocimsus + denperidge + ]; + mainProgram = "filebrowser-quantum"; + }; +}