├── COPYING ├── Makefile ├── README.md ├── TODO ├── config ├── patches ├── dwm-config.def.h ├── gdk-iopng.patch ├── gettext-018 └── libiconv-114.patch ├── pkg ├── 0xFFFF ├── 9base ├── ImageMagick-6.7.4-0 ├── Python-2.7 ├── Python-3.2 ├── Python-3.2rc3 ├── acr ├── acr-0.8.6 ├── alt ├── apr-1.4.6 ├── apr-util-1.5.1 ├── arm-1.4.5.0 ├── ashell-0.3 ├── atk-2.0.1 ├── autoconf-2.68 ├── automake-1.11.1 ├── bash-4.2 ├── bgs ├── binutils-2.22 ├── bison-2.4.3 ├── busybox ├── busybox-1.20.2 ├── bzip2-1.0.6 ├── cairo-1.12.6 ├── ccache-3.1.6 ├── charset ├── clutter-1.6.8 ├── cmake-2.8.6 ├── confuse-2.7 ├── coreutils-8.14 ├── curl-7.21.4 ├── dash-0.5.7 ├── db-5.3.21 ├── dbus-1.4.1 ├── distcc-3.2rc1 ├── dmc ├── dmenu ├── doblog ├── dropbear-0.53.1 ├── dvtm-0.7 ├── dwm ├── dwm-5.6.1 ├── e2fsprogs-1.41.14 ├── expat-2.0.1 ├── fakeroot_1.14.4 ├── flate ├── flo ├── fontconfig-2.11.1 ├── freetype-2.4.4 ├── gawk-3.1.8 ├── gc-7.1 ├── gcc-c-4.6.2 ├── gdb-7.3.1 ├── gdbm-1.10 ├── gdk-pixbuf-2.24.0 ├── gel ├── gettext-0.18.1.1 ├── git-1.8.0 ├── glib-2.43.1 ├── gmp-5.0.2 ├── go ├── graphviz-2.28.0 ├── groff-1.21 ├── gtk+-3.4.4 ├── gtkaml ├── gtkaml-0.6 ├── guile-2.0.3 ├── gzip-1.4 ├── halibut ├── httrack-3.44.1 ├── icecast-2.3.2 ├── ii ├── inetutils-1.8 ├── io ├── ired ├── ired-0.4 ├── jailkit-2.13 ├── jamvm-1.5.4 ├── jpeg-8c ├── lftp-4.0.9 ├── libarchive-3.0.4 ├── libdraw ├── libevent-2.0.10-stable ├── libewf-20100226 ├── libgee ├── libgit2 ├── libgit2-glib ├── libiconv-1.14 ├── libixp ├── libjpeg-turbo-1.2.1 ├── libpcap-1.2.0 ├── libpng-1.5.1 ├── libtool-2.4 ├── libunistring-0.9.3 ├── libusb-1.0.8 ├── libuv ├── libxml2-2.7.8 ├── llvm-3.0.src ├── lsw ├── lua-5.1.4 ├── lua-5.2.0 ├── luarocks-2.0.7 ├── lum ├── luvit ├── m4-1.4.9 ├── make-3.82 ├── man_db-2.3.20 ├── memcached-1.4.10 ├── mercurial-2.0.1 ├── mesure ├── minicom-2.5 ├── mksend ├── mono-2.10.7 ├── mpc-0.9 ├── mpfr-3.1.0 ├── musl ├── musl-0.9.6 ├── nasm-2.10rc3 ├── ncurses-5.7 ├── neko-1.8.2 ├── neon-0.29.6 ├── netcat-0.7.1 ├── netscan ├── newlisp-10.4.4 ├── ngrep-1.45 ├── node-v0.8.14 ├── nvi-1.79 ├── openssh-5.9p1 ├── openssl-1.0.0e ├── pag ├── pango-1.28.3 ├── patch-2.6 ├── pdksh-5.2.14 ├── pdnsd-1.2.9a ├── pen-0.18.0 ├── perl-5.14.2 ├── php-5.3.8 ├── pkg-config-0.28 ├── polipo ├── poppler-0.16.2 ├── premake-4.3 ├── proftpd-1.3.4a ├── proplib-0.6.0 ├── quark ├── r2-bindings ├── r2-bindings-0.9.2 ├── radare ├── radare-1.5.2 ├── radare2 ├── radare2-0.9.2 ├── rakudo ├── readline-6.2 ├── reiserfsprogs-3.6.21 ├── rss2html ├── rsync-3.0.9 ├── sal ├── sandy ├── sbase ├── screen-4.0.3 ├── screws ├── sdb ├── sic ├── skvm ├── slock ├── slpm ├── sltar ├── smu ├── spp ├── sprop ├── sqlite-src-3071401 ├── sselp ├── ssg ├── st ├── strace-4.6 ├── stut ├── subversion-1.7.7 ├── sundown ├── sup ├── surf ├── sw ├── swig-2.0.0 ├── swk ├── sxiv ├── tabbed ├── tcl8.5.11 ├── tcpdump-4.2.0 ├── testdisk-6.13 ├── text-remote-control ├── tg ├── thingmenu ├── tinycc ├── tmux-1.5 ├── tor-0.2.3.25 ├── toys ├── uClibc-0.9.31 ├── unzip60 ├── upx-3.08-src ├── vala-0.26.0 ├── vala-vapis ├── valabind-0.7.2 ├── valadoc ├── valgrind-3.7.0 ├── vim72 ├── wget-1.16 ├── wmname ├── x2x ├── xbps ├── xbps-0.17 ├── xml2doc ├── xpw ├── xz-5.0.3 ├── yeahlaunch-0.2 └── zlib-1.2.7 ├── slpm ├── slpm-chroot ├── slpm-genimg ├── slpm-genpkg └── xlpm /COPYING: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014, pancake 2 | 3 | All rights reserved. 4 | 5 | Redistribution and use in source and binary forms, with or without modification, 6 | are permitted provided that the following conditions are met: 7 | 8 | * Redistributions of source code must retain the above copyright notice, this 9 | list of conditions and the following disclaimer. 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | * Neither the name of the 'slpm' nor the names of its contributors 14 | may be used to endorse or promote products derived from this software 15 | without specific prior written permission. 16 | 17 | THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ''AS IS'' AND ANY 18 | EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 | DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY 21 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 24 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 26 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | 28 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | VERSION=0.2 2 | PREFIX?=/usr 3 | DESTDIR?= 4 | 5 | all: 6 | 7 | symstall install: 8 | mkdir -p ${DESTDIR}${PREFIX}/bin 9 | ln -fs $${PWD}/slpm ${DESTDIR}${PREFIX}/bin/slpm 10 | ln -fs $${PWD}/xlpm ${DESTDIR}${PREFIX}/bin/xlpm 11 | ln -fs $${PWD}/slpm-genpkg ${DESTDIR}${PREFIX}/bin/slpm-genpkg 12 | ln -fs $${PWD}/slpm-genimg ${DESTDIR}${PREFIX}/bin/slpm-genimg 13 | 14 | uninstall deinstall: 15 | rm -f ${DESTDIR}${PREFIX}/bin/slpm 16 | rm -f ${DESTDIR}${PREFIX}/bin/slpm-genpkg 17 | rm -f ${DESTDIR}${PREFIX}/bin/slpm-genimg 18 | 19 | pull: 20 | wget http://lolcathost.org/b/slpm-${VERSION}.tar.gz 21 | tar xzvf slpm-${VERSION}.tar.gz 22 | cp slpm-${VERSION}/Makefile . 23 | cp slpm-${VERSION}/slpm . 24 | cp slpm-${VERSION}/pkg/* pkg 25 | rm -rf slpm-${VERSION}* 26 | 27 | push: 28 | ${MAKE} dist 29 | pub slpm-${VERSION}.tar.gz 30 | 31 | dist: 32 | rm -rf slpm-${VERSION} 33 | hg clone . slpm-${VERSION} 34 | rm -rf slpm-${VERSION}/.hg 35 | tar czvf slpm-${VERSION}.tar.gz slpm-${VERSION} 36 | rm -rf slpm-${VERSION} 37 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | SLPM: suck-less package manager 2 | ============================== 3 | 4 | Simple package manager that work on many *nix like operating systems. 5 | 6 | GNU/Linux, OSX, iOS, BSD, Solaris, ... 7 | 8 | It installs everything on a directory, you can run programs from inside 9 | the destdir with slpm -x. 10 | 11 | This destdir can be later used as a chroot. 12 | 13 | Notes 14 | ----- 15 | On OSX you would probably want to set: 16 | 17 | export CC="gcc -arch i386" 18 | -------------------------------------------------------------------------------- /TODO: -------------------------------------------------------------------------------- 1 | slpm 2 | ==== 3 | * installation must be from the binpkg instead of running install twice 4 | * choose what to remove from installed packages 5 | FILTER="doc dev man" 6 | FILTER="/bin" 7 | for a in ${FILTER} ; do 8 | rm -f $(find * | grep $a) 9 | done 10 | # must remove empty directories 11 | - remove documentation from packages 12 | - remove shared libraries 13 | - remove static libraries 14 | - remove development files 15 | - remove manpages 16 | - strip binaries 17 | * TODO: rename all .*_executed as .*_done 18 | * Support to pass source pkgname with fullpath 19 | - Add support for other pkg repositories 20 | * Add specific configure flags per pkg or globally 21 | * Add support for hg revision checkouts 22 | * Add specific src base directory swig/ for radare2-swig f.ex 23 | 24 | Experimental stuff to think on.. 25 | ================================ 26 | * Create toolchain to compile for linux-static 27 | - to make a static build distro 28 | * Add support for python setuptools based packages 29 | * Allow to symstall to real system (check conflicts before install) 30 | $ slpm -I ? 31 | * Add support for remote repositories 32 | config: REMOTE=http://nopcode.org/slpm/ 33 | $ slpm -i pkg # if ${REMOTE} != there uses ${WGET} to download the file if not exist in local path (rsync?) 34 | 35 | do want packages: 36 | ================ 37 | - util-linux 38 | - udev 39 | - timezones 40 | - mime / base64 41 | 42 | package related issues 43 | ====================== 44 | * 9base has some warnings. push patch 45 | -------------------------------------------------------------------------------- /config: -------------------------------------------------------------------------------- 1 | # Configuration shellscript for slpm 2 | 3 | # On OSX 4 | #CC="gcc -arch i386" 5 | 6 | # for system wide use 7 | #DESTDIR="${ROOT}/_prefix" 8 | #PREFIX="/" 9 | 10 | # for chroot friendly 11 | PREFIX="${ROOT}/_prefix" 12 | DESTDIR="/" 13 | 14 | WGET="wget --no-check-certificate -c" 15 | REMOTE= #http://nopcode.org/slpm 16 | 17 | #PREFIX="/usr" 18 | 19 | CHROOTABLE=0 20 | DODEPS=1 21 | 22 | IGNEXE=0 # set to '1' to ignore .configure_executed and .build_executed 23 | #CHKSUM=md5sum 24 | 25 | # Directory to store binary packages 26 | #BINPKGDIR=/tmp 27 | 28 | CFLAGS="-O2 -Wall" 29 | #LDFLAGS="-static" 30 | MAKEFLAGS="-j4" 31 | 32 | EXTRA_CFGARGS="" 33 | 34 | # TODO: user-defined-per-package cflags or extra-cfgargs 35 | SYSDEPS="gettext glib" 36 | IGNDIRS="/usr/share/locale /usr/share/doc" 37 | 38 | export WGET CFLAGS LDFLAGS EXTRA_CFGARGS CHKSUM IGNDIRS 39 | -------------------------------------------------------------------------------- /patches/dwm-config.def.h: -------------------------------------------------------------------------------- 1 | /* See LICENSE file for copyright and license details. */ 2 | 3 | /* appearance */ 4 | static const char font[] = "-*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*"; 5 | static const char normbordercolor[] = "#cccccc"; 6 | static const char normbgcolor[] = "#cccccc"; 7 | static const char normfgcolor[] = "#000000"; 8 | static const char selbordercolor[] = "#0066ff"; 9 | static const char selbgcolor[] = "#0066ff"; 10 | static const char selfgcolor[] = "#ffffff"; 11 | static const unsigned int borderpx = 1; /* border pixel of windows */ 12 | static const unsigned int snap = 32; /* snap pixel */ 13 | static const Bool showbar = True; /* False means no bar */ 14 | static const Bool topbar = True; /* False means bottom bar */ 15 | 16 | /* tagging */ 17 | static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; 18 | 19 | static const Rule rules[] = { 20 | /* class instance title tags mask isfloating monitor */ 21 | { "Gimp", NULL, NULL, 0, True, -1 }, 22 | { "Firefox", NULL, NULL, 1 << 8, False, -1 }, 23 | }; 24 | 25 | /* layout(s) */ 26 | static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */ 27 | static const Bool resizehints = True; /* True means respect size hints in tiled resizals */ 28 | 29 | static const Layout layouts[] = { 30 | /* symbol arrange function */ 31 | { "[]=", tile }, /* first entry is default */ 32 | { "><>", NULL }, /* no layout function means floating behavior */ 33 | { "[M]", monocle }, 34 | }; 35 | 36 | /* key definitions */ 37 | #define MODKEY Mod1Mask 38 | #define TAGKEYS(KEY,TAG) \ 39 | { MODKEY, KEY, view, {.ui = 1 << TAG} }, \ 40 | { MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \ 41 | { MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \ 42 | { MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} }, 43 | 44 | /* helper for spawning shell commands in the pre dwm-5.0 fashion */ 45 | #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } } 46 | 47 | /* commands */ 48 | static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL }; 49 | static const char *termcmd[] = { "uxterm", NULL }; 50 | 51 | static Key keys[] = { 52 | /* modifier key function argument */ 53 | { MODKEY, XK_p, spawn, {.v = dmenucmd } }, 54 | { MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } }, 55 | { MODKEY, XK_b, togglebar, {0} }, 56 | { MODKEY, XK_j, focusstack, {.i = +1 } }, 57 | { MODKEY, XK_k, focusstack, {.i = -1 } }, 58 | { MODKEY, XK_h, setmfact, {.f = -0.05} }, 59 | { MODKEY, XK_l, setmfact, {.f = +0.05} }, 60 | { MODKEY, XK_Return, zoom, {0} }, 61 | { MODKEY, XK_Tab, view, {0} }, 62 | { MODKEY|ShiftMask, XK_c, killclient, {0} }, 63 | { MODKEY, XK_t, setlayout, {.v = &layouts[0]} }, 64 | { MODKEY, XK_f, setlayout, {.v = &layouts[1]} }, 65 | { MODKEY, XK_m, setlayout, {.v = &layouts[2]} }, 66 | { MODKEY, XK_space, setlayout, {0} }, 67 | { MODKEY|ShiftMask, XK_space, togglefloating, {0} }, 68 | { MODKEY, XK_0, view, {.ui = ~0 } }, 69 | { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } }, 70 | { MODKEY, XK_comma, focusmon, {.i = -1 } }, 71 | { MODKEY, XK_period, focusmon, {.i = +1 } }, 72 | { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } }, 73 | { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } }, 74 | TAGKEYS( XK_1, 0) 75 | TAGKEYS( XK_2, 1) 76 | TAGKEYS( XK_3, 2) 77 | TAGKEYS( XK_4, 3) 78 | TAGKEYS( XK_5, 4) 79 | TAGKEYS( XK_6, 5) 80 | TAGKEYS( XK_7, 6) 81 | TAGKEYS( XK_8, 7) 82 | TAGKEYS( XK_9, 8) 83 | { MODKEY|ShiftMask, XK_q, quit, {0} }, 84 | }; 85 | 86 | /* button definitions */ 87 | /* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */ 88 | static Button buttons[] = { 89 | /* click event mask button function argument */ 90 | { ClkLtSymbol, 0, Button1, setlayout, {0} }, 91 | { ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} }, 92 | { ClkWinTitle, 0, Button2, zoom, {0} }, 93 | { ClkStatusText, 0, Button2, spawn, {.v = termcmd } }, 94 | { ClkClientWin, MODKEY, Button1, movemouse, {0} }, 95 | { ClkClientWin, MODKEY, Button2, togglefloating, {0} }, 96 | { ClkClientWin, MODKEY, Button3, resizemouse, {0} }, 97 | { ClkTagBar, 0, Button1, view, {0} }, 98 | { ClkTagBar, 0, Button3, toggleview, {0} }, 99 | { ClkTagBar, MODKEY, Button1, tag, {0} }, 100 | { ClkTagBar, MODKEY, Button3, toggletag, {0} }, 101 | }; 102 | 103 | -------------------------------------------------------------------------------- /patches/gdk-iopng.patch: -------------------------------------------------------------------------------- 1 | --- gdk-pixbuf-2.22.1/gdk-pixbuf/io-png.c.orig 2011-02-12 20:00:42.000000000 +0100 2 | +++ gdk-pixbuf-2.22.1/gdk-pixbuf/io-png.c 2011-02-12 20:03:14.000000000 +0100 3 | @@ -183,7 +183,7 @@ 4 | error_msg); 5 | } 6 | 7 | - longjmp (png_save_ptr->jmpbuf, 1); 8 | + png_longjmp (png_save_ptr, 1); 9 | } 10 | 11 | static void 12 | @@ -287,7 +287,7 @@ 13 | return NULL; 14 | } 15 | 16 | - if (setjmp (png_ptr->jmpbuf)) { 17 | + if (setjmp (png_jmpbuf (png_ptr))) { 18 | g_free (rows); 19 | 20 | if (pixbuf) 21 | @@ -459,7 +459,7 @@ 22 | return NULL; 23 | } 24 | 25 | - if (setjmp (lc->png_read_ptr->jmpbuf)) { 26 | + if (setjmp (png_jmpbuf (lc->png_read_ptr))) { 27 | if (lc->png_info_ptr) 28 | png_destroy_read_struct(&lc->png_read_ptr, NULL, NULL); 29 | g_free(lc); 30 | @@ -531,7 +531,7 @@ 31 | lc->error = error; 32 | 33 | /* Invokes our callbacks as needed */ 34 | - if (setjmp (lc->png_read_ptr->jmpbuf)) { 35 | + if (setjmp (png_jmpbuf (lc->png_read_ptr))) { 36 | lc->error = NULL; 37 | return FALSE; 38 | } else { 39 | @@ -769,7 +769,7 @@ 40 | error_msg); 41 | } 42 | 43 | - longjmp (png_read_ptr->jmpbuf, 1); 44 | + png_longjmp (png_read_ptr, 1); 45 | } 46 | 47 | static void 48 | @@ -978,7 +978,7 @@ 49 | success = FALSE; 50 | goto cleanup; 51 | } 52 | - if (setjmp (png_ptr->jmpbuf)) { 53 | + if (setjmp (png_jmpbuf (png_ptr))) { 54 | success = FALSE; 55 | goto cleanup; 56 | } 57 | -------------------------------------------------------------------------------- /patches/gettext-018: -------------------------------------------------------------------------------- 1 | --- gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h.orig 2012-11-21 16:38:13.000000000 +0100 2 | +++ gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h 2012-11-21 16:38:41.000000000 +0100 3 | @@ -140,8 +140,6 @@ 4 | /* It is very rare that the developer ever has full control of stdin, 5 | so any use of gets warrants an unconditional warning. Assume it is 6 | always declared, since it is required by C89. */ 7 | -#undef gets 8 | -_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); 9 | 10 | #if @GNULIB_FOPEN@ 11 | # if @REPLACE_FOPEN@ 12 | -------------------------------------------------------------------------------- /patches/libiconv-114.patch: -------------------------------------------------------------------------------- 1 | --- libiconv-1.14/srclib/stdio.in.h.orig 2012-11-19 11:42:28.000000000 +0100 2 | +++ libiconv-1.14/srclib/stdio.in.h 2012-11-19 11:42:48.000000000 +0100 3 | @@ -1003,11 +1003,6 @@ 4 | _GL_CXXALIAS_SYS (gets, char *, (char *s)); 5 | # undef gets 6 | # endif 7 | -_GL_CXXALIASWARN (gets); 8 | -/* It is very rare that the developer ever has full control of stdin, 9 | - so any use of gets warrants an unconditional warning. Assume it is 10 | - always declared, since it is required by C89. */ 11 | -_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); 12 | #endif 13 | 14 | 15 | -------------------------------------------------------------------------------- /pkg/0xFFFF: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/0xFFFF 2 | DESC="Free Fiasco Firmware Flasher" 3 | TYPE=hg 4 | DEPS=libusb 5 | -------------------------------------------------------------------------------- /pkg/9base: -------------------------------------------------------------------------------- 1 | URL=http://code.suckless.org/hg/9base 2 | TYPE=hg 3 | DESC="plan9 tools for unix" 4 | -------------------------------------------------------------------------------- /pkg/ImageMagick-6.7.4-0: -------------------------------------------------------------------------------- 1 | URL=http://www.imagemagick.org/download/ImageMagick-6.7.4-0.tar.xz 2 | TYPE=tar 3 | DESC="commandline image manipulation utilities" 4 | -------------------------------------------------------------------------------- /pkg/Python-2.7: -------------------------------------------------------------------------------- 1 | URL=http://www.python.org/ftp/python/2.7/Python-2.7.tar.bz2 2 | TYPE=tar 3 | DESC="Python programming language" 4 | -------------------------------------------------------------------------------- /pkg/Python-3.2: -------------------------------------------------------------------------------- 1 | URL=http://www.python.org/ftp/python/3.2/Python-3.2.tar.bz2 2 | TYPE=tar 3 | DESC="Python programming language" 4 | -------------------------------------------------------------------------------- /pkg/Python-3.2rc3: -------------------------------------------------------------------------------- 1 | URL=http://python.org/ftp/python/3.2/Python-3.2rc3.tar.bz2 2 | DESC="Python programming language" 3 | -------------------------------------------------------------------------------- /pkg/acr: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/acr 2 | DESC="AutoConf Replacement" 3 | TYPE=hg 4 | -------------------------------------------------------------------------------- /pkg/acr-0.8.6: -------------------------------------------------------------------------------- 1 | URL=http://lolcathost.org/b/acr-0.8.6.tar.gz 2 | TYPE=tar 3 | DESC="autoconf replacement" 4 | -------------------------------------------------------------------------------- /pkg/alt: -------------------------------------------------------------------------------- 1 | URL=git://github.com/radare/alt 2 | DESC="Abstract Language Tree" 3 | TYPE=git 4 | -------------------------------------------------------------------------------- /pkg/apr-1.4.6: -------------------------------------------------------------------------------- 1 | URL=http://apache.rediris.es/apr/apr-1.4.6.tar.gz 2 | TYPE=tar 3 | DESC="Apache Portable Runtime" 4 | -------------------------------------------------------------------------------- /pkg/apr-util-1.5.1: -------------------------------------------------------------------------------- 1 | URL=http://apache.rediris.es/apr/apr-util-1.5.1.tar.gz 2 | TYPE=tar 3 | DESC="Apache Portable Runtime" 4 | DEPS=apr 5 | CFGARGS=--with-apr=/home/pancake/prg/slpm/_prefix 6 | 7 | -------------------------------------------------------------------------------- /pkg/arm-1.4.5.0: -------------------------------------------------------------------------------- 1 | URL=http://www.atagar.com/arm/resources/static/arm-1.4.5.0.tar.bz2 2 | DESC="Anonymizing Relay Monitor" 3 | PKGDIRNAME=arm 4 | TYPE=tar 5 | -------------------------------------------------------------------------------- /pkg/ashell-0.3: -------------------------------------------------------------------------------- 1 | URL=http://downloads.sourceforge.net/project/ashell/ashell-0.3.tar.bz2 2 | TYPE=tar 3 | DESC="Tunnel shell commands thought HTTP, Socks4 or Socks5 proxies" 4 | -------------------------------------------------------------------------------- /pkg/atk-2.0.1: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnome.org/pub/gnome/sources/atk/2.0/atk-2.0.1.tar.bz2 2 | TYPE=tar 3 | DESC="GTK+ accessibility toolkit" 4 | -------------------------------------------------------------------------------- /pkg/autoconf-2.68: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/autoconf/autoconf-2.68.tar.gz 2 | TYPE=tar 3 | DESC="GNU autoconf" 4 | -------------------------------------------------------------------------------- /pkg/automake-1.11.1: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/automake/automake-1.11.1.tar.bz2 2 | TYPE=tar 3 | DESC="GNU automake" 4 | -------------------------------------------------------------------------------- /pkg/bash-4.2: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/bash/bash-4.2.tar.gz 2 | DESC="GNU BASH shell" 3 | -------------------------------------------------------------------------------- /pkg/bgs: -------------------------------------------------------------------------------- 1 | URL=http://s01.de/~tox/hg/bgs 2 | TYPE=hg 3 | DESC="back ground setter" 4 | -------------------------------------------------------------------------------- /pkg/binutils-2.22: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/binutils/binutils-2.22.tar.bz2 2 | TYPE=tar 3 | DESC="GNU binutils" 4 | -------------------------------------------------------------------------------- /pkg/bison-2.4.3: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/bison/bison-2.4.3.tar.bz2 2 | DESC="GNU Bison" 3 | -------------------------------------------------------------------------------- /pkg/busybox: -------------------------------------------------------------------------------- 1 | URL=git://git.busybox.net/busybox 2 | TYPE=git 3 | DESC="utilities for rescue and embedded systems" 4 | PKGCONFIGURE="make defconfig CONFIG_PREFIX=${PREFIX}" 5 | INSTALL_POST="cp -rfa ${WRKDIR}/${PKG}/${BASEDIR}/_install/* ." 6 | -------------------------------------------------------------------------------- /pkg/busybox-1.20.2: -------------------------------------------------------------------------------- 1 | URL=http://www.busybox.net/downloads/busybox-1.20.2.tar.bz2 2 | TYPE=tar 3 | DESC="utilities for rescue and embedded systems" 4 | PKGCONFIGURE="make defconfig PREFIX=${DESTDIR}${PREFIX}" 5 | INSTALL_POST="cp -rfa ${WRKDIR}/${PKG}/${BASEDIR}/_install/* ." 6 | -------------------------------------------------------------------------------- /pkg/bzip2-1.0.6: -------------------------------------------------------------------------------- 1 | URL=http://bzip.org/1.0.6/bzip2-1.0.6.tar.gz 2 | TYPE=tar 3 | DESC="bzip2 compression tool" 4 | -------------------------------------------------------------------------------- /pkg/cairo-1.12.6: -------------------------------------------------------------------------------- 1 | URL=http://cairographics.org/releases/cairo-1.12.6.tar.gz 2 | DESC="Cairo vector graphics library" 3 | TYPE=tar 4 | [ "$(uname)" = "Darwin" ] && \ 5 | CFGARGS="${CFGARGS} --enable-quartz=yes --enable-quartz-image=yes" 6 | -------------------------------------------------------------------------------- /pkg/ccache-3.1.6: -------------------------------------------------------------------------------- 1 | URL=http://samba.org/ftp/ccache/ccache-3.1.6.tar.bz2 2 | TYPE=tar 3 | DESC="C compiler cache wrapper" 4 | -------------------------------------------------------------------------------- /pkg/charset: -------------------------------------------------------------------------------- 1 | URL=svn://svn.tartarus.org/sgt/charset 2 | TYPE=svn 3 | DESC="charset library for halibut" 4 | PKGINSTALL="echo no install ; #" 5 | -------------------------------------------------------------------------------- /pkg/clutter-1.6.8: -------------------------------------------------------------------------------- 1 | URL=http://source.clutter-project.org/sources/clutter/1.6/clutter-1.6.8.tar.bz2 2 | DESC="Clutter library" 3 | DEPS=glib 4 | -------------------------------------------------------------------------------- /pkg/cmake-2.8.6: -------------------------------------------------------------------------------- 1 | URL=http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz 2 | DESC="Cross Platform Make" 3 | -------------------------------------------------------------------------------- /pkg/confuse-2.7: -------------------------------------------------------------------------------- 1 | URL=http://savannah.nongnu.org/download/confuse/confuse-2.7.tar.gz 2 | TYPE=tar 3 | DESC="configuration file parser library" 4 | -------------------------------------------------------------------------------- /pkg/coreutils-8.14: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/coreutils/coreutils-8.14.tar.xz 2 | TYPE=tar 3 | DESC="GNU Core utilities" 4 | -------------------------------------------------------------------------------- /pkg/curl-7.21.4: -------------------------------------------------------------------------------- 1 | URL=http://curl.haxx.se/download/curl-7.21.4.tar.bz2 2 | TYPE=tar 3 | DESC="commandline tool for transfering data from URLs" 4 | -------------------------------------------------------------------------------- /pkg/dash-0.5.7: -------------------------------------------------------------------------------- 1 | URL=http://gondor.apana.org.au/~herbert/dash/files/dash-0.5.7.tar.gz 2 | TYPE=tar 3 | DESC="small POSIX compliant shell" 4 | -------------------------------------------------------------------------------- /pkg/db-5.3.21: -------------------------------------------------------------------------------- 1 | URL=http://download.oracle.com/berkeley-db/db-5.3.21.tar.gz 2 | TYPE=tar 3 | DESC="Oracle DataBase" 4 | -------------------------------------------------------------------------------- /pkg/dbus-1.4.1: -------------------------------------------------------------------------------- 1 | URL=http://dbus.freedesktop.org/releases/dbus/dbus-1.4.1.tar.gz 2 | DESC="D-Bus message bus system" 3 | -------------------------------------------------------------------------------- /pkg/distcc-3.2rc1: -------------------------------------------------------------------------------- 1 | URL=http://distcc.googlecode.com/files/distcc-3.2rc1.tar.bz2 2 | TYPE=tar 3 | DESC="Distributed CC wrapper" 4 | -------------------------------------------------------------------------------- /pkg/dmc: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/dmc 2 | TYPE=hg 3 | DESC="dynamic mail client" 4 | -------------------------------------------------------------------------------- /pkg/dmenu: -------------------------------------------------------------------------------- 1 | URL=http://code.suckless.org/hg/dmenu 2 | TYPE=hg 3 | DESC="dynamic menu for X" 4 | DEPS=libdraw 5 | -------------------------------------------------------------------------------- /pkg/doblog: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/doblog 2 | TYPE=hg 3 | DESC="commandline blog and administration tool" 4 | MSG="Install target is broken. Not honoring DESTDIR" 5 | -------------------------------------------------------------------------------- /pkg/dropbear-0.53.1: -------------------------------------------------------------------------------- 1 | URL=http://matt.ucc.asn.au/dropbear/releases/dropbear-0.53.1.tar.gz 2 | TYPE=tar 3 | DESC="dropbear ssh client and server" 4 | -------------------------------------------------------------------------------- /pkg/dvtm-0.7: -------------------------------------------------------------------------------- 1 | URL=http://www.brain-dump.org/projects/dvtm/dvtm-0.7.tar.gz 2 | TYPE=tar 3 | DESC="dynamic virtual terminal manager" 4 | PRECONFIGURE=_foo 5 | _foo() { 6 | mv config.mk config.mk.orig 7 | sed -e 's,#LIBS,LIBS,' config.mk.orig > config.mk 8 | } 9 | -------------------------------------------------------------------------------- /pkg/dwm: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/dwm 2 | TYPE=hg 3 | DESC="dynamic window manager" 4 | CFGFILE="../../patches/dwm-config.h" 5 | PRECONFIGURE="cp $CFGFILE config.h" 6 | -------------------------------------------------------------------------------- /pkg/dwm-5.6.1: -------------------------------------------------------------------------------- 1 | URL=http://dl.suckless.org/dwm/dwm-5.6.1.tar.gz 2 | TYPE=tar 3 | DESC="dynamic window manager" 4 | -------------------------------------------------------------------------------- /pkg/e2fsprogs-1.41.14: -------------------------------------------------------------------------------- 1 | URL=http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.41.14.tar.gz 2 | DESC="ext2 filesystem programs" 3 | TYPE=tar 4 | -------------------------------------------------------------------------------- /pkg/expat-2.0.1: -------------------------------------------------------------------------------- 1 | URL=http://switch.dl.sourceforge.net/project/expat/expat/2.0.1/expat-2.0.1.tar.gz 2 | TYPE=tar 3 | DESC="expat xml parser" 4 | -------------------------------------------------------------------------------- /pkg/fakeroot_1.14.4: -------------------------------------------------------------------------------- 1 | URL=http://ftp.debian.org/debian/pool/main/f/fakeroot/fakeroot_1.12.4.tar.gz 2 | TYPE=tar 3 | DESC="fake root utility" 4 | DEPS="autoconf automake" 5 | MSG="This package is broken" 6 | -------------------------------------------------------------------------------- /pkg/flate: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/flate 2 | TYPE=hg 3 | DESC="deflate implementation" 4 | -------------------------------------------------------------------------------- /pkg/flo: -------------------------------------------------------------------------------- 1 | URL=git://github.com/alexanderte/flo.git 2 | DESC="Organize events, to-dos, and deadlines" 3 | TYPE=git 4 | -------------------------------------------------------------------------------- /pkg/fontconfig-2.11.1: -------------------------------------------------------------------------------- 1 | URL=http://www.freedesktop.org/software/fontconfig/release/fontconfig-2.11.1.tar.bz2 2 | TYPE=tar 3 | DESC="font configuration tool" 4 | -------------------------------------------------------------------------------- /pkg/freetype-2.4.4: -------------------------------------------------------------------------------- 1 | URL=http://download.savannah.gnu.org/releases/freetype/freetype-2.4.4.tar.bz2 2 | DESC=FreeType 3 | -------------------------------------------------------------------------------- /pkg/gawk-3.1.8: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/gawk/gawk-3.1.8.tar.bz2 2 | TYPE=tar 3 | DESC="GNU AWK" 4 | -------------------------------------------------------------------------------- /pkg/gc-7.1: -------------------------------------------------------------------------------- 1 | URL=http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.1.tar.gz 2 | TYPE=tar 3 | DESC="library for garbage collection used by neko" 4 | -------------------------------------------------------------------------------- /pkg/gcc-c-4.6.2: -------------------------------------------------------------------------------- 1 | #URL=http://gcc.parentingamerica.com/releases/gcc-4.6.2/gcc-core-4.6.2.tar.bz2 2 | URL=http://gcc.parentingamerica.com/releases/gcc-4.6.2/gcc-4.6.2.tar.bz2 3 | PKGDIRNAME=gcc-4.6.2 4 | TYPE=tar 5 | DESC="GNU C compiler" 6 | DEPS="mpc" 7 | # --enable-go here!! 8 | # --enable-gcc must use: 9 | # http://gcc.parentingamerica.com/releases/gcc-4.6.2/gcc-g++-4.6.2.tar.bz2 10 | CFGARGS="--enable-languages=c" 11 | -------------------------------------------------------------------------------- /pkg/gdb-7.3.1: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/gdb/gdb-7.3.1.tar.bz2 2 | DESC="GNU Debugger" 3 | -------------------------------------------------------------------------------- /pkg/gdbm-1.10: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/gdbm/gdbm-1.10.tar.gz 2 | TYPE=tar 3 | DESC="GNU dbm" 4 | -------------------------------------------------------------------------------- /pkg/gdk-pixbuf-2.24.0: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.24/gdk-pixbuf-2.24.0.tar.bz2 2 | DESC="gdk pixbuf" 3 | CFGARGS="--disable-introspection --without-libtiff --disable-gtk-doc-html --disable-glibtest" 4 | TYPE=tar 5 | PATCHES=gdk-iopng 6 | -------------------------------------------------------------------------------- /pkg/gel: -------------------------------------------------------------------------------- 1 | URL=git://github.com/tigrux/gel 2 | TYPE=git 3 | DESC="GObject-based Scheme-like programming language" 4 | PKGCONFIGURE="sh autogen.sh ; ./configure --prefix=${PREFIX}" 5 | -------------------------------------------------------------------------------- /pkg/gettext-0.18.1.1: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz 2 | DESC="GNU Gettext" 3 | CFGARGS="--disable-java" 4 | PATCHES=gettext-018 5 | -------------------------------------------------------------------------------- /pkg/git-1.8.0: -------------------------------------------------------------------------------- 1 | URL=http://git-core.googlecode.com/files/git-1.8.0.tar.gz 2 | TYPE=tar 3 | DESC="the fast version control system" 4 | -------------------------------------------------------------------------------- /pkg/glib-2.43.1: -------------------------------------------------------------------------------- 1 | TYPE=tar 2 | URL=http://ftp.gnome.org/pub/gnome/sources/glib/2.31/glib-2.43.1.tar.bz2 3 | DESC="Common C routines for GObject based programs" 4 | DEPS="gettext libiconv" 5 | -------------------------------------------------------------------------------- /pkg/gmp-5.0.2: -------------------------------------------------------------------------------- 1 | URL=ftp://ftp.gmplib.org/pub/gmp-5.0.2/gmp-5.0.2.tar.bz2 2 | DESC="GNU Big number library" 3 | -------------------------------------------------------------------------------- /pkg/go: -------------------------------------------------------------------------------- 1 | URL=https://go.googlecode.com/hg 2 | DESC="Go language compiler" 3 | TYPE=hg 4 | 5 | MAKEFUN=_gomake 6 | _gomake() { 7 | cd src 8 | ./all.bash 9 | } 10 | PKGINSTALL=_goinstall 11 | _goinstall() { 12 | # handle args (DESTDIR and so on..) 13 | eval $@ 14 | # copy binariez 15 | GOPATH=${WRKDIR}/go 16 | PFX=${DESTDIR}/${PREFIX} 17 | mkdir -p ${PFX}/bin ${PFX}/go 18 | cp -rf ${GOPATH}/bin/* ${PFX}/bin 19 | cp -rf ${GOPATH}/pkg ${PFX}/go 20 | # create profile shit 21 | PF=${PFX}/etc/profile.d/ 22 | mkdir -p ${PF} 23 | PF="${PF}/go.sh" 24 | echo GOROOT=\${PREFIX}/go > ${PF} 25 | } 26 | -------------------------------------------------------------------------------- /pkg/graphviz-2.28.0: -------------------------------------------------------------------------------- 1 | URL=http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.28.0.tar.gz 2 | TYPE=tar 3 | DESC="GraphViz library and dot utilities" 4 | -------------------------------------------------------------------------------- /pkg/groff-1.21: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/groff/groff-1.21.tar.gz 2 | DESC="GNU roff" 3 | TYPE=tar 4 | -------------------------------------------------------------------------------- /pkg/gtk+-3.4.4: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnome.org/pub/gnome/sources/gtk+/3.4/gtk+-3.4.4.tar.xz 2 | DESC="The GTK+ Toolkit (v3)" 3 | CFGARGS="--disable-introspection --disable-gtk-doc-html" 4 | CFGARGS="${CFGARGS} --enable-broadway" # enable html5 backend 5 | [ "$(uname)" = "Darwin" ] && \ 6 | CFGARGS="${CFGARGS} --enable-quartz-backend" 7 | INSTALL_POST="pango-querymodules > ${PREFIX}/etc/pango/pango.modules" 8 | DEPS="glib gdk-pixbuf pango cairo" 9 | TYPE=tar 10 | -------------------------------------------------------------------------------- /pkg/gtkaml: -------------------------------------------------------------------------------- 1 | URL="http://gtkaml.googlecode.com/svn/trunk/" 2 | DESC="Application Markup Language for GTK+Vala" 3 | DEPS=vala 4 | TYPE=svn 5 | PKGCONFIGURE="sh autogen.sh --prefix=${PREFIX}" 6 | -------------------------------------------------------------------------------- /pkg/gtkaml-0.6: -------------------------------------------------------------------------------- 1 | URL=http://gtkaml.googlecode.com/svn/branches/gtkaml-0.6 2 | TYPE=svn 3 | DESC="Application Markup Language for GTK+Vala" 4 | PKGCONFIGURE="sh autogen.sh --prefix=${PREFIX}" 5 | DEPS=vala 6 | -------------------------------------------------------------------------------- /pkg/guile-2.0.3: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/pub/gnu/guile/guile-2.0.3.tar.gz 2 | DEPS=libunistring 3 | DESC="GNU Scheme compiler and interpreter" 4 | #CFGARGS="--without-libunistring-prefix" 5 | -------------------------------------------------------------------------------- /pkg/gzip-1.4: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/gzip/gzip-1.4.tar.xz 2 | TYPE=tar 3 | DESC="gzip compression tool" 4 | -------------------------------------------------------------------------------- /pkg/halibut: -------------------------------------------------------------------------------- 1 | URL=svn://svn.tartarus.org/sgt/halibut 2 | TYPE=svn 3 | DESC="halibut documentation system" 4 | DEPS="charset" 5 | PKGBUILD="make && cd doc && make" 6 | mkdir -p ${PREFIX}/man/man1 7 | -------------------------------------------------------------------------------- /pkg/httrack-3.44.1: -------------------------------------------------------------------------------- 1 | URL=http://download.httrack.com/httrack-3.44.1.tar.gz 2 | DESC="HTTP website copier" 3 | -------------------------------------------------------------------------------- /pkg/icecast-2.3.2: -------------------------------------------------------------------------------- 1 | URL=http://downloads.xiph.org/releases/icecast/icecast-2.3.2.tar.gz 2 | TYPE=tar 3 | DESC="icecast streaming server" 4 | -------------------------------------------------------------------------------- /pkg/ii: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/ii 2 | TYPE=hg 3 | DESC="irc it, simple FIFO based irc client" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/inetutils-1.8: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/inetutils/inetutils-1.8.tar.gz 2 | DESC="linux internet utilities" 3 | TYPE=tar 4 | -------------------------------------------------------------------------------- /pkg/io: -------------------------------------------------------------------------------- 1 | URL=git://github.com/stevedekorte/io.git 2 | TYPE=git 3 | DESC="IO language" 4 | -------------------------------------------------------------------------------- /pkg/ired: -------------------------------------------------------------------------------- 1 | URL=http://radare.org/hg/ired 2 | TYPE=hg 3 | DESC="interactive raw editor" 4 | -------------------------------------------------------------------------------- /pkg/ired-0.4: -------------------------------------------------------------------------------- 1 | URL=http://radare.org/get/ired-0.4.tar.gz 2 | TYPE=tar 3 | DESC="minimal radare-like hexadecimal editor" 4 | -------------------------------------------------------------------------------- /pkg/jailkit-2.13: -------------------------------------------------------------------------------- 1 | URL=http://olivier.sessink.nl/jailkit/jailkit-2.13.tar.bz2 2 | TYPE=tar 3 | DESC="chroot jail utilities" 4 | -------------------------------------------------------------------------------- /pkg/jamvm-1.5.4: -------------------------------------------------------------------------------- 1 | URL=http://netcologne.dl.sourceforge.net/project/jamvm/jamvm/JamVM%201.5.4/jamvm-1.5.4.tar.gz 2 | TYPE=tar 3 | DESC="fast and small java virtual machine" 4 | -------------------------------------------------------------------------------- /pkg/jpeg-8c: -------------------------------------------------------------------------------- 1 | URL=http://www.ijg.org/files/jpegsrc.v8c.tar.gz 2 | DESC=libjpeg 3 | -------------------------------------------------------------------------------- /pkg/lftp-4.0.9: -------------------------------------------------------------------------------- 1 | URL=http://ftp.yars.free.net/pub/source/lftp/lftp-4.0.9.tar.bz2 2 | TYPE=tar 3 | DESC="sftp/ftp/http commandline client" 4 | -------------------------------------------------------------------------------- /pkg/libarchive-3.0.4: -------------------------------------------------------------------------------- 1 | URL=https://github.com/downloads/libarchive/libarchive/libarchive-3.0.4.tar.gz 2 | DEPS=libiconv 3 | TYPE=tar 4 | DESC="C library for reading and writing tar, cpio, zip, iso and other" 5 | -------------------------------------------------------------------------------- /pkg/libdraw: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/libdraw 2 | TYPE=hg 3 | DESC="core drawing library for X11 from suckless" 4 | -------------------------------------------------------------------------------- /pkg/libevent-2.0.10-stable: -------------------------------------------------------------------------------- 1 | URL=http://monkey.org/~provos/libevent-2.0.10-stable.tar.gz 2 | TYPE=tar 3 | DESC="event handling library" 4 | -------------------------------------------------------------------------------- /pkg/libewf-20100226: -------------------------------------------------------------------------------- 1 | URL=http://downloads.sourceforge.net/project/libewf/libewf/libewf-20100226/libewf-20100226.tar.gz 2 | TYPE=tar 3 | DESC="LibEWF forensic file format library" 4 | -------------------------------------------------------------------------------- /pkg/libgee: -------------------------------------------------------------------------------- 1 | URL=git://gitorious.org/libgee/libgee.git 2 | TYPE=git 3 | PKGCONFIGURE="sh autogen.sh --prefix=${PREFIX}" 4 | -------------------------------------------------------------------------------- /pkg/libgit2: -------------------------------------------------------------------------------- 1 | URL=git://github.com/libgit2/libgit2.git 2 | TYPE=git 3 | DESC="libgit2 library" 4 | -------------------------------------------------------------------------------- /pkg/libgit2-glib: -------------------------------------------------------------------------------- 1 | URL=git://git.gnome.org/libgit2-glib 2 | TYPE=git 3 | DESC="GObject bindings for libgit2" 4 | DEPS="libgit2" 5 | -------------------------------------------------------------------------------- /pkg/libiconv-1.14: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz 2 | TYPE=tar 3 | DESC="GNU international charset conversion library" 4 | PATCHES=libiconv-114 5 | -------------------------------------------------------------------------------- /pkg/libixp: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/libixp 2 | TYPE=hg 3 | DESC="minimalist 9P client/server library for Unix, developed from scratch" 4 | -------------------------------------------------------------------------------- /pkg/libjpeg-turbo-1.2.1: -------------------------------------------------------------------------------- 1 | URL=http://downloads.sourceforge.net/project/libjpeg-turbo/1.2.1/libjpeg-turbo-1.2.1.tar.gz 2 | TYPE=tar 3 | DESC="MMX/SSE optimized version of libjpeg (2-4x faster) only for x86,x86-64" 4 | -------------------------------------------------------------------------------- /pkg/libpcap-1.2.0: -------------------------------------------------------------------------------- 1 | URL=http://www.tcpdump.org/release/libpcap-1.2.0.tar.gz 2 | TYPE=tar 3 | DESC="Network packet capture library" 4 | -------------------------------------------------------------------------------- /pkg/libpng-1.5.1: -------------------------------------------------------------------------------- 1 | URL=http://download.sourceforge.net/libpng/libpng-1.5.1.tar.gz 2 | DESC="PNG library" 3 | -------------------------------------------------------------------------------- /pkg/libtool-2.4: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gul.es/gnu/ftp.gnu.org/gnu/libtool/libtool-2.4.tar.gz 2 | TYPE=tar 3 | DESC="GNU libtool" 4 | -------------------------------------------------------------------------------- /pkg/libunistring-0.9.3: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/libunistring/libunistring-0.9.3.tar.gz 2 | DESC="GNU unicode string library" 3 | -------------------------------------------------------------------------------- /pkg/libusb-1.0.8: -------------------------------------------------------------------------------- 1 | URL=http://downloads.sourceforge.net/project/libusb/libusb-1.0/libusb-1.0.8/libusb-1.0.8.tar.bz2 2 | TYPE=tar 3 | DESC="Library to handle USB" 4 | -------------------------------------------------------------------------------- /pkg/libuv: -------------------------------------------------------------------------------- 1 | URL=git://github.com/joyent/libuv.git 2 | TYPE=git 3 | DESC="asynchrunous library from nodejs" 4 | -------------------------------------------------------------------------------- /pkg/libxml2-2.7.8: -------------------------------------------------------------------------------- 1 | URL=ftp://xmlsoft.org/libxml2/libxml2-2.7.8.tar.gz 2 | DESC="GNOME's XML C parser and toolkit" 3 | -------------------------------------------------------------------------------- /pkg/llvm-3.0.src: -------------------------------------------------------------------------------- 1 | URL=http://llvm.org/releases/3.0/llvm-3.0.tar.gz 2 | TYPE=tar 3 | DESC="LLVM compiler infrastructure" 4 | -------------------------------------------------------------------------------- /pkg/lsw: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/lsw 2 | TYPE=hg 3 | DESC="list x11 window clients" 4 | -------------------------------------------------------------------------------- /pkg/lua-5.1.4: -------------------------------------------------------------------------------- 1 | URL=http://www.lua.org/ftp/lua-5.1.4.tar.gz 2 | TYPE=tar 3 | DESC="LUA programming language" 4 | MAKEFUN=_luamake 5 | _luamake() { 6 | ${MAKE} posix 7 | } 8 | PKGINSTALL=_luainstall 9 | _luainstall() { 10 | # HACK! 11 | echo PREFIX=${PREFIX} 12 | echo DESTDIR=${DESTDIR} 13 | if [ "${DESTDIR}" = / ]; then 14 | ${MAKE} install INSTALL_TOP=${PREFIX} 15 | else 16 | ${MAKE} install INSTALL_TOP=${DESTDIR} 17 | fi 18 | } 19 | -------------------------------------------------------------------------------- /pkg/lua-5.2.0: -------------------------------------------------------------------------------- 1 | URL=http://www.lua.org/ftp/lua-5.2.0.tar.gz 2 | TYPE=tar 3 | DESC="LUA programming language" 4 | MAKEFUN=_luamake 5 | _luamake() { 6 | ${MAKE} posix 7 | } 8 | PKGINSTALL=_luainstall 9 | _luainstall() { 10 | # HACK! 11 | echo PREFIX=${PREFIX} 12 | echo DESTDIR=${DESTDIR} 13 | if [ "${DESTDIR}" = / ]; then 14 | ${MAKE} install INSTALL_TOP=${PREFIX} 15 | else 16 | ${MAKE} install INSTALL_TOP=${DESTDIR} 17 | fi 18 | } 19 | -------------------------------------------------------------------------------- /pkg/luarocks-2.0.7: -------------------------------------------------------------------------------- 1 | URL=http://luarocks.org/releases/luarocks-2.0.7.tar.gz 2 | TYPE=tar 3 | DESC="rocks. the lua module manager" 4 | -------------------------------------------------------------------------------- /pkg/lum: -------------------------------------------------------------------------------- 1 | URL=git://github.com/luvit/lum.git 2 | DESC="luvit module manager" 3 | TYPE=git 4 | -------------------------------------------------------------------------------- /pkg/luvit: -------------------------------------------------------------------------------- 1 | URL=git://github.com/luvit/luvit.git 2 | DESC="lua+libuv" 3 | TYPE=git 4 | -------------------------------------------------------------------------------- /pkg/m4-1.4.9: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.bz2 2 | TYPE=tar 3 | DESC="M4 macro language" 4 | -------------------------------------------------------------------------------- /pkg/make-3.82: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/make/make-3.82.tar.bz2 2 | DESC="GNU Make" 3 | -------------------------------------------------------------------------------- /pkg/man_db-2.3.20: -------------------------------------------------------------------------------- 1 | TYPE=tar 2 | URL=http://download.savannah.gnu.org/releases/man-db/man_db-2.3.20.tar.gz 3 | DESC="man pages" 4 | DEPS="gdbm" 5 | -------------------------------------------------------------------------------- /pkg/memcached-1.4.10: -------------------------------------------------------------------------------- 1 | URL=http://memcached.googlecode.com/files/memcached-1.4.10.tar.gz 2 | TYPE=tar 3 | DESC="memcached" 4 | DEPS=libevent 5 | -------------------------------------------------------------------------------- /pkg/mercurial-2.0.1: -------------------------------------------------------------------------------- 1 | URL=http://mercurial.selenic.com/release/mercurial-2.0.1.tar.gz 2 | TYPE=tar 3 | DESC="HG version control" 4 | -------------------------------------------------------------------------------- /pkg/mesure: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/mesure 2 | TYPE=hg 3 | DESC="measure tool for files, disk, network, data" 4 | -------------------------------------------------------------------------------- /pkg/minicom-2.5: -------------------------------------------------------------------------------- 1 | URL=http://fossies.org/linux/misc/minicom-2.5.tar.gz 2 | TYPE=tar 3 | DESC="minicom serial console" 4 | -------------------------------------------------------------------------------- /pkg/mksend: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/mksend 2 | TYPE=hg 3 | DESC="construct and send network packets" 4 | -------------------------------------------------------------------------------- /pkg/mono-2.10.7: -------------------------------------------------------------------------------- 1 | URL=http://download.mono-project.com/sources/mono/mono-2.10.7.tar.bz2 2 | TYPE=tar 3 | DESC="Mono .NET virtual machine" 4 | -------------------------------------------------------------------------------- /pkg/mpc-0.9: -------------------------------------------------------------------------------- 1 | URL=http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz 2 | TYPE=tar 3 | DEPS="gmp mpfr" 4 | DESC="Multi precission math library" 5 | -------------------------------------------------------------------------------- /pkg/mpfr-3.1.0: -------------------------------------------------------------------------------- 1 | URL=http://www.mpfr.org/mpfr-current/mpfr-3.1.0.tar.xz 2 | TYPE=tar 3 | DESC="Multi precission math library" 4 | -------------------------------------------------------------------------------- /pkg/musl: -------------------------------------------------------------------------------- 1 | URL=git://git.etalabs.net/musl 2 | TYPE=git 3 | DESC="lightweight, fast, simple and free standard C library" 4 | PRECONFIGURE=_musl_precfg 5 | 6 | _musl_precfg() { 7 | case `uname -m` in 8 | i?86) 9 | echo "ARCH=i386" > ${WRKDIR}/${PKG}/${BASEDIR}/config.mak 10 | ;; 11 | x86_64) 12 | echo "ARCH=x86_64" > ${WRKDIR}/${PKG}/${BASEDIR}/config.mak 13 | ;; 14 | *) 15 | echo "Unsupported architecture" > /dev/stderr 16 | exit 1 17 | ;; 18 | esac 19 | } 20 | -------------------------------------------------------------------------------- /pkg/musl-0.9.6: -------------------------------------------------------------------------------- 1 | URL=http://www.etalabs.net/musl/releases/musl-0.9.6.tar.gz 2 | DESC="musl libc" 3 | -------------------------------------------------------------------------------- /pkg/nasm-2.10rc3: -------------------------------------------------------------------------------- 1 | URL=http://www.nasm.us/pub/nasm/releasebuilds/2.10rc3/nasm-2.10rc3.tar.bz2 2 | DESC="The Netwide Assembler" 3 | 4 | # XXX nasm does not honors DESTDIR 5 | PKGINSTALL=_pkginstall 6 | _pkginstall() { 7 | eval $@ 8 | ${MAKE} install prefix=${DESTDIR}/${PREFIX} PREFIX=${DESTDIR}/${PREFIX} 9 | } 10 | -------------------------------------------------------------------------------- /pkg/ncurses-5.7: -------------------------------------------------------------------------------- 1 | URL=ftp://invisible-island.net/ncurses/ncurses-5.7.tar.gz 2 | TYPE=tar 3 | DESC="New Curses library" 4 | -------------------------------------------------------------------------------- /pkg/neko-1.8.2: -------------------------------------------------------------------------------- 1 | URL=http://nekovm.org/_media/neko-1.8.2.tar.gz 2 | TYPE=tar 3 | DESC="NekoVM" 4 | DEPS=gc 5 | -------------------------------------------------------------------------------- /pkg/neon-0.29.6: -------------------------------------------------------------------------------- 1 | URL=http://www.webdav.org/neon/neon-0.29.6.tar.gz 2 | TYPE=tar 3 | DESC="neon is an HTTP and WebDAV client library, with a C interface" 4 | -------------------------------------------------------------------------------- /pkg/netcat-0.7.1: -------------------------------------------------------------------------------- 1 | URL=http://kent.dl.sourceforge.net/project/netcat/netcat/0.7.1/netcat-0.7.1.tar.gz 2 | TYPE=tar 3 | DESC="GNU netcat tool" 4 | -------------------------------------------------------------------------------- /pkg/netscan: -------------------------------------------------------------------------------- 1 | URL=http://bitbucket.org/noname/netscan/ 2 | TYPE=hg 3 | DESC="network scan tool" 4 | INSTALL_PRE="pwd;mkdir -p share/man/man1 bin" 5 | -------------------------------------------------------------------------------- /pkg/newlisp-10.4.4: -------------------------------------------------------------------------------- 1 | URL=http://www.newlisp.org/downloads/newlisp-10.4.4.tgz 2 | TYPE=tar 3 | DESC="newlisp programming language" 4 | PKGINSTALL=_foo 5 | _foo() { 6 | ${MAKE} -f makefile_install install DESTDIR=${DESTDIR} PREFIX=${PREFIX} prefix=${DESTDIR}/${PREFIX} 7 | } 8 | -------------------------------------------------------------------------------- /pkg/ngrep-1.45: -------------------------------------------------------------------------------- 1 | URL=http://netcologne.dl.sourceforge.net/project/ngrep/ngrep/1.45/ngrep-1.45.tar.bz2 2 | TYPE=tar 3 | DESC="network grep" 4 | -------------------------------------------------------------------------------- /pkg/node-v0.8.14: -------------------------------------------------------------------------------- 1 | URL=http://nodejs.org/dist/v0.8.14/node-v0.8.14.tar.gz 2 | TYPE=tar 3 | DESC="NodeJS" 4 | -------------------------------------------------------------------------------- /pkg/nvi-1.79: -------------------------------------------------------------------------------- 1 | URL=ftp://ftp.bostic.com/pub/nvi-1.79.tar.gz 2 | TYPE=tar 3 | DESC="berkeley visual editor" 4 | DEPS= 5 | BASEDIR=build 6 | LDFLAGS="${LDFLAGS} -lreadline" 7 | -------------------------------------------------------------------------------- /pkg/openssh-5.9p1: -------------------------------------------------------------------------------- 1 | URL=http://openbsd.org.ar/pub/OpenBSD/OpenSSH/portable/openssh-5.9p1.tar.gz 2 | TYPE=tar 3 | DESC="openssh client and server" 4 | DEPS="zlib openssl" 5 | -------------------------------------------------------------------------------- /pkg/openssl-1.0.0e: -------------------------------------------------------------------------------- 1 | URL=http://www.openssl.org/source/openssl-1.0.0e.tar.gz 2 | TYPE=tar 3 | DESC="OpenSSL library" 4 | PKGCONFIGURE=_foocfg 5 | _foocfg() { 6 | ./config --shared --prefix=${PREFIX} 7 | } 8 | PKGINSTALL=_fooinst 9 | _fooinst() { 10 | make install INSTALL_PREFIX="${DESTDIR}" INSTALLTOP="${PREFIX}" OPENSSLDIR="${PREFIX}" 11 | } 12 | -------------------------------------------------------------------------------- /pkg/pag: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/pag 2 | TYPE=hg 3 | DESC="platform arcade game" 4 | -------------------------------------------------------------------------------- /pkg/pango-1.28.3: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnome.org/pub/gnome/sources/pango/1.28/pango-1.28.3.tar.bz2 2 | CFGARGS="--disable-introspection --disable-gtk-doc-html" 3 | DESC="A library for layout and rendering of text" 4 | TYPE=tar 5 | -------------------------------------------------------------------------------- /pkg/patch-2.6: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/patch/patch-2.6.tar.bz2 2 | DESC="GNU Patch" 3 | -------------------------------------------------------------------------------- /pkg/pdksh-5.2.14: -------------------------------------------------------------------------------- 1 | URL=ftp://ftp.cs.mun.ca/pub/pdksh/pdksh-5.2.14.tar.gz 2 | TYPE=tar 3 | DESC="public domain clone of the AT&T Korn shell" 4 | -------------------------------------------------------------------------------- /pkg/pdnsd-1.2.9a: -------------------------------------------------------------------------------- 1 | URL=http://members.home.nl/p.a.rombouts/pdnsd/releases/pdnsd-1.2.9a-par.tar.gz 2 | TYPE=tar 3 | DESC="local dns caching server" 4 | -------------------------------------------------------------------------------- /pkg/pen-0.18.0: -------------------------------------------------------------------------------- 1 | URL=http://siag.nu/pub/pen/pen-0.18.0.tar.gz 2 | TYPE=tar 3 | DESC="tcp/ip bouncer" 4 | -------------------------------------------------------------------------------- /pkg/perl-5.14.2: -------------------------------------------------------------------------------- 1 | URL=http://www.cpan.org/src/5.0/perl-5.14.2.tar.gz 2 | TYPE=tar 3 | DESC="Perl" 4 | CONFIGURE="./configure.gnu" 5 | -------------------------------------------------------------------------------- /pkg/php-5.3.8: -------------------------------------------------------------------------------- 1 | URL=http://es.php.net/distributions/php-5.3.8.tar.bz2 2 | TYPE=tar 3 | DESC="PHP5 programming language" 4 | DEPS="libxml2 libiconv" 5 | -------------------------------------------------------------------------------- /pkg/pkg-config-0.28: -------------------------------------------------------------------------------- 1 | URL=http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz 2 | DESC="pkg config tool" 3 | CFGARGS=--with-internal-glib 4 | TYPE=tar 5 | -------------------------------------------------------------------------------- /pkg/polipo: -------------------------------------------------------------------------------- 1 | DESC="http proxy with support for socks" 2 | URL=git://git.wifi.pps.jussieu.fr/polipo 3 | TYPE=git 4 | PKGINSTALL=_polipoinstall 5 | _polipoinstall() { 6 | ${MAKE} install TARGET=${DESTDIR} \ 7 | PREFIX=${PREFIX} LOCAL_ROOT=${PREFIX}/tmp 8 | } 9 | -------------------------------------------------------------------------------- /pkg/poppler-0.16.2: -------------------------------------------------------------------------------- 1 | URL=http://poppler.freedesktop.org/poppler-0.16.2.tar.gz 2 | DESC="PDF rendering library based on xpdf code" 3 | PREMSG="This package is broken.. does not honors CFLAGS :(" 4 | -------------------------------------------------------------------------------- /pkg/premake-4.3: -------------------------------------------------------------------------------- 1 | URL=http://heanet.dl.sourceforge.net/project/premake/Premake/4.3/premake-4.3-src.zip 2 | TYPE=tar 3 | DESC="premake build system" 4 | BASEDIR=build/gmake.unix/ 5 | PKGINSTALL=_foo 6 | _foo() { 7 | mkdir -p ${DESTDIR}/${PREFIX}/bin 8 | cp -f ../../bin/release/premake4 ${DESTDIR}/${PREFIX}/bin 9 | } 10 | -------------------------------------------------------------------------------- /pkg/proftpd-1.3.4a: -------------------------------------------------------------------------------- 1 | URL=ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.4a.tar.bz2 2 | TYPE=tar 3 | DESC="ProFTPD service" 4 | -------------------------------------------------------------------------------- /pkg/proplib-0.6.0: -------------------------------------------------------------------------------- 1 | URL=http://portableproplib.googlecode.com/files/proplib-0.6.0.tar.xz 2 | TYPE=tar 3 | DESC="portable prop library" 4 | -------------------------------------------------------------------------------- /pkg/quark: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/quark/ 2 | TYPE=hg 3 | DESC="Suckless REST server" 4 | -------------------------------------------------------------------------------- /pkg/r2-bindings: -------------------------------------------------------------------------------- 1 | URL=git://github.com/radare/radare2 2 | BASEDIR=r2-bindings 3 | TYPE=git 4 | DEPS=radare2 5 | DESC="vala/swig bindings for radare2" 6 | CONFLICT="radare2-swig-0.9" 7 | -------------------------------------------------------------------------------- /pkg/r2-bindings-0.9.2: -------------------------------------------------------------------------------- 1 | DESC="vala/swig bindings for radare2" 2 | URL=http://radare.org/get/r2-bindings-0.9.2.tar.gz 3 | DEPS="radare2-0.9.2 Python-2.7" 4 | TYPE=tar 5 | CONFLICT=r2-bindings 6 | -------------------------------------------------------------------------------- /pkg/radare: -------------------------------------------------------------------------------- 1 | URL=git://github.com/radare/radare 2 | TYPE=git 3 | DESC="advanced hexadecimal editor and debugger" 4 | -------------------------------------------------------------------------------- /pkg/radare-1.5.2: -------------------------------------------------------------------------------- 1 | URL=http://radare.org/get/radare-1.5.2.tar.gz 2 | TYPE=tar 3 | DESC="raw data editor" 4 | -------------------------------------------------------------------------------- /pkg/radare2: -------------------------------------------------------------------------------- 1 | DESC="advanced hexadecimal editor and debugger (2nd version)" 2 | URL=git://github.com/radare/radare2 3 | TYPE=git 4 | CONFLICT="radare2-0.9.2 radare2-0.9" 5 | -------------------------------------------------------------------------------- /pkg/radare2-0.9.2: -------------------------------------------------------------------------------- 1 | DESC="advanced hexadecimal editor and debugger (2nd version)" 2 | URL=http://radare.org/get/radare2-0.9.2.tar.gz 3 | TYPE=tar 4 | CONFLICT=radare2 5 | -------------------------------------------------------------------------------- /pkg/rakudo: -------------------------------------------------------------------------------- 1 | URL=git://github.com/rakudo/rakudo.git 2 | TYPE=git 3 | DESC="perl6 on top of parrot" 4 | PKGCONFIGURE="perl Configure.pl --gen-parrot" 5 | PKGINSTALL="" 6 | INSTALL_POST="mkdir -p ${DESTDIR}/${PREFIX}/bin ; cp ${WRKDIR}/${PKG}/${BASEDIR}/perl6 bin" 7 | MSG="This package only works in _work (not installed)" 8 | -------------------------------------------------------------------------------- /pkg/readline-6.2: -------------------------------------------------------------------------------- 1 | URL=ftp://ftp.cwru.edu/pub/bash/readline-6.2.tar.gz 2 | TYPE=tar 3 | DESC="GNU Readline library" 4 | -------------------------------------------------------------------------------- /pkg/reiserfsprogs-3.6.21: -------------------------------------------------------------------------------- 1 | URL=http://fossies.org/linux/misc/reiserfsprogs-3.6.21.tar.gz 2 | TYPE=tar 3 | DESC="ReiserFS userland programs" 4 | -------------------------------------------------------------------------------- /pkg/rss2html: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/rss2html 2 | TYPE=hg 3 | DESC="rss downloader, parser and translator" 4 | -------------------------------------------------------------------------------- /pkg/rsync-3.0.9: -------------------------------------------------------------------------------- 1 | URL=http://www.samba.org/ftp/rsync/src/rsync-3.0.9.tar.gz 2 | TYPE=tar 3 | DESC="Remote Sync utility" 4 | -------------------------------------------------------------------------------- /pkg/sal: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/sal 2 | DESC="Scripting Assembly Language" 3 | TYPE=hg 4 | -------------------------------------------------------------------------------- /pkg/sandy: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/sandy 2 | TYPE=hg 3 | DESC="Suckless text editor" 4 | -------------------------------------------------------------------------------- /pkg/sbase: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/sbase/ 2 | TYPE=hg 3 | DESC="Suckless userland base" 4 | -------------------------------------------------------------------------------- /pkg/screen-4.0.3: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/screen/screen-4.0.3.tar.gz 2 | TYPE=tar 3 | DESC="GNU screen" 4 | -------------------------------------------------------------------------------- /pkg/screws: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/screws 2 | TYPE=hg 3 | DESC="scripting based web server" 4 | MSG="This package is broken. code in hg needs to be fixed" 5 | -------------------------------------------------------------------------------- /pkg/sdb: -------------------------------------------------------------------------------- 1 | URL=git://github.com/radare/sdb 2 | TYPE=git 3 | DESC="Simple DataBase" 4 | -------------------------------------------------------------------------------- /pkg/sic: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/sic 2 | TYPE=hg 3 | DESC="simple irc client" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/skvm: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/skvm 2 | TYPE=hg 3 | DESC="skvm" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/slock: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/slock 2 | TYPE=hg 3 | DESC="simple X display locker utility" 4 | -------------------------------------------------------------------------------- /pkg/slpm: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/slpm 2 | DESC="Suckless package manager" 3 | TYPE=hg 4 | DEPS= 5 | PREMSG="This package is broken" 6 | -------------------------------------------------------------------------------- /pkg/sltar: -------------------------------------------------------------------------------- 1 | TYPE=hg 2 | URL=http://s01.de/~tox/hg/sltar 3 | DESC="Suckless tar replacement" 4 | -------------------------------------------------------------------------------- /pkg/smu: -------------------------------------------------------------------------------- 1 | TYPE=hg 2 | URL=http://s01.de/~tox/hg/smu 3 | DESC="simple markup" 4 | -------------------------------------------------------------------------------- /pkg/spp: -------------------------------------------------------------------------------- 1 | URL=git://github.com/radare/spp 2 | DESC="Simple PreProcessor" 3 | TYPE=git 4 | -------------------------------------------------------------------------------- /pkg/sprop: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/sprop 2 | TYPE=hg 3 | DESC="simple xprop replacement" 4 | -------------------------------------------------------------------------------- /pkg/sqlite-src-3071401: -------------------------------------------------------------------------------- 1 | #URL=http://www.sqlite.org/sqlite-src-3070900.zip 2 | URL=http://www.sqlite.org/sqlite-src-3071401.zip 3 | TYPE=tar 4 | DESC="sqlite3" 5 | -------------------------------------------------------------------------------- /pkg/sselp: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/sselp 2 | TYPE=hg 3 | DESC="simple X selection printer to stdout" 4 | -------------------------------------------------------------------------------- /pkg/ssg: -------------------------------------------------------------------------------- 1 | TYPE=hg 2 | URL=http://nibble.develsec.org/hg/ssg 3 | DESC="Simple Slide Generator" 4 | -------------------------------------------------------------------------------- /pkg/st: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/st 2 | TYPE=hg 3 | DESC="simple X terminal" 4 | -------------------------------------------------------------------------------- /pkg/strace-4.6: -------------------------------------------------------------------------------- 1 | URL=http://ignum.dl.sourceforge.net/project/strace/strace/4.6/strace-4.6.tar.xz 2 | TYPE=tar 3 | DESC="syscall tracer" 4 | -------------------------------------------------------------------------------- /pkg/stut: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/stut 2 | TYPE=hg 3 | -------------------------------------------------------------------------------- /pkg/subversion-1.7.7: -------------------------------------------------------------------------------- 1 | URL=http://ftp.udc.es/apache/subversion/subversion-1.7.7.tar.bz2 2 | TYPE=tar 3 | DESC="svn version control system" 4 | DEPS="apr-util neon sqlite" 5 | -------------------------------------------------------------------------------- /pkg/sundown: -------------------------------------------------------------------------------- 1 | URL=git://github.com/tanoku/sundown.git 2 | TYPE=git 3 | DESC="sundown markdown parser" 4 | -------------------------------------------------------------------------------- /pkg/sup: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/sup 2 | TYPE=hg 3 | DESC="scale user priviledges" 4 | -------------------------------------------------------------------------------- /pkg/surf: -------------------------------------------------------------------------------- 1 | URL=http://code.suckless.org/hg/surf 2 | TYPE=hg 3 | DESC="simple webkit based browser" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/sw: -------------------------------------------------------------------------------- 1 | URL=http://nibble.develsec.org/hg/sw 2 | TYPE=hg 3 | DESC="suckless web framework" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/swig-2.0.0: -------------------------------------------------------------------------------- 1 | URL=http://downloads.sourceforge.net/project/swig/swig/swig-2.0.0/swig-2.0.0.tar.gz 2 | TYPE=tar 3 | DESC="Interface compiler that connects programs written in C or C++ to python, java, perl .." 4 | -------------------------------------------------------------------------------- /pkg/swk: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/swk 2 | TYPE=hg 3 | DESC="simple widget kit" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/sxiv: -------------------------------------------------------------------------------- 1 | URL=git://github.com/muennich/sxiv.git 2 | DESC="Suckless image viewer" 3 | TYPE=git 4 | -------------------------------------------------------------------------------- /pkg/tabbed: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/tabbed 2 | TYPE=hg 3 | DESC="tab interface for application supporting Xembed" 4 | -------------------------------------------------------------------------------- /pkg/tcl8.5.11: -------------------------------------------------------------------------------- 1 | URL=http://prdownloads.sourceforge.net/tcl/tcl8.5.11-src.tar.gz 2 | TYPE=tar 3 | DESC="Tcl" 4 | BASEDIR=unix 5 | PKGINSTALL=_tclinstall 6 | _tclinstall() { 7 | ${MAKE} install DESTDIR=${DESTDIR} prefix=/ PREFIX=${PREFIX} 8 | } 9 | -------------------------------------------------------------------------------- /pkg/tcpdump-4.2.0: -------------------------------------------------------------------------------- 1 | URL=http://www.tcpdump.org/release/tcpdump-4.2.0.tar.gz 2 | TYPE=tar 3 | DESC="Network packet capture utility" 4 | DEPS=libpcap 5 | -------------------------------------------------------------------------------- /pkg/testdisk-6.13: -------------------------------------------------------------------------------- 1 | URL=http://www.cgsecurity.org/testdisk-6.13.tar.bz2 2 | DESC="testdisk and photorec" 3 | TYPE=tar 4 | -------------------------------------------------------------------------------- /pkg/text-remote-control: -------------------------------------------------------------------------------- 1 | URL=http://people.collabora.co.uk/~alban/git/text-remote-control/ 2 | TYPE=git 3 | PKGBUILD="#" 4 | -------------------------------------------------------------------------------- /pkg/tg: -------------------------------------------------------------------------------- 1 | TYPE=hg 2 | URL=http://hg.youterm.com/tg 3 | DESC="Tiny gallery" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/thingmenu: -------------------------------------------------------------------------------- 1 | URL=git://git.r-36.net/thingmenu 2 | TYPE=git 3 | DESC="Simple graphical menu launcher" 4 | -------------------------------------------------------------------------------- /pkg/tinycc: -------------------------------------------------------------------------------- 1 | URL=git://repo.or.cz/tinycc.git 2 | TYPE=git 3 | GITARGS="-b origin/mob" 4 | DESC="tiny c compiler" 5 | # hack to not depend on texi2html 6 | PKG_FETCH="touch ${WRKDIR}/${PKG}/tcc-doc.html" 7 | PKGINSTALL=_tccinstall 8 | _tccinstall() { 9 | eval $@ 10 | ./configure "--prefix=${PREFIX}" 11 | ${MAKE} install 12 | } 13 | -------------------------------------------------------------------------------- /pkg/tmux-1.5: -------------------------------------------------------------------------------- 1 | URL=http://downloads.sourceforge.net/tmux/tmux-1.5.tar.gz 2 | DESC="Terminal Muxer" 3 | TYPE=tar 4 | -------------------------------------------------------------------------------- /pkg/tor-0.2.3.25: -------------------------------------------------------------------------------- 1 | URL=https://www.torproject.org/dist/tor-0.2.3.25.tar.gz 2 | TYPE=tar 3 | DESC="the onion network" 4 | DEPS="libevent" 5 | -------------------------------------------------------------------------------- /pkg/toys: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/toys 2 | TYPE=hg 3 | -------------------------------------------------------------------------------- /pkg/uClibc-0.9.31: -------------------------------------------------------------------------------- 1 | URL=http://www.uclibc.org/downloads/uClibc-0.9.31.tar.bz2 2 | TYPE=tar 3 | DESC="micro C library" 4 | #INSTALL_POST="mkdir -p usr lib; mv usr/*uclibc/lib/* lib;mv usr/*uclibc/usr/* usr" 5 | -------------------------------------------------------------------------------- /pkg/unzip60: -------------------------------------------------------------------------------- 1 | URL=ftp://ftp.info-zip.org/pub/infozip/src/unzip60.tgz 2 | BASEDIR=unix 3 | TYPE=tar 4 | DESC="unzip uncompressor utility" 5 | PRECONFIGURE="touch man/funzip.1" 6 | PKGCONFIGURE="./configure" 7 | 8 | -------------------------------------------------------------------------------- /pkg/upx-3.08-src: -------------------------------------------------------------------------------- 1 | URL=http://upx.sourceforge.net/download/upx-3.08-src.tar.bz2 2 | TYPE=tar 3 | DESC="upx binary compressor" 4 | -------------------------------------------------------------------------------- /pkg/vala-0.26.0: -------------------------------------------------------------------------------- 1 | URL=http://download.gnome.org/sources/vala/0.26/vala-0.26.0.tar.xz 2 | TYPE=tar 3 | DESC="Vala and Genie programming langauge compiler" 4 | DEPS=glib 5 | -------------------------------------------------------------------------------- /pkg/vala-vapis: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/vala-vapis 2 | TYPE=hg 3 | DESC="collection of unofficial vala vapi files" 4 | -------------------------------------------------------------------------------- /pkg/valabind-0.7.2: -------------------------------------------------------------------------------- 1 | URL=http://radare.org/get/valabind-0.7.2.tar.gz 2 | TYPE=tar 3 | DESC="vala bindings compiler" 4 | DEPS="vala-0.18.1" 5 | -------------------------------------------------------------------------------- /pkg/valadoc: -------------------------------------------------------------------------------- 1 | URL=git://git.gnome.org/valadoc 2 | DESC="Vala documentation tool" 3 | TYPE=git 4 | PKGCONFIGURE="sh autogen.sh --prefix=${PREFIX}" 5 | -------------------------------------------------------------------------------- /pkg/valgrind-3.7.0: -------------------------------------------------------------------------------- 1 | URL=http://valgrind.org/downloads/valgrind-3.7.0.tar.bz2 2 | DESC="debugging and profiler tools" 3 | TYPE=tar 4 | -------------------------------------------------------------------------------- /pkg/vim72: -------------------------------------------------------------------------------- 1 | URL=ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2 2 | TYPE=tar 3 | DESC="VI iMproved" 4 | -------------------------------------------------------------------------------- /pkg/wget-1.16: -------------------------------------------------------------------------------- 1 | URL=http://ftp.gnu.org/gnu/wget/wget-1.16.tar.xz 2 | DESC="GNU downloader tool" 3 | TYPE=tar 4 | -------------------------------------------------------------------------------- /pkg/wmname: -------------------------------------------------------------------------------- 1 | URL=http://hg.suckless.org/wmname 2 | TYPE=hg 3 | DESC="sets/prints window manager name similiar to hostname" 4 | DEPS= 5 | -------------------------------------------------------------------------------- /pkg/x2x: -------------------------------------------------------------------------------- 1 | URL=git://github.com/dottedmag/x2x.git 2 | TYPE=git 3 | DESC="x2x mouse and keyboard sharing" 4 | PRECONFIGURE="sh bootstrap.sh" 5 | -------------------------------------------------------------------------------- /pkg/xbps: -------------------------------------------------------------------------------- 1 | URL=git://github.com/xtraeme/xbps.git 2 | TYPE=git 3 | DESC="the x binary package system" 4 | DEPS="zlib libarchive confuse" 5 | -------------------------------------------------------------------------------- /pkg/xbps-0.17: -------------------------------------------------------------------------------- 1 | URL=http://xbps.googlecode.com/files/xbps-0.17.tar.gz 2 | TYPE=tar 3 | DESC="the XBPS package system utilities" 4 | DEPS="zlib libarchive confuse" 5 | -------------------------------------------------------------------------------- /pkg/xml2doc: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/xml2doc 2 | TYPE=hg 3 | DESC="XML to pdf, abiword, manpage and more" 4 | -------------------------------------------------------------------------------- /pkg/xpw: -------------------------------------------------------------------------------- 1 | URL=http://hg.youterm.com/xpw 2 | TYPE=hg 3 | DESC="X piped widgets" 4 | MSG="No make install for this package" 5 | -------------------------------------------------------------------------------- /pkg/xz-5.0.3: -------------------------------------------------------------------------------- 1 | URL=http://tukaani.org/xz/xz-5.0.3.tar.bz2 2 | TYPE=tar 3 | DESC="xz compression tool" 4 | -------------------------------------------------------------------------------- /pkg/yeahlaunch-0.2: -------------------------------------------------------------------------------- 1 | URL=http://phrat.de/yeahlaunch-0.2.tar.gz 2 | DESC="Simple text menu launcher" 3 | -------------------------------------------------------------------------------- /pkg/zlib-1.2.7: -------------------------------------------------------------------------------- 1 | URL=http://zlib.net/zlib-1.2.7.tar.gz 2 | TYPE=tar 3 | DESC="zip library" 4 | -------------------------------------------------------------------------------- /slpm: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # suckless package manager @ 2009-2012 3 | # - pancake at nopcode dot org 4 | 5 | whereami() { 6 | for a in $PWD `echo $PATH | sed 's,:, ,g'` ; do 7 | if [ -e "$a/$1" ]; then 8 | echo "$a/$1" 9 | return 10 | fi 11 | done 12 | echo $1 13 | } 14 | 15 | lslibs() { 16 | cd ${PREFIX} 17 | export DYLD_LIBRARY_PATH=${PREFIX}/lib 18 | export LD_LIBRARY_PATH=${PREFIX}/lib 19 | for bin in `find bin usr/bin sbin usr/sbin 2>/dev/null` ; do 20 | [ ! -f $bin ] && continue 21 | [ ! -x $bin ] && continue 22 | if [ -e /usr/bin/otool ]; then 23 | otool -L $bin | grep -v :|awk '{print $1}' 24 | else 25 | ldd $bin | cut -d '>' -f 2- |cut -c 2-| \ 26 | grep ^/ | cut -d ' ' -f 1 | grep -v ${PREFIX} 27 | fi 28 | done 29 | } 30 | 31 | fixlibs() { 32 | libs=$(lslibs |sort |uniq) 33 | for a in $libs ; do 34 | ba=$(basename $a) 35 | if [ ! -e "${PREFIX}/lib/$ba" ]; then 36 | echo $a 37 | fi 38 | done 39 | } 40 | 41 | BIN="`readlink $0`" 42 | [ -z "${BIN}" ] && BIN=$0 43 | [ -z "${BIN}" ] && BIN=/bin/sh # XXX? 44 | PATH=`whereami`:${PATH} 45 | ARG0="`whereami $BIN`" 46 | ROOT="`dirname $ARG0`" 47 | IGNEXE=0 48 | PYTHON=python 49 | USRDIR="${HOME}/.slpm" 50 | WRKDIR="${ROOT}/_work" 51 | TMPDIR="${ROOT}/_work/tmp" 52 | PKGDIR="${ROOT}/pkg" 53 | PTXDIR="${ROOT}/patches" 54 | RMVDIR="${ROOT}/_removed" 55 | BINPKGDIR="${ROOT}/binpkg" 56 | MAKE=make 57 | mkdir -p "${TMPDIR}" 58 | export TMPDIR 59 | . "${ROOT}/config" 60 | echo | md5sum >/dev/null 2>&1 61 | if [ $? = 0 ]; then 62 | CHKSUM=md5sum 63 | else 64 | CHKSUM=md5 65 | fi 66 | NFODIR="${DESTDIR}/${PREFIX}/var/lib/slpm/pkg" 67 | BINPKG=0 68 | if [ -n "${SYSDEPS}" ]; then 69 | igncmd="grep $(echo "-e$SYSDEPS" | sed -e 's, , -e,g')" 70 | else 71 | igncmd="cat" 72 | fi 73 | export igncmd 74 | 75 | configure_environment() { 76 | [ -f ${PREFIX}/etc/profile ] && ./ ${PREFIX}/etc/profile 77 | if [ -d "${PREFIX}/etc/profile.d" ]; then 78 | for a in ${PREFIX}/etc/profile.d/* ; do . $a ; done 79 | fi 80 | PATH=${DESTDIR}${PREFIX}/bin:${DESTDIR}${PREFIX}/sbin:${PATH} 81 | MANPATH=${PREFIX}/share/man:${MANPATH} 82 | LD_LIBRARY_PATH=${PREFIX}/lib:${LD_LIBRARY_PATH} 83 | #DYLD_LIBRARY_PATH=${PREFIX}/lib:${LD_LIBRARY_PATH} 84 | PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig:${PKG_CONFIG_PATH} 85 | XDG_DATA_DIRS=${PREFIX}/share:${XDG_DATA_DIRS} 86 | CFLAGS="-I${PREFIX}/include" 87 | LDFLAGS="-L${PREFIX}/lib" 88 | unset PROMPT_COMMAND 89 | export CFLAGS LDFLAGS PREFIX 90 | export PATH MANPATH LD_LIBRARY_PATH PKG_CONFIG_PATH XDG_DATA_DIRS 91 | } 92 | 93 | # XXX a bit spaguetti 94 | hg_fetch() { 95 | cd $WRKDIR 96 | if [ -d "$1" ]; then 97 | if [ "$3" = 1 ]; then 98 | echo "==> hg: updating $1 ..." 99 | ( cd "$1" ; hg pull && hg up ) 100 | fi 101 | else 102 | hg clone "$2" "$1" 103 | fi 104 | } 105 | 106 | svn_fetch() { 107 | cd $WRKDIR 108 | if [ -d "$1" ]; then 109 | if [ "$3" = 1 ]; then 110 | echo "==> svn: updating $1 ..." 111 | ( cd "$1" ; svn up ) 112 | fi 113 | else 114 | svn co "$2" "$1" 115 | fi 116 | } 117 | 118 | git_fetch() { 119 | cd "$WRKDIR" 120 | if [ -d "$1" ]; then 121 | if [ "$3" = 1 ]; then 122 | ( cd "$1" ; git pull ) 123 | fi 124 | else 125 | git clone ${GITARGS} "$2" "$1" 126 | fi 127 | } 128 | 129 | tar_fetch() { 130 | FILE="`basename $URL`" 131 | cd "$WRKDIR" 132 | if [ -f "$WRKDIR/$FILE" ]; then 133 | echo "==> Already downloaded $FILE" 134 | else 135 | [ -z "${WGET}" ] && WGET="wget --no-check-certificate -c" 136 | ${WGET} ${URL} || exit 1 137 | fi 138 | if [ -f "$WRKDIR/$PKG/.slpm_workdir_done" ]; then 139 | echo "==> Already uncompressed and patched $PKG" 140 | else 141 | case "$FILE" in 142 | *.zip) unzip $FILE ; ;; 143 | *.tgz|*.gz) tar xzvf $FILE ; ;; 144 | *.tbz2|*.bz2) tar xjvf $FILE ; ;; 145 | *.xz) xz -d $FILE ; FILE2=`echo $FILE|sed -e s,.xz,,`; tar xvf $FILE2 ; ;; 146 | esac 147 | if [ ! $? = 0 ]; then 148 | echo "==> Error uncompressing" 149 | exit 1 150 | fi 151 | if [ -n "${PKGDIRNAME}" -a ! "${PKG}" = "${PKGDIRNAME}" ]; then 152 | # hack to rename PKGDIR 153 | mv ${PKGDIRNAME} ${PKG} 154 | fi 155 | :> "$WRKDIR/$PKG/.slpm_workdir_done" 156 | fi 157 | } 158 | 159 | pkg_fetch() { 160 | eval ${TYPE}_fetch $PKG $URL $1 161 | eval ${PKG_FETCH} 162 | } 163 | 164 | pkg_update() { 165 | hg_fetch $PKG $URL 166 | } 167 | 168 | pkg_patch() { 169 | if [ -n "${PATCHES}" ]; then 170 | pushd ${WRKDIR}/${PKG}/${BASEDIR} > /dev/null 171 | if [ -e .slpm_patch_done ]; then 172 | echo "=> Patches already applied." 173 | else 174 | echo "=> Patching ${PKG}.." 175 | for a in ${PATCHES} ; do 176 | patch -p1 < ${PTXDIR}/${a}.patch 177 | done 178 | :> .slpm_patch_done 179 | fi 180 | popd > /dev/null 181 | fi 182 | } 183 | 184 | pkg_unpatch() { 185 | if [ -n "${PATCHES}" ]; then 186 | pushd ${WRKDIR}/${PKG}/${BASEDIR} >/dev/null 187 | if [ -e .slpm_patch_done ]; then 188 | echo "=> Unpatching ${PKG}.." 189 | for a in ${PATCHES} ; do 190 | patch -R -p1 < ${PTXDIR}/${a}.patch 191 | done 192 | rm -f .slpm_patch_done 193 | else 194 | echo "=> Patches already not applied." 195 | fi 196 | popd > /dev/null 197 | fi 198 | } 199 | 200 | pkg_build() { 201 | cd "$WRKDIR/$PKG/${BASEDIR}" 202 | [ "${IGNEXE}" = 1 ] && rm -f .slpm_configure_done .slpm_build_done 203 | if [ -e .slpm_configure_done ]; then 204 | echo "=> Not running ${CONFIGURE} because of .slpm_configure_done" 205 | else 206 | if [ -n "${PRECONFIGURE}" ]; then 207 | ${PRECONFIGURE} 208 | fi 209 | if [ -f "autogen.sh" -a ! -f "configure" -a -z "${PKGCONFIGURE}" ]; then 210 | PKGCONFIGURE="sh autogen.sh --prefix=${PREFIX}" 211 | fi 212 | if [ -n "${PKGCONFIGURE}" ]; then 213 | ${PKGCONFIGURE} 214 | else 215 | if [ -f "setup.py" ]; then 216 | python setup.py build 217 | :> .slpm_build_done 218 | else 219 | if [ -f "CMakeLists.txt" ]; then 220 | cmake . -DCMAKE_INSTALL_PREFIX=${PREFIX} 221 | else 222 | [ -f ${CONFIGURE} ] && chmod +x ${CONFIGURE} 223 | if [ -x "${CONFIGURE}" ]; then 224 | ${CONFIGURE} "--prefix=${PREFIX}" ${CFGARGS} ${USER_CFGARGS} 225 | if [ ! $? = 0 ]; then 226 | echo "=> Configure stage failed :(" 227 | exit 1 228 | fi 229 | fi 230 | fi 231 | fi 232 | fi 233 | :> .slpm_configure_done 234 | fi 235 | if [ -e .slpm_build_done ]; then 236 | echo "=> Not running ${MAKE} because of .slpm_build_done" 237 | else 238 | if [ -n "${MAKEFUN}" ]; then 239 | ${MAKEFUN} 240 | else 241 | ${MAKE} ${MAKEFLAGS} DESTDIR=${DESTDIR} PREFIX=${PREFIX} prefix=${PREFIX} exec_prefix=${PREFIX} 242 | fi 243 | #if [ ! $? = 0 ]; then 244 | # echo "=> Make stage failed :(" 245 | # exit 1 246 | #fi 247 | :> .slpm_build_done 248 | fi 249 | } 250 | 251 | pkg_install() { 252 | if [ ! -d "$WRKDIR/$PKG/${BASEDIR}" ]; then 253 | echo "pkg_install: Cannot open target directory" 254 | exit 1 255 | fi 256 | ( 257 | cd "$WRKDIR/$PKG/${BASEDIR}" 258 | if [ -n "${INSTALL_PRE}" ]; then 259 | echo "=> Running pre install script '${INSTALL_PRE}'" 260 | (cd ${DESTDIR}/${PREFIX} ; eval $INSTALL_PRE) 261 | fi 262 | if [ -f setup.py ]; then 263 | ${PYTHON} setup.py install --root "${DESTDIR}/${PREFIX}" 264 | else 265 | #if [ -f CMakeLists.txt ]; then 266 | # PKGINSTALL_ARGS="DESTDIR=${PREFIX}" 267 | #fi 268 | echo "=> Running: ${PKGINSTALL} ${PKGINSTALL_ARGS}" 269 | for a in ${PKGINSTALL_ARGS} ; do 270 | eval export ${a} 271 | done 272 | eval ${PKGINSTALL} ${PKGINSTALL_ARGS} 273 | fi 274 | if [ -n "${INSTALL_POST}" ]; then 275 | echo "=> Running post install script '${INSTALL_POST}'" 276 | (cd ${DESTDIR}/${PREFIX} ; eval $INSTALL_POST) 277 | fi 278 | ) 279 | pkg_register 280 | } 281 | 282 | pkg_chksum() { 283 | if [ ! -e $NFODIR/$PKG/chksum ]; then 284 | echo "Cannot find chksum database for $PKG" 285 | return 286 | fi 287 | echo "# ${PKG}" 288 | FILES=`cat $NFODIR/$PKG/files` 289 | if [ -z "${FILES}" ]; then 290 | echo "Is this an empty package?" 291 | return 292 | fi 293 | for a in ${FILES} ; do 294 | orig=`grep $a$ $NFODIR/$PKG/chksum | awk '{print $1}'` 295 | cur=`$CHKSUM "${DESTDIR}/${PREFIX}/$a" | awk '{print $1}'` 296 | if [ "$orig" = "$cur" ]; then 297 | echo ". $orig $cur $a" 298 | else 299 | echo "x $orig $cur $a" 300 | fi 301 | done 302 | } 303 | 304 | pkg_register_chksum() { 305 | PKGNAME=$1 306 | FILES=`cat $NFODIR/$PKGNAME/files` 307 | if [ -z "${FILES}" ]; then 308 | echo "Is this an empty package?" 309 | return 1 310 | fi 311 | ( cd ${DESTDIR}/${PREFIX} 312 | for a in `cat $NFODIR/$PKGNAME/files` ; do 313 | ${CHKSUM} "$a" 314 | done 315 | ) > $NFODIR/$PKGNAME/chksum 316 | return 0 317 | } 318 | 319 | binpkg_register() { 320 | PKGNAME=`basename $PKG | sed -e s,slpm-,, -e s,.tgz,,` 321 | echo "=> Register binary package $PKGNAME" 322 | mkdir -p $NFODIR/$PKGNAME 323 | tar tzf $PKG | grep -v /$ | grep -v slpm.nfo > $NFODIR/$PKGNAME/files 324 | pkg_register_chksum ${PKGNAME} 325 | mv ${DESTDIR}/${PREFIX}/slpm.nfo $NFODIR/$PKGNAME/slpm.nfo 326 | date > "$NFODIR/$PKGNAME/date" 327 | } 328 | 329 | binpkg_install() { 330 | echo "=> Installing binary package" 331 | tar xzvf $PKG -C ${DESTDIR}/${PREFIX} | grep -v slpm.nfo | grep -v /$ 332 | binpkg_register 333 | } 334 | 335 | pkg_register() { 336 | [ -d "$NFODIR/$PKG/${BASEDIR}" ] && return 337 | cd "$WRKDIR/$PKG/${BASEDIR}" 338 | # TODO: move outside and create skel in a standard way 339 | mkdir -p "${WRKDIR}/.tmp/${PKG}" 340 | mkdir -p "${WRKDIR}/.tmp/${PKG}/bin" 341 | mkdir -p "${WRKDIR}/.tmp/${PKG}/lib" 342 | mkdir -p "${WRKDIR}/.tmp/${PKG}/man/man1" 343 | ## XXX: dupped from pkg_install 344 | if [ -n "${INSTALL_PRE}" ]; then 345 | echo "=> Running pre install script '${INSTALL_PRE}'" 346 | (cd ${WRKDIR}/.tmp/${PKG} ; eval $INSTALL_PRE) 347 | fi 348 | #PKGINSTALL_ARGS="DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} PREFIX=${PREFIX} prefix=${PREFIX} exec_prefix=${PREFIX}" 349 | PKGINSTALL_ARGS="PREFIX=/ DESTDIR=${WRKDIR}/.tmp/${PKG} prefix=/ exec_prefix=${PREFIX}" 350 | if [ -f setup.py ]; then 351 | ${PYTHON} setup.py install --root "${WRKDIR}/.tmp/${PKG}" || exit 1 352 | else 353 | for a in ${PKGINSTALL_ARGS} ; do 354 | eval export ${a} 355 | done 356 | eval ${PKGINSTALL} ${PKGINSTALL_ARGS} 357 | echo "=> Running ${PKGINSTALL} ${PKGINSTALL_ARGS}" 358 | DD=${WRKDIR}/.tmp/${PKG} 359 | eval DESTDIR=${DD} INSTALL_ROOT=${DD} \ 360 | ${PKGINSTALL} PREFIX=/ "DESTDIR=${WRKDIR}/.tmp/${PKG}" prefix=/ || exit 1 361 | fi 362 | #-if [ ! $? = 0 ]; then 363 | #- echo "=> Install fail" 364 | #- exit 1 365 | #-fi 366 | #"prefix=${WRKDIR}/.tmp/${PKG}" 367 | ## XXX: dupped from pkg_install 368 | if [ -n "${INSTALL_POST}" ]; then 369 | echo "=> Running post install script '${INSTALL_POST}'" 370 | (cd ${WRKDIR}/.tmp/${PKG} ; eval $INSTALL_POST) 371 | fi 372 | # go register 373 | cd "${WRKDIR}/.tmp/${PKG}" 374 | echo "${WRKDIR}/.tmp/${PKG}" 375 | mkdir -p "$NFODIR/$PKG" 376 | if [ -n "`ls`" ]; then 377 | _pfx=`pwd | cut -c 2-` 378 | (find * -type f ; find * -type l ) | \ 379 | sed -e "s,$_pfx,," > "$NFODIR/$PKG/files" 380 | echo "=> Create binary package: ${BINPKGDIR}/slpm-${PKG}.tgz" 381 | cp ${PKGDIR}/${PKG} slpm.nfo 382 | tar czf ${BINPKGDIR}/slpm-${PKG}.tgz * 383 | pkg_register_chksum ${PKG} 384 | ret=$? 385 | else 386 | echo "==> WARNING: Package have installed no files" 387 | : > "$NFODIR/$PKG/files" 388 | fi 389 | date > "$NFODIR/$PKG/date" 390 | cp ${PKGDIR}/${PKG} $NFODIR/$PKG/slpm.nfo 391 | rm -rf "${WRKDIR}/.tmp/${PKG}" 392 | if [ "$ret" = 1 ]; then 393 | echo "==> Error registering checksums for pkg ${PKGNAME}" 394 | exit 1 395 | fi 396 | } 397 | 398 | pkg_clean() { 399 | cd "$WRKDIR/$PKG" 400 | rm -f .slpm_configure_done .slpm_build_done 401 | ${MAKE} clean 402 | } 403 | 404 | pkg_deinstall() { 405 | if [ -e "$NFODIR/$PKG/files" ]; then 406 | cd "${DESTDIR}/${PREFIX}" 407 | for a in `cat $NFODIR/$PKG/files`; do 408 | [ -f "./$a" ] && echo "./$a" && rm -f "./$a" 409 | done 410 | rm -rf "$NFODIR/$PKG" 411 | else 412 | if [ -d "$WRKDIR/$PKG" ]; then 413 | cd "$WRKDIR/$PKG" 414 | # TODO: wrap into ${PKGDEINSTALL} 415 | ${MAKE} uninstall DESTDIR=${DESTDIR} PREFIX=${PREFIX} prefix=${PREFIX} 416 | fi 417 | fi 418 | } 419 | 420 | help() { 421 | cat <> ${NFODIR}/.fixedlibs 536 | done 537 | exit 0 538 | ;; 539 | -fl) cat ${NFODIR}/.fixedlibs ; exit 0 ; ;; 540 | -fd) 541 | for a in $(cat ${NFODIR}/.fixedlibs) ; do 542 | echo $a 543 | rm -f ${DESTDIR}/${PREFIX}/lib/$a 544 | done 545 | :> ${NFODIR}/.fixedlibs 546 | exit 0 547 | ;; 548 | -x) shift ; exec_shell $@ ; ;; 549 | -h) help ; ;; 550 | -ci) 551 | cmd=$0 552 | shift 553 | $cmd -c $@ 554 | $cmd -i $@ 555 | exit 0 556 | ;; 557 | -k) 558 | if [ -z "$2" ]; then 559 | cd ${WRKDIR} ; ls -F | grep / | sed -e s,/,, 560 | else 561 | p=`$0 -k | grep $2 | head -n 1` 562 | if [ -n "$p" ]; then 563 | echo "Killing $p..." 564 | cd ${WRKDIR} ; rm -rf $p 565 | else 566 | echo "No package matching $2" 567 | exit 1 568 | fi 569 | fi 570 | exit 0 571 | ;; 572 | -p|-P|-c|-C|-i|-I|-u|-d) DO=$1 ; ;; 573 | -s) 574 | if [ -z "$2" ]; then 575 | echo "Usage: slpm -s [keyword]" 576 | else 577 | cd ${PKGDIR} && grep DESC * | grep -i "$2" 578 | fi 579 | exit 0 580 | ;; 581 | -L) ls ${PKGDIR} | cat ; exit 0 ; ;; 582 | -LL) 583 | for a in `ls ${PKGDIR}`; do 584 | . ${PKGDIR}/$a 585 | printf "%20s $DESC\n" $a 586 | done ; exit 0 ; ;; 587 | -ll) 588 | cd ${NFODIR} 589 | for a in `echo *`; do 590 | if [ -e "${NFODIR}/$a/slpm.nfo" ]; then 591 | . ${NFODIR}/$a/slpm.nfo 592 | printf "%20s $DESC\n" $a 593 | else 594 | printf "%20s (no description)\n" $a 595 | fi 596 | done 597 | exit 0 598 | ;; 599 | -l) 600 | if [ -z "$2" ]; then 601 | ls "$NFODIR" | cat ; exit 0 602 | else 603 | if [ ! -d "$NFODIR/$2" ]; then 604 | PKGNAME=`basename $NFODIR/$2* 2> /dev/null` # autocomplete 605 | if [ ! -d "$NFODIR/$PKGNAME" ]; then 606 | echo "Package $2 not installed" ; exit 1 607 | else 608 | cat "$NFODIR/$PKGNAME/files" ; exit 0 609 | fi 610 | else 611 | cat "$NFODIR/$2/files" ; exit 0 612 | fi 613 | fi 614 | ;; 615 | -*) echo "Unknown flag '$1'" ;; 616 | *) break ;; 617 | esac 618 | shift 619 | done 620 | 621 | show_msg() { 622 | echo "" 623 | echo "==" 624 | echo " ${1}" 625 | echo "==" 626 | echo "" 627 | sleep 1 628 | } 629 | 630 | pkg_open() { 631 | PREMSG="" 632 | MSG="" 633 | URL="" 634 | TYPE="tar" 635 | DESC="" 636 | DEPS="" 637 | MAKEFUN="" 638 | CFGARGS="" 639 | BASEDIR="" 640 | PKGDIRNAME="" 641 | INSTALL_POST="" # script to run after install 642 | PKGINSTALL="${MAKE} install" 643 | PKGINSTALL_ARGS="DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} PREFIX=${PREFIX} prefix=${PREFIX} exec_prefix=${PREFIX}" 644 | PKGCONFIGURE="" 645 | CONFIGURE="./configure" 646 | BINPKG=0 647 | if [ -n "${REMOTE}" ]; then 648 | here=$(pwd) 649 | cd ${BINPKGDIR} 650 | eval ${WGET} ${REMOTE}/slpm-${PKG}.tgz 651 | if [ $? = 0 ]; then 652 | PKG=${BINPKGDIR}/slpm-${PKG}.tgz 653 | else 654 | echo "=> Cannot find this package remotely" 655 | fi 656 | cd ${here} 657 | fi 658 | 659 | if [ "`echo $PKG|grep .tgz$`" ]; then 660 | tar xvzf ${PKG} slpm.nfo 661 | if [ ! $? = 0 ]; then 662 | echo "This is not a binary slpm package" 663 | exit 1 664 | fi 665 | . ./slpm.nfo 666 | rm -f slpm.nfo 667 | BINPKG=1 668 | return 669 | fi 670 | 671 | # hack to support to uninstall packages without finding the pkg description 672 | # XXX this needs to be fixed 673 | if [ "$DO" = "-d" ]; then 674 | if [ -f "$NFODIR/$PKG/slpm.nfo" ]; then 675 | . "${NFODIR}/$PKG/slpm.nfo" 676 | else 677 | PKG2=`basename $NFODIR/$PKG* 2> /dev/null` # autocomplete 678 | if [ -f "$NFODIR/$PKG2/slpm.nfo" ]; then 679 | . "${NFODIR}/${PKG2}/slpm.nfo" 680 | PKG=$PKG2 681 | else 682 | echo "Cannot find $PKG" 683 | exit 1 684 | fi 685 | fi 686 | return 687 | fi 688 | 689 | if [ ! -f "$PKGDIR/$PKG" ]; then 690 | PKG2=`basename $PKGDIR/$PKG* 2> /dev/null` # autocomplete 691 | if [ ! -f "$PKGDIR/$PKG2" ]; then 692 | echo "Cannot find $PKG" 693 | exit 1 694 | fi 695 | PKG=$PKG2 696 | fi 697 | . "${PKGDIR}/$PKG" 698 | if [ -e "${USRDIR}/$PKG" ]; then 699 | . "${USRDIR}/$PKG" 700 | fi 701 | # TODO: check package variables 702 | if [ -z "${URL}" ]; then echo "No URL defined in package"; fi 703 | if [ -z "${TYPE}" ]; then echo "No TYPE defined in package"; fi 704 | [ -n "${PREMSG}" ] && show_msg "pkg_open: ${PKG}: ${PREMSG}" 705 | if [ -n "${CONFLICT}" ]; then 706 | HAS_CONFLICT=no 707 | for a in ${CONFLICT} ; do 708 | if [ -e "${NFODIR}/$a/slpm.nfo" ]; then 709 | echo "Package ${PKG} conflicts with $a" 710 | HAS_CONFLICT=yes 711 | fi 712 | done 713 | [ "${HAS_CONFLICT}" = yes ] && exit 1 714 | fi 715 | if [ "${DODEPS}" = 1 ]; then 716 | for DEP in ${DEPS}; do 717 | if [ -z "`echo $DEP | $igncmd`" ]; then 718 | echo "=> Checking dependency $DEP" 719 | slpm -l | grep ${DEP} 720 | if [ $? = 0 ]; then 721 | echo "=> OK" 722 | else 723 | echo "=> Not found. Installing pkg..." 724 | slpm -i ${DEP} || exit 1 725 | fi 726 | continue 727 | else 728 | echo "=> Asuming $DEP is a system package" 729 | continue 730 | fi 731 | if [ ! -e "${NFODIR}/${DEP}" ]; then 732 | echo "=> Installing missing dependency ${DEP}" 733 | $0 -i ${DEP} 734 | if [ ! $? = 0 ]; then 735 | echo "=> Install of ${DEP} has failed" 736 | exit 1 737 | fi 738 | fi 739 | done 740 | fi 741 | [ -n "${MSG}" ] && show_msg "pkg_open: ${PKG} ${MSG}" 742 | } 743 | 744 | [ -z "$1" ] && help 745 | configure_environment 746 | while [ -n "$1" ]; do 747 | PKG=$1 748 | pkg_open 749 | case $DO in 750 | -C) (pkg_chksum) ; ;; 751 | -c) (pkg_clean) ; ;; 752 | -p) (pkg_patch) ; ;; 753 | -P) (pkg_unpatch) ; ;; 754 | -i) if [ ${BINPKG} = 1 ]; then 755 | (binpkg_install) 756 | else 757 | (pkg_fetch) && (pkg_patch) && (pkg_build) && (pkg_install) 758 | exit $? # honor return code 759 | fi ; ;; 760 | -u) (pkg_fetch 1) && (pkg_clean) ; (pkg_build) && (pkg_install) ; ;; 761 | -d) (pkg_deinstall) ; ;; 762 | *) (pkg_fetch) ; ;; 763 | esac 764 | shift 765 | done 766 | -------------------------------------------------------------------------------- /slpm-chroot: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | echo "TODO: slpm-chroot utility" 3 | -------------------------------------------------------------------------------- /slpm-genimg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # --pancake 2010 3 | 4 | if [ ! "$UID" = 0 ]; then 5 | echo "You need root." 6 | exit 1 7 | fi 8 | 9 | fs=10 10 | img=image.ext2 11 | mkfs=mke2fs 12 | msg="\x1b[47m \x1b[0m" 13 | 14 | # basic devices 15 | cd _prefix 16 | mkdir -p dev/pts proc sys tmp 17 | cd dev 18 | rm -f console tty null zero 19 | mknod -m 660 console c 5 1 20 | mknod -m 660 mem c 1 1 21 | mknod -m 660 tty c 5 0 22 | mknod -m 660 null c 1 3 23 | mknod -m 660 zero c 1 5 24 | cd .. 25 | cd .. 26 | 27 | sz=$(printf %d $(du -hs _prefix|awk '{print $1}') 2>/dev/null) 28 | sz=$(($sz+$fs))M 29 | printf "$msg image size: $sz\n" 30 | 31 | cancel() { 32 | printf "\n$msg ^C operation cancelled\n" 33 | umount .mnt 34 | rm -rf .mnt 35 | rm -f $img 36 | exit 1 37 | } 38 | trap cancel INT 39 | 40 | printf "$msg create raw disk: $img\n" 41 | rm -f $img 42 | # normal 43 | #dd if=/dev/zero of=image.ext2 count=1 bs=$sz 44 | # sparse 45 | #dd if=/dev/zero of=$img bs=1k count=0 seek=$sz 46 | truncate -s $sz $img 47 | 48 | printf "$msg format: $mkfs\n" 49 | yes | $mkfs $img 50 | 51 | printf "$msg source root: _prefix\n" 52 | mkdir -p .mnt 53 | mount -o loop $img .mnt 54 | cp -rfa _prefix/* .mnt 55 | umount .mnt 56 | sync 57 | rm -rf .mnt 58 | 59 | printf "$msg done\n" 60 | 61 | echo 62 | printf "$msg qemu -kernel /tmp/bzImage -hda $img -append 'root=/dev/sda init=/bin/dash'\n" 63 | echo 64 | -------------------------------------------------------------------------------- /slpm-genpkg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # --pancake // 2010-2011 3 | 4 | whereami() { 5 | for a in $PWD `echo $PATH | sed 's,:, ,g'` ; do 6 | if [ -e "$a/$1" ]; then 7 | echo "$a/$1" 8 | return 9 | fi 10 | done 11 | echo $1 12 | } 13 | ROOT="`whereami $BIN`" 14 | . "${ROOT}/config" 15 | 16 | if [ -n "${IGNDIRS}" ]; then 17 | igncmd="grep -v $(echo "-e$IGNDIRS" | sed -e 's, , -e,g')" 18 | else 19 | igncmd="cat" 20 | fi 21 | export igncmd 22 | 23 | gentoo_files() { 24 | qlist $1 25 | desc=$(emerge -s $1 | grep Description | cut -d -f 10-) 26 | echo "DESC=\"${desc}\"" > slpm.nfo 27 | echo "URL=\"none\"" >> slpm.nfo 28 | echo "TYPE=genpkg" >> slpm.nfo 29 | } 30 | gentoo_version() { 31 | emerge -s $1 | grep "version installed" | awk '{print $4}' | grep -v "\[" 32 | } 33 | 34 | debian_files() { 35 | dpkg -L $1 36 | desc=$(dpkg -s $1 | grep Descrip | cut -d : -f 2- | cut -c 2-) 37 | echo "DESC=\"${desc}\"" > slpm.nfo 38 | echo "URL=\"none\"" >> slpm.nfo 39 | echo "TYPE=genpkg" >> slpm.nfo 40 | } 41 | debian_version() { 42 | dpkg -s $1 | grep Version | cut -d : -f 2- | cut -c 2- 43 | } 44 | 45 | arch_files() { 46 | pacman -Ql $1 | cut -d ' ' -f 2- | grep -v /$ 47 | desc=$(pacman -Qi $1 | grep Descr | cut -d : -f 2- | cut -c 2-) 48 | url=$(pacman -Qi $1 | grep URL | cut -d : -f 2- | cut -c 2-) 49 | echo "DESC=\"$desc\"" > slpm.nfo 50 | echo "URL=\"$url\"" >> slpm.nfo 51 | echo "TYPE=genpkg" >> slpm.nfo 52 | } 53 | arch_version() { 54 | pacman -Qi $1 | grep Version | awk '{print $3}' 55 | } 56 | 57 | port_files() { 58 | port contents $1 | cut -c 3- 59 | desc=$(port info $1 | grep Description | cut -c 23-) 60 | url=$(port info $1 | grep Homepage | awk '{print $2}') 61 | echo "DESC=\"$desc\"" > slpm.nfo 62 | echo "URL=\"$url\"" >> slpm.nfo 63 | echo "TYPE=genpkg" >> slpm.nfo 64 | } 65 | port_version() { 66 | port info xz | head -n 1 | cut -d '@' -f 2 | awk '{print $1}' 67 | } 68 | 69 | getdistro() { 70 | pacman -h >/dev/null 2>&1 71 | if [ $? = 2 ]; then echo arch ; return ; fi 72 | emerge -h >/dev/null 2>&1 73 | if [ $? = 0 ]; then echo gentoo ; return ; fi 74 | dpkg -h >/dev/null 2>&1 75 | if [ $? = 0 ]; then echo debian ; return ; fi 76 | port help >/dev/null 2>&1 77 | if [ $? = 0 ]; then echo port ; return ; fi 78 | } 79 | 80 | if [ -z "$1" ]; then 81 | echo "Usage: $0 [pkgname]" 82 | echo "Supports osx-ports, debian, gentoo and pacman packages" 83 | exit 1 84 | fi 85 | 86 | distro=$(getdistro) 87 | if [ -z "$distro" ]; then 88 | echo "Cannot find port, pacman, emerge or dpkg programs." 89 | exit 1 90 | fi 91 | pkg=$1 92 | export pkg distro 93 | 94 | rm -rf .tmp 95 | mkdir -p .tmp 96 | cd .tmp 97 | pkgver=$(${distro}_version $pkg) 98 | if [ -z "$pkgver" ]; then 99 | echo "Error: unknown package version" 100 | else 101 | echo version: $pkgver 102 | files=`${distro}_files $pkg` 103 | for a in $files ; do 104 | [ -z "`echo $a | $igncmd `" ] && continue 105 | [ -d "$a" ] && continue 106 | dir=$(dirname $a) 107 | mkdir -p ./$dir 108 | if [ -z "`echo $a|grep /$`" ]; then 109 | echo $a 110 | cp -fa $a ./$a 111 | fi 112 | done 113 | tar cpzf ../slpm-${pkg}-${pkgver}.tgz * 114 | echo 115 | echo slpm-${pkg}-${pkgver}.tgz 116 | fi 117 | cd .. 118 | rm -rf .tmp 119 | -------------------------------------------------------------------------------- /xlpm: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # xbps on top of slpm wrapper 3 | 4 | whereami() { 5 | for a in $PWD `echo $PATH | sed 's,:, ,g'` ; do 6 | if [ -e "$a/$1" ]; then 7 | echo "$a/$1" 8 | return 9 | fi 10 | done 11 | echo $1 12 | } 13 | BIN="`readlink $0`" 14 | ARG0="`whereami $BIN`" 15 | ROOT="`dirname $ARG0`" 16 | ROOTDIR="${ROOT}/_xbps" 17 | 18 | show_help() { 19 | echo "Usage: xlpm [-action] [args]" 20 | echo " -i [pkgname] install package" 21 | echo " -r [pkgname] remove package" 22 | echo " -s [pkgname] search package" 23 | echo " -l [pkgname] list packages or files" 24 | echo " -c clear binpkgs, orphans.." 25 | echo " -x [cmd] enter chroot or run command" 26 | echo " -v show version" 27 | exit 0 28 | } 29 | [ -z "$1" ] && show_help 30 | while [ -n "$1" ]; do 31 | case "$1" in 32 | -x) 33 | shift 34 | if [ -z "$1" ]; then 35 | sudo chroot ${ROOTDIR} 36 | else 37 | sudo chroot ${ROOTDIR} $@ 38 | fi 39 | ;; 40 | -h) 41 | show_help 42 | ;; 43 | -i) 44 | shift 45 | exec slpm -x xbps-install -r ${ROOTDIR} -y $@ 46 | ;; 47 | -s) 48 | shift 49 | exec slpm -x xbps-query -r ${ROOTDIR} -s $@ 50 | ;; 51 | -l) 52 | if [ -n "$2" ]; then 53 | exec slpm -x xbps-query -r ${ROOTDIR} -f "$2" 54 | fi 55 | exec slpm -x xbps-query -r ${ROOTDIR} -l |awk '{print $1}' 56 | ;; 57 | -r) 58 | shift 59 | exec slpm -x xbps-remove -r ${ROOTDIR} -y $@ 60 | ;; 61 | -c) 62 | slpm -x xbps-remove -Ooyv -r ${ROOTDIR} 63 | ;; 64 | -v) 65 | exec slpm -x xbps-install -V 66 | ;; 67 | esac 68 | shift 69 | done 70 | --------------------------------------------------------------------------------