diff --git a/programming/scm/git/actions.py b/programming/scm/git/actions.py new file mode 100644 index 0000000000..e6190f216c --- /dev/null +++ b/programming/scm/git/actions.py @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import shelltools +from pisi.actionsapi import perlmodules +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import get + +config = """ +V = 1 +CFLAGS = %s +LDFLAGS = %s +INSTALLDIRS = vendor +DESTDIR = %s +prefix = /usr +htmldir = /usr/share/doc/git +sysconfdir = /etc +ETC_GITCONFIG = /etc/gitconfig +GITWEB_CSS = gitweb/gitweb.css +GITWEB_LOGO = gitweb/git-logo.png +GITWEB_FAVICON = gitweb/git-favicon.png +GITWEB_JS = gitweb/gitweb.js +PYTHON_PATH = /usr/bin/python3 +PERL_MM_OPT ="" +GIT_TEST_OPTS ='--no-color' +gitwebdir = /var/www/localhost/cgi-bin +ASCIIDOC8 = 1 +ASCIIDOC_NO_ROFF = 1 +BLK_SHA1 = 1 +NEEDS_CRYPTO_WITH_SSL = 1 +USE_LIBPCRE = 1 +NO_CROSS_DIRECTORY_HARDLINKS = 1 +MAN_BOLD_LITERAL = 1 +V = 1 +""" % (get.CFLAGS(), get.LDFLAGS(), get.installDIR()) + + +def setup(): + shelltools.echo("config.mak", config) + +def build(): + pisitools.dosed("Makefile", "^CC = .*$", "CC = %s" % get.CC()) + autotools.make("all doc gitweb/gitweb.cgi") + +def install(): + autotools.rawInstall("install-doc") + + # Install bash completion + pisitools.insinto("/etc/bash_completion.d", "contrib/completion/git-completion.bash", "git") + shelltools.chmod("%s/etc/bash_completion.d/git" % get.installDIR(), 0644) + + # for git-daemon + pisitools.dodir("/pub/scm") + + # emacs support + autotools.install("-C contrib/emacs") + pisitools.insinto("/usr/share/doc/emacs-git", "contrib/emacs/README") + + # Some docs + pisitools.dodoc("README", "COPYING", "Documentation/SubmittingPatches") + + # remove .pod and .packlist files + perlmodules.removePodfiles() + perlmodules.removePacklist() diff --git a/programming/scm/git/comar/service.py b/programming/scm/git/comar/service.py new file mode 100644 index 0000000000..6b750a61b3 --- /dev/null +++ b/programming/scm/git/comar/service.py @@ -0,0 +1,29 @@ +from comar.service import * + +serviceType = "server" +serviceDesc = _({"en": "GIT Server", + "tr": "GIT Sunucusu"}) +serviceDefault = "off" +serviceConf = "git-daemon" + +@synchronized +def start(): + startService(command="/usr/bin/git", + args="daemon \ + --base-path=/pub/scm \ + --pid-file=/run/git-daemon.pid \ + --user-path=public_git \ + --detach \ + --export-all \ + --syslog \ + --verbose %s" % config.get("GITDAEMON_OPTS"), + pidfile="/run/git-daemon.pid", + donotify=True) + +@synchronized +def stop(): + stopService(pidfile="/run/git-daemon.pid", + donotify=True) + +def status(): + return isServiceRunning("/run/git-daemon.pid") diff --git a/programming/scm/git/files/80-git.el b/programming/scm/git/files/80-git.el new file mode 100644 index 0000000000..2627ff1cd9 --- /dev/null +++ b/programming/scm/git/files/80-git.el @@ -0,0 +1 @@ +(add-to-list 'vc-handled-backends 'GIT) diff --git a/programming/scm/git/files/93git-branch.sh b/programming/scm/git/files/93git-branch.sh new file mode 100644 index 0000000000..e3cf61b116 --- /dev/null +++ b/programming/scm/git/files/93git-branch.sh @@ -0,0 +1,5 @@ +# Include the current git branch in the prompt + +if type __git_ps1 >/dev/null 2>/dev/null; then + export PS1="$(echo -n "$PS1" | sed "s|\\\W\]|\\\W\$(__git_ps1 \" (%s)\")\]|")" +fi diff --git a/programming/scm/git/files/fix-gitwebdir.patch b/programming/scm/git/files/fix-gitwebdir.patch new file mode 100644 index 0000000000..90ce807663 --- /dev/null +++ b/programming/scm/git/files/fix-gitwebdir.patch @@ -0,0 +1,13 @@ +Index: git-1.7.6.4/gitweb/Makefile +=================================================================== +--- git-1.7.6.4.orig/gitweb/Makefile ++++ git-1.7.6.4/gitweb/Makefile +@@ -56,7 +56,7 @@ PERL_PATH ?= /usr/bin/perl + # Shell quote; + bindir_SQ = $(subst ','\'',$(bindir))#' + gitwebdir_SQ = $(subst ','\'',$(gitwebdir))#' +-gitwebstaticdir_SQ = $(subst ','\'',$(gitwebdir)/static)#' ++gitwebstaticdir_SQ = $(subst ','\'',$(gitwebdir)/gitweb)#' + SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))#' + PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))#' + DESTDIR_SQ = $(subst ','\'',$(DESTDIR))#' diff --git a/programming/scm/git/files/git-1.5-gitweb-home-link.patch b/programming/scm/git/files/git-1.5-gitweb-home-link.patch new file mode 100644 index 0000000000..cd36563e4f --- /dev/null +++ b/programming/scm/git/files/git-1.5-gitweb-home-link.patch @@ -0,0 +1,11 @@ +--- git-1.5.0.6/gitweb/gitweb.perl~ 2007-03-30 01:37:05.000000000 +0100 ++++ git-1.5.0.6/gitweb/gitweb.perl 2007-05-07 08:31:37.000000000 +0100 +@@ -39,7 +39,7 @@ our $projectroot = "++GITWEB_PROJECTROOT + our $home_link = $my_uri || "/"; + + # string of the home link on top of all pages +-our $home_link_str = "++GITWEB_HOME_LINK_STR++"; ++our $home_link_str = $ENV{'SERVER_NAME'} ? "git://" . $ENV{'SERVER_NAME'} : "projects"; + + # name of your site or organization to appear in page titles + # replace this with something more descriptive for clearer bookmarks diff --git a/programming/scm/git/files/git-cvsps-ignore.patch b/programming/scm/git/files/git-cvsps-ignore.patch new file mode 100644 index 0000000000..37a22dd578 --- /dev/null +++ b/programming/scm/git/files/git-cvsps-ignore.patch @@ -0,0 +1,26 @@ +From 09891c65a5f7409ce0bd37daced0ff31fbb1b1c9 Mon Sep 17 00:00:00 2001 +From: Todd Zullinger +Date: Mon, 23 Mar 2009 00:03:36 -0400 +Subject: [PATCH] git-cvsimport: Ignore cvsps-2.2b1 Branches: output + +Signed-off-by: Todd Zullinger +--- + git-cvsimport.perl | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/git-cvsimport.perl b/git-cvsimport.perl +index e439202..d020f1a 100755 +--- a/git-cvsimport.perl ++++ b/git-cvsimport.perl +@@ -952,7 +952,7 @@ while () { + } elsif (/^-+$/) { # end of unknown-line processing + $state = 1; + } elsif ($state != 11) { # ignore stuff when skipping +- print STDERR "* UNKNOWN LINE * $_\n"; ++ print STDERR "* UNKNOWN LINE * $_\n" unless /^Branches: /; + } + } + commit() if $branch and $state != 11; +-- +1.6.2.2 + diff --git a/programming/scm/git/files/git-daemon.confd b/programming/scm/git/files/git-daemon.confd new file mode 100644 index 0000000000..e694dba358 --- /dev/null +++ b/programming/scm/git/files/git-daemon.confd @@ -0,0 +1,8 @@ +# Meaningful options are: +# --syslog --- Enables syslog logging +# --verbose --- Enables verbose logging +# --export-all --- Exports all repositories even if they don't contain git-daemon-export-ok file +# --port=XXXX --- Starts in port XXXX instead of 9418 +# --base-path=/path --- Remap all the path requests as relative to the given path +# +GITDAEMON_OPTS="" diff --git a/programming/scm/git/files/git.conf.httpd b/programming/scm/git/files/git.conf.httpd new file mode 100644 index 0000000000..6b92bea2b6 --- /dev/null +++ b/programming/scm/git/files/git.conf.httpd @@ -0,0 +1,8 @@ +Alias /git /var/www/localhost/cgi-bin + + + Options +ExecCGI + AddHandler cgi-script .cgi + DirectoryIndex gitweb.cgi + + diff --git a/programming/scm/git/files/gitk-fonts.patch b/programming/scm/git/files/gitk-fonts.patch new file mode 100644 index 0000000000..455712063c --- /dev/null +++ b/programming/scm/git/files/gitk-fonts.patch @@ -0,0 +1,17 @@ +Index: git-1.6.3/gitk-git/gitk +=================================================================== +--- git-1.6.3.orig/gitk-git/gitk ++++ git-1.6.3/gitk-git/gitk +@@ -10931,9 +10931,9 @@ if {[tk windowingsystem] eq "aqua"} { + set textfont {Monaco 9} + set uifont {{Lucida Grande} 9 bold} + } else { +- set mainfont {Helvetica 9} +- set textfont {Courier 9} +- set uifont {Helvetica 9 bold} ++ set mainfont {{DejaVu Sans} 9} ++ set textfont {{DejaVu Sans Mono} 9} ++ set uifont {{DejaVu Sans} 9 bold} + } + set tabstop 8 + set findmergefiles 0 diff --git a/programming/scm/git/files/gitweb.confd b/programming/scm/git/files/gitweb.confd new file mode 100644 index 0000000000..c8dbacd8cd --- /dev/null +++ b/programming/scm/git/files/gitweb.confd @@ -0,0 +1,3 @@ +# Write project root here +PROJECT_ROOT="/usr/local/scm" + diff --git a/programming/scm/git/files/project-root.patch b/programming/scm/git/files/project-root.patch new file mode 100644 index 0000000000..6ccabd882d --- /dev/null +++ b/programming/scm/git/files/project-root.patch @@ -0,0 +1,19 @@ +--- gitweb/gitweb.perl 2007-04-04 11:40:33.000000000 +0300 ++++ gitweb/gitweb.perl 2007-04-08 21:30:31.000000000 +0300 +@@ -32,8 +32,14 @@ + our $GIT = "++GIT_BINDIR++/git"; + + # absolute fs-path which will be prepended to the project path +-#our $projectroot = "/pub/scm"; +-our $projectroot = "++GITWEB_PROJECTROOT++"; ++our $projectroot = "/usr/local/scm"; ++open(CONF, '/etc/conf.d/gitweb'); ++ ++while () { ++ do { $projectroot = $1; last } if /^PROJECT_ROOT="([^"]+)"/; ++} ++ ++close(CONF); + + # target of the home link on top of all pages + our $home_link = $my_uri || "/"; diff --git a/programming/scm/git/pspec.xml b/programming/scm/git/pspec.xml new file mode 100644 index 0000000000..3d2efe7a50 --- /dev/null +++ b/programming/scm/git/pspec.xml @@ -0,0 +1,311 @@ + + + + + git + http://git-scm.com/ + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + Fast Version Control System + Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. + https://www.kernel.org/pub/software/scm/git/git-2.4.4.tar.xz + + tcltk-devel + xmlto + asciidoc + perl-Error + perl + + emacs + + + project-root.patch + gitk-fonts.patch + git-1.5-gitweb-home-link.patch + git-cvsps-ignore.patch + fix-gitwebdir.patch + + + + + git + app:console + + perl-String-ShellQuote + perl-Net-SMTP-SSL + perl-Authen-SASL + perl-libwww + perl-Git + openssh + rsync + + + /usr/bin + /usr/libexec/git-core + /etc/bash_completion.d + /usr/share/git-core + /usr/share/locale + /usr/share/man + /usr/share/doc + + + + + git-daemon + service + GIT protocol daemon + + git + + + /etc/conf.d/git-daemon + /usr/libexec/git-core/git-daemon + /usr/share/man/man1/*daemon*.1* + /pub/scm + + + git-daemon.confd + + + System.Service + + + + + perl-Git + library + programming.language.perl + Perl interface to GIT + + perl-Error + perl + + + /usr/lib/perl5 + /usr/share/man/man3/Git.3pm + + + + + emacs-Git + data + editor.emacs + Git support for emacs + + emacs + + + /usr/share/emacs/site-lisp/git* + /usr/share/doc/emacs-git + + + + + git-svn + app:console + Git tools for importing Subversion repositories + + git + subversion + perl-Term-ReadKey + + + /usr/libexec/git-core/*svn* + /usr/share/man/man1/*svn*.1* + + + + + git-cvs + app:console + Git tools for importing CVS repositories + + git + cvs + cvsps + + + /usr/libexec/git-core/*cvs* + /usr/bin/git-cvsserver + /usr/share/man/man1/*cvs*.1* + /usr/share/man/man7/*cvs*.7* + + + + + gitk + app:gui + Git revision tree visualiser + + git + tcltk + + + /usr/bin/gitk + /usr/share/gitk + /usr/share/man/man1/*gitk*.1* + + + + + git-gui + app:gui + Git GUI tool + + git + gitk + tcltk + + + /usr/libexec/git-core/git-gui* + /usr/libexec/git-core/git-citool + /usr/share/git-gui + /usr/share/man/man1/git-gui.1* + /usr/share/man/man1/git-citool.1* + + + + + gitweb + app:web + server.web + Simple web interface to GIT repositories + + git + + + /var/www/localhost + /etc/conf.d/gitweb + /etc/apache2/conf.d + + + gitweb.confd + git.conf.httpd + + + + + + 2015-06-20 + 2.4.4 + Version bump. + Hakan Yıldız + hknyldz93@gmail.com + + + 2015-04-04 + 2.3.5 + Version bump. + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2015-02-07 + 2.3.0 + Version bump. + Hakan Yıldız + hknyldz93@gmail.com + + + 2014-09-19 + 2.2.2 + Version Bump. + Vedat Demir + vedat@pisilinux.org + + + 2014-09-13 + 2.1.0 + Rebuild for new perl. + Serdar Soytetir + kaptan@pisilinux.org + + + 2014-08-16 + 2.1.0 + Version bump. + Vedat Demir + vedat@pisilinux.org + + + 2014-06-25 + 2.0.1 + Version bump. + Vedat Demir + vedat@pisilinux.org + + + 2014-06-01 + 2.0.0 + Version bump. + Serdar Soytetir + kaptan@pisilinux.org + + + 2014-02-15 + 1.9.0 + Version bump. + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2014-02-11 + 1.8.5.4 + Version bump and new rsync + Alihan Öztürk + alihan@pisilinux.org + + + 2013-11-21 + 1.8.4.4 + Version bump. + Richard de Bruin + richdb@pisilinux.org + + + 2013-10-29 + 1.8.4.2 + Version bump. + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2013-09-21 + 1.8.3.2 + fix dep + Kamil Atlı + suvarice@gmail.com + + + 2013-07-04 + 1.8.3.2 + Version bump. + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2013-04-08 + 1.8.2.1 + Version bump. + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2013-01-29 + 1.8.1.2 + Version bump. + Marcin Bojara + marcin@pisilinux.org + + + 2012-12-28 + 1.8.0.3 + First release + Marcin Bojara + marcin@pisilinux.org + + + diff --git a/programming/scm/git/translations.xml b/programming/scm/git/translations.xml new file mode 100644 index 0000000000..a58dbafb28 --- /dev/null +++ b/programming/scm/git/translations.xml @@ -0,0 +1,55 @@ + + + + git + Git hızlı, ölçeklenebilir ve dağıtılmış, ve sık rastlanmayan zengin komut kümesi içeren, hem yüksek seviyeli işlemleri hem dahili işlemlere tam erişimi sağlayan bir sürüm kontrol sistemidir. + Hızlı Sürüm Denetim Sistemi + GIT es un sistema rápido, escalable y distribuido de control de versiones con un amplio espectro de comandos que permite operaciones de alto nivel tanto como operaciones con acceso a detalles internos. + + + + git-emacs + emacs için GIT bütünleşmesi + + + + git-daemon + GIT protokolü hizmeti + + + + perl-Git + GIT için perl arayüzü + + + + emacs-Git + Emacs için git desteği + + + + git-svn + Subversion depolarıyla etkileşmek için gerekli Git araçları + + + + git-cvs + CVS depolarıyla etkileşmek için gerekli Git araçları + + + + gitk + Git sürüm ağacı görüntüleyici + + + + git-gui + GIT için basit bir grafik arayüz + + + + gitweb + GIT için Web arayüzü + interfaz web para GIT + +