adding gogs-0.11.86.ebuild
This commit is contained in:
		
							
								
								
									
										4
									
								
								www-apps/gogs/Manifest
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								www-apps/gogs/Manifest
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| AUX confd 1074 BLAKE2B 2da6110a1d9e98718736f7adfb4e861784ca1ff1562b12c3dff823908bf1415cd5751c3a2c356779412136f63ce7bedd01be6fd1fc24d5237b27b1deed5a0d31 SHA512 2591f51067ae194c28fec80cd1211b0ba4be6c0bb53fd6a0f26cff5c8beb448fb32430f9ae804e348184f5c9dcf75603086160972b093a6f375c27b7a49ff284 | ||||
| AUX initd 1521 BLAKE2B 7f2fd30e82dc84394d6526862d0c3adc9a5950c22cbf7eecc38dea94f1a9f730cd015978162ed8ba002ce70819751ec94c198c615ee906308ab3a14e8623bdf6 SHA512 693dbc61cd5fab497eefd331e9829eb6a6b5621f8b28d181531873a93f29f6e3992c5a3bb66e742432b0a74662b2ce2b28916a9ae3e1d844b1a016de2cb5273a | ||||
| DIST gogs-0.11.86.tar.gz 19382029 BLAKE2B 0dd46bbd563553bb280ea171f8acf377532c8d9f855eff1a553db62d0810956630af3ed702373022bee958dadd57d7721a7a0851a2284c17ac15c16d9cf62bbe SHA512 d9eae7b29f683ac0a289d3790b94e700c013232a74e1a91f01977899c26eb5b652ee39f5423d0e2217c0c7a12428902b20eeef68005b4a6713455553302e57e7 | ||||
| EBUILD gogs-0.11.86.ebuild 3059 BLAKE2B c6ea15d3f8fcefda874bd6cc400ced700fd9e3b1745b1ff973bf74230ec31e8b128a90ece1d066f5aa39531c77ffcfc2fd34f301996e476d99bd49d6e46dff1f SHA512 2ce1305852dcef5240082c6f8067a3a94962d5b83de7f6e4c0b7c944c4e94bf43490b8c6e6e186dbdec2c5b31a8e140a4b7984b21ab35fea68feac02a805f862 | ||||
							
								
								
									
										41
									
								
								www-apps/gogs/files/confd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								www-apps/gogs/files/confd
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,41 @@ | ||||
| # Apache License 2015 | ||||
|  | ||||
| # Path of your config dir | ||||
| # It will be created upon finishing installation | ||||
| # custom_config_dir="/etc/gogs/custom" | ||||
|  | ||||
| # Path of gogs data (avatars etc.) | ||||
| # This will change the location in which repos are stored | ||||
| workdir="/var/lib/gogs" | ||||
|  | ||||
| # What user and group should Gogs run as? | ||||
| user="gogs" | ||||
| group="gogs" | ||||
|  | ||||
| # What arguments should be passed to Gogs? | ||||
| # Only "web" is supported (to start the server) | ||||
| # daemon_opts="web" | ||||
|  | ||||
| # Where does Gogs keep configuration files? | ||||
| # Only for user information messages at the moment | ||||
| defaultconf="/etc/gogs/conf/app.ini" | ||||
| #customconf="${custom_config_dir}/app.ini" | ||||
|  | ||||
| # Where should logs be stored? | ||||
| logfile="/var/log/gogs/gogs.log" | ||||
|  | ||||
| # Where should the PID file be saved while Gogs is running? | ||||
| # Default is "/run/${SVCNAME}.pid" | ||||
| # eg "/run/gogs.pid" | ||||
| #pidfile="/run/gogs.pid" | ||||
|  | ||||
| # How long should we wait for Gogs itself to start? | ||||
| # Expects a number (in milliseconds) | ||||
| # Default 500 | ||||
| startwait=500 | ||||
|  | ||||
| # What is the maximum wait for start-stop-daemon to create a PID file? | ||||
| # Expects a number (in milliseconds) | ||||
| # Default 1000 | ||||
| timeout=1000 | ||||
|  | ||||
							
								
								
									
										72
									
								
								www-apps/gogs/files/initd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								www-apps/gogs/files/initd
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | ||||
| #!/sbin/openrc-run | ||||
| # Apache License 2015 | ||||
|  | ||||
| user="${user:-gogs}" | ||||
| group="${group:-gogs}" | ||||
| pidfile="${pidfile:-/run/${SVCNAME}.pid}" | ||||
| daemon_opts="${daemon_opts:-web}" | ||||
| logfile="${logfile:-/var/log/gogs/gogs.log}" | ||||
| defaultconf="${defaultconf:-/etc/gogs/conf/app.ini}" | ||||
| startwait=${startwait:-500} | ||||
| timeout=${timeout:-1000} | ||||
| GOGS_CUSTOM="${custom_config_dir:-/etc/gogs/custom}" | ||||
| GOGS_WORK_DIR="${workdir:-/var/lib/gogs}" | ||||
|  | ||||
| depend() { | ||||
| 	need gogs net localmount | ||||
| 	use logger mysql pam cert nginx memcache | ||||
| 	after bootmisc | ||||
| } | ||||
|  | ||||
| start_pre() { | ||||
| 	if [ ! -r "${customconf}" ] ; then | ||||
| 		einfo "Cannot read custom configuration file '${customconf}'" | ||||
| 		if [ ! -r "${defaultconf}" ] ; then | ||||
| 			eerror "Cannot read default configuration file '${defaultconf}'" | ||||
| 			return 1 | ||||
| 		else | ||||
| 			einfo "Falling back to '${defaultconf}'" | ||||
| 			customconf="${defaultconf}" | ||||
| 		fi | ||||
| 	fi | ||||
| } | ||||
|  | ||||
| start() { | ||||
| 	ebegin "Starting ${SVCNAME}" | ||||
|  | ||||
| 	export GOGS_CUSTOM | ||||
| 	export GOGS_WORK_DIR | ||||
| 	sh -c "start-stop-daemon \ | ||||
| 		--start \ | ||||
| 		--user ${user} \ | ||||
| 		--group ${group} \ | ||||
| 		--background \ | ||||
| 		--make-pidfile \ | ||||
| 		--pidfile=${pidfile} \ | ||||
| 		--wait=${startwait} \ | ||||
| 		--stderr=${logfile} \ | ||||
| 		--stdout=${logfile} \ | ||||
| 		--exec /usr/bin/gogs \ | ||||
| 		-- ${daemon_opts} --config ${customconf} " | ||||
| 	local i=0 | ||||
| 	while [ ! -f ${pidfile} ] && [ $i -le ${timeout} ]; do | ||||
| 		sleep 1 | ||||
| 		i=$(($i + 1000)) | ||||
| 	done | ||||
|  | ||||
| 	[ $timeout -gt $i ] | ||||
| 	eend $? | ||||
| } | ||||
|  | ||||
| stop() { | ||||
| 	ebegin "Stopping ${SVCNAME}" | ||||
|  | ||||
| 	start-stop-daemon \ | ||||
| 		${DEBUG:+"--verbose"} \ | ||||
| 		--stop \ | ||||
| 		--exec /usr/bin/gogs \ | ||||
| 		--pidfile "${pidfile}" | ||||
| 	eend $? | ||||
| 	rm -f $PIDFILE | ||||
| 	return 0; | ||||
| } | ||||
							
								
								
									
										111
									
								
								www-apps/gogs/gogs-0.11.86.ebuild
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										111
									
								
								www-apps/gogs/gogs-0.11.86.ebuild
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,111 @@ | ||||
| # Copyright 2019 Gentoo Authors | ||||
| # Distributed under the terms of the GNU General Public License v2 | ||||
|  | ||||
| EAPI=6 | ||||
|  | ||||
| inherit golang-vcs-snapshot golang-build user | ||||
|  | ||||
| EGO_SRC=github.com/gogs/gogs | ||||
| EGO_PN=${EGO_SRC}/... | ||||
| DESCRIPTION="Gogs is a painless self-hosted Git service." | ||||
| HOMEPAGE="https://gogs.io" | ||||
| EGIT_COMMIT="06b6eaba060f8b874a4c2a8c84515b2ea45321d6" | ||||
| SRC_URI="https://${EGO_SRC}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz" | ||||
|  | ||||
|  | ||||
| LICENSE="MIT License" | ||||
| SLOT="0/${PVR}" | ||||
| KEYWORDS="~amd64 ~x86" | ||||
| IUSE="mysql postgres +sqlite +pam +ssl" | ||||
|  | ||||
| DEPEND="sqlite? ( dev-db/sqlite:3 )" | ||||
| RDEPEND="${DEPEND} | ||||
| 	mysql? ( virtual/mysql ) | ||||
| 	postgres? ( dev-db/postgresql[pam?,ssl?] ) | ||||
| " | ||||
|  | ||||
| USER_NAME="gogs" | ||||
| USER_DIR="/var/lib/${USER_NAME}" | ||||
| APP_DIR="/usr/share/${PN}" | ||||
|  | ||||
| pkg_setup() { | ||||
| 	enewgroup ${USER_NAME} | ||||
| 	enewuser ${USER_NAME} -1 /bin/bash "${USER_DIR}" ${USER_NAME} | ||||
| 	GOLANG_PKG_LDFLAGS+=" -X github.com/gogits/gogs/modules/setting.BuildTime=$(date -u '+%Y-%m-%d')" | ||||
| } | ||||
|  | ||||
| src_prepare() { | ||||
| 	default | ||||
|  | ||||
| 	cd ${S}/src/${EGO_SRC} | ||||
| 	cp conf/app.ini "${T}"/app.user.ini || die | ||||
|  | ||||
| 	sed -i "1,4d" "${T}"/app.user.ini || die | ||||
| 	sed -i \ | ||||
| 		-e "s:^PATH = data/gogs.db:PATH = database/${PN}.db:" \ | ||||
| 		-e "s:^STATIC_ROOT_PATH =.*:STATIC_ROOT_PATH = ${EPREFIX}/usr/share/themes/${PN}:" \ | ||||
| 		-e "s:^MODE =.*:MODE = console:" \ | ||||
| 		-e "s:^OFFLINE_MODE =.*:OFFLINE_MODE = true:" \ | ||||
| 		-e "s:^DISABLE_ROUTER_LOG =.*:DISABLE_ROUTER_LOG = true:" \ | ||||
| 		-e "s:^DISABLE_GRAVATAR =.*:DISABLE_GRAVATAR = true:" \ | ||||
| 		-e "s:^PROVIDER =.*:PROVIDER = memory:" \ | ||||
| 		-e "s:^RUN_MODE =.*:RUN_MODE = prod:" \ | ||||
| 		-e "s:^# NEVER EVER.*::" \ | ||||
| 		-e "s:^# PLEASE MAKE.*::" \ | ||||
| 		conf/app.ini "${T}"/app.user.ini || die | ||||
|  | ||||
| 	# Fallback for sqlite as main backend | ||||
| 	if use sqlite; then | ||||
| 		sed -i \ | ||||
| 			-e "s:^DB_TYPE = mysql.*:DB_TYPE = sqlite3:" \ | ||||
| 			conf/app.ini "${T}"/app.user.ini || die | ||||
| 	fi | ||||
|  | ||||
| 	# These are settings specific only to the main app.ini. | ||||
| 	sed -i \ | ||||
| 		-e "s:^ROOT_PATH =.*:ROOT_PATH = ${EPREFIX}/var/log/${PN}:" \ | ||||
| 		-e "s:^ROOT =.*:ROOT = ${EPREFIX}${USER_DIR}/repositories:" \ | ||||
| 		-e "s:^RUN_USER =.*:RUN_USER = ${USER_NAME}:" \ | ||||
| 		conf/app.ini || die | ||||
|  | ||||
| 	# These are settings specific only to the app.ini used by users. | ||||
| 	sed -i \ | ||||
| 		-e "s:^ROOT_PATH =.*:ROOT_PATH = <home>/${PN}/log:" \ | ||||
| 		-e "s:^ROOT =.*:ROOT = <home>/${PN}/repositories:" \ | ||||
| 		-e "s:^RUN_USER =.*:RUN_USER = <user>:" \ | ||||
| 		"${T}"/app.user.ini || die | ||||
| } | ||||
|  | ||||
| src_install() { | ||||
| 	golang-build_src_install | ||||
| 	cd src/github.com/gogs/gogs | ||||
|  | ||||
| 	dobin ${S}/bin/${PN} | ||||
|  | ||||
| 	# Install init files | ||||
| 	newconfd "${FILESDIR}/confd" ${PN} | ||||
| 	newinitd "${FILESDIR}/initd" ${PN} | ||||
|  | ||||
| 	# Install configuration files | ||||
| 	insinto /etc/${PN}/conf | ||||
| 	insopts -m640 | ||||
| 	doins "${T}"/app.user.ini | ||||
| 	doins conf/app.ini | ||||
|  | ||||
| 	# Fix permissions of config files | ||||
| 	keepdir /etc/${PN}/ | ||||
| 	fperms 775 /etc/${PN}/conf | ||||
| 	fowners -R :${USER_NAME} /etc/${PN} | ||||
|  | ||||
| 	# Install theme files | ||||
| 	insinto /usr/share/themes/${PN}/ | ||||
| 	insopts -m440 | ||||
| 	doins -r public/ | ||||
| 	doins -r templates/ | ||||
| 	fowners -R ${USER_NAME}:${USER_NAME} /usr/share/themes/${PN}/ | ||||
|  | ||||
| 	# Create log directory | ||||
| 	keepdir /var/log/${PN} | ||||
| 	#	fperms 775 /var/log/${PN} | ||||
| 	fowners -R ${USER_NAME}:${USER_NAME} /var/log/${PN} | ||||
| } | ||||
		Reference in New Issue
	
	Block a user