# HG changeset patch # User Robert McIntyre # Date 1357734778 0 # Node ID 4fbe69d24a9ccbe7a697d37aa5960a143b3d3d60 # Parent b38744722d75a8544a154981f014bae4a0ba6acb major consolidation. diff -r b38744722d75 -r 4fbe69d24a9c src/pkg.pl --- a/src/pkg.pl Wed Jan 09 11:42:25 2013 +0000 +++ b/src/pkg.pl Wed Jan 09 12:32:58 2013 +0000 @@ -75,11 +75,11 @@ @pkg_link_bashrc_cmd = ("install", "-g", $pkg_name, "-o", $pkg_name, - "/pkg/defaults/.profile", "$pkg_home/.profile"); + "/pkg/hg-committer/.profile", "$pkg_home/.profile"); @pkg_copy_hg_wrapper_cmd = (install, "-g", "hg-wheel", "-o", "hg-committer", - "-m", "6111", "/pkg/defaults/.hg-wrapper", $pkg_home); + "-m", "6111", "/pkg/hg-committer/.hg-wrapper", $pkg_home); sub execute{print "\t@_\n"; system(@_) and die $!;} diff -r b38744722d75 -r 4fbe69d24a9c src/set-repository-perms.sh --- a/src/set-repository-perms.sh Wed Jan 09 11:42:25 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ -groupadd --force hg-wheel -gpasswd --add hg-committer hg-wheel -gpasswd --add r hg-wheel -chown -Rv hg-committer:hg-wheel /.hg -chmod -Rv g+wrx /.hg diff -r b38744722d75 -r 4fbe69d24a9c src/system-init.pl --- a/src/system-init.pl Wed Jan 09 11:42:25 2013 +0000 +++ b/src/system-init.pl Wed Jan 09 12:32:58 2013 +0000 @@ -1,9 +1,6 @@ #!/usr/bin/env perl -@create_install_cmd = - ("groupadd", "--force", "install"); -print "@create_install_cmd\n"; -system(@create_install_cmd) and die $!; +use Cwd; sub create_install_dir{ @install_cmd = @@ -101,9 +98,36 @@ /bin /lib); + +sub execute{ + print "\t$_[0]\n"; + `$_[0]`; + if ($?){die $!;} +} + +execute("groupadd --force install"); + foreach $install_dir(@install_dirs){ create_install_dir($install_dir);} -`mkdir -pv /pkg/defaults` -`ln -sfv $(pwd)/profile /pkg/defaults/.profile` -`ln -sfv $(pwd)/hg-wrapper /pkg/defaults/.hg-wrapper` + +execute("find /.hg -type d -print0 | xargs -0 -L 1 -t chmod 770"); +execute("find /.hg -type f -print0 | xargs -0 -L 1 -t chmod 660"); + + +execute("groupadd --force hg-committer"); +execute("groupadd --force hg-wheel"); + +if (!`id hg-committer`){ + execute("useradd -c hg-committer -d /pkg/hg-committer -g hg-committer -s /bin/bash hg-committer"); +} + +execute("chown -Rv hg-committer:hg-wheel /.hg"); + +$pwd = getcwd; +execute("gpasswd --add hg-committer hg-wheel"); +execute("ln -sfv $pwd/profile /pkg/hg-committer/.profile"); +execute("ln -sfv $pwd/hg-wrapper /pkg/hg-committer/.hg-wrapper"); + + +