diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-12-27 20:09:16 -0300 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-12-27 20:09:16 -0300 |
commit | 36537a04baaa5c6d7e4d6acc6924231d55a95b01 (patch) | |
tree | cd4402474d8f536192bc49eec6bebc0e7f5d77fe /Makefile | |
parent | ff8ae8ceba55a43cfb5f763f75d9679c31c38a63 (diff) | |
parent | 76571cb2dc2644e9eb23758cd8da6d281d573994 (diff) |
Merge git://repo.hackcoop.com.ar/hacking
Conflicts:
authorized_keys
parabola-keyring/Makefile
parabola-keyring/packager-keyids
parabola-keyring/packager/aurelien.asc
parabola-keyring/packager/brendan.asc
parabola-keyring/packager/coadde.asc
parabola-keyring/packager/emulatorman.asc
parabola-keyring/packager/encyclomundi.asc
parabola-keyring/packager/fauno.asc
parabola-keyring/packager/jorginho.asc
parabola-keyring/packager/lukeshu.asc
parabola-keyring/packager/mtjm.asc
parabola-keyring/packager/ovruni.asc
parabola-keyring/packager/shackra.asc
parabola-keyring/packager/smv.asc
parabola-keyring/packager/xihh.asc
parabola-keyring/parabola-trusted
parabola-keyring/parabola.gpg
parabola-keyring/update-keys
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..62690e3 --- /dev/null +++ b/Makefile @@ -0,0 +1,49 @@ +SHELL=/bin/bash +# The git user home, from where repos are served +PREFIX=/srv/git +# The git user +USER=git +# The git-shell path +GIT_SHELL=/usr/bin/git-shell +# The hacking.git clone +HACKERS=$(shell pwd) + +# Add all of your pubkeys +# TODO this can fail if you don't have any keys (why don't you) +bootstrap: + cat $(HOME)/.ssh/id_{rsa,ecdsa,dsa}.pub >>authorized_keys 2>/dev/null || true + git commit authorized_keys -m "Bootstraping hacking.git" ; \ + +# Create the user +user: + useradd --home $(PREFIX) \ + --shell $(GIT_SHELL) \ + --create-home \ + --system \ + --user-group \ + $(USER) + +# Check if we have at least a key +check: + if [ $(shell wc -l authorized_keys | cut -d' ' -f1) -eq 0 ]; then \ + echo 'Add at least your key to authorized_keys!'; \ + exit 1 ;\ + fi + +# Add the hackers repo to the local clone +install-local: + git remote add git git:hackers.git + cat ssh_config >>$(HOME)/.ssh/config + +# Create the hackers.git bare repo and clone as .ssh +# Then create needed symlinks and add hooks to hackers.git +install: check + cd $(PREFIX); \ + git clone --bare $(HACKERS) hackers.git && \ + git clone hackers.git .ssh && \ + chmod 700 $(PREFIX) && \ + chmod 700 .ssh && \ + chmod 600 .ssh/authorized_keys && \ + ln -s $(PREFIX)/.ssh/git-hooks/hackers-update hackers.git/hooks/post-receive && \ + ln -s $(PREFIX)/.ssh/git-shell-commands && \ + chown -R $(USER):$(USER) $(PREFIX) |