42 lines
1.1 KiB
Nix
42 lines
1.1 KiB
Nix
{ config, pkgs, lib, ...}:
|
|
|
|
let
|
|
lAddress = "127.0.0.1";
|
|
lPort = 9081;
|
|
nexusPkgs = pkgs.nexus.overrideAttrs (oldAttrs: rec {
|
|
pname = "nexus";
|
|
version = "3.53.1-02";
|
|
sourceRoot = "${pname}-${version}";
|
|
src = pkgs.fetchurl {
|
|
url = "https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-${version}-unix.tar.gz";
|
|
sha256 = "sha256-+jbGdESMwAfJas32i+BKGBQoPFqioawqT6JknnyNANQ=";
|
|
};
|
|
installPhase = ''
|
|
runHook preInstall
|
|
mkdir -p $out
|
|
cp -rfv * .install4j $out
|
|
rm -fv $out/bin/nexus.bat
|
|
wrapProgram $out/bin/nexus \
|
|
--set JAVA_HOME ${pkgs.jre8_headless} \
|
|
--set ALTERNATIVE_NAME "nexus" \
|
|
--prefix PATH "${lib.makeBinPath [ pkgs.gawk ]}"
|
|
runHook postInstall
|
|
'';
|
|
});
|
|
|
|
in
|
|
{
|
|
services.nginx.virtualHosts."nexus.stubbe.rocks" = {
|
|
enableACME = true;
|
|
forceSSL = true;
|
|
locations."/".proxyPass = "http://${lAddress}:${toString lPort}";
|
|
};
|
|
|
|
services.nexus= {
|
|
enable = true;
|
|
listenAddress = lAddress;
|
|
listenPort = lPort;
|
|
package = nexusPkgs;
|
|
};
|
|
}
|