aboutsummaryrefslogtreecommitdiffstats
path: root/src/gitjoe/newrepo.pl
diff options
context:
space:
mode:
Diffstat (limited to 'src/gitjoe/newrepo.pl')
-rwxr-xr-xsrc/gitjoe/newrepo.pl76
1 files changed, 0 insertions, 76 deletions
diff --git a/src/gitjoe/newrepo.pl b/src/gitjoe/newrepo.pl
deleted file mode 100755
index dc8041b..0000000
--- a/src/gitjoe/newrepo.pl
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/usr/local/bin/perl
-
-use strict;
-use warnings;
-use Term::ANSIColor;
-use File::Find;
-use constant HOME_DIR => '/usr/local/git/';
-
-sub main
-{
- my $argc = $#ARGV + 1;
- if ($argc < 2) {
- print colored("Failed!\n", 'bold red')
- . "Missing argument, at least 2 needed "
- . colored("[user - reponame - (description)]", 'bold')
- . "\n";
- exit 1;
- }
- my $usr = $ARGV[0];
- my $repo = $ARGV[1];
- my $desc = "";
- if ($argc >= 3) {
- $desc = $ARGV[2];
- }
- my $home_dir = HOME_DIR . $usr . '/';
- if (substr($repo, -4) ne '.git') {
- $repo = $repo . '.git';
- }
- $repo = $repo . '/';
- mkdir $home_dir . $repo, 0755;
- system(
- '/usr/local/bin/git',
- '-C',
- $home_dir . $repo,
- 'init',
- '--bare'
- );
- my (undef, undef, $uid, $gid) = getpwnam($usr);
- find(
- sub {
- chown $uid, $gid, $_;
- },
- $home_dir . $repo
- );
- system(
- '/usr/bin/touch',
- $home_dir . $repo . 'git-daemon-export-ok'
- );
- chown $uid, $gid, $home_dir . $repo . 'git-daemon-export-ok';
- open(my $owner_fh, '>:encoding(UTF-8)', $home_dir . $repo . 'owner');
- print $owner_fh $usr;
- close($owner_fh);
- open(my $url_fh, '>:encoding(UTF-8)', $home_dir . $repo . 'url');
- substr($repo, -1) = "";
- print $url_fh 'git://gitjoe.xyz/' . $usr . '/' . $repo;
- close($url_fh);
- $repo = $repo . '/';
- open(my $desc_fh, '>:encoding(UTF-8)', $home_dir . $repo . 'description');
- if ($argc >= 3) {
- print $desc_fh $desc;
- }
- else {
- print $desc_fh 'No description yet';
- }
- close($desc_fh);
- chown $uid, $gid, $home_dir . $repo . 'description';
- substr($repo, -1) = "";
- print "Created git repository " . colored($repo, 'bold green') . " for user " . colored($usr, 'bold') . ".\n";
- print "Remote url: " . colored($usr . '@gitjoe.xyz:' . $repo, 'bold green') . "\n"
- . "Public clone url: " . colored('git://gitjoe.xyz/' . $usr . '/' . $repo, 'bold green') . "\n";
- exit;
-}
-
-main();
-
-__END__