xaizek / rocketgit (License: AGPLv3+) (since 2018-12-09)
Light and fast Git hosting solution suitable to serve both as a hub or as a personal code storage with its tickets, pull requests, API and much more.
<root> / Makefile.in (cb653317df6d2449e14a36f043b5ae77c8946019) (2,492B) (mode 100644) [raw]
.PHONY: all
all:	selinux

.PHONY: selinux
selinux:
	@echo "Building SELinux..."
	cd selinux && ./build.sh

.PHONY: clean
clean:
	make -C tests clean
	@-rm -f $(PRJ)-*.rpm $(PRJ)-*-*-*.tgz $(PRJ)-*.tar.gz
	@-rm -rf selinux/out
	@find . -type f -name '*.strace' -exec rm -f {} \;
	@find . -type f -name '*.log' -exec rm -f {} \;
	@find . -type f -name '*.out' -exec rm -f {} \;
	@find . -type f -name '*.bak' -exec rm -f {} \;

.PHONY: tests
tests:
	make -C tests all

install:	all
	@mkdir -pv $(I_USR_SHARE)/$(PRJ)
	cp -vdr inc hooks root scripts $(I_USR_SHARE)/$(PRJ)
	@mkdir -pv $(I_ETC)/xinetd.d
	cp -vd --no-clobber samples/rg $(I_ETC)/xinetd.d/$(PRJ)
	@mkdir -pv $(I_ETC)/cron.d
	cp -vd samples/cron $(I_ETC)/cron.d/$(PRJ)
	@mkdir -pv $(I_ETC)/httpd/conf.d
	cp -vd --no-clobber samples/rg.conf $(I_ETC)/httpd/conf.d/$(PRJ).conf
	@mkdir -pv $(I_ETC)/$(PRJ)
	cp -vd --no-clobber samples/config.php $(I_ETC)/$(PRJ)/
	cp -vd samples/config.php $(I_ETC)/$(PRJ)/config.php.sample
	@mkdir -pv $(I_ETC)/logrotate.d
	cp -vd samples/logrotate $(I_ETC)/logrotate.d/$(PRJ)
	@
	@echo "Installing tools..."
	@mkdir -pv $(I_USR_SBIN)
	cp -vd tools/* $(I_USR_SBIN)/
	@-chown root:root $(I_USR_SBIN)/rg_*
	@
	@echo "Installing log stuff..."
	@mkdir -pv $(I_VAR_LOG)/$(PRJ)
	@-chown -R rocketgit:rocketgit $(I_VAR_LOG)/$(PRJ)
	@-find $(I_VAR_LOG)/$(PRJ) -type d -exec chmod -R 0755 {} \;
	@-find $(I_VAR_LOG)/$(PRJ) -type f -exec chmod -R 0600 {} \;
	@
	@mkdir -pv $(I_VAR_LOG)/$(PRJ)-web
	@-chown -R apache:apache $(I_VAR_LOG)/$(PRJ)-web
	@-find $(I_VAR_LOG)/$(PRJ)-web -type d -exec chmod -R 0755 {} \;
	@-find $(I_VAR_LOG)/$(PRJ)-web -type f -exec chmod -R 0600 {} \;
	@
	@echo "Installing varlib stuff..."
	@mkdir -pv $(I_VAR_LIB)/$(PRJ)
	@mkdir -pv $(I_VAR_LIB)/$(PRJ)/locks
	@mkdir -pv $(I_VAR_LIB)/$(PRJ)/repos
	@mkdir -pv $(I_VAR_LIB)/$(PRJ)/q_merge_requests
	@mkdir -pv $(I_VAR_LIB)/$(PRJ)/qstats
	@mkdir -pv $(I_VAR_LIB)/$(PRJ)/sockets
	@mkdir -pv $(I_VAR_LIB)/$(PRJ)/worker
	@echo "Fixing rights..."
	@-find $(I_VAR_LIB)/$(PRJ) -type d -exec chmod 0755 {} \;
	@-find $(I_VAR_LIB)/$(PRJ) -type f -exec chmod 0600 {} \;
	@mkdir -pv --mode=0700 $(I_VAR_LIB)/$(PRJ)/tmp
	@-chown -R rocketgit:rocketgit $(I_VAR_LIB)/$(PRJ)
	@-chown root:root $(I_VAR_LIB)/$(PRJ)
	@-chown root:root $(I_VAR_LIB)/$(PRJ)/worker
	@
	@echo "Installing SELinux stuff..."
	@mkdir -pv --mode=0755 $(I_USR_SHARE)/selinux/targeted
	cp -vd selinux/out/$(PRJ)-targeted.pp $(I_USR_SHARE)/selinux/targeted/$(PRJ).pp
	@echo "Done!"
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/rocketgit

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/rocketgit

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master