.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!"
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