diff --git a/net-fs/minio/Manifest b/net-fs/minio/Manifest new file mode 100644 index 0000000..b9b5ff4 --- /dev/null +++ b/net-fs/minio/Manifest @@ -0,0 +1,2 @@ +DIST minio-2025.04.08.15.41.24-vendor.tar.xz 21087640 BLAKE2B 4199e036d52b9e27d94496906973ec72314c2f4aac8e63be0fb27ba532d2169dd41e48e11cc2f2612a1fe92650114cd0dc92f77b76e2fa450cfe90de7153b999 SHA512 fc85799676296046c18a052576214d87271aabd3753be70fc5df05f4d25bef1e87fc2cf69723e931369b6f9353399c09d0a9a4112db93f7b60079fb08b7c0a38 +DIST minio-2025.04.08.15.41.24.tar.gz 23953229 BLAKE2B 7252af5ac20c9b98ac1e63e5538029db9872483e27addc352870f1fabd02ceda7be8111f483e38b7c6251aa9b7367cdaf5f466675fcf30a343ca2d0ad399e7db SHA512 cda9f45ac77ca669bbde8c1a8bb1cd8a6a585f8e0b8fa00b1ee7d95e55a77f2238fb99795224f18a9483d29d6f62c9cb2ed510c1fd2a18ee48635eee2b42827d diff --git a/net-fs/minio/files/minio.default b/net-fs/minio/files/minio.default new file mode 100644 index 0000000..769e019 --- /dev/null +++ b/net-fs/minio/files/minio.default @@ -0,0 +1,4 @@ +MINIO_ACCESS_KEY="minio" +MINIO_VOLUMES="/var/lib/minio" +MINIO_OPTS="-C /etc/minio --address 127.0.0.1:9000" +MINIO_SECRET_KEY="miniostorage" diff --git a/net-fs/minio/files/minio.initd b/net-fs/minio/files/minio.initd new file mode 100644 index 0000000..3e64ba1 --- /dev/null +++ b/net-fs/minio/files/minio.initd @@ -0,0 +1,11 @@ +#!/sbin/openrc-run +# Copyright 2016-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +description="Minio Object Storage Server" +pidfile=${pidfile:-"/run/${SVCNAME}.pid"} +command="/usr/bin/minio" +command_args="${command_args:-server /var/lib/minio}" +command_background="true" +start_stop_daemon_args="--stdout /var/log/${SVCNAME}.log \ + --stderr /var/log/${SVCNAME}.log" diff --git a/net-fs/minio/files/minio.service b/net-fs/minio/files/minio.service new file mode 100644 index 0000000..21ee9f4 --- /dev/null +++ b/net-fs/minio/files/minio.service @@ -0,0 +1,30 @@ +[Unit] +Description=MinIO +Documentation=https://docs.min.io +Wants=network-online.target +After=network-online.target +AssertFileIsExecutable=/usr/bin/minio + +[Service] +User=minio +Group=minio + +EnvironmentFile=/etc/default/minio +ExecStartPre=/bin/sh -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi" + +ExecStart=/usr/bin/minio server $MINIO_OPTS $MINIO_VOLUMES + +# Let systemd restart this service always +Restart=always + +# Specifies the maximum file descriptor number that can be opened by this process +LimitNOFILE=65536 + +# Disable timeout logic and wait until process is stopped +TimeoutStopSec=infinity +SendSIGKILL=no + +[Install] +WantedBy=multi-user.target + +# Built for ${project.name}-${project.version} (${project.name}) diff --git a/net-fs/minio/minio-2025.04.08.15.41.24.ebuild b/net-fs/minio/minio-2025.04.08.15.41.24.ebuild new file mode 100644 index 0000000..cf6acc9 --- /dev/null +++ b/net-fs/minio/minio-2025.04.08.15.41.24.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit go-module + +MY_PV="$(ver_cut 1-3)T$(ver_cut 4-7)Z" +MY_PV=${MY_PV//./-} +YEAR="$(ver_cut 1)" +COMMIT_ID=d0cada583fce88f60cb276ddfb06f5cb16820069 + +DESCRIPTION="An Amazon S3 compatible object storage server" +HOMEPAGE="https://github.com/minio/minio" +SRC_URI="https://github.com/minio/minio/archive/RELEASE.${MY_PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" https://people.znc.in/~dessa/gentoo/${P}-vendor.tar.xz" + +S="${WORKDIR}/${PN}-RELEASE.${MY_PV}" +LICENSE="Apache-2.0 BSD MIT MPL-2.0" +SLOT="0" +KEYWORDS="~amd64" +RESTRICT="test" # bug #927667, fails with network-sandbox + +DEPEND=" + acct-user/minio + acct-group/minio +" + +src_compile() { + # go run buildscripts/gen-ldflags.go + local ldflags="-s -w \ + -X github.com/minio/minio/cmd.Version=${MY_PV} \ + -X github.com/minio/minio/cmd.CopyrightYear=${YEAR} \ + -X github.com/minio/minio/cmd.ReleaseTag=RELEASE.${MY_PV} \ + -X github.com/minio/minio/cmd.CommitID=${COMMIT_ID}" + ego build -trimpath --ldflags "${ldflags}" +} + +src_install() { + dobin minio + + insinto /etc/default + doins "${FILESDIR}"/minio.default + + dodoc README.md CONTRIBUTING.md + + systemd_dounit "${FILESDIR}"/minio.service + newinitd "${FILESDIR}"/minio.initd minio + + keepdir /var/{lib,log}/minio + fowners minio:minio /var/{lib,log}/minio +}