From 6ed5daf6513ddb0c01a39a6b891430cad8c3fcd8 Mon Sep 17 00:00:00 2001 From: mid-kid Date: Tue, 6 Dec 2016 17:26:32 +0100 Subject: [PATCH] Probably the biggest update yet --- astronaut/astronaut | 6 +- astronaut/astronautpkg | 29 ++- .../unmaintained_satellites}/3dstool.sat | 2 +- .../unmaintained_satellites/bcunit-git.sat | 13 ++ graveyard/unmaintained_satellites/kbuild.sat | 23 ++ .../unmaintained_satellites}/scrot.sat | 2 +- satellites/bctoolbox.sat | 15 ++ satellites/bluez-alsa-git.sat | 13 ++ satellites/ctrtool-git.sat | 12 + satellites/extrafiles/i3/iconsupport.patch | 213 +++++++++--------- satellites/fdk-aac.sat | 14 ++ satellites/ffmpeg.sat | 4 +- satellites/functions/compile/cmake.sh | 2 +- satellites/functions/compile/configure.sh | 12 +- satellites/functions/compile/perl.sh | 2 +- satellites/functions/compile/python.sh | 2 +- satellites/functions/compile/qt.sh | 2 +- satellites/functions/compile/waf.sh | 2 +- satellites/functions/vcs/git.sh | 7 +- satellites/functions/vcs/svn.sh | 23 ++ satellites/gfm-git.sat | 2 +- satellites/giblib.sat | 2 +- satellites/go.sat | 4 +- satellites/hostapd.sat | 13 +- satellites/i3.sat | 23 +- satellites/iasl.sat | 14 ++ satellites/jsoncpp.sat | 23 ++ satellites/libbsd.sat | 14 ++ satellites/libev.sat | 4 +- satellites/libgdiplus.sat | 14 ++ satellites/libsrtp.sat | 14 ++ satellites/libticables-git.sat | 2 +- satellites/libticalcs-git.sat | 2 +- satellites/libticonv-git.sat | 2 +- satellites/libtifiles-git.sat | 2 +- satellites/libwebp.sat | 6 +- satellites/libxdg-basedir.sat | 2 +- satellites/libxkbcommon.sat | 4 +- satellites/makerom-git.sat | 12 + satellites/mbedtls.sat | 24 ++ satellites/minizip.sat | 16 ++ satellites/mono.sat | 20 ++ satellites/mpv.sat | 4 +- satellites/ninja.sat | 13 +- satellites/openrc.sat | 20 ++ satellites/opus.sat | 14 ++ satellites/ortp.sat | 14 ++ .../padxorer.sat | 2 +- satellites/protobuf.sat | 20 ++ satellites/python3-requests.sat | 4 +- satellites/python3-setuptools.sat | 9 +- satellites/qt5-declarative.sat | 17 ++ satellites/qt5-webchannel.sat | 17 ++ satellites/qt5-webengine.sat | 19 ++ satellites/qt5-x11extras.sat | 17 ++ satellites/qutebrowser.sat | 5 +- satellites/snappy.sat | 14 ++ satellites/steam.sat | 4 +- satellites/streamlink.sat | 8 +- satellites/syncthing.sat | 15 +- satellites/teeworlds.sat | 4 +- satellites/texmaker.sat | 16 ++ satellites/tilp-git.sat | 2 +- satellites/virtualbox.sat | 114 ++++++++++ satellites/volumeicon.sat | 2 +- satellites/waf.sat | 5 +- satellites/wine.sat | 8 +- satellites/xcb-util-xrm.sat | 4 +- satellites/youtube-dl.sat | 4 +- todo.txt | 2 + 70 files changed, 779 insertions(+), 215 deletions(-) rename {satellites => graveyard/unmaintained_satellites}/3dstool.sat (92%) create mode 100644 graveyard/unmaintained_satellites/bcunit-git.sat create mode 100644 graveyard/unmaintained_satellites/kbuild.sat rename {satellites => graveyard/unmaintained_satellites}/scrot.sat (97%) create mode 100644 satellites/bctoolbox.sat create mode 100644 satellites/bluez-alsa-git.sat create mode 100644 satellites/ctrtool-git.sat create mode 100644 satellites/fdk-aac.sat create mode 100644 satellites/functions/vcs/svn.sh create mode 100644 satellites/iasl.sat create mode 100644 satellites/jsoncpp.sat create mode 100644 satellites/libbsd.sat create mode 100644 satellites/libgdiplus.sat create mode 100644 satellites/libsrtp.sat create mode 100644 satellites/makerom-git.sat create mode 100644 satellites/mbedtls.sat create mode 100644 satellites/minizip.sat create mode 100644 satellites/mono.sat create mode 100644 satellites/openrc.sat create mode 100644 satellites/opus.sat create mode 100644 satellites/ortp.sat rename {graveyard/unmaintained_satellites => satellites}/padxorer.sat (76%) create mode 100644 satellites/protobuf.sat create mode 100644 satellites/qt5-declarative.sat create mode 100644 satellites/qt5-webchannel.sat create mode 100644 satellites/qt5-webengine.sat create mode 100644 satellites/qt5-x11extras.sat create mode 100644 satellites/snappy.sat create mode 100644 satellites/texmaker.sat create mode 100644 satellites/virtualbox.sat create mode 100644 todo.txt diff --git a/astronaut/astronaut b/astronaut/astronaut index ee6e3af..ff43261 100755 --- a/astronaut/astronaut +++ b/astronaut/astronaut @@ -75,7 +75,7 @@ unset update_url _show_help() { echo "This astronaut will help you build some satellites. Just describe what he's got to do in a satellite file. -Usage: $0 [-sbipr ] [-Id] [-o ] +Usage: $0 [-bsirp ] [-hIdv] [-o ] -h/? Show this message -b Set build directory [WARNING: Will be deleted before build] @@ -188,7 +188,7 @@ extract() { } getfile() { - cp -r "$dir_source/$name/$1" "$dir_build/$1" + cp -a "$dir_source/$name/$1" "$dir_build/$1" } extrafile() { @@ -270,7 +270,7 @@ option() { if [ "$1" ]; then if [ "$enabled" = true ]; then - eval $@ + eval "$@" fi else return $([ "$enabled" = true ]) diff --git a/astronaut/astronautpkg b/astronaut/astronautpkg index c377679..817e882 100755 --- a/astronaut/astronautpkg +++ b/astronaut/astronautpkg @@ -30,9 +30,32 @@ if [ -d "$dir_install/$dir_prefix/$dir_infodir" ]; then gzip -9 -r "$dir_install/$dir_prefix/$dir_infodir" fi -# _dir_pkgtools should be set from a configuration file (e.g. ~/.astronaut.conf), and points to wherever you want your packages to be placed. +# Generate slack-desc for proper compliance, even if it's completely redundant +#mkdir -p "$dir_install/install" +#cat > "$dir_install/install/slack-desc" << EOF +## HOW TO EDIT THIS FILE: +## The "handy ruler" below makes it easier to edit a package description. Line +## up the first '|' above the ':' following the base package name, and the '|' +## on the right side marks the last column you can put a character in. You must +## make exactly 11 lines for the formatting to be correct. It's also +## customary to leave one space after the ':'. + +#$(printf %$(printf '%s' "$_satname" | wc -c)s)|-----handy-ruler------------------------------------------------------| +#$_satname: $_satname (Generated with astronautpkg) +#$_satname: +#$_satname: +#$_satname: +#$_satname: +#$_satname: +#$_satname: +#$_satname: +#$_satname: +#$_satname: +#$_satname: +#EOF + +# dir_wrapper_pkgtools should be set from a configuration file (e.g. ~/.astronaut.conf), and points to wherever you want your packages to be placed. [ "$dir_wrapper_pkgtools" ] && mkdir -p "$dir_wrapper_pkgtools" || dir_wrapper_pkgtools="$_topdir" cd "$dir_install" -export PATH="$PATH:/sbin" -$_fakeroot makepkg -l y -c n "$dir_wrapper_pkgtools/$_satname-$(echo "$version" | sed -e 's/-/_/g')-$(uname -m)-astro.tgz" +PATH="$PATH:/sbin" $_fakeroot makepkg -l y -c n "$dir_wrapper_pkgtools/$_satname-$(echo "$version" | sed -e 's/-/_/g')-$(uname -m)-astro.tgz" diff --git a/satellites/3dstool.sat b/graveyard/unmaintained_satellites/3dstool.sat similarity index 92% rename from satellites/3dstool.sat rename to graveyard/unmaintained_satellites/3dstool.sat index baf7cdb..9d7ec3b 100644 --- a/satellites/3dstool.sat +++ b/graveyard/unmaintained_satellites/3dstool.sat @@ -1,7 +1,7 @@ import 'compile/cmake' name=3dstool -version=1.0.17 # TODO: Untested +version=1.0.18 # TODO: Untested update_url="https://github.com/dnasdw/$name/releases" update_names="/archive/v$version.tar.gz" diff --git a/graveyard/unmaintained_satellites/bcunit-git.sat b/graveyard/unmaintained_satellites/bcunit-git.sat new file mode 100644 index 0000000..6ef22a5 --- /dev/null +++ b/graveyard/unmaintained_satellites/bcunit-git.sat @@ -0,0 +1,13 @@ +import 'vcs/git' +import 'compile/configure' + +name=bcunit + +vcs_git "https://github.com/BelledonneCommunications/$name" +header_end + +cd "$name" +./autogen.sh +compile_configure + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/graveyard/unmaintained_satellites/kbuild.sat b/graveyard/unmaintained_satellites/kbuild.sat new file mode 100644 index 0000000..db30c86 --- /dev/null +++ b/graveyard/unmaintained_satellites/kbuild.sat @@ -0,0 +1,23 @@ +import 'vcs/svn' + +name=kBuild +revision=2823 +version=r$revision + +vcs_svn 'http://svn.netlabs.org/repos/kbuild/trunk' 2823 +header_end + +cd trunk +rm -rf kBuild/bin # Remove prebuilts + +variables=" + NIX_INSTALL_DIR=/$dir_prefix + MY_INST_BIN=$dir_prefix/$dir_bindir/ + MY_INST_DATA=$dir_prefix/$dir_datadir/$name/ + MY_INST_DOC=$dir_prefix/$dir_docdir/$name/ +" + +kBuild/env.sh --full make -f bootstrap.gmk $variables +kBuild/env.sh --full-with-bin kmk $variables PATH_INS="$dir_install" install + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/scrot.sat b/graveyard/unmaintained_satellites/scrot.sat similarity index 97% rename from satellites/scrot.sat rename to graveyard/unmaintained_satellites/scrot.sat index 93cec33..e5f6c69 100644 --- a/satellites/scrot.sat +++ b/graveyard/unmaintained_satellites/scrot.sat @@ -18,7 +18,7 @@ for x in $(cat ../debian/patches/series); do patch -p1 -i ../debian/patches/$x done -autoreconf -i +autoreconf -fi compile_configure # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/bctoolbox.sat b/satellites/bctoolbox.sat new file mode 100644 index 0000000..db84269 --- /dev/null +++ b/satellites/bctoolbox.sat @@ -0,0 +1,15 @@ +import 'compile/cmake' + +name=bctoolbox +version=0.4.0 +update_url="https://github.com/BelledonneCommunications/$name/releases" +update_names="/archive/$version.tar.gz" + +dlextract "https://github.com/BelledonneCommunications/$name/archive/$version.tar.gz" \ + '963e0a83feda8b0a6c10d646573aae28' +header_end + +cd "$name-$version" +compile_cmake -- -DENABLE_TESTS=OFF -DENABLE_TESTS_COMPONENT=OFF -DENABLE_STATIC=OFF + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/bluez-alsa-git.sat b/satellites/bluez-alsa-git.sat new file mode 100644 index 0000000..7aadb4c --- /dev/null +++ b/satellites/bluez-alsa-git.sat @@ -0,0 +1,13 @@ +import 'vcs/git' +import 'compile/configure' + +name=bluez-alsa + +vcs_git "https://github.com/Arkq/$name" +header_end + +cd "$name" +autoreconf -fi +compile_configure -- --enable-aac --enable-debug --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/ctrtool-git.sat b/satellites/ctrtool-git.sat new file mode 100644 index 0000000..2dc66ab --- /dev/null +++ b/satellites/ctrtool-git.sat @@ -0,0 +1,12 @@ +import 'vcs/git' + +name=Project_CTR + +vcs_git "https://github.com/profi200/$name" +header_end + +cd "$name/ctrtool" +make +install -Dm755 -t "$dir_install/$dir_prefix/$dir_bindir" ctrtool + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/extrafiles/i3/iconsupport.patch b/satellites/extrafiles/i3/iconsupport.patch index 4c43d7d..c128c55 100644 --- a/satellites/extrafiles/i3/iconsupport.patch +++ b/satellites/extrafiles/i3/iconsupport.patch @@ -1,6 +1,6 @@ -diff -Nurp ../i3-4.12/include/atoms_rest.xmacro ./include/atoms_rest.xmacro ---- ../i3-4.12/include/atoms_rest.xmacro 2016-03-06 16:17:18.000000000 +0100 -+++ ./include/atoms_rest.xmacro 2016-10-11 23:56:12.406428013 +0200 +diff -Nurp ../i3-4.13/include/atoms_rest.xmacro ./include/atoms_rest.xmacro +--- ../i3-4.13/include/atoms_rest.xmacro 2016-11-08 19:54:01.000000000 +0100 ++++ ./include/atoms_rest.xmacro 2016-11-13 14:14:05.086086381 +0100 @@ -1,6 +1,7 @@ xmacro(_NET_WM_USER_TIME) xmacro(_NET_STARTUP_ID) @@ -9,38 +9,40 @@ diff -Nurp ../i3-4.12/include/atoms_rest.xmacro ./include/atoms_rest.xmacro xmacro(WM_PROTOCOLS) xmacro(WM_DELETE_WINDOW) xmacro(UTF8_STRING) -diff -Nurp ../i3-4.12/include/data.h ./include/data.h ---- ../i3-4.12/include/data.h 2016-03-06 16:17:18.000000000 +0100 -+++ ./include/data.h 2016-10-11 23:56:12.407428013 +0200 -@@ -426,6 +426,9 @@ struct Window { +diff -Nurp ../i3-4.13/include/data.h ./include/data.h +--- ../i3-4.13/include/data.h 2016-11-08 19:54:01.000000000 +0100 ++++ ./include/data.h 2016-11-13 14:40:42.765019561 +0100 +@@ -440,6 +440,11 @@ struct Window { /* aspect ratio from WM_NORMAL_HINTS (MPlayer uses this for example) */ double aspect_ratio; + -+ /** Window icon, array of size 16x16 containing the ARGB pixels */ -+ uint32_t* icon; ++ /** Window icon, as array of ARGB pixels */ ++ unsigned char *icon; ++ int icon_width; ++ int icon_height; }; /** -diff -Nurp ../i3-4.12/include/libi3.h ./include/libi3.h ---- ../i3-4.12/include/libi3.h 2016-03-06 16:17:18.000000000 +0100 -+++ ./include/libi3.h 2016-10-11 23:56:12.407428013 +0200 -@@ -587,6 +587,11 @@ color_t draw_util_hex_to_color(const cha +diff -Nurp ../i3-4.13/include/libi3.h ./include/libi3.h +--- ../i3-4.13/include/libi3.h 2016-11-08 19:54:01.000000000 +0100 ++++ ./include/libi3.h 2016-11-13 14:40:49.707019271 +0100 +@@ -586,6 +586,11 @@ color_t draw_util_hex_to_color(const cha void draw_util_text(i3String *text, surface_t *surface, color_t fg_color, color_t bg_color, int x, int y, int max_width); /** + * Draw the given image using libi3. + */ -+void draw_util_image(unsigned char *pixels, surface_t *surface, int x, int y, int width, int height); ++void draw_util_image(unsigned char *src, int src_width, int src_height, surface_t *surface, int x, int y, int width, int height); + +/** * Draws a filled rectangle. * This function is a convenience wrapper and takes care of flushing the * surface as well as restoring the cairo state. -diff -Nurp ../i3-4.12/include/window.h ./include/window.h ---- ../i3-4.12/include/window.h 2016-03-06 16:17:18.000000000 +0100 -+++ ./include/window.h 2016-10-11 23:56:12.408428013 +0200 -@@ -87,3 +87,9 @@ void window_update_hints(i3Window *win, +diff -Nurp ../i3-4.13/include/window.h ./include/window.h +--- ../i3-4.13/include/window.h 2016-11-08 19:54:01.000000000 +0100 ++++ ./include/window.h 2016-11-13 14:14:05.088086381 +0100 +@@ -89,3 +89,9 @@ void window_update_hints(i3Window *win, * */ void window_update_motif_hints(i3Window *win, xcb_get_property_reply_t *prop, border_style_t *motif_border_style); @@ -50,11 +52,11 @@ diff -Nurp ../i3-4.12/include/window.h ./include/window.h + * + */ +void window_update_icon(i3Window *win, xcb_get_property_reply_t *prop); -diff -Nurp ../i3-4.12/libi3/draw_util.c ./libi3/draw_util.c ---- ../i3-4.12/libi3/draw_util.c 2016-03-06 16:17:18.000000000 +0100 -+++ ./libi3/draw_util.c 2016-10-11 23:56:12.408428013 +0200 -@@ -153,6 +153,39 @@ void draw_util_text(i3String *text, surf - #endif +diff -Nurp ../i3-4.13/libi3/draw_util.c ./libi3/draw_util.c +--- ../i3-4.13/libi3/draw_util.c 2016-11-08 19:54:01.000000000 +0100 ++++ ./libi3/draw_util.c 2016-11-13 14:44:55.628008986 +0100 +@@ -135,6 +135,41 @@ void draw_util_text(i3String *text, surf + cairo_surface_mark_dirty(surface->surface); } + @@ -64,39 +66,41 @@ diff -Nurp ../i3-4.12/libi3/draw_util.c ./libi3/draw_util.c + * surface as well as restoring the cairo state. + * + */ -+void draw_util_image(unsigned char *pixels, surface_t *surface, int x, int y, int width, int height) { ++void draw_util_image(unsigned char *src, int src_width, int src_height, surface_t *surface, int x, int y, int width, int height) { + RETURN_UNLESS_SURFACE_INITIALIZED(surface); + -+#if CAIRO_SUPPORT -+ cairo_save(surface->cr); -+ + cairo_surface_t *image; ++ double scale; ++ ++ cairo_save(surface->cr); + + image = cairo_image_surface_create_for_data( -+ pixels, ++ src, + CAIRO_FORMAT_ARGB32, -+ width, -+ height, -+ width * 4); ++ src_width, ++ src_height, ++ src_width * 4); ++ ++ cairo_translate(surface->cr, x, y); ++ ++ scale = MIN((double)width / src_width, (double)height / src_height); ++ cairo_scale(surface->cr, scale, scale); + -+ cairo_set_operator(surface->cr, CAIRO_OPERATOR_OVER); -+ cairo_set_source_surface(surface->cr, image, x, y); -+ cairo_rectangle(surface->cr, x, y, width, height); -+ cairo_fill(surface->cr); ++ cairo_set_source_surface(surface->cr, image, 0, 0); ++ cairo_paint(surface->cr); + + cairo_surface_destroy(image); + + cairo_restore(surface->cr); -+#endif +} + /** * Draws a filled rectangle. * This function is a convenience wrapper and takes care of flushing the -diff -Nurp ../i3-4.12/src/handlers.c ./src/handlers.c ---- ../i3-4.12/src/handlers.c 2016-03-06 16:17:18.000000000 +0100 -+++ ./src/handlers.c 2016-10-11 23:56:12.409428013 +0200 -@@ -1295,6 +1295,20 @@ static bool handle_strut_partial_change( +diff -Nurp ../i3-4.13/src/handlers.c ./src/handlers.c +--- ../i3-4.13/src/handlers.c 2016-11-08 19:54:01.000000000 +0100 ++++ ./src/handlers.c 2016-11-13 14:36:19.002030592 +0100 +@@ -1287,6 +1287,20 @@ static bool handle_strut_partial_change( return true; } @@ -117,28 +121,28 @@ diff -Nurp ../i3-4.12/src/handlers.c ./src/handlers.c /* Returns false if the event could not be processed (e.g. the window could not * be found), true otherwise */ typedef bool (*cb_property_handler_t)(void *data, xcb_connection_t *c, uint8_t state, xcb_window_t window, xcb_atom_t atom, xcb_get_property_reply_t *property); -@@ -1315,7 +1329,8 @@ static struct property_handler_t propert - {0, 128, handle_windowrole_change}, +@@ -1308,7 +1322,8 @@ static struct property_handler_t propert {0, 128, handle_class_change}, {0, UINT_MAX, handle_strut_partial_change}, -- {0, UINT_MAX, handle_window_type}}; -+ {0, UINT_MAX, handle_window_type}, + {0, UINT_MAX, handle_window_type}, +- {0, 5 * sizeof(uint64_t), handle_motif_hints_change}}; ++ {0, 5 * sizeof(uint64_t), handle_motif_hints_change}, + {0, UINT_MAX, handle_windowicon_change}}; #define NUM_HANDLERS (sizeof(property_handlers) / sizeof(struct property_handler_t)) /* -@@ -1336,6 +1351,7 @@ void property_handlers_init(void) { - property_handlers[7].atom = XCB_ATOM_WM_CLASS; +@@ -1330,6 +1345,7 @@ void property_handlers_init(void) { property_handlers[8].atom = A__NET_WM_STRUT_PARTIAL; property_handlers[9].atom = A__NET_WM_WINDOW_TYPE; -+ property_handlers[10].atom = A__NET_WM_ICON; + property_handlers[10].atom = A__MOTIF_WM_HINTS; ++ property_handlers[11].atom = A__NET_WM_ICON; } static void property_notify(uint8_t state, xcb_window_t window, xcb_atom_t atom) { -diff -Nurp ../i3-4.12/src/manage.c ./src/manage.c ---- ../i3-4.12/src/manage.c 2016-03-06 16:17:18.000000000 +0100 -+++ ./src/manage.c 2016-10-11 23:56:12.410428013 +0200 -@@ -92,6 +92,8 @@ void manage_window(xcb_window_t window, +diff -Nurp ../i3-4.13/src/manage.c ./src/manage.c +--- ../i3-4.13/src/manage.c 2016-11-08 19:54:01.000000000 +0100 ++++ ./src/manage.c 2016-11-13 14:14:05.090086380 +0100 +@@ -91,6 +91,8 @@ void manage_window(xcb_window_t window, role_cookie, startup_id_cookie, wm_hints_cookie, wm_normal_hints_cookie, motif_wm_hints_cookie, wm_user_time_cookie, wm_desktop_cookie; @@ -147,7 +151,7 @@ diff -Nurp ../i3-4.12/src/manage.c ./src/manage.c geomc = xcb_get_geometry(conn, d); /* Check if the window is mapped (it could be not mapped when intializing and -@@ -163,6 +165,7 @@ void manage_window(xcb_window_t window, +@@ -162,6 +164,7 @@ void manage_window(xcb_window_t window, motif_wm_hints_cookie = GET_PROPERTY(A__MOTIF_WM_HINTS, 5 * sizeof(uint64_t)); wm_user_time_cookie = GET_PROPERTY(A__NET_WM_USER_TIME, UINT32_MAX); wm_desktop_cookie = GET_PROPERTY(A__NET_WM_DESKTOP, UINT32_MAX); @@ -155,7 +159,7 @@ diff -Nurp ../i3-4.12/src/manage.c ./src/manage.c DLOG("Managing window 0x%08x\n", window); -@@ -176,6 +179,7 @@ void manage_window(xcb_window_t window, +@@ -177,6 +180,7 @@ void manage_window(xcb_window_t window, window_update_class(cwindow, xcb_get_property_reply(conn, class_cookie, NULL), true); window_update_name_legacy(cwindow, xcb_get_property_reply(conn, title_cookie, NULL), true); window_update_name(cwindow, xcb_get_property_reply(conn, utf8_title_cookie, NULL), true); @@ -163,7 +167,7 @@ diff -Nurp ../i3-4.12/src/manage.c ./src/manage.c window_update_leader(cwindow, xcb_get_property_reply(conn, leader_cookie, NULL)); window_update_transient_for(cwindow, xcb_get_property_reply(conn, transient_cookie, NULL)); window_update_strut_partial(cwindow, xcb_get_property_reply(conn, strut_cookie, NULL)); -@@ -184,6 +188,8 @@ void manage_window(xcb_window_t window, +@@ -185,6 +189,8 @@ void manage_window(xcb_window_t window, window_update_hints(cwindow, xcb_get_property_reply(conn, wm_hints_cookie, NULL), &urgency_hint); border_style_t motif_border_style = BS_NORMAL; window_update_motif_hints(cwindow, xcb_get_property_reply(conn, motif_wm_hints_cookie, NULL), &motif_border_style); @@ -172,24 +176,24 @@ diff -Nurp ../i3-4.12/src/manage.c ./src/manage.c xcb_size_hints_t wm_size_hints; if (!xcb_icccm_get_wm_size_hints_reply(conn, wm_normal_hints_cookie, &wm_size_hints, NULL)) memset(&wm_size_hints, '\0', sizeof(xcb_size_hints_t)); -diff -Nurp ../i3-4.12/src/render.c ./src/render.c ---- ../i3-4.12/src/render.c 2016-03-06 16:17:18.000000000 +0100 -+++ ./src/render.c 2016-10-11 23:56:12.410428013 +0200 -@@ -127,6 +127,10 @@ void render_con(Con *con, bool render_fu +diff -Nurp ../i3-4.13/src/render.c ./src/render.c +--- ../i3-4.13/src/render.c 2016-11-08 19:54:01.000000000 +0100 ++++ ./src/render.c 2016-11-13 14:26:45.732054568 +0100 +@@ -125,6 +125,10 @@ void render_con(Con *con, bool render_fu /* find the height for the decorations */ params.deco_height = render_deco_height(); + /* minimum decoration height to allow icon to fit -+ * not actuuly required, icon would be cropped otherwise */ ++ * not actually required, icon would be cropped otherwise */ + params.deco_height = (params.deco_height < 16) ? 16 : params.deco_height; + /* precalculate the sizes to be able to correct rounding errors */ params.sizes = precalculate_sizes(con, ¶ms); -diff -Nurp ../i3-4.12/src/window.c ./src/window.c ---- ../i3-4.12/src/window.c 2016-03-06 16:17:18.000000000 +0100 -+++ ./src/window.c 2016-10-11 23:56:44.972426651 +0200 -@@ -19,6 +19,7 @@ void window_free(i3Window *win) { +diff -Nurp ../i3-4.13/src/window.c ./src/window.c +--- ../i3-4.13/src/window.c 2016-11-08 19:54:01.000000000 +0100 ++++ ./src/window.c 2016-11-13 14:48:01.177001226 +0100 +@@ -17,6 +17,7 @@ void window_free(i3Window *win) { FREE(win->class_class); FREE(win->class_instance); i3string_free(win->name); @@ -197,45 +201,17 @@ diff -Nurp ../i3-4.12/src/window.c ./src/window.c FREE(win->ran_assignments); FREE(win); } -@@ -367,3 +368,88 @@ void window_update_motif_hints(i3Window +@@ -365,3 +366,62 @@ void window_update_motif_hints(i3Window #undef MWM_DECOR_BORDER #undef MWM_DECOR_TITLE } + -+/* -+ * Copy and resize icon if needed -+ */ -+void copy_icon_with_resize(uint32_t *dst, int width, int height, uint32_t* src, int s_width, int s_height) -+{ -+ int i, j; -+ -+ if (width == s_width && height == s_height) { -+ /* easy case, same dimensions, just copy data */ -+ memcpy(dst, src, width*height*sizeof(uint32_t)); -+ return; -+ } -+ -+ uint32_t* row = src; -+ int xstep = s_width / width; -+ int ystep = s_height / height * s_width; -+ -+ for (i=0; i < height; ++i) { -+ uint32_t* ptr = row; -+ for(j=0; j < width; ++j) { -+ *dst++ = *ptr; -+ ptr+=xstep; -+ } -+ row += ystep; -+ } -+} -+ -+ +void window_update_icon(i3Window *win, xcb_get_property_reply_t *prop) +{ + uint32_t *data = NULL; + uint64_t len = 0; + -+ if(!prop || prop->type != XCB_ATOM_CARDINAL || prop->format != 32) { ++ if (!prop || prop->type != XCB_ATOM_CARDINAL || prop->format != 32) { + DLOG("_NET_WM_ICON is not set\n"); + FREE(prop); + return; @@ -260,7 +236,7 @@ diff -Nurp ../i3-4.12/src/window.c ./src/window.c + + if (len == 0 || (crt_len >= 16*16 && crt_len < len)) { + len = crt_len; -+ data = prop_value; ++ data = prop_value; + } + if (len == 16*16) { + break; // found 16 pixels icon @@ -280,27 +256,44 @@ diff -Nurp ../i3-4.12/src/window.c ./src/window.c + LOG("Got _NET_WM_ICON of size: (%d,%d)\n", data[0], data[1]); + win->name_x_changed = true; // trigger a redraw + -+ FREE(win->icon); -+ win->icon = malloc(16 * 16 * sizeof(uint32_t)); -+ copy_icon_with_resize(win->icon, 16, 16, data + 2, data[0], data[1]); ++ win->icon_width = data[0]; ++ win->icon_height = data[1]; ++ ++ win->icon = malloc(len * 4); ++ memcpy(win->icon, &data[2], len * 4); + + FREE(prop); +} -diff -Nurp ../i3-4.12/src/x.c ./src/x.c ---- ../i3-4.12/src/x.c 2016-03-06 16:17:18.000000000 +0100 -+++ ./src/x.c 2016-10-11 23:56:12.412428013 +0200 -@@ -571,6 +571,10 @@ void x_draw_decoration(Con *con) { - //DLOG("indent_level = %d, indent_mult = %d\n", indent_level, indent_mult); - int indent_px = (indent_level * 5) * indent_mult; +diff -Nurp ../i3-4.13/src/x.c ./src/x.c +--- ../i3-4.13/src/x.c 2016-11-08 19:54:01.000000000 +0100 ++++ ./src/x.c 2016-11-13 14:48:26.856000152 +0100 +@@ -538,6 +538,7 @@ void x_draw_decoration(Con *con) { -+ if (win->icon) { -+ indent_px += 18; -+ } + /* 6: draw the title */ + int text_offset_y = (con->deco_rect.height - config.font.height) / 2; ++ int text_offset_x = 0; + + struct Window *win = con->window; + if (win == NULL) { +@@ -567,6 +568,9 @@ void x_draw_decoration(Con *con) { + if (win->name == NULL) + goto copy_pixmaps; + ++ if (win->icon) ++ text_offset_x = 18; + int mark_width = 0; if (config.show_marks && !TAILQ_EMPTY(&(con->marks_head))) { char *formatted_mark = sstrdup(""); -@@ -611,6 +615,22 @@ void x_draw_decoration(Con *con) { +@@ -602,12 +606,30 @@ void x_draw_decoration(Con *con) { + i3String *title = con->title_format == NULL ? win->name : con_parse_title_format(con); + draw_util_text(title, &(parent->frame_buffer), + p->color->text, p->color->background, +- con->deco_rect.x + logical_px(2), ++ con->deco_rect.x + text_offset_x + logical_px(2), + con->deco_rect.y + text_offset_y, +- con->deco_rect.width - mark_width - 2 * logical_px(2)); ++ con->deco_rect.width - text_offset_x - mark_width - 2 * logical_px(2)); if (con->title_format != NULL) I3STRING_FREE(title); @@ -312,9 +305,11 @@ diff -Nurp ../i3-4.12/src/x.c ./src/x.c + int icon_offset_y = (con->deco_rect.height - height) / 2; + + draw_util_image( -+ (unsigned char *)win->icon, ++ win->icon, ++ win->icon_width, ++ win->icon_height, + &(parent->frame_buffer), -+ con->deco_rect.x + indent_px - width, ++ con->deco_rect.x + text_offset_x - width, + con->deco_rect.y + icon_offset_y, + width, + height); diff --git a/satellites/fdk-aac.sat b/satellites/fdk-aac.sat new file mode 100644 index 0000000..72ef170 --- /dev/null +++ b/satellites/fdk-aac.sat @@ -0,0 +1,14 @@ +import 'compile/configure' + +name=fdk-aac +version=0.1.4 +update_url="https://sourceforge.net/projects/opencore-amr/files/$name/" + +dlextract "https://sourceforge.net/projects/opencore-amr/files/$name/$name-$version.tar.gz" \ + 'e274a7d7f6cd92c71ec5c78e4dc9f8b7' +header_end + +cd "$name-$version" +compile_configure -- --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/ffmpeg.sat b/satellites/ffmpeg.sat index 51ea54e..6ddccb6 100644 --- a/satellites/ffmpeg.sat +++ b/satellites/ffmpeg.sat @@ -1,9 +1,9 @@ name=ffmpeg -version=3.2 +version=3.2.2 update_url='https://ffmpeg.org/download.html' dlextract "http://ffmpeg.org/releases/$name-$version.tar.bz2" \ - 'ce8fb81e2742eb70548956492c4625b8' + '82cf25d36df70ee995bbdb3efc079934' header_end cd "$name-$version" diff --git a/satellites/functions/compile/cmake.sh b/satellites/functions/compile/cmake.sh index 8d69989..293b61e 100644 --- a/satellites/functions/compile/cmake.sh +++ b/satellites/functions/compile/cmake.sh @@ -24,7 +24,7 @@ compile_cmake() { -DCMAKE_INSTALL_DOCDIR="$dir_docdir" \ -DCMAKE_INSTALL_INFODIR="$dir_infodir" \ -DCMAKE_INSTALL_LOCALEDIR="$dir_localedir" \ - $@ + "$@" make [ "$noinstall" = false ] && make DESTDIR="$dir_install" install cd "$olddir" diff --git a/satellites/functions/compile/configure.sh b/satellites/functions/compile/configure.sh index d86a5b0..3be477c 100644 --- a/satellites/functions/compile/configure.sh +++ b/satellites/functions/compile/configure.sh @@ -3,16 +3,18 @@ define_option "build=: Explicity specify the host machine's target triplet" compile_configure() { local builddir='' + local nomake=false local noinstall=false local olddir="$PWD" local makeflags='' local OPTIND=1 local opt - while getopts 'b:m:I' opt; do case "$opt" in + while getopts 'b:m:MI' opt; do case "$opt" in b) local builddir="$OPTARG" ;; - I) local noinstall=true ;; m) local makeflags="$OPTARG" ;; + M) local nomake=true ;; + I) local noinstall=true ;; esac; done shift $((OPTIND-1)) [ "$1" = '--' ] && shift @@ -39,10 +41,10 @@ compile_configure() { --docdir="/$dir_prefix/$dir_docdir/$name" \ --infodir="/$dir_prefix/$dir_infodir" \ --localedir="/$dir_prefix/$dir_localedir" \ - $build $cross $@ + $build $cross "$@" - make $makeflags - [ "$noinstall" = false ] && make DESTDIR="$dir_install" $makeflags install + [ "$nomake" = false ] && make $makeflags + [ "$nomake" = false -a "$noinstall" = false ] && make DESTDIR="$dir_install" $makeflags install [ "$builddir" ] && cd "$olddir" || true } diff --git a/satellites/functions/compile/perl.sh b/satellites/functions/compile/perl.sh index cc23a87..d2b6145 100644 --- a/satellites/functions/compile/perl.sh +++ b/satellites/functions/compile/perl.sh @@ -17,7 +17,7 @@ compile_perl() { --install_path bin="/$dir_prefix/$dir_bindir" \ --install_path bindoc="/$dir_prefix/$dir_mandir/man1" \ --install_path libdoc="/$dir_prefix/$dir_mandir/man3" \ - $@ + "$@" ./Build [ "$noinstall" = false ] && ./Build install || true } diff --git a/satellites/functions/compile/python.sh b/satellites/functions/compile/python.sh index c98f4db..90a8426 100644 --- a/satellites/functions/compile/python.sh +++ b/satellites/functions/compile/python.sh @@ -1,4 +1,4 @@ compile_python() { local ver="$1"; shift - python$ver setup.py install --prefix="/$dir_prefix" --root="$dir_install" --optimize=2 $@ + python$ver setup.py install --prefix="/$dir_prefix" --root="$dir_install" --optimize=2 "$@" } diff --git a/satellites/functions/compile/qt.sh b/satellites/functions/compile/qt.sh index 3be39d6..4e6db57 100644 --- a/satellites/functions/compile/qt.sh +++ b/satellites/functions/compile/qt.sh @@ -1,7 +1,7 @@ compile_qt() { local ver="$1"; shift - $(compile_qt_get_cmd qmake "$ver") PREFIX="/$dir_prefix" build_mode=release build_type=shared $@ + $(compile_qt_get_cmd qmake "$ver") PREFIX="/$dir_prefix" build_mode=release build_type=shared "$@" make make INSTALL_ROOT="$dir_install" install } diff --git a/satellites/functions/compile/waf.sh b/satellites/functions/compile/waf.sh index 0b260ab..eab3b0e 100644 --- a/satellites/functions/compile/waf.sh +++ b/satellites/functions/compile/waf.sh @@ -14,5 +14,5 @@ compile_waf() { --bindir="/$dir_prefix/$dir_bindir" \ --libdir="/$dir_prefix/$dir_libdir" \ --destdir="$dir_install" \ - $WAFFLAGS $@ + "$WAFFLAGS" "$@" } diff --git a/satellites/functions/vcs/git.sh b/satellites/functions/vcs/git.sh index 246d62f..442cfe0 100644 --- a/satellites/functions/vcs/git.sh +++ b/satellites/functions/vcs/git.sh @@ -1,17 +1,18 @@ vcs_git() { - local reponame="$(basename "$1")" + local reponame="$(basename "$1")"; shift + local branch="$(basename "$1")" local dir="$dir_source/$name/$reponame" if [ ! -d "$dir" ]; then # Clone new repo - git clone --recursive --depth=1 "$1" "$dir" + git clone --recursive --depth=1 $([ "$branch" ] && echo "-b $branch")"$1" "$dir" cd "$dir" echo "$(git rev-parse @)" > "${dir}_rev_$_satname" vcs_compile=true else cd "$dir" - if git fetch > /dev/null; then + if git fetch $([ "$branch" ] && echo "origin $branch") > /dev/null; then git reset --hard FETCH_HEAD > /dev/null fi local rev="$(git rev-parse @)" diff --git a/satellites/functions/vcs/svn.sh b/satellites/functions/vcs/svn.sh new file mode 100644 index 0000000..403f28b --- /dev/null +++ b/satellites/functions/vcs/svn.sh @@ -0,0 +1,23 @@ +vcs_svn() { + local reponame="$(basename "$1")" + local dir="$dir_source/$name/$reponame" + + [ "$2" ] && local revision="-r $2" || local revision="" + + if [ ! -d "$dir" ]; then + # Clone new repo + svn co $revision "$1" "$dir" + echo "$(svn info "$dir" --show-item revision)" > "${dir}_rev_$_satname" + vcs_compile=true + else + svn up $revision "$dir" || true + local rev="$(svn info "$dir" --show-item revision)" + if [ "$rev" != "$(cat "${dir}_rev_$_satname" 2> /dev/null || true)" ]; then + echo "$rev" > "${dir}_rev_$_satname" + vcs_compile=true + fi + fi + + [ "$2" ] || version="r$(svn info "$dir" --show-item revision | xargs)" + getfile "$reponame" +} diff --git a/satellites/gfm-git.sat b/satellites/gfm-git.sat index 961cfa4..d651acd 100644 --- a/satellites/gfm-git.sat +++ b/satellites/gfm-git.sat @@ -7,7 +7,7 @@ vcs_git 'https://github.com/debrouxl/tilp_and_gfm' header_end cd tilp_and_gfm/gfm/trunk -autoreconf -i +autoreconf -fi compile_configure # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/giblib.sat b/satellites/giblib.sat index a3c16ee..e618330 100644 --- a/satellites/giblib.sat +++ b/satellites/giblib.sat @@ -19,7 +19,7 @@ for x in $(cat ../debian/patches/series); do patch -p1 -i ../debian/patches/$x done -autoreconf -i +autoreconf -fi compile_configure -- --disable-static # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/go.sat b/satellites/go.sat index 17b8c47..333ace8 100644 --- a/satellites/go.sat +++ b/satellites/go.sat @@ -1,12 +1,12 @@ name=go -version=1.7.3 +version=1.7.4 bootstrap_version=1.4.3 update_url='https://golang.org/dl/' define_option '!bootstrap: Bootstrap this program' dlextract "https://storage.googleapis.com/golang/$name$version.src.tar.gz" \ - '83d1b7bd4281479ab7d153e5152c9fc9' + '49c1076428a5d3b5ad7ac65233fcca2f' if option bootstrap; then download "https://storage.googleapis.com/golang/$name$bootstrap_version.src.tar.gz" \ diff --git a/satellites/hostapd.sat b/satellites/hostapd.sat index d76f956..66db445 100644 --- a/satellites/hostapd.sat +++ b/satellites/hostapd.sat @@ -4,15 +4,12 @@ update_url="http://w1.fi/$name/" define_option '!rtlxdrv: Build with support for RTL8188{C|CU|CUS} wifi chips' +dlextract "http://w1.fi/releases/$name-$version.tar.gz" \ + 'eaa56dce9bd8f1d195eb62596eab34c7' + if option rtlxdrv; then - version=2.5 # The patch still has to be updated - dlextract "http://w1.fi/releases/$name-$version.tar.gz" \ - '69f9cec3f76d74f402864a43e4f8624f' - dlfile 'https://raw.githubusercontent.com/pritambaral/hostapd-rtl871xdrv/547005ed466bbd632cff87b706e339874025acb0/rtlxdrv.patch' \ - 'ca8697f0254e3444f1e3758100c4f949' -else - dlextract "http://w1.fi/releases/$name-$version.tar.gz" \ - 'eaa56dce9bd8f1d195eb62596eab34c7' + dlfile 'https://raw.githubusercontent.com/pritambaral/hostapd-rtl871xdrv/601a3f19d78393018f39a2e38ad14bf2e3315a0a/rtlxdrv.patch' \ + 'fef4f428e4aae71f5202a61f656952da' fi header_end diff --git a/satellites/i3.sat b/satellites/i3.sat index f6b602c..440cd48 100644 --- a/satellites/i3.sat +++ b/satellites/i3.sat @@ -1,15 +1,15 @@ +import 'compile/configure' + name=i3 -version=4.12 +version=4.13 update_url='http://i3wm.org/downloads/' define_option '!window-icons: Patch for support for icons in the title' dlextract "http://i3wm.org/downloads/$name-$version.tar.bz2" \ - '308fc79ed252e1f3c8a093598e13e326' + '08d17dcf1fde665a15f7d411486546ae' if option window-icons; then - #dlfile 'https://aur.archlinux.org/cgit/aur.git/plain/iconsupport.patch?h=i3-wm-iconpatch&id=df5ce8271b714937088bc797b5724c1f2c591c74' \ - # '3fe4dbd039bc0934d641ac9328e7ef92' extrafile 'iconsupport.patch' fi header_end @@ -18,19 +18,6 @@ cd "$name-$version" option window-icons patch -p1 -i ../iconsupport.patch -# Fix install directories -sed -i -e "/\$(INSTALL)/s/bin/$(safe_sed "$dir_bindir")/" \ - -e "/\$(INSTALL)/s/share/$(safe_sed "$dir_datadir")/" \ - src/i3.mk i3-msg/i3-msg.mk i3-nagbar/i3-nagbar.mk \ - i3-config-wizard/i3-config-wizard.mk i3bar/i3bar.mk \ - i3-dump-log/i3-dump-log.mk i3-input/i3-input.mk - -make install \ - PREFIX="/$dir_prefix" \ - SYSCONFDIR="/$dir_sysconfdir" \ - DESTDIR="$dir_install" - -make -C man -install -Dm644 -t "$dir_install/$dir_prefix/$dir_mandir/man1" man/*.1 +compile_configure -b build -- --srcdir=.. # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/iasl.sat b/satellites/iasl.sat new file mode 100644 index 0000000..9d275ca --- /dev/null +++ b/satellites/iasl.sat @@ -0,0 +1,14 @@ +name=acpica +version=20161117 +update_url='https://acpica.org/downloads' +update_names="/files/$name-unix-$version.tar.gz" + +dlextract "https://acpica.org/sites/$name/files/$name-unix-$version.tar.gz" \ + 'a08919942050b56955580bfa67855ce9' +header_end + +cd "$name-unix-$version" +make +make DESTDIR="$dir_install" INSTALLDIR="/$dir_prefix/$dir_bindir" install + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/jsoncpp.sat b/satellites/jsoncpp.sat new file mode 100644 index 0000000..297906f --- /dev/null +++ b/satellites/jsoncpp.sat @@ -0,0 +1,23 @@ +import 'compile/cmake' + +name=jsoncpp +version=1.7.7 +update_url="https://github.com/open-source-parsers/$name/releases" +update_names="/archive/$version.tar.gz" + +dlextract "https://github.com/open-source-parsers/$name/archive/$version.tar.gz" \ + '9b51c65c563463220a8cb5fa33d525f8' +header_end + +cd "$name-$version" + +# Fix paths +sed -i -e "s/lib\${LIB_SUFFIX}\/pkgconfig/$(safe_sed "$dir_libdir/pkgconfig")/" CMakeLists.txt + +compile_cmake -- \ + -DBUILD_SHARED_LIBS=ON \ + -DBUILD_STATIC_LIBS=OFF \ + -DRUNTIME_INSTALL_DIR="/$dir_prefix/$dir_bindir" \ + -DLIBRARY_INSTALL_DIR="/$dir_prefix/$dir_libdir" + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libbsd.sat b/satellites/libbsd.sat new file mode 100644 index 0000000..cc33615 --- /dev/null +++ b/satellites/libbsd.sat @@ -0,0 +1,14 @@ +import 'compile/configure' + +name=libbsd +version=0.8.3 +update_url='https://libbsd.freedesktop.org/releases/' + +dlextract "https://libbsd.freedesktop.org/releases/$name-$version.tar.xz" \ + 'e935c1bb6cc98a4a43cb1da22795493a' +header_end + +cd "$name-$version" +compile_configure -- --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libev.sat b/satellites/libev.sat index 9aff35f..662c95b 100644 --- a/satellites/libev.sat +++ b/satellites/libev.sat @@ -1,11 +1,11 @@ import 'compile/configure' name=libev -version=4.22 +version=4.23 update_url="http://dist.schmorp.de/$name/" dlextract "http://dist.schmorp.de/$name/$name-$version.tar.gz" \ - 'bf0007e37240103d3c2be80ca9bee3f9' + 'f1dbf786ead8307e0d4f5f68f2f8526c' header_end cd "$name-$version" diff --git a/satellites/libgdiplus.sat b/satellites/libgdiplus.sat new file mode 100644 index 0000000..9f2b3fb --- /dev/null +++ b/satellites/libgdiplus.sat @@ -0,0 +1,14 @@ +import 'compile/configure' + +name=libgdiplus +version=4.2 +update_url="https://download.mono-project.com/sources/$name/" + +dlextract "https://download.mono-project.com/sources/$name/$name-$version.tar.gz" \ + '3e68075aa0911d5ebc2b3739e85af0ea' +header_end + +cd "$name-$version" +compile_configure -- --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libsrtp.sat b/satellites/libsrtp.sat new file mode 100644 index 0000000..f69660d --- /dev/null +++ b/satellites/libsrtp.sat @@ -0,0 +1,14 @@ +import 'compile/configure' + +name=libsrtp +version=1.5.4 +update_url="https://github.com/cisco/$name/releases" + +dlextract "https://github.com/cisco/$name/archive/v$version.tar.gz" \ + '64a9580f86a9c3e1c4986e944e6a5a84' +header_end + +cd "$name-$version" +compile_configure -m shared_library + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libticables-git.sat b/satellites/libticables-git.sat index 811c814..9a4a18c 100644 --- a/satellites/libticables-git.sat +++ b/satellites/libticables-git.sat @@ -7,7 +7,7 @@ vcs_git 'https://github.com/debrouxl/tilibs' header_end cd tilibs/libticables/trunk -autoreconf -i +autoreconf -fi compile_configure -- --enable-libusb10 # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libticalcs-git.sat b/satellites/libticalcs-git.sat index eebd9b3..b4ddf71 100644 --- a/satellites/libticalcs-git.sat +++ b/satellites/libticalcs-git.sat @@ -7,7 +7,7 @@ vcs_git 'https://github.com/debrouxl/tilibs' header_end cd tilibs/libticalcs/trunk -autoreconf -i +autoreconf -fi compile_configure # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libticonv-git.sat b/satellites/libticonv-git.sat index 6d5ce64..ea3cab4 100644 --- a/satellites/libticonv-git.sat +++ b/satellites/libticonv-git.sat @@ -7,7 +7,7 @@ vcs_git 'https://github.com/debrouxl/tilibs' header_end cd tilibs/libticonv/trunk -autoreconf -i +autoreconf -fi compile_configure # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libtifiles-git.sat b/satellites/libtifiles-git.sat index 9cee393..2d54775 100644 --- a/satellites/libtifiles-git.sat +++ b/satellites/libtifiles-git.sat @@ -7,7 +7,7 @@ vcs_git 'https://github.com/debrouxl/tilibs' header_end cd tilibs/libtifiles/trunk -autoreconf -i +autoreconf -fi compile_configure # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libwebp.sat b/satellites/libwebp.sat index 4e555f2..ca13d65 100644 --- a/satellites/libwebp.sat +++ b/satellites/libwebp.sat @@ -2,13 +2,15 @@ import 'compile/configure' name=libwebp version=0.5.1 -update_url="https://developers.google.com/speed/webp/download" +update_url='https://developers.google.com/speed/webp/download' dlextract "https://storage.googleapis.com/downloads.webmproject.org/releases/webp/$name-$version.tar.gz" \ '3d7db92ebba5b4f679413d25c6040881' header_end cd "$name-$version" -compile_configure -- --disable-static +compile_configure -- \ + --disable-static \ + --enable-libwebpdemux # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libxdg-basedir.sat b/satellites/libxdg-basedir.sat index 3259887..4f05377 100644 --- a/satellites/libxdg-basedir.sat +++ b/satellites/libxdg-basedir.sat @@ -13,7 +13,7 @@ header_end cd "$name-$name-$version" patch -p0 -i ../xdgGetRelativeHome-overflow.patch -autoreconf -i +autoreconf -fi compile_configure -- --disable-static # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/libxkbcommon.sat b/satellites/libxkbcommon.sat index 3ede9fe..f393fb0 100644 --- a/satellites/libxkbcommon.sat +++ b/satellites/libxkbcommon.sat @@ -1,11 +1,11 @@ import 'compile/configure' name=libxkbcommon -version=0.6.1 +version=0.7.0 update_url='http://xkbcommon.org/' dlextract "http://xkbcommon.org/download/$name-$version.tar.xz" \ - '67a8f322b5fa32352272e811bb90dd73' + '61ba550fc529ea4d6f9faa2cad62c95f' header_end cd "$name-$version" diff --git a/satellites/makerom-git.sat b/satellites/makerom-git.sat new file mode 100644 index 0000000..d1c3daa --- /dev/null +++ b/satellites/makerom-git.sat @@ -0,0 +1,12 @@ +import 'vcs/git' + +name=Project_CTR + +vcs_git "https://github.com/profi200/$name" +header_end + +cd "$name/makerom" +make +install -Dm755 -t "$dir_install/$dir_prefix/$dir_bindir" makerom + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/mbedtls.sat b/satellites/mbedtls.sat new file mode 100644 index 0000000..3c82628 --- /dev/null +++ b/satellites/mbedtls.sat @@ -0,0 +1,24 @@ +name=mbedtls +version=2.4.0 +update_url='https://tls.mbed.org/' + +dlextract "https://tls.mbed.org/download/$name-$version-apache.tgz" \ + '4debf0e0eed7e75a00b7780830c9688e' +header_end + +cd "$name-$version" + +# enable flags for non-embedded systems (from ArchLinux) +sed -i 's|//\(#define MBEDTLS_THREADING_C\)|\1|' include/mbedtls/config.h +sed -i 's|//\(#define MBEDTLS_THREADING_PTHREAD\)|\1|' include/mbedtls/config.h + +# Don't build static libraries +sed -i -e '/^all: shared/s/static//' library/Makefile + +# Fix paths +sed -i -e "s/\(\$(DESTDIR)\/\)lib/\1$(safe_sed "$dir_libdir")/" \ + -e "s/\(\$(DESTDIR)\/\)bin/\1$(safe_sed "$dir_bindir")/" Makefile + +make SHARED=1 DESTDIR="$dir_install/$dir_prefix" install + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/minizip.sat b/satellites/minizip.sat new file mode 100644 index 0000000..1bc10a2 --- /dev/null +++ b/satellites/minizip.sat @@ -0,0 +1,16 @@ +import 'compile/configure' + +name=zlib +version=1.2.8 +update_url='http://zlib.net/' + +dlextract "http://zlib.net/$name-$version.tar.xz" \ + '28f1205d8dd2001f26fec1e8c2cebe37' +header_end + +cd "$name-$version/contrib/minizip" +rm -f Makefile +autoreconf -fi +compile_configure -- --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/mono.sat b/satellites/mono.sat new file mode 100644 index 0000000..2b69353 --- /dev/null +++ b/satellites/mono.sat @@ -0,0 +1,20 @@ +import 'compile/configure' + +name=mono +majver=4.6.2 +version=$majver.7 # TODO: Untested +update_url="https://download.mono-project.com/sources/$name/" + +dlextract "https://download.mono-project.com/sources/$name/$name-$version.tar.bz2" \ + '601a96baa96a2e7acde1fb7e622322c4' +header_end + +cd "$name-$majver" + +# Fix mono_libdir +#sed -i -e "/mono_libdir=/s/\/lib/\/$(safe_sed "$dir_libdir")/" ./configure + +# TODO: Move everything to the proper user-selected libdir +compile_configure -- --libdir="/$dir_prefix/lib" + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/mpv.sat b/satellites/mpv.sat index 8b0f8a1..be2960e 100644 --- a/satellites/mpv.sat +++ b/satellites/mpv.sat @@ -1,11 +1,11 @@ import 'compile/waf' name=mpv -version=0.21.0 +version=0.22.0 update_url="https://github.com/mpv-player/$name/releases" dlextract "https://github.com/mpv-player/$name/archive/v$version.tar.gz" \ - 'e0d83a883bc34f67d568c025b036b584' + 'aa56677b11c1b634a83c56f1c1c39c57' header_end cd "$name-$version" diff --git a/satellites/ninja.sat b/satellites/ninja.sat index 434e2fb..df11e41 100644 --- a/satellites/ninja.sat +++ b/satellites/ninja.sat @@ -1,14 +1,21 @@ name=ninja -version=1.7.1 +version=1.7.2 update_url="https://github.com/ninja-build/$name/releases" +define_option '!bootstrap: Bootstrap this program' + dlextract "https://github.com/ninja-build/$name/archive/v$version.tar.gz" \ - 'e45bda009319f9af5385bb79e783da9f' + '7b482218757acbaeac4d4d54a3cd94e1' header_end cd "$name-$version" -./configure.py --bootstrap +if option bootstrap; then + ./configure.py --bootstrap +else + ./configure.py + ninja +fi install -Dm755 -t "$dir_install/$dir_prefix/$dir_bindir" "$name" install -Dm644 misc/bash-completion "$dir_install/$dir_prefix/$dir_datadir/bash-completion/completions/$name" diff --git a/satellites/openrc.sat b/satellites/openrc.sat new file mode 100644 index 0000000..d244d2b --- /dev/null +++ b/satellites/openrc.sat @@ -0,0 +1,20 @@ +name=openrc +version=0.22.4 # TODO: Untested +update_url="https://github.com/OpenRC/$name/releases" +update_names="/archive/$version.tar.gz" + +dlextract "https://github.com/OpenRC/$name/archive/$version.tar.gz" \ + '23e32cb3dc9fdb9de0c935b059207f74' +header_end + +cd "$name-$version" +make install \ + DESTDIR="$dir_install" \ + LIBNAME="$dir_libdir" \ + PKG_PREFIX="/$dir_prefix" \ + LIBEXECDIR="/$dir_libdir" \ + BINDIR="/$dir_bindir" \ + SBINDIR="/$dir_sbindir" \ + SYSCONFDIR="/$dir_sysconfdir" + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/opus.sat b/satellites/opus.sat new file mode 100644 index 0000000..28180ff --- /dev/null +++ b/satellites/opus.sat @@ -0,0 +1,14 @@ +import 'compile/configure' + +name=opus +version=1.1.3 +update_url='http://www.opus-codec.org/downloads/' + +dlextract "http://downloads.xiph.org/releases/$name/$name-$version.tar.gz" \ + '32bbb6b557fe1b6066adc0ae1f08b629' +header_end + +cd "$name-$version" +compile_configure -- --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/ortp.sat b/satellites/ortp.sat new file mode 100644 index 0000000..830f670 --- /dev/null +++ b/satellites/ortp.sat @@ -0,0 +1,14 @@ +import 'compile/configure' + +name=ortp +version=0.27.0 +update_url="https://download.savannah.gnu.org/releases/linphone/$name/sources/" + +dlextract "https://download.savannah.gnu.org/releases/linphone/$name/sources/$name-$version.tar.gz" \ + '301d1e9e32d1ba5399bc82ceb11debf7' +header_end + +cd "$name-$version" +compile_configure -- --disable-strict + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/graveyard/unmaintained_satellites/padxorer.sat b/satellites/padxorer.sat similarity index 76% rename from graveyard/unmaintained_satellites/padxorer.sat rename to satellites/padxorer.sat index 61c0d44..7395939 100644 --- a/graveyard/unmaintained_satellites/padxorer.sat +++ b/satellites/padxorer.sat @@ -7,6 +7,6 @@ dlfile "http://pastebin.com/raw/$paste" \ header_end cc -x c -O3 "$paste" -o "$name" -install -Dm755 "$name" "$dir_install/$dir_prefix/bin/$name" +install -Dm755 -t "$dir_install/$dir_prefix/$dir_bindir" "$name" # vim:set tabstop=4 shiftwidth=4 syntax=sh et: diff --git a/satellites/protobuf.sat b/satellites/protobuf.sat new file mode 100644 index 0000000..ac88816 --- /dev/null +++ b/satellites/protobuf.sat @@ -0,0 +1,20 @@ +import 'compile/configure' + +name=protobuf +version=3.1.0 +update_url="https://github.com/google/$name/releases" +update_names="/archive/v$version.tar.gz" + +dlextract "https://github.com/google/$name/archive/v$version.tar.gz" \ + '14a532a7538551d5def317bfca41dace' +header_end + +cd "$name-$version" + +# From autogen.sh +autoreconf -f -i -Wall,no-obsolete +rm -rf autom4te.cache config.h.in~ + +compile_configure -- --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/python3-requests.sat b/satellites/python3-requests.sat index 8dc3996..89194f1 100644 --- a/satellites/python3-requests.sat +++ b/satellites/python3-requests.sat @@ -1,11 +1,11 @@ import 'compile/python' name=requests -version=2.11.1 +version=2.12.3 update_url="https://github.com/kennethreitz/$name/releases" dlextract "https://github.com/kennethreitz/$name/archive/v$version.tar.gz" \ - '3007b144a7ce83ee16262b79e3acfa1b' + 'bae63b3d54e548ccd97b86573a43f1aa' header_end cd "$name-$version" diff --git a/satellites/python3-setuptools.sat b/satellites/python3-setuptools.sat index 37d89b7..c0098f0 100644 --- a/satellites/python3-setuptools.sat +++ b/satellites/python3-setuptools.sat @@ -1,12 +1,11 @@ import 'compile/python' name=setuptools -version=28.8.0 -update_url="https://pypi.python.org/pypi/$name" -update_names="$name-$version.tar.gz#md5=" +version=30.2.0 +update_url="https://github.com/pypa/$name/releases" -dlextract "https://pypi.python.org/packages/25/4e/1b16cfe90856235a13872a6641278c862e4143887d11a12ac4905081197f/$name-$version.tar.gz" \ - '43d6eb25f60e8a2682a8f826ce9e3f42' +dlextract "https://github.com/pypa/$name/archive/v$version.tar.gz" \ + 'asdf' header_end cd "$name-$version" diff --git a/satellites/qt5-declarative.sat b/satellites/qt5-declarative.sat new file mode 100644 index 0000000..c9888fd --- /dev/null +++ b/satellites/qt5-declarative.sat @@ -0,0 +1,17 @@ +import 'compile/qt' + +name=qt5 +submodule=declarative +majver=5.7 +version=$majver.0 +update_url='https://www.qt.io/download-open-source/' +update_names="qt-everywhere-opensource-src-$version.tar.gz" + +dlextract "http://download.qt.io/official_releases/qt/$majver/$version/submodules/qt$submodule-opensource-src-$version.tar.xz" \ + '0d9e461aa54dba4793253fa2eb501f9b' +header_end + +cd "qt$submodule-opensource-src-$version" +compile_qt 5 + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/qt5-webchannel.sat b/satellites/qt5-webchannel.sat new file mode 100644 index 0000000..05c5b7d --- /dev/null +++ b/satellites/qt5-webchannel.sat @@ -0,0 +1,17 @@ +import 'compile/qt' + +name=qt5 +submodule=webchannel +majver=5.7 +version=$majver.0 +update_url='https://www.qt.io/download-open-source/' +update_names="qt-everywhere-opensource-src-$version.tar.gz" + +dlextract "http://download.qt.io/official_releases/qt/$majver/$version/submodules/qt$submodule-opensource-src-$version.tar.xz" \ + 'dd7699ddeb203d77237ab58a06f9fbfa' +header_end + +cd "qt$submodule-opensource-src-$version" +compile_qt 5 + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/qt5-webengine.sat b/satellites/qt5-webengine.sat new file mode 100644 index 0000000..aa3613a --- /dev/null +++ b/satellites/qt5-webengine.sat @@ -0,0 +1,19 @@ +import 'compile/qt' + +name=qt5 +submodule=webengine +majver=5.7 +version=$majver.0 +update_url='https://www.qt.io/download-open-source/' +update_names="qt-everywhere-opensource-src-$version.tar.gz" + +dlextract "http://download.qt.io/official_releases/qt/$majver/$version/submodules/qt$submodule-opensource-src-$version.tar.xz" \ + '937f64886fbcb038d6fa4b44ae80cbeb' +header_end + +cd "qt$submodule-opensource-src-$version" +compile_qt 5 \ + WEBENGINE_CONFIG+='use_system_icu use_system_ffmpeg use_system_minizip use_system_libwebp use_system_libxslt use_system_libevent use_system_jsoncpp use_system_opus use_system_protobuf use_system_libsrtp use_system_snappy' # use_system_vpx +# Options can be found in tools/qmake/mkspecs/features/configure.prf + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/qt5-x11extras.sat b/satellites/qt5-x11extras.sat new file mode 100644 index 0000000..1153278 --- /dev/null +++ b/satellites/qt5-x11extras.sat @@ -0,0 +1,17 @@ +import 'compile/qt' + +name=qt5 +submodule=x11extras +majver=5.7 +version=$majver.0 +update_url='https://www.qt.io/download-open-source/' +update_names="qt-everywhere-opensource-src-$version.tar.gz" + +dlextract "http://download.qt.io/official_releases/qt/$majver/$version/submodules/qt$submodule-opensource-src-$version.tar.xz" \ + '8733599cf5a91c62b185f689b2d402ee' +header_end + +cd "qt$submodule-opensource-src-$version" +compile_qt 5 + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/qutebrowser.sat b/satellites/qutebrowser.sat index 24c7206..21b4169 100644 --- a/satellites/qutebrowser.sat +++ b/satellites/qutebrowser.sat @@ -15,12 +15,15 @@ sed -i -e "s/usr\/share/$(safe_sed "$dir_prefix/$dir_datadir")/" qutebrowser/uti compile_python 3 +sed -e '/^Name=/s/$/ (Webengine)/' \ + -e '/^Exec=/s/%u/--backend webengine &/' "$name.desktop" > "$name-webengine.desktop" + # Install manpage a2x -f manpage "doc/$name.1.asciidoc" install -Dm644 -t "$dir_install/$dir_prefix/$dir_mandir/man1" "doc/$name.1" # Install desktop and icons -install -Dm644 -t "$dir_install/$dir_prefix/$dir_datadir/applications" "$name.desktop" +install -Dm644 -t "$dir_install/$dir_prefix/$dir_datadir/applications" "$name.desktop" "$name-webengine.desktop" for x in 16 24 32 48 64 96 128 256 512; do install -Dm644 "icons/$name-${x}x$x.png" "$dir_install/$dir_prefix/$dir_datadir/icons/hicolor/${x}x$x/apps/$name.png" done diff --git a/satellites/snappy.sat b/satellites/snappy.sat new file mode 100644 index 0000000..6a9b26b --- /dev/null +++ b/satellites/snappy.sat @@ -0,0 +1,14 @@ +import 'compile/configure' + +name=snappy +version=1.1.3 +update_url="https://github.com/google/$name/releases" + +dlextract "https://github.com/google/$name/releases/download/$version/$name-$version.tar.gz" \ + '7358c82f133dc77798e4c2062a749b73' +header_end + +cd "$name-$version" +compile_configure -- --disable-static + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/steam.sat b/satellites/steam.sat index 238f336..c4914ba 100644 --- a/satellites/steam.sat +++ b/satellites/steam.sat @@ -1,9 +1,9 @@ name=steam -version=1.0.0.53 +version=1.0.0.54 update_url="http://repo.steampowered.com/$name/archive/precise/" dlextract "http://repo.steampowered.com/$name/archive/precise/${name}_$version.tar.gz" \ - '2c1ff88d15d64c3997551a9874b7b830' + 'd1398490635615c428165e984a1ec71b' header_end cd "$name" diff --git a/satellites/streamlink.sat b/satellites/streamlink.sat index 9e64d38..f4d55d5 100644 --- a/satellites/streamlink.sat +++ b/satellites/streamlink.sat @@ -1,11 +1,11 @@ import 'compile/python' name=streamlink -version=0.0.2 -update_url="https://pypi.python.org/pypi/$name" +version=0.1.0 +update_url="https://github.com/$name/$name/releases" -dlextract "https://pypi.python.org/packages/df/12/261a31e4e00cc062e785fc6e23f2dcf813fd3397dbf258c241e1f1e494f8/$name-$version.tar.gz" \ - 'd37b05f8fdfe8336d66312422c4c952f' +dlextract "https://github.com/$name/$name/releases/download/$version/$name-$version.tar.gz" \ + '3b54a7cfd6538853f9a8e86508e1cce5' header_end cd "$name-$version" diff --git a/satellites/syncthing.sat b/satellites/syncthing.sat index 0620d01..6c1830f 100644 --- a/satellites/syncthing.sat +++ b/satellites/syncthing.sat @@ -1,9 +1,9 @@ name=syncthing -version=0.14.10 +version=0.14.13 update_url="https://github.com/$name/$name/releases" dlextract "https://github.com/$name/$name/releases/download/v$version/$name-source-v$version.tar.gz" \ - '1181e6610d389c9abb67066beb049451' + '116ad104dc286d930a0e260efd6aed03' extrafile 'syncthing-browser.desktop' header_end @@ -13,16 +13,13 @@ cd "src/github.com/$name/$name" GOPATH="$PWD/../../../../:$GOPATH" go run build.go -no-upgrade -rm -f bin/testutil - # Install program -install -Dm755 -t "$dir_install/$dir_prefix/$dir_bindir" bin/* +install -Dm755 -t "$dir_install/$dir_prefix/$dir_bindir" bin/syncthing # Install manpages -for num in 1 5 7; do - for file in man/*.$num; do - install -Dm644 -t "$dir_install/$dir_prefix/$dir_mandir/man$num" "$file" - done +for file in man/syncthing.1 man/*.5 man/*.7; do + num="$(echo "$file" | cut -d '.' -f 2)" + install -Dm644 -t "$dir_install/$dir_prefix/$dir_mandir/man$num" "$file" done # Install desktop diff --git a/satellites/teeworlds.sat b/satellites/teeworlds.sat index eba2e16..530ad97 100644 --- a/satellites/teeworlds.sat +++ b/satellites/teeworlds.sat @@ -1,11 +1,11 @@ # NOTE: This program includes external libraries in their source code: pnglite, wavpack and zlib. Due to how this program is built, it's hard to link with the system ones instead. name=teeworlds -version=0.6.3 +version=0.6.4 update_url='https://www.teeworlds.com/?page=downloads' dlextract "https://downloads.teeworlds.com/$name-$version-src.tar.gz" \ - 'bbe9faa26caf796bcdffc4bc635118fd' + '9733800c12462ac4d5a5a4f6ea750af0' extrafile "$name.desktop" header_end diff --git a/satellites/texmaker.sat b/satellites/texmaker.sat new file mode 100644 index 0000000..04cd7c8 --- /dev/null +++ b/satellites/texmaker.sat @@ -0,0 +1,16 @@ +# TODO: Qt5 + +import 'compile/qt' + +name=texmaker +version=4.5 +update_url="http://www.xm1math.net/$name/download.html" + +dlextract "http://www.xm1math.net/$name/$name-$version.tar.bz2" \ + '156ffad5b7193e0cfecd2d3689f3a7a4' +header_end + +cd "$name-$version" +compile_qt 4 + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/tilp-git.sat b/satellites/tilp-git.sat index 68a2227..cbe9555 100644 --- a/satellites/tilp-git.sat +++ b/satellites/tilp-git.sat @@ -7,7 +7,7 @@ vcs_git 'https://github.com/debrouxl/tilp_and_gfm' header_end cd tilp_and_gfm/tilp/trunk -autoreconf -i +autoreconf -fi compile_configure # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/virtualbox.sat b/satellites/virtualbox.sat new file mode 100644 index 0000000..b9b5d2d --- /dev/null +++ b/satellites/virtualbox.sat @@ -0,0 +1,114 @@ +# NOTE: This package uses a prebuilt BIOS image, that can only be properly built with OpenWatcom. + +import 'vcs/svn' + +name=VirtualBox +version=5.1.10 +update_url='https://www.virtualbox.org/wiki/Downloads' + +define_option 'pulseaudio: Add pulseaudio support' +define_option 'pam: Use PAM for authentication' +define_option 'docs: Build documentation (requires texlive)' + +dlextract "http://download.virtualbox.org/virtualbox/$version/$name-$version.tar.bz2" \ + '889d90a7d8119a6bcc699be258ca4a96' +dlfile 'https://git.archlinux.org/svntogit/community.git/plain/trunk/003-ogl-include-path.patch?h=packages/virtualbox&id=580e187e0eeb4952f8a5dd7f284962b714a88b34' \ + '9e49bbaa2192b141c27ee43cef8cbab7' + +# VirtualBox requires this specific revision of kBuild to build. +vcs_svn 'http://svn.netlabs.org/repos/kbuild/trunk' 2823 +header_end + +# Remove prebuilt binaries +rm -rf trunk/kBuild/bin "$name-$version/kBuild" "$name-$version/tools" + +# Build kBuild +cd trunk +kBuild/env.sh --full make -f bootstrap.gmk +mv kBuild "../$name-$version" + +# Build VirtualBox +cd "../$name-$version" + +# Build with system X libraries +sed -i -e "/^+\t\/usr\/include/s/usr/$(safe_sed "$dir_prefix")/" ../003-ogl-include-path.patch +patch -p1 -i ../003-ogl-include-path.patch + +# Qt5 requires -std=c++11 +sed -i -e '/^CXX_FLAGS=/cCXX_FLAGS="-std=c++11"' configure + +cat > LocalConfig.kmk << EOF +VBOX_GCC_OPT := $CXXFLAGS + +VBOX_WITH_ORIGIN := +VBOX_PATH_APP_PRIVATE := /$dir_prefix/$dir_datadir/$name +VBOX_PATH_APP_PRIVATE_ARCH := /$dir_prefix/$dir_libdir/$name +VBOX_PATH_SHARED_LIBS := \$(VBOX_PATH_APP_PRIVATE_ARCH) +VBOX_WITH_RUNPATH := \$(VBOX_PATH_APP_PRIVATE_ARCH) +VBOX_PATH_APP_DOCS := /$dir_prefix/$dir_docdir/$name +VBOX_PATH_PACKAGE_DOCS := \$(VBOX_PATH_APP_DOCS) + +VBOX_WITH_TESTCASES := +VBOX_WITH_TESTSUITE := +VBOX_WITH_VALIDATIONKIT := +VBOX_GCC_WERR := +VBOX_GCC_WARN := + +VBOX_USE_SYSTEM_XORG_HEADERS := 1 +VBOX_NO_LINUX_RUN_INSTALLER := 1 + +$(option pam || echo VBOX_WITH_PAM :=) +EOF + +./configure \ + --with-makeself=/bin/true \ + --disable-kmods \ + --disable-java \ + --disable-extpack \ + $(option pulseaudio || echo --disable-pulse) \ + $(option docs || echo --disable-docs) +source ./env.sh +kmk LOCALCFG=./LocalConfig.kmk + +# Install VirtualBox +cd "out/$BUILD_PLATFORM.$BUILD_PLATFORM_ARCH/release/bin" + +rm -f *.debug + +# binaries +mkdir -p "$dir_install/$dir_prefix/$dir_bindir" +for i in VBoxHeadless VBoxManage VBoxSDL VirtualBox VBoxBalloonCtrl VBoxBugReport VBoxDTrace vboxwebsrv; do + ln -sf "$dir_sysroot/$dir_prefix/$dir_libdir/$name/VBox.sh" "$dir_install/$dir_prefix/$dir_bindir/$i" + ln -sf "$dir_sysroot/$dir_prefix/$dir_libdir/$name/VBox.sh" "$dir_install/$dir_prefix/$dir_bindir/$(echo $i | tr '[:upper:]' '[:lower:]')" +done +chmod 4511 VBoxHeadless VBoxNetAdpCtl VBoxNetDHCP VBoxNetNAT VBoxSDL VBoxVolInfo VirtualBox + +# icons +mkdir -p "$dir_install/$dir_prefix/$dir_datadir/pixmaps" +mv VBox.png "$dir_install/$dir_prefix/$dir_datadir/pixmaps" + +for i in icons/*; do + mkdir -p "$dir_install/$dir_prefix/$dir_datadir/icons/hicolor/$(basename $i)/mimetypes" + mv $i/* "$dir_install/$dir_prefix/$dir_datadir/icons/hicolor/$(basename $i)/mimetypes" +done +rm -rf icons + +# desktop +mkdir -p "$dir_install/$dir_prefix/$dir_datadir/applications" "$dir_install/$dir_prefix/$dir_datadir/mime/packages" +mv virtualbox.desktop "$dir_install/$dir_prefix/$dir_datadir/applications" +mv virtualbox.xml "$dir_install/$dir_prefix/$dir_datadir/mime/packages" + +# install configuration +mkdir -p "$dir_install/$dir_sysconfdir/vbox" +echo "INSTALL_DIR='$dir_sysroot/$dir_prefix/$dir_libdir/$name'" > "$dir_install/$dir_sysconfdir/vbox/vbox.cfg" + +# Fix the kernel source directory +mkdir vboxhost +mv src/* vboxhost +mv vboxhost src + +# Move the directory +mkdir -p "$dir_install/$dir_prefix/$dir_libdir/$name" +cp -a * "$dir_install/$dir_prefix/$dir_libdir/$name" + +# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/volumeicon.sat b/satellites/volumeicon.sat index 7838134..a56a17e 100644 --- a/satellites/volumeicon.sat +++ b/satellites/volumeicon.sat @@ -21,7 +21,7 @@ sed -i -e 's/-DCOMPILEWITH_NOTIFY/ &/' ./configure if option !gtk3; then patch -p2 -i ../gtk2.patch - autoreconf -i + autoreconf -fi fi compile_configure -- --enable-notify diff --git a/satellites/waf.sat b/satellites/waf.sat index 9679867..5ad1efb 100644 --- a/satellites/waf.sat +++ b/satellites/waf.sat @@ -1,11 +1,11 @@ import 'compile/waf' name=waf -version=1.9.5 +version=1.9.6 update_url='https://waf.io/' dlextract "https://waf.io/$name-$version.tar.bz2" \ - '9e750c49f002b1ba1effa75ec9bbdf00' + '2b348ccad11623dcc1a177c56ab40836' header_end cd "$name-$version" @@ -33,5 +33,6 @@ wafdir="$dir_install/$dir_prefix/$dir_libdir/${name}3-$version" install -d "$wafdir" unzip -od "$wafdir" zip/waflib.zip python3 -OOm compileall "$wafdir" +chmod -R a+r "$wafdir" # vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: diff --git a/satellites/wine.sat b/satellites/wine.sat index 91d1142..ac9a353 100644 --- a/satellites/wine.sat +++ b/satellites/wine.sat @@ -1,15 +1,17 @@ +# TODO: Build wine gecko and mono. + import 'compile/configure' name=wine majver=1.9 -version=$majver.22 +version=$majver.24 update_url='https://www.winehq.org/' update_names="/announce/$version\"" define_option 'wine32=: On x86_64, enable 32bit wine support. Specify the 32bit libdir here' dlextract "http://dl.winehq.org/$name/source/$majver/$name-$version.tar.bz2" \ - '604c64eb3e1e5c85bc467e5e7b251b1d' + '6c225b7f41f6ce7ca9acf019c45c9258' header_end cd "$name-$version" @@ -17,7 +19,7 @@ cd "$name-$version" compile_configure -b ../build -- $([ "$(uname -m)" = 'x86_64' ] && echo --enable-win64) wine32="$(option =wine32)" -if [ "$wine32" ]; then +if [ "$(uname -m)" = 'x86_64' -a "$wine32" ]; then PKG_CONFIG_PATH="$dir_sysroot/$dir_prefix/$wine32/pkgconfig" compile_configure -b ../build-wine32 -- --with-wine64=../build --libdir="/$dir_prefix/$wine32" fi diff --git a/satellites/xcb-util-xrm.sat b/satellites/xcb-util-xrm.sat index 254dbb2..ddece66 100644 --- a/satellites/xcb-util-xrm.sat +++ b/satellites/xcb-util-xrm.sat @@ -1,11 +1,11 @@ import 'compile/configure' name=xcb-util-xrm -version=1.0 +version=1.2 update_url="https://github.com/Airblader/$name/releases" dlextract "https://github.com/Airblader/$name/releases/download/v$version/$name-$version.tar.bz2" \ - '31b5074f47d8072a81d2ffd1dae3ad57' + '242dfd4af757fc5ca0e952a714b9606a' header_end cd "$name-$version" diff --git a/satellites/youtube-dl.sat b/satellites/youtube-dl.sat index cd122e8..99dea5b 100644 --- a/satellites/youtube-dl.sat +++ b/satellites/youtube-dl.sat @@ -1,11 +1,11 @@ import 'compile/python' name=youtube-dl -version=2016.11.04 +version=2016.12.01 update_url="http://rg3.github.io/$name/download.html" dlextract "https://yt-dl.org/downloads/$version/$name-$version.tar.gz" \ - '3d9178a9f9278f24cb313e90c8ef5be3' + '53137910c4e55b631b8be30e1c0f32a8' header_end cd "$name" diff --git a/todo.txt b/todo.txt new file mode 100644 index 0000000..da5f182 --- /dev/null +++ b/todo.txt @@ -0,0 +1,2 @@ +Remove the need for dir_sysroot, using it as an option only in the strictly required packages. +Update the vcs and compile functions to support better options.