From 224ff53c78c2e8df8c6ac3f5b84964a9fd228ee3 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Tue, 26 Aug 2014 07:04:44 -0300 Subject: add parabola suffix on some packages --- libre/gummiboot-parabola/PKGBUILD | 52 ++ libre/gummiboot-parabola/gummiboot.install | 13 + libre/gummiboot-parabola/loader.conf | 2 + libre/gummiboot-parabola/parabola.conf | 7 + libre/gummiboot-parabola/splash-parabola.bmp | Bin 0 -> 470410 bytes libre/gummiboot/PKGBUILD | 51 -- libre/gummiboot/gummiboot.install | 13 - libre/gummiboot/loader.conf | 2 - libre/gummiboot/parabola.conf | 7 - libre/gummiboot/splash-parabola.bmp | Bin 470410 -> 0 bytes libre/hardinfo-parabola/PKGBUILD | 42 ++ libre/hardinfo-parabola/fixsensors.patch | 13 + libre/hardinfo-parabola/hardinfo.distro | 1 + libre/hardinfo/PKGBUILD | 38 -- libre/hardinfo/fixsensors.patch | 13 - libre/hardinfo/hardinfo.distro | 1 - libre/libquicktime-libre/PKGBUILD | 42 -- libre/libquicktime-libre/ffmpeg2.0.patch | 135 ---- libre/libquicktime-parabola/PKGBUILD | 42 ++ libre/libquicktime-parabola/ffmpeg2.0.patch | 135 ++++ libre/lsb-release-parabola/PKGBUILD | 45 ++ libre/lsb-release-parabola/lsb-release.install | 12 + .../lsb_release_description.patch | 11 + libre/lsb-release/PKGBUILD | 44 -- libre/lsb-release/lsb-release.install | 12 - libre/lsb-release/lsb_release_description.patch | 11 - libre/mkisolinux-parabola/PKGBUILD | 31 + libre/mkisolinux-parabola/boot.msg | 15 + libre/mkisolinux-parabola/mkisolinux | 116 ++++ libre/mkisolinux-parabola/mkisolinux.conf | 39 ++ libre/mkisolinux-parabola/options.msg | 6 + libre/mkisolinux/PKGBUILD | 28 - libre/mkisolinux/boot.msg | 15 - libre/mkisolinux/mkisolinux | 116 ---- libre/mkisolinux/mkisolinux.conf | 39 -- libre/mkisolinux/options.msg | 6 - libre/mkpxelinux-parabola/PKGBUILD | 31 + libre/mkpxelinux-parabola/boot.msg | 14 + libre/mkpxelinux-parabola/mkpxelinux | 91 +++ libre/mkpxelinux-parabola/mkpxelinux.conf | 37 ++ libre/mkpxelinux-parabola/options.msg | 6 + libre/mkpxelinux/PKGBUILD | 27 - libre/mkpxelinux/boot.msg | 14 - libre/mkpxelinux/mkpxelinux | 91 --- libre/mkpxelinux/mkpxelinux.conf | 37 -- libre/mkpxelinux/options.msg | 6 - libre/mksyslinux-parabola/PKGBUILD | 30 + libre/mksyslinux-parabola/boot.msg | 15 + libre/mksyslinux-parabola/mksyslinux | 144 ++++ libre/mksyslinux-parabola/mksyslinux.conf | 34 + libre/mksyslinux-parabola/options.msg | 6 + libre/mksyslinux/PKGBUILD | 26 - libre/mksyslinux/boot.msg | 15 - libre/mksyslinux/mksyslinux | 144 ---- libre/mksyslinux/mksyslinux.conf | 34 - libre/mksyslinux/options.msg | 6 - libre/mplayer-libre-vaapi/PKGBUILD | 101 --- libre/mplayer-libre-vaapi/cdio-includes.patch | 43 -- libre/mplayer-libre-vaapi/include-samba-4.0.patch | 12 - libre/mplayer-libre-vaapi/mplayer-vaapi.install | 11 - .../subreader-fix-srt-parsing.patch | 40 -- libre/mplayer-libre-vaapi/tweak-desktop-file.patch | 14 - libre/mplayer-libre/PKGBUILD | 129 ---- libre/mplayer-libre/cdio-includes.patch | 43 -- libre/mplayer-libre/giflib51.patch | 24 - libre/mplayer-libre/include-samba-4.0.patch | 12 - libre/mplayer-libre/mplayer.desktop | 22 - libre/mplayer-libre/mplayer.install | 11 - libre/mplayer-libre/mplayer.png | Bin 1982 -> 0 bytes libre/mplayer-libre/revert-icl-fixes.patch | 66 -- libre/mplayer-parabola/PKGBUILD | 129 ++++ libre/mplayer-parabola/cdio-includes.patch | 43 ++ libre/mplayer-parabola/giflib51.patch | 24 + libre/mplayer-parabola/include-samba-4.0.patch | 12 + libre/mplayer-parabola/mplayer.desktop | 22 + libre/mplayer-parabola/mplayer.install | 11 + libre/mplayer-parabola/mplayer.png | Bin 0 -> 1982 bytes libre/mplayer-parabola/revert-icl-fixes.patch | 66 ++ libre/mplayer-vaapi-parabola/PKGBUILD | 101 +++ libre/mplayer-vaapi-parabola/cdio-includes.patch | 43 ++ .../mplayer-vaapi-parabola/include-samba-4.0.patch | 12 + libre/mplayer-vaapi-parabola/mplayer-vaapi.install | 11 + .../subreader-fix-srt-parsing.patch | 40 ++ .../tweak-desktop-file.patch | 14 + libre/ogmrip-libre/PKGBUILD | 47 -- libre/ogmrip-libre/ogmrip.changelog | 36 - libre/ogmrip-libre/ogmrip.install | 11 - libre/ogmrip-parabola/PKGBUILD | 47 ++ libre/ogmrip-parabola/ogmrip.changelog | 36 + libre/ogmrip-parabola/ogmrip.install | 11 + libre/openshot-libre/PKGBUILD | 28 - libre/openshot-libre/openshot.install | 12 - libre/openshot-parabola/PKGBUILD | 28 + libre/openshot-parabola/openshot.install | 12 + libre/psi-parabola/PKGBUILD | 39 ++ libre/psi-parabola/parabola.patch | 54 ++ libre/psi-parabola/psi.install | 12 + libre/psi/PKGBUILD | 35 - libre/psi/parabola.patch | 54 -- libre/psi/psi.install | 12 - libre/reflector-parabola/PKGBUILD | 47 ++ libre/reflector-parabola/rebranding.patch | 64 ++ libre/reflector/PKGBUILD | 43 -- libre/reflector/rebranding.patch | 64 -- libre/soundkonverter-libre/PKGBUILD | 52 -- libre/soundkonverter-libre/soundkonverter.install | 12 - libre/soundkonverter-parabola/PKGBUILD | 52 ++ .../soundkonverter-parabola/soundkonverter.install | 12 + libre/syslinux-parabola/PKGBUILD | 280 ++++++++ libre/syslinux-parabola/splash.png | Bin 0 -> 11947 bytes libre/syslinux-parabola/splash.xcf | Bin 0 -> 30757 bytes .../syslinux-6.02-fix-bios-isolinux.patch | 12 + .../syslinux-6.02-fix-chainloading.patch | 47 ++ .../syslinux-6.02-fix-efi-ovmf.patch | 621 ++++++++++++++++++ libre/syslinux-parabola/syslinux-install_update | 453 +++++++++++++ libre/syslinux-parabola/syslinux.cfg | 78 +++ libre/syslinux-parabola/syslinux.install | 43 ++ libre/syslinux/PKGBUILD | 276 -------- libre/syslinux/splash.png | Bin 11947 -> 0 bytes libre/syslinux/splash.xcf | Bin 30757 -> 0 bytes .../syslinux/syslinux-6.02-fix-bios-isolinux.patch | 12 - .../syslinux/syslinux-6.02-fix-chainloading.patch | 47 -- libre/syslinux/syslinux-6.02-fix-efi-ovmf.patch | 621 ------------------ libre/syslinux/syslinux-install_update | 453 ------------- libre/syslinux/syslinux.cfg | 78 --- libre/syslinux/syslinux.install | 43 -- libre/texlive-bin-libre/09-texlive-fonts.conf | 9 - libre/texlive-bin-libre/PKGBUILD | 311 --------- .../texlive-bin-libre/fix-fontforge-encoding.patch | 12 - libre/texlive-bin-libre/luatex-poppler-0.20.patch | 77 --- .../luatex-r4449-radical-rule-thickness.patch | 23 - libre/texlive-bin-libre/poppler-0.20.patch | 22 - libre/texlive-bin-libre/poppler-0.26.patch | 104 --- libre/texlive-bin-libre/texlive.install | 50 -- libre/texlive-bin-libre/texmf.cnf | 724 --------------------- libre/texlive-bin-parabola/09-texlive-fonts.conf | 9 + libre/texlive-bin-parabola/PKGBUILD | 311 +++++++++ .../fix-fontforge-encoding.patch | 12 + .../texlive-bin-parabola/luatex-poppler-0.20.patch | 77 +++ .../luatex-r4449-radical-rule-thickness.patch | 23 + libre/texlive-bin-parabola/poppler-0.20.patch | 22 + libre/texlive-bin-parabola/poppler-0.26.patch | 104 +++ libre/texlive-bin-parabola/texlive.install | 50 ++ libre/texlive-bin-parabola/texmf.cnf | 724 +++++++++++++++++++++ libre/usermin-parabola/PKGBUILD | 133 ++++ libre/usermin-parabola/usermin.install | 34 + libre/usermin-parabola/usermin.service | 9 + libre/usermin/PKGBUILD | 129 ---- libre/usermin/usermin.install | 34 - libre/usermin/usermin.service | 9 - libre/vim-runtime-parabola/PKGBUILD | 107 +++ libre/vim-runtime-parabola/parabola.vim | 26 + libre/vim-runtime-parabola/vimrc | 16 + libre/vim-runtime/PKGBUILD | 103 --- libre/vim-runtime/parabola.vim | 26 - libre/vim-runtime/vimrc | 16 - libre/webmin-parabola/PKGBUILD | 220 +++++++ libre/webmin-parabola/webmin.install | 35 + libre/webmin-parabola/webmin.service | 11 + libre/webmin/PKGBUILD | 216 ------ libre/webmin/webmin.install | 35 - libre/webmin/webmin.service | 11 - libre/xorg-server-libre/PKGBUILD | 145 ----- .../autoconfig-nvidia-libre.patch | 26 - libre/xorg-server-libre/autoconfig-sis.patch | 21 - libre/xorg-server-libre/glamor-upstream-fix.patch | 178 ----- libre/xorg-server-libre/xorg-server.install | 18 - libre/xorg-server-libre/xvfb-run | 180 ----- libre/xorg-server-libre/xvfb-run.1 | 282 -------- libre/xorg-server-parabola/PKGBUILD | 145 +++++ .../autoconfig-nvidia-libre.patch | 26 + libre/xorg-server-parabola/autoconfig-sis.patch | 21 + .../xorg-server-parabola/glamor-upstream-fix.patch | 178 +++++ libre/xorg-server-parabola/xorg-server.install | 18 + libre/xorg-server-parabola/xvfb-run | 180 +++++ libre/xorg-server-parabola/xvfb-run.1 | 282 ++++++++ libre/xsp-parabola/PKGBUILD | 62 ++ libre/xsp-parabola/xsp.conf.d | 10 + libre/xsp-parabola/xsp.install | 37 ++ libre/xsp-parabola/xsp.rc.d | 40 ++ libre/xsp-parabola/xsp.service | 8 + libre/xsp-parabola/xsp.webapp | 8 + libre/xsp/PKGBUILD | 58 -- libre/xsp/xsp.conf.d | 10 - libre/xsp/xsp.install | 37 -- libre/xsp/xsp.rc.d | 40 -- libre/xsp/xsp.service | 8 - libre/xsp/xsp.webapp | 8 - 188 files changed, 6404 insertions(+), 6359 deletions(-) create mode 100644 libre/gummiboot-parabola/PKGBUILD create mode 100644 libre/gummiboot-parabola/gummiboot.install create mode 100644 libre/gummiboot-parabola/loader.conf create mode 100644 libre/gummiboot-parabola/parabola.conf create mode 100644 libre/gummiboot-parabola/splash-parabola.bmp delete mode 100644 libre/gummiboot/PKGBUILD delete mode 100644 libre/gummiboot/gummiboot.install delete mode 100644 libre/gummiboot/loader.conf delete mode 100644 libre/gummiboot/parabola.conf delete mode 100644 libre/gummiboot/splash-parabola.bmp create mode 100644 libre/hardinfo-parabola/PKGBUILD create mode 100644 libre/hardinfo-parabola/fixsensors.patch create mode 100644 libre/hardinfo-parabola/hardinfo.distro delete mode 100644 libre/hardinfo/PKGBUILD delete mode 100644 libre/hardinfo/fixsensors.patch delete mode 100644 libre/hardinfo/hardinfo.distro delete mode 100644 libre/libquicktime-libre/PKGBUILD delete mode 100644 libre/libquicktime-libre/ffmpeg2.0.patch create mode 100644 libre/libquicktime-parabola/PKGBUILD create mode 100644 libre/libquicktime-parabola/ffmpeg2.0.patch create mode 100644 libre/lsb-release-parabola/PKGBUILD create mode 100644 libre/lsb-release-parabola/lsb-release.install create mode 100644 libre/lsb-release-parabola/lsb_release_description.patch delete mode 100644 libre/lsb-release/PKGBUILD delete mode 100644 libre/lsb-release/lsb-release.install delete mode 100644 libre/lsb-release/lsb_release_description.patch create mode 100644 libre/mkisolinux-parabola/PKGBUILD create mode 100644 libre/mkisolinux-parabola/boot.msg create mode 100755 libre/mkisolinux-parabola/mkisolinux create mode 100644 libre/mkisolinux-parabola/mkisolinux.conf create mode 100644 libre/mkisolinux-parabola/options.msg delete mode 100644 libre/mkisolinux/PKGBUILD delete mode 100644 libre/mkisolinux/boot.msg delete mode 100755 libre/mkisolinux/mkisolinux delete mode 100644 libre/mkisolinux/mkisolinux.conf delete mode 100644 libre/mkisolinux/options.msg create mode 100644 libre/mkpxelinux-parabola/PKGBUILD create mode 100644 libre/mkpxelinux-parabola/boot.msg create mode 100755 libre/mkpxelinux-parabola/mkpxelinux create mode 100644 libre/mkpxelinux-parabola/mkpxelinux.conf create mode 100644 libre/mkpxelinux-parabola/options.msg delete mode 100644 libre/mkpxelinux/PKGBUILD delete mode 100644 libre/mkpxelinux/boot.msg delete mode 100755 libre/mkpxelinux/mkpxelinux delete mode 100644 libre/mkpxelinux/mkpxelinux.conf delete mode 100644 libre/mkpxelinux/options.msg create mode 100644 libre/mksyslinux-parabola/PKGBUILD create mode 100644 libre/mksyslinux-parabola/boot.msg create mode 100755 libre/mksyslinux-parabola/mksyslinux create mode 100644 libre/mksyslinux-parabola/mksyslinux.conf create mode 100644 libre/mksyslinux-parabola/options.msg delete mode 100644 libre/mksyslinux/PKGBUILD delete mode 100644 libre/mksyslinux/boot.msg delete mode 100755 libre/mksyslinux/mksyslinux delete mode 100644 libre/mksyslinux/mksyslinux.conf delete mode 100644 libre/mksyslinux/options.msg delete mode 100644 libre/mplayer-libre-vaapi/PKGBUILD delete mode 100644 libre/mplayer-libre-vaapi/cdio-includes.patch delete mode 100644 libre/mplayer-libre-vaapi/include-samba-4.0.patch delete mode 100644 libre/mplayer-libre-vaapi/mplayer-vaapi.install delete mode 100644 libre/mplayer-libre-vaapi/subreader-fix-srt-parsing.patch delete mode 100644 libre/mplayer-libre-vaapi/tweak-desktop-file.patch delete mode 100644 libre/mplayer-libre/PKGBUILD delete mode 100644 libre/mplayer-libre/cdio-includes.patch delete mode 100644 libre/mplayer-libre/giflib51.patch delete mode 100644 libre/mplayer-libre/include-samba-4.0.patch delete mode 100644 libre/mplayer-libre/mplayer.desktop delete mode 100644 libre/mplayer-libre/mplayer.install delete mode 100644 libre/mplayer-libre/mplayer.png delete mode 100644 libre/mplayer-libre/revert-icl-fixes.patch create mode 100644 libre/mplayer-parabola/PKGBUILD create mode 100644 libre/mplayer-parabola/cdio-includes.patch create mode 100644 libre/mplayer-parabola/giflib51.patch create mode 100644 libre/mplayer-parabola/include-samba-4.0.patch create mode 100644 libre/mplayer-parabola/mplayer.desktop create mode 100644 libre/mplayer-parabola/mplayer.install create mode 100644 libre/mplayer-parabola/mplayer.png create mode 100644 libre/mplayer-parabola/revert-icl-fixes.patch create mode 100644 libre/mplayer-vaapi-parabola/PKGBUILD create mode 100644 libre/mplayer-vaapi-parabola/cdio-includes.patch create mode 100644 libre/mplayer-vaapi-parabola/include-samba-4.0.patch create mode 100644 libre/mplayer-vaapi-parabola/mplayer-vaapi.install create mode 100644 libre/mplayer-vaapi-parabola/subreader-fix-srt-parsing.patch create mode 100644 libre/mplayer-vaapi-parabola/tweak-desktop-file.patch delete mode 100644 libre/ogmrip-libre/PKGBUILD delete mode 100644 libre/ogmrip-libre/ogmrip.changelog delete mode 100644 libre/ogmrip-libre/ogmrip.install create mode 100644 libre/ogmrip-parabola/PKGBUILD create mode 100644 libre/ogmrip-parabola/ogmrip.changelog create mode 100644 libre/ogmrip-parabola/ogmrip.install delete mode 100644 libre/openshot-libre/PKGBUILD delete mode 100644 libre/openshot-libre/openshot.install create mode 100644 libre/openshot-parabola/PKGBUILD create mode 100644 libre/openshot-parabola/openshot.install create mode 100644 libre/psi-parabola/PKGBUILD create mode 100644 libre/psi-parabola/parabola.patch create mode 100644 libre/psi-parabola/psi.install delete mode 100644 libre/psi/PKGBUILD delete mode 100644 libre/psi/parabola.patch delete mode 100644 libre/psi/psi.install create mode 100644 libre/reflector-parabola/PKGBUILD create mode 100644 libre/reflector-parabola/rebranding.patch delete mode 100644 libre/reflector/PKGBUILD delete mode 100644 libre/reflector/rebranding.patch delete mode 100644 libre/soundkonverter-libre/PKGBUILD delete mode 100644 libre/soundkonverter-libre/soundkonverter.install create mode 100644 libre/soundkonverter-parabola/PKGBUILD create mode 100644 libre/soundkonverter-parabola/soundkonverter.install create mode 100644 libre/syslinux-parabola/PKGBUILD create mode 100644 libre/syslinux-parabola/splash.png create mode 100644 libre/syslinux-parabola/splash.xcf create mode 100644 libre/syslinux-parabola/syslinux-6.02-fix-bios-isolinux.patch create mode 100644 libre/syslinux-parabola/syslinux-6.02-fix-chainloading.patch create mode 100644 libre/syslinux-parabola/syslinux-6.02-fix-efi-ovmf.patch create mode 100644 libre/syslinux-parabola/syslinux-install_update create mode 100644 libre/syslinux-parabola/syslinux.cfg create mode 100644 libre/syslinux-parabola/syslinux.install delete mode 100644 libre/syslinux/PKGBUILD delete mode 100644 libre/syslinux/splash.png delete mode 100644 libre/syslinux/splash.xcf delete mode 100644 libre/syslinux/syslinux-6.02-fix-bios-isolinux.patch delete mode 100644 libre/syslinux/syslinux-6.02-fix-chainloading.patch delete mode 100644 libre/syslinux/syslinux-6.02-fix-efi-ovmf.patch delete mode 100644 libre/syslinux/syslinux-install_update delete mode 100644 libre/syslinux/syslinux.cfg delete mode 100644 libre/syslinux/syslinux.install delete mode 100644 libre/texlive-bin-libre/09-texlive-fonts.conf delete mode 100644 libre/texlive-bin-libre/PKGBUILD delete mode 100644 libre/texlive-bin-libre/fix-fontforge-encoding.patch delete mode 100644 libre/texlive-bin-libre/luatex-poppler-0.20.patch delete mode 100644 libre/texlive-bin-libre/luatex-r4449-radical-rule-thickness.patch delete mode 100644 libre/texlive-bin-libre/poppler-0.20.patch delete mode 100644 libre/texlive-bin-libre/poppler-0.26.patch delete mode 100644 libre/texlive-bin-libre/texlive.install delete mode 100644 libre/texlive-bin-libre/texmf.cnf create mode 100644 libre/texlive-bin-parabola/09-texlive-fonts.conf create mode 100644 libre/texlive-bin-parabola/PKGBUILD create mode 100644 libre/texlive-bin-parabola/fix-fontforge-encoding.patch create mode 100644 libre/texlive-bin-parabola/luatex-poppler-0.20.patch create mode 100644 libre/texlive-bin-parabola/luatex-r4449-radical-rule-thickness.patch create mode 100644 libre/texlive-bin-parabola/poppler-0.20.patch create mode 100644 libre/texlive-bin-parabola/poppler-0.26.patch create mode 100644 libre/texlive-bin-parabola/texlive.install create mode 100644 libre/texlive-bin-parabola/texmf.cnf create mode 100644 libre/usermin-parabola/PKGBUILD create mode 100644 libre/usermin-parabola/usermin.install create mode 100644 libre/usermin-parabola/usermin.service delete mode 100644 libre/usermin/PKGBUILD delete mode 100644 libre/usermin/usermin.install delete mode 100644 libre/usermin/usermin.service create mode 100644 libre/vim-runtime-parabola/PKGBUILD create mode 100644 libre/vim-runtime-parabola/parabola.vim create mode 100644 libre/vim-runtime-parabola/vimrc delete mode 100644 libre/vim-runtime/PKGBUILD delete mode 100644 libre/vim-runtime/parabola.vim delete mode 100644 libre/vim-runtime/vimrc create mode 100644 libre/webmin-parabola/PKGBUILD create mode 100644 libre/webmin-parabola/webmin.install create mode 100644 libre/webmin-parabola/webmin.service delete mode 100644 libre/webmin/PKGBUILD delete mode 100644 libre/webmin/webmin.install delete mode 100644 libre/webmin/webmin.service delete mode 100644 libre/xorg-server-libre/PKGBUILD delete mode 100644 libre/xorg-server-libre/autoconfig-nvidia-libre.patch delete mode 100644 libre/xorg-server-libre/autoconfig-sis.patch delete mode 100644 libre/xorg-server-libre/glamor-upstream-fix.patch delete mode 100644 libre/xorg-server-libre/xorg-server.install delete mode 100644 libre/xorg-server-libre/xvfb-run delete mode 100644 libre/xorg-server-libre/xvfb-run.1 create mode 100644 libre/xorg-server-parabola/PKGBUILD create mode 100644 libre/xorg-server-parabola/autoconfig-nvidia-libre.patch create mode 100644 libre/xorg-server-parabola/autoconfig-sis.patch create mode 100644 libre/xorg-server-parabola/glamor-upstream-fix.patch create mode 100644 libre/xorg-server-parabola/xorg-server.install create mode 100644 libre/xorg-server-parabola/xvfb-run create mode 100644 libre/xorg-server-parabola/xvfb-run.1 create mode 100644 libre/xsp-parabola/PKGBUILD create mode 100644 libre/xsp-parabola/xsp.conf.d create mode 100644 libre/xsp-parabola/xsp.install create mode 100644 libre/xsp-parabola/xsp.rc.d create mode 100644 libre/xsp-parabola/xsp.service create mode 100644 libre/xsp-parabola/xsp.webapp delete mode 100644 libre/xsp/PKGBUILD delete mode 100644 libre/xsp/xsp.conf.d delete mode 100644 libre/xsp/xsp.install delete mode 100644 libre/xsp/xsp.rc.d delete mode 100644 libre/xsp/xsp.service delete mode 100644 libre/xsp/xsp.webapp diff --git a/libre/gummiboot-parabola/PKGBUILD b/libre/gummiboot-parabola/PKGBUILD new file mode 100644 index 000000000..9abb522b2 --- /dev/null +++ b/libre/gummiboot-parabola/PKGBUILD @@ -0,0 +1,52 @@ +# $Id: PKGBUILD 212780 2014-05-15 06:02:26Z tpowa $ +# Maintainer (Arch): Tom Gundersen +# Contributor (Arch): Tobias Powalowski +# Contributor (Arch): Keshav P R <(the.ridikulus.rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> +# Contributor (Arch): Mantas Mikulėnas +# Maintainer: André Silva + +_pkgname=gummiboot +pkgname=gummiboot-parabola +pkgver=45 +pkgrel=1 +pkgdesc="Simple UEFI Boot Manager (Parabola rebranded)" +url="http://freedesktop.org/wiki/Software/gummiboot" +arch=('x86_64' 'i686' 'mips64el') +license=('LGPL2.1') +makedepends=('gnu-efi-libs' 'docbook-xsl' 'git') +depends=('util-linux') +replaces=('gummiboot-efi' "${_pkgname}") +conflicts=('gummiboot-efi' "${_pkgname}") +provides=('gummiboot-efi' "${_pkgname}=${pkgver}") +options=('!strip' '!makeflags') +source=("git://anongit.freedesktop.org/$_pkgname#tag=$pkgver" + 'loader.conf' + 'parabola.conf' + 'splash-parabola.bmp') +install=gummiboot.install +md5sums=('SKIP' + '3d700d13aec5ab1b78a921eaf22e5bfa' + '36ee74767ac8734dede1cbd0f4f275d7' + 'c146ea0e16fff867164e113c48c91fff') + +build() { + cd ${srcdir}/${_pkgname} + + ./autogen.sh + ./configure --sysconfdir=/etc --with-efi-ldsdir=/usr/lib --libexecdir=/usr/lib --libdir=/usr/lib + + make +} + +package() { + ## Install gummiboot example configuration files (can go away with systemd's kernel-install) + install -D -m0644 "${srcdir}/loader.conf" "${pkgdir}/usr/lib/gummiboot/loader/loader.conf" + install -D -m0644 "${srcdir}/parabola.conf" "${pkgdir}/usr/lib/gummiboot/loader/entries/parabola.conf" + + ## ship an Parabola GNU/Linux-libre boot splash (still has to be dropped in manually to take effect) + install -D -m0644 "${srcdir}/splash-parabola.bmp" "${pkgdir}/usr/lib/gummiboot/splash-parabola.bmp" + + cd ${srcdir}/${_pkgname} + + make DESTDIR="${pkgdir}" install +} diff --git a/libre/gummiboot-parabola/gummiboot.install b/libre/gummiboot-parabola/gummiboot.install new file mode 100644 index 000000000..20861d4c8 --- /dev/null +++ b/libre/gummiboot-parabola/gummiboot.install @@ -0,0 +1,13 @@ +post_install() { + mkdir -p /boot/EFI/gummiboot + /usr/bin/gummiboot update + echo ":: Run '/usr/bin/gummiboot install' to make gummiboot your default bootloader" +} + +post_upgrade() { + /usr/bin/gummiboot update +} + +pre_remove() { + /usr/bin/gummiboot remove +} diff --git a/libre/gummiboot-parabola/loader.conf b/libre/gummiboot-parabola/loader.conf new file mode 100644 index 000000000..b8bfb988e --- /dev/null +++ b/libre/gummiboot-parabola/loader.conf @@ -0,0 +1,2 @@ +timeout 10 +default parabola diff --git a/libre/gummiboot-parabola/parabola.conf b/libre/gummiboot-parabola/parabola.conf new file mode 100644 index 000000000..111072ea2 --- /dev/null +++ b/libre/gummiboot-parabola/parabola.conf @@ -0,0 +1,7 @@ +## This is just an example config file. +## Please edit the paths and kernel parameters according to your system. + +title Parabola GNU/Linux-libre +linux /vmlinuz-linux-libre +initrd /initramfs-linux-libre.img +options root=PARTUUID=XXXX rootfstype=XXXX add_efi_memmap diff --git a/libre/gummiboot-parabola/splash-parabola.bmp b/libre/gummiboot-parabola/splash-parabola.bmp new file mode 100644 index 000000000..11ceeff28 Binary files /dev/null and b/libre/gummiboot-parabola/splash-parabola.bmp differ diff --git a/libre/gummiboot/PKGBUILD b/libre/gummiboot/PKGBUILD deleted file mode 100644 index 95e25a164..000000000 --- a/libre/gummiboot/PKGBUILD +++ /dev/null @@ -1,51 +0,0 @@ -# $Id: PKGBUILD 212780 2014-05-15 06:02:26Z tpowa $ -# Maintainer (Arch): Tom Gundersen -# Contributor (Arch): Tobias Powalowski -# Contributor (Arch): Keshav P R <(the.ridikulus.rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> -# Contributor (Arch): Mantas Mikulėnas -# Maintainer: André Silva - -pkgname=gummiboot -pkgver=45 -pkgrel=1 -pkgdesc="Simple UEFI Boot Manager (Parabola rebranded)" -url="http://freedesktop.org/wiki/Software/gummiboot" -arch=('x86_64' 'i686' 'mips64el') -license=('LGPL2.1') -makedepends=('gnu-efi-libs' 'docbook-xsl' 'git') -depends=('util-linux') -conflicts=('gummiboot-efi') -provides=('gummiboot-efi') -replaces=('gummiboot-efi') -options=('!strip' '!makeflags') -source=("git://anongit.freedesktop.org/$pkgname#tag=$pkgver" - 'loader.conf' - 'parabola.conf' - 'splash-parabola.bmp') -install=gummiboot.install -md5sums=('SKIP' - '3d700d13aec5ab1b78a921eaf22e5bfa' - '36ee74767ac8734dede1cbd0f4f275d7' - 'c146ea0e16fff867164e113c48c91fff') - -build() { - cd ${srcdir}/${pkgname} - - ./autogen.sh - ./configure --sysconfdir=/etc --with-efi-ldsdir=/usr/lib --libexecdir=/usr/lib --libdir=/usr/lib - - make -} - -package() { - ## Install gummiboot example configuration files (can go away with systemd's kernel-install) - install -D -m0644 "${srcdir}/loader.conf" "${pkgdir}/usr/lib/gummiboot/loader/loader.conf" - install -D -m0644 "${srcdir}/parabola.conf" "${pkgdir}/usr/lib/gummiboot/loader/entries/parabola.conf" - - ## ship an Parabola GNU/Linux-libre boot splash (still has to be dropped in manually to take effect) - install -D -m0644 "${srcdir}/splash-parabola.bmp" "${pkgdir}/usr/lib/gummiboot/splash-parabola.bmp" - - cd ${srcdir}/${pkgname} - - make DESTDIR="${pkgdir}" install -} diff --git a/libre/gummiboot/gummiboot.install b/libre/gummiboot/gummiboot.install deleted file mode 100644 index 20861d4c8..000000000 --- a/libre/gummiboot/gummiboot.install +++ /dev/null @@ -1,13 +0,0 @@ -post_install() { - mkdir -p /boot/EFI/gummiboot - /usr/bin/gummiboot update - echo ":: Run '/usr/bin/gummiboot install' to make gummiboot your default bootloader" -} - -post_upgrade() { - /usr/bin/gummiboot update -} - -pre_remove() { - /usr/bin/gummiboot remove -} diff --git a/libre/gummiboot/loader.conf b/libre/gummiboot/loader.conf deleted file mode 100644 index b8bfb988e..000000000 --- a/libre/gummiboot/loader.conf +++ /dev/null @@ -1,2 +0,0 @@ -timeout 10 -default parabola diff --git a/libre/gummiboot/parabola.conf b/libre/gummiboot/parabola.conf deleted file mode 100644 index 111072ea2..000000000 --- a/libre/gummiboot/parabola.conf +++ /dev/null @@ -1,7 +0,0 @@ -## This is just an example config file. -## Please edit the paths and kernel parameters according to your system. - -title Parabola GNU/Linux-libre -linux /vmlinuz-linux-libre -initrd /initramfs-linux-libre.img -options root=PARTUUID=XXXX rootfstype=XXXX add_efi_memmap diff --git a/libre/gummiboot/splash-parabola.bmp b/libre/gummiboot/splash-parabola.bmp deleted file mode 100644 index 11ceeff28..000000000 Binary files a/libre/gummiboot/splash-parabola.bmp and /dev/null differ diff --git a/libre/hardinfo-parabola/PKGBUILD b/libre/hardinfo-parabola/PKGBUILD new file mode 100644 index 000000000..1ed1b63dc --- /dev/null +++ b/libre/hardinfo-parabola/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 115005 2014-07-05 03:31:29Z eric $ +# Maintainer (Arch): Eric Bélanger +# Contributor: Márcio Silva + +_pkgname=hardinfo +pkgname=hardinfo-parabola +pkgver=0.5.1 +pkgrel=6 +pkgdesc="A system information and benchmark tool (Parabola rebranded)" +arch=('i686' 'x86_64') +url="http://sourceforge.net/projects/hardinfo.berlios/" +license=('GPL2') +depends=('gtk2' 'libsoup') +options=('!emptydirs') +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +source=(http://sourceforge.net/projects/hardinfo.berlios/files/${_pkgname}-${pkgver}.tar.bz2 + fixsensors.patch hardinfo.distro) +sha1sums=('983f0445aa60e02156bc5a5eaedeffb30b8e4d64' + 'd2151dce76dca238102937d0e15541f172bca530' + '9425e09191cd3a365a3afce57ca1973a6439fa57') + +prepare() { + cd ${_pkgname}-${pkgver} + patch -p1 -i "${srcdir}/fixsensors.patch" + sed -i 's|/usr/lib64|/usr/lib|' configure + sed -i 's|lib64|lib|' binreloc.c + sed -i 's|{ DB_PREFIX "debian_version", "deb" },|{ DB_PREFIX "hardinfo.distro", "parabola" },{ DB_PREFIX "debian_version", "deb" },|' computer.h +} + +build() { + cd ${_pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +package() { + cd ${_pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -D -m644 "${srcdir}/hardinfo.distro" "${pkgdir}/etc/hardinfo.distro" +} diff --git a/libre/hardinfo-parabola/fixsensors.patch b/libre/hardinfo-parabola/fixsensors.patch new file mode 100644 index 000000000..812c29458 --- /dev/null +++ b/libre/hardinfo-parabola/fixsensors.patch @@ -0,0 +1,13 @@ + diff -upNr hardinfo-0.4.2.2.orign/util.c hardinfo-0.4.2.2/util.c +--- hardinfo-0.4.2.2.orign/util.c 2007-07-20 16:45:08.000000000 +0200 ++++ hardinfo-0.4.2.2/util.c 2007-07-26 10:15:32.000000000 +0200 +@@ -996,7 +996,8 @@ gchar *h_strdup_cprintf(const gchar * fo + if (source) { + retn = g_strconcat(source, buffer, NULL); + g_free(buffer); +- g_free(source); ++ if(strlen(source)) ++ g_free(source); + } else { + retn = buffer; + } diff --git a/libre/hardinfo-parabola/hardinfo.distro b/libre/hardinfo-parabola/hardinfo.distro new file mode 100644 index 000000000..cf378523a --- /dev/null +++ b/libre/hardinfo-parabola/hardinfo.distro @@ -0,0 +1 @@ +Parabola GNU/Linux-Libre diff --git a/libre/hardinfo/PKGBUILD b/libre/hardinfo/PKGBUILD deleted file mode 100644 index c4bf21c3b..000000000 --- a/libre/hardinfo/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# $Id: PKGBUILD 115005 2014-07-05 03:31:29Z eric $ -# Maintainer (Arch): Eric Bélanger -# Contributor: Márcio Silva - -pkgname=hardinfo -pkgver=0.5.1 -pkgrel=6 -pkgdesc="A system information and benchmark tool (Parabola rebranded)" -arch=('i686' 'x86_64') -url="http://sourceforge.net/projects/hardinfo.berlios/" -license=('GPL2') -depends=('gtk2' 'libsoup') -options=('!emptydirs') -source=(http://sourceforge.net/projects/hardinfo.berlios/files/${pkgname}-${pkgver}.tar.bz2 - fixsensors.patch hardinfo.distro) -sha1sums=('983f0445aa60e02156bc5a5eaedeffb30b8e4d64' - 'd2151dce76dca238102937d0e15541f172bca530' - '9425e09191cd3a365a3afce57ca1973a6439fa57') - -prepare() { - cd ${pkgname}-${pkgver} - patch -p1 -i "${srcdir}/fixsensors.patch" - sed -i 's|/usr/lib64|/usr/lib|' configure - sed -i 's|lib64|lib|' binreloc.c - sed -i 's|{ DB_PREFIX "debian_version", "deb" },|{ DB_PREFIX "hardinfo.distro", "parabola" },{ DB_PREFIX "debian_version", "deb" },|' computer.h -} - -build() { - cd ${pkgname}-${pkgver} - ./configure --prefix=/usr - make -} - -package() { - cd ${pkgname}-${pkgver} - make DESTDIR="${pkgdir}" install - install -D -m644 "${srcdir}/hardinfo.distro" "${pkgdir}/etc/hardinfo.distro" -} diff --git a/libre/hardinfo/fixsensors.patch b/libre/hardinfo/fixsensors.patch deleted file mode 100644 index 812c29458..000000000 --- a/libre/hardinfo/fixsensors.patch +++ /dev/null @@ -1,13 +0,0 @@ - diff -upNr hardinfo-0.4.2.2.orign/util.c hardinfo-0.4.2.2/util.c ---- hardinfo-0.4.2.2.orign/util.c 2007-07-20 16:45:08.000000000 +0200 -+++ hardinfo-0.4.2.2/util.c 2007-07-26 10:15:32.000000000 +0200 -@@ -996,7 +996,8 @@ gchar *h_strdup_cprintf(const gchar * fo - if (source) { - retn = g_strconcat(source, buffer, NULL); - g_free(buffer); -- g_free(source); -+ if(strlen(source)) -+ g_free(source); - } else { - retn = buffer; - } diff --git a/libre/hardinfo/hardinfo.distro b/libre/hardinfo/hardinfo.distro deleted file mode 100644 index cf378523a..000000000 --- a/libre/hardinfo/hardinfo.distro +++ /dev/null @@ -1 +0,0 @@ -Parabola GNU/Linux-Libre diff --git a/libre/libquicktime-libre/PKGBUILD b/libre/libquicktime-libre/PKGBUILD deleted file mode 100644 index 95ce92155..000000000 --- a/libre/libquicktime-libre/PKGBUILD +++ /dev/null @@ -1,42 +0,0 @@ -# $Id: PKGBUILD 116382 2014-07-26 16:36:46Z bpiotrowski $ -# Maintainer (Arch): Federico Cinelli -# Maintainer (Arch): Mateusz Herych -# Contributor: Jorge Lopez - -pkgname=libquicktime-libre -_pkgname=libquicktime -pkgver=1.2.4 -pkgrel=10 -pkgdesc="A library for reading and writing quicktime files, without nonfree faac support" -arch=('i686' 'x86_64') -license=('GPL') -url="http://libquicktime.sourceforge.net/" -depends=('gtk2' 'ffmpeg' 'libxv' 'libxaw' 'faad2') -makedepends=('mesa-libgl' 'x264') -source=("http://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.gz" - ffmpeg2.0.patch) -sha256sums=('1c53359c33b31347b4d7b00d3611463fe5e942cae3ec0fefe0d2fd413fd47368' - 'a1c8415e8e7bc04c81b946b9e3746f7d5ef24819135962280c3a7ddb3f2baa2b') -provides=("$_pkgname=$pkgver") -conflicts=($_pkgname) -replaces=($_pkgname) - -prepare() { - cd $_pkgname-$pkgver - patch -Np1 -i ../ffmpeg2.0.patch -} - -build() { - cd "$srcdir/$_pkgname-$pkgver" - ./configure --prefix=/usr \ - --enable-gpl \ - --with-ffmpeg \ - --with-x264 \ - --without-doxygen - make -} - -package() { - cd "$srcdir/$_pkgname-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/libre/libquicktime-libre/ffmpeg2.0.patch b/libre/libquicktime-libre/ffmpeg2.0.patch deleted file mode 100644 index 6bec4d99a..000000000 --- a/libre/libquicktime-libre/ffmpeg2.0.patch +++ /dev/null @@ -1,135 +0,0 @@ -Binary files a/plugins/ffmpeg/.lqt_ffmpeg.c.swp and b/plugins/ffmpeg/.lqt_ffmpeg.c.swp differ -diff -rupN a/plugins/ffmpeg/ffmpeg.h b/plugins/ffmpeg/ffmpeg.h ---- a/plugins/ffmpeg/ffmpeg.h 2012-02-15 20:48:30.000000000 +0100 -+++ b/plugins/ffmpeg/ffmpeg.h 2013-07-15 15:05:19.307534593 +0200 -@@ -45,3 +45,7 @@ void lqt_ffmpeg_set_parameter(AVCodecCon - - - #endif -+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 -+#define CODEC_FLAG2_STRICT_GOP 0x00000002 -+#define CODEC_FLAG_QP_RD 0x08000000 -+#define CODEC_FLAG_CBP_RD 0x04000000 -diff -rupN a/plugins/ffmpeg/lqt_ffmpeg.c b/plugins/ffmpeg/lqt_ffmpeg.c ---- a/plugins/ffmpeg/lqt_ffmpeg.c 2012-02-15 20:48:30.000000000 +0100 -+++ b/plugins/ffmpeg/lqt_ffmpeg.c 2013-07-15 15:19:09.730831655 +0200 -@@ -89,19 +89,8 @@ int ffmpeg_num_video_codecs = -1; - PARAM_QSCALE, \ - PARAM_QCOMPRESS, \ - PARAM_QBLUR, \ -- PARAM_QUANTIZER_NOISE_SHAPING, \ - PARAM_TRELLIS - --#define ENCODE_PARAM_VIDEO_QUANTIZER_IP \ -- ENCODE_PARAM_VIDEO_QUANTIZER_I, \ -- PARAM_I_QUANT_FACTOR, \ -- PARAM_I_QUANT_OFFSET -- --#define ENCODE_PARAM_VIDEO_QUANTIZER_IPB \ -- ENCODE_PARAM_VIDEO_QUANTIZER_IP, \ -- PARAM_B_QUANT_FACTOR, \ -- PARAM_B_QUANT_OFFSET -- - #define ENCODE_PARAM_VIDEO_FRAMETYPES_IP \ - { \ - .name = "frame_types", \ -@@ -207,7 +196,6 @@ static lqt_parameter_info_static_t encod - ENCODE_PARAM_VIDEO_FRAMETYPES_IPB, - PARAM_FLAG_AC_PRED_MPEG4, - ENCODE_PARAM_VIDEO_RATECONTROL, -- ENCODE_PARAM_VIDEO_QUANTIZER_IPB, - PARAM_FLAG_CBP_RD, - ENCODE_PARAM_VIDEO_ME, - PARAM_FLAG_GMC, -@@ -225,7 +213,6 @@ static lqt_parameter_info_static_t encod - static lqt_parameter_info_static_t encode_parameters_dx50[] = { - ENCODE_PARAM_VIDEO_FRAMETYPES_IP, - ENCODE_PARAM_VIDEO_RATECONTROL, -- ENCODE_PARAM_VIDEO_QUANTIZER_IP, - ENCODE_PARAM_VIDEO_ME, - ENCODE_PARAM_VIDEO_ME_PRE, - ENCODE_PARAM_VIDEO_MASKING, -@@ -237,7 +224,6 @@ static lqt_parameter_info_static_t encod - static lqt_parameter_info_static_t encode_parameters_h263[] = { - ENCODE_PARAM_VIDEO_FRAMETYPES_IP, - ENCODE_PARAM_VIDEO_RATECONTROL, -- ENCODE_PARAM_VIDEO_QUANTIZER_IP, - ENCODE_PARAM_VIDEO_ME, - PARAM_FLAG_4MV, - ENCODE_PARAM_VIDEO_ME_PRE, -@@ -250,7 +236,6 @@ static lqt_parameter_info_static_t encod - static lqt_parameter_info_static_t encode_parameters_h263p[] = { - ENCODE_PARAM_VIDEO_FRAMETYPES_IP, - ENCODE_PARAM_VIDEO_RATECONTROL, -- ENCODE_PARAM_VIDEO_QUANTIZER_IP, - ENCODE_PARAM_VIDEO_ME, - PARAM_FLAG_4MV, - ENCODE_PARAM_VIDEO_ME_PRE, -@@ -264,7 +249,6 @@ static lqt_parameter_info_static_t encod - static lqt_parameter_info_static_t encode_parameters_msmpeg4v3[] = { - ENCODE_PARAM_VIDEO_FRAMETYPES_IP, - ENCODE_PARAM_VIDEO_RATECONTROL, -- ENCODE_PARAM_VIDEO_QUANTIZER_IP, - ENCODE_PARAM_VIDEO_ME, - ENCODE_PARAM_VIDEO_ME_PRE, - ENCODE_PARAM_VIDEO_MASKING, -diff -rupN a/plugins/ffmpeg/params.c b/plugins/ffmpeg/params.c ---- a/plugins/ffmpeg/params.c 2012-03-07 15:10:41.000000000 +0100 -+++ b/plugins/ffmpeg/params.c 2013-07-15 15:09:38.214189953 +0200 -@@ -202,8 +202,10 @@ void lqt_ffmpeg_set_parameter(AVCodecCon - PARAM_INT("ff_max_b_frames",max_b_frames); - PARAM_FLOAT("ff_b_quant_factor",b_quant_factor); - PARAM_INT("ff_b_frame_strategy",b_frame_strategy); -+#if (LIBAVCODEC_VERSION_MAJOR < 55) - PARAM_INT("ff_luma_elim_threshold",luma_elim_threshold); - PARAM_INT("ff_chroma_elim_threshold",chroma_elim_threshold); -+#endif - PARAM_INT("ff_strict_std_compliance",strict_std_compliance); - PARAM_QP2LAMBDA("ff_b_quant_offset",b_quant_offset); - PARAM_INT("ff_rc_min_rate",rc_min_rate); -@@ -241,8 +243,10 @@ void lqt_ffmpeg_set_parameter(AVCodecCon - PARAM_QP2LAMBDA("ff_lmax", lmax); - PARAM_INT("ff_noise_reduction",noise_reduction); - PARAM_INT_SCALE("ff_rc_initial_buffer_occupancy",rc_initial_buffer_occupancy,1000); -+#if #if (LIBAVCODEC_VERSION_MAJOR < 55) - PARAM_INT("ff_inter_threshold",inter_threshold); - PARAM_INT("ff_quantizer_noise_shaping",quantizer_noise_shaping); -+#endif - PARAM_INT("ff_thread_count",thread_count); - PARAM_INT("ff_me_threshold",me_threshold); - PARAM_INT("ff_mb_threshold",mb_threshold); -diff -rupN a/plugins/ffmpeg/params.h b/plugins/ffmpeg/params.h ---- a/plugins/ffmpeg/params.h 2011-05-11 17:13:39.000000000 +0200 -+++ b/plugins/ffmpeg/params.h 2013-07-15 15:09:04.860858069 +0200 -@@ -177,6 +177,7 @@ the reference. Unused for constant quant - .val_max = { .val_int = 1 }, \ - } - -+#if (LIBAVCODEC_VERSION_MAJOR < 55) - #define PARAM_LUMA_ELIM_THRESHOLD \ - { \ - .name = "ff_luma_elim_threshold", \ -@@ -202,6 +203,7 @@ recommendation") \ - chrominamce. Negative values also consider dc \ - coefficient. 7 is JVT recommendation") \ - } -+#endif - - #define PARAM_STRICT_STANDARD_COMPLIANCE \ - { \ -@@ -739,6 +741,7 @@ with max and/or min bitrate, this must b - - /* Does nothing */ - /** Frame types */ -+#if (LIBAVCODEC_VERSION_MAJOR < 55) - #define PARAM_INTER_THRESHOLD \ - { \ - .name = "ff_inter_threshold", \ -@@ -759,6 +762,7 @@ with max and/or min bitrate, this must b - .help_string = TRS("Choose quantization such that noise will be masked by " \ - "similar-frequency content in the image") \ - } -+#endif - - /** Motion estimation */ - #define PARAM_ME_THRESHOLD \ diff --git a/libre/libquicktime-parabola/PKGBUILD b/libre/libquicktime-parabola/PKGBUILD new file mode 100644 index 000000000..611608c68 --- /dev/null +++ b/libre/libquicktime-parabola/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 116382 2014-07-26 16:36:46Z bpiotrowski $ +# Maintainer (Arch): Federico Cinelli +# Maintainer (Arch): Mateusz Herych +# Contributor: Jorge Lopez + +pkgname=libquicktime-parabola +_pkgname=libquicktime +pkgver=1.2.4 +pkgrel=10 +pkgdesc="A library for reading and writing quicktime files, without nonfree faac support" +arch=('i686' 'x86_64') +license=('GPL') +url="http://libquicktime.sourceforge.net/" +depends=('gtk2' 'ffmpeg' 'libxv' 'libxaw' 'faad2') +makedepends=('mesa-libgl' 'x264') +source=("http://downloads.sourceforge.net/sourceforge/$_pkgname/$_pkgname-$pkgver.tar.gz" + ffmpeg2.0.patch) +sha256sums=('1c53359c33b31347b4d7b00d3611463fe5e942cae3ec0fefe0d2fd413fd47368' + 'a1c8415e8e7bc04c81b946b9e3746f7d5ef24819135962280c3a7ddb3f2baa2b') +replaces=("${_pkgname}" "${_pkgname}-libre") +conflicts=("${_pkgname}" "${_pkgname}-libre") +provides=(${_pkgname}=${pkgver}) + +prepare() { + cd $_pkgname-$pkgver + patch -Np1 -i ../ffmpeg2.0.patch +} + +build() { + cd "$srcdir/$_pkgname-$pkgver" + ./configure --prefix=/usr \ + --enable-gpl \ + --with-ffmpeg \ + --with-x264 \ + --without-doxygen + make +} + +package() { + cd "$srcdir/$_pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/libre/libquicktime-parabola/ffmpeg2.0.patch b/libre/libquicktime-parabola/ffmpeg2.0.patch new file mode 100644 index 000000000..6bec4d99a --- /dev/null +++ b/libre/libquicktime-parabola/ffmpeg2.0.patch @@ -0,0 +1,135 @@ +Binary files a/plugins/ffmpeg/.lqt_ffmpeg.c.swp and b/plugins/ffmpeg/.lqt_ffmpeg.c.swp differ +diff -rupN a/plugins/ffmpeg/ffmpeg.h b/plugins/ffmpeg/ffmpeg.h +--- a/plugins/ffmpeg/ffmpeg.h 2012-02-15 20:48:30.000000000 +0100 ++++ b/plugins/ffmpeg/ffmpeg.h 2013-07-15 15:05:19.307534593 +0200 +@@ -45,3 +45,7 @@ void lqt_ffmpeg_set_parameter(AVCodecCon + + + #endif ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 ++#define CODEC_FLAG2_STRICT_GOP 0x00000002 ++#define CODEC_FLAG_QP_RD 0x08000000 ++#define CODEC_FLAG_CBP_RD 0x04000000 +diff -rupN a/plugins/ffmpeg/lqt_ffmpeg.c b/plugins/ffmpeg/lqt_ffmpeg.c +--- a/plugins/ffmpeg/lqt_ffmpeg.c 2012-02-15 20:48:30.000000000 +0100 ++++ b/plugins/ffmpeg/lqt_ffmpeg.c 2013-07-15 15:19:09.730831655 +0200 +@@ -89,19 +89,8 @@ int ffmpeg_num_video_codecs = -1; + PARAM_QSCALE, \ + PARAM_QCOMPRESS, \ + PARAM_QBLUR, \ +- PARAM_QUANTIZER_NOISE_SHAPING, \ + PARAM_TRELLIS + +-#define ENCODE_PARAM_VIDEO_QUANTIZER_IP \ +- ENCODE_PARAM_VIDEO_QUANTIZER_I, \ +- PARAM_I_QUANT_FACTOR, \ +- PARAM_I_QUANT_OFFSET +- +-#define ENCODE_PARAM_VIDEO_QUANTIZER_IPB \ +- ENCODE_PARAM_VIDEO_QUANTIZER_IP, \ +- PARAM_B_QUANT_FACTOR, \ +- PARAM_B_QUANT_OFFSET +- + #define ENCODE_PARAM_VIDEO_FRAMETYPES_IP \ + { \ + .name = "frame_types", \ +@@ -207,7 +196,6 @@ static lqt_parameter_info_static_t encod + ENCODE_PARAM_VIDEO_FRAMETYPES_IPB, + PARAM_FLAG_AC_PRED_MPEG4, + ENCODE_PARAM_VIDEO_RATECONTROL, +- ENCODE_PARAM_VIDEO_QUANTIZER_IPB, + PARAM_FLAG_CBP_RD, + ENCODE_PARAM_VIDEO_ME, + PARAM_FLAG_GMC, +@@ -225,7 +213,6 @@ static lqt_parameter_info_static_t encod + static lqt_parameter_info_static_t encode_parameters_dx50[] = { + ENCODE_PARAM_VIDEO_FRAMETYPES_IP, + ENCODE_PARAM_VIDEO_RATECONTROL, +- ENCODE_PARAM_VIDEO_QUANTIZER_IP, + ENCODE_PARAM_VIDEO_ME, + ENCODE_PARAM_VIDEO_ME_PRE, + ENCODE_PARAM_VIDEO_MASKING, +@@ -237,7 +224,6 @@ static lqt_parameter_info_static_t encod + static lqt_parameter_info_static_t encode_parameters_h263[] = { + ENCODE_PARAM_VIDEO_FRAMETYPES_IP, + ENCODE_PARAM_VIDEO_RATECONTROL, +- ENCODE_PARAM_VIDEO_QUANTIZER_IP, + ENCODE_PARAM_VIDEO_ME, + PARAM_FLAG_4MV, + ENCODE_PARAM_VIDEO_ME_PRE, +@@ -250,7 +236,6 @@ static lqt_parameter_info_static_t encod + static lqt_parameter_info_static_t encode_parameters_h263p[] = { + ENCODE_PARAM_VIDEO_FRAMETYPES_IP, + ENCODE_PARAM_VIDEO_RATECONTROL, +- ENCODE_PARAM_VIDEO_QUANTIZER_IP, + ENCODE_PARAM_VIDEO_ME, + PARAM_FLAG_4MV, + ENCODE_PARAM_VIDEO_ME_PRE, +@@ -264,7 +249,6 @@ static lqt_parameter_info_static_t encod + static lqt_parameter_info_static_t encode_parameters_msmpeg4v3[] = { + ENCODE_PARAM_VIDEO_FRAMETYPES_IP, + ENCODE_PARAM_VIDEO_RATECONTROL, +- ENCODE_PARAM_VIDEO_QUANTIZER_IP, + ENCODE_PARAM_VIDEO_ME, + ENCODE_PARAM_VIDEO_ME_PRE, + ENCODE_PARAM_VIDEO_MASKING, +diff -rupN a/plugins/ffmpeg/params.c b/plugins/ffmpeg/params.c +--- a/plugins/ffmpeg/params.c 2012-03-07 15:10:41.000000000 +0100 ++++ b/plugins/ffmpeg/params.c 2013-07-15 15:09:38.214189953 +0200 +@@ -202,8 +202,10 @@ void lqt_ffmpeg_set_parameter(AVCodecCon + PARAM_INT("ff_max_b_frames",max_b_frames); + PARAM_FLOAT("ff_b_quant_factor",b_quant_factor); + PARAM_INT("ff_b_frame_strategy",b_frame_strategy); ++#if (LIBAVCODEC_VERSION_MAJOR < 55) + PARAM_INT("ff_luma_elim_threshold",luma_elim_threshold); + PARAM_INT("ff_chroma_elim_threshold",chroma_elim_threshold); ++#endif + PARAM_INT("ff_strict_std_compliance",strict_std_compliance); + PARAM_QP2LAMBDA("ff_b_quant_offset",b_quant_offset); + PARAM_INT("ff_rc_min_rate",rc_min_rate); +@@ -241,8 +243,10 @@ void lqt_ffmpeg_set_parameter(AVCodecCon + PARAM_QP2LAMBDA("ff_lmax", lmax); + PARAM_INT("ff_noise_reduction",noise_reduction); + PARAM_INT_SCALE("ff_rc_initial_buffer_occupancy",rc_initial_buffer_occupancy,1000); ++#if #if (LIBAVCODEC_VERSION_MAJOR < 55) + PARAM_INT("ff_inter_threshold",inter_threshold); + PARAM_INT("ff_quantizer_noise_shaping",quantizer_noise_shaping); ++#endif + PARAM_INT("ff_thread_count",thread_count); + PARAM_INT("ff_me_threshold",me_threshold); + PARAM_INT("ff_mb_threshold",mb_threshold); +diff -rupN a/plugins/ffmpeg/params.h b/plugins/ffmpeg/params.h +--- a/plugins/ffmpeg/params.h 2011-05-11 17:13:39.000000000 +0200 ++++ b/plugins/ffmpeg/params.h 2013-07-15 15:09:04.860858069 +0200 +@@ -177,6 +177,7 @@ the reference. Unused for constant quant + .val_max = { .val_int = 1 }, \ + } + ++#if (LIBAVCODEC_VERSION_MAJOR < 55) + #define PARAM_LUMA_ELIM_THRESHOLD \ + { \ + .name = "ff_luma_elim_threshold", \ +@@ -202,6 +203,7 @@ recommendation") \ + chrominamce. Negative values also consider dc \ + coefficient. 7 is JVT recommendation") \ + } ++#endif + + #define PARAM_STRICT_STANDARD_COMPLIANCE \ + { \ +@@ -739,6 +741,7 @@ with max and/or min bitrate, this must b + + /* Does nothing */ + /** Frame types */ ++#if (LIBAVCODEC_VERSION_MAJOR < 55) + #define PARAM_INTER_THRESHOLD \ + { \ + .name = "ff_inter_threshold", \ +@@ -759,6 +762,7 @@ with max and/or min bitrate, this must b + .help_string = TRS("Choose quantization such that noise will be masked by " \ + "similar-frequency content in the image") \ + } ++#endif + + /** Motion estimation */ + #define PARAM_ME_THRESHOLD \ diff --git a/libre/lsb-release-parabola/PKGBUILD b/libre/lsb-release-parabola/PKGBUILD new file mode 100644 index 000000000..d0b083df5 --- /dev/null +++ b/libre/lsb-release-parabola/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 101477 2013-11-26 10:23:04Z svenstaro $ +# Maintainer (Arch): Sven-Hendrik Haase +# Contributor (Arch): Malte Rabenseifner +# Contributor (Arch): John Gerritse +# Maintainer: Michał Masłowski +# Contributor: André Silva emulatorman@parabola.nu> + +_pkgname=lsb-release +pkgname=lsb-release-parabola +pkgver=1.4 +pkgrel=14 +pkgdesc="LSB version query program (Parabola rebranded)" +arch=('any') +url="http://www.linuxbase.org/" +license=('GPL2') +depends=('bash') +replaces=("${_pkgname}" "${_pkgname}-libre") +conflicts=("${_pkgname}" "${_pkgname}-libre") +provides=(${_pkgname}=${pkgver}) +install=lsb-release.install +source=(http://downloads.sourceforge.net/lsb/$_pkgname-$pkgver.tar.gz + lsb_release_description.patch) +md5sums=('30537ef5a01e0ca94b7b8eb6a36bb1e4' + '72f562d8eaa8915ab85fba13e68c8d68') + +build() { + cd "$srcdir/$_pkgname-$pkgver" + + patch -Np0 < "$srcdir/lsb_release_description.patch" + + make +} + +package() { + cd "$srcdir/$_pkgname-$pkgver" + + install -dm755 "$pkgdir/etc" + echo "LSB_VERSION=$pkgver" >> "$pkgdir/etc/lsb-release" + echo "DISTRIB_ID=Parabola" > "$pkgdir/etc/lsb-release" + echo "DISTRIB_RELEASE=rolling" >> "$pkgdir/etc/lsb-release" + echo "DISTRIB_DESCRIPTION=\"Parabola GNU/Linux-libre\"" >> "$pkgdir/etc/lsb-release" + + install -Dm 644 lsb_release.1.gz "$pkgdir/usr/share/man/man1/lsb_release.1.gz" + install -Dm 755 lsb_release "$pkgdir/usr/bin/lsb_release" +} diff --git a/libre/lsb-release-parabola/lsb-release.install b/libre/lsb-release-parabola/lsb-release.install new file mode 100644 index 000000000..261df2a73 --- /dev/null +++ b/libre/lsb-release-parabola/lsb-release.install @@ -0,0 +1,12 @@ +post_install() { + echo "Parabola GNU/Linux-libre release" >> /etc/parabola-release +} + +post_upgrade() { + sed -e '/Parabola GNU\/Linux-[Ll]ibre release/d' -i /etc/parabola-release + echo "Parabola GNU/Linux-libre release" >> /etc/parabola-release +} + +pre_remove() { + sed -e '/Parabola GNU\/Linux-[Ll]ibre release/d' -i /etc/parabola-release +} diff --git a/libre/lsb-release-parabola/lsb_release_description.patch b/libre/lsb-release-parabola/lsb_release_description.patch new file mode 100644 index 000000000..d46835b97 --- /dev/null +++ b/libre/lsb-release-parabola/lsb_release_description.patch @@ -0,0 +1,11 @@ +--- lsb_release.orig 2012-11-13 05:12:02.000000000 -0800 ++++ lsb_release 2013-11-24 17:13:55.943608718 -0800 +@@ -216,7 +216,7 @@ + TMP_DISTRIB_DESC=$DISTRIB_DESCRIPTION + fi + +- if [ -z "$TMP_DISTRIB_DESC" ] # head or lsb-release init ++ if [ -z "$DISTRIB_DESCRIPTION" ] # head or lsb-release init + then # file contains no data + DISTRIB_DESCRIPTION=$MSG_NONE + NO="y" diff --git a/libre/lsb-release/PKGBUILD b/libre/lsb-release/PKGBUILD deleted file mode 100644 index d35195267..000000000 --- a/libre/lsb-release/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# $Id: PKGBUILD 101477 2013-11-26 10:23:04Z svenstaro $ -# Maintainer (Arch): Sven-Hendrik Haase -# Contributor (Arch): Malte Rabenseifner -# Contributor (Arch): John Gerritse -# Maintainer: Michał Masłowski -# Contributor: André Silva emulatorman@parabola.nu> - -pkgname=lsb-release -pkgver=1.4 -pkgrel=14.2 -pkgdesc="LSB version query program (Parabola rebranded)" -arch=('any') -url="http://www.linuxbase.org/" -license=('GPL2') -depends=('bash') -provides=('lsb-release-libre') -conflicts=('lsb-release-libre') -replaces=('lsb-release-libre') -install=lsb-release.install -source=(http://downloads.sourceforge.net/lsb/$pkgname-$pkgver.tar.gz - lsb_release_description.patch) -md5sums=('30537ef5a01e0ca94b7b8eb6a36bb1e4' - '72f562d8eaa8915ab85fba13e68c8d68') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - patch -Np0 < "$srcdir/lsb_release_description.patch" - - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - - install -dm755 "$pkgdir/etc" - echo "LSB_VERSION=$pkgver" >> "$pkgdir/etc/lsb-release" - echo "DISTRIB_ID=Parabola" > "$pkgdir/etc/lsb-release" - echo "DISTRIB_RELEASE=rolling" >> "$pkgdir/etc/lsb-release" - echo "DISTRIB_DESCRIPTION=\"Parabola GNU/Linux-libre\"" >> "$pkgdir/etc/lsb-release" - - install -Dm 644 lsb_release.1.gz "$pkgdir/usr/share/man/man1/lsb_release.1.gz" - install -Dm 755 lsb_release "$pkgdir/usr/bin/lsb_release" -} diff --git a/libre/lsb-release/lsb-release.install b/libre/lsb-release/lsb-release.install deleted file mode 100644 index 261df2a73..000000000 --- a/libre/lsb-release/lsb-release.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - echo "Parabola GNU/Linux-libre release" >> /etc/parabola-release -} - -post_upgrade() { - sed -e '/Parabola GNU\/Linux-[Ll]ibre release/d' -i /etc/parabola-release - echo "Parabola GNU/Linux-libre release" >> /etc/parabola-release -} - -pre_remove() { - sed -e '/Parabola GNU\/Linux-[Ll]ibre release/d' -i /etc/parabola-release -} diff --git a/libre/lsb-release/lsb_release_description.patch b/libre/lsb-release/lsb_release_description.patch deleted file mode 100644 index d46835b97..000000000 --- a/libre/lsb-release/lsb_release_description.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- lsb_release.orig 2012-11-13 05:12:02.000000000 -0800 -+++ lsb_release 2013-11-24 17:13:55.943608718 -0800 -@@ -216,7 +216,7 @@ - TMP_DISTRIB_DESC=$DISTRIB_DESCRIPTION - fi - -- if [ -z "$TMP_DISTRIB_DESC" ] # head or lsb-release init -+ if [ -z "$DISTRIB_DESCRIPTION" ] # head or lsb-release init - then # file contains no data - DISTRIB_DESCRIPTION=$MSG_NONE - NO="y" diff --git a/libre/mkisolinux-parabola/PKGBUILD b/libre/mkisolinux-parabola/PKGBUILD new file mode 100644 index 000000000..fbe710095 --- /dev/null +++ b/libre/mkisolinux-parabola/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 12670 2008-09-17 21:19:05Z tpowa $ +# Maintainer (Arch): Tobias Powalowski + +_pkgname=mkisolinux +pkgname=mkisolinux-parabola +pkgver=2013.05 +pkgrel=1 +pkgdesc="Advanced, modular isolinux bootcd image creation utility (Parabola rebranded)" +arch=(any) +license=('GPL') +url="https://parabolagnulinux.org/" +depends=('mkinitcpio' 'cdrkit' 'syslinux' 'pciutils') +replaces=('mkbootcd' "$_pkgname") +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +backup=(etc/mkisolinux.conf) +source=('boot.msg' 'mkisolinux' 'mkisolinux.conf' 'options.msg') + + +package() +{ + cd "$srcdir/" + install -D -m755 mkisolinux "$pkgdir/usr/bin/mkisolinux" + install -D -m644 mkisolinux.conf "$pkgdir/etc/mkisolinux.conf" + install -D -m644 boot.msg "$pkgdir/usr/share/mkisolinux/boot.msg" + install -D -m644 options.msg "$pkgdir/usr/share/mkisolinux/options.msg" +} +md5sums=('0ddb91a127ba040ce1434776d387825e' + 'd19183e162aff04f7f4c7b9e46be1315' + 'a474f11ab00ecbc12dafb548bb9ac025' + 'ae0007d6679b5a575b2a9e5ac3664baf') diff --git a/libre/mkisolinux-parabola/boot.msg b/libre/mkisolinux-parabola/boot.msg new file mode 100644 index 000000000..2725404e0 --- /dev/null +++ b/libre/mkisolinux-parabola/boot.msg @@ -0,0 +1,15 @@ + + +------------------------------------------------------------------------------ +Parabola GNU/Linux-libre +ISOLINUX BOOT +created with 'mkisolinux' written by Tobias Powalowski +rebranded for Parabola by André Silva + +Press ENTER or type 'parabola' to boot the CD. + +If you wish to change your defaults to boot into your existing system, +type 'vmlinuz initrd=initrd.img ' +Use the F2 key for troubleshooting and options. +------------------------------------------------------------------------------ + diff --git a/libre/mkisolinux-parabola/mkisolinux b/libre/mkisolinux-parabola/mkisolinux new file mode 100755 index 000000000..048d925aa --- /dev/null +++ b/libre/mkisolinux-parabola/mkisolinux @@ -0,0 +1,116 @@ +#! /bin/sh +# Created by Tobias Powalowski +# Rebranded for Parabola by André Silva +# Settings +APPNAME=$(basename "${0}") +CONFIG="/etc/mkisolinux.conf" +GENIMG="" +BURN="0" +BLANK="0" +TARNAME="" +export TEMPDIR=$(mktemp -d /tmp/mkisolinux.XXXX) +usage () +{ + echo "${APPNAME}: usage" + echo " -g=IMAGE Generate a ISO image as IMAGE" + echo " -c=CONFIG Use CONFIG file. default: /etc/mkisolinux.conf" + echo " -B Burn the ISO image after creation" + echo " -b Blanking media first" + echo " -h This message." + exit 1 +} + +[ "$1" == "" ] && usage + +while [ $# -gt 0 ]; do + case $1 in + -c=*|--c=*) CONFIG="$(echo $1 | awk -F= '{print $2;}')" ;; + -g=*|--g=*) GENIMG="$(echo $1 | awk -F= '{print $2;}')" ;; + -B|--B) BURN="1" ;; + -b|--b) BLANK="1" ;; + -t=*|--t=*) TARNAME="$(echo $1 | awk -F= '{print $2;}')" ;; + -h|--h|?) usage ;; + *) usage ;; + esac + shift +done + +if [ "${TARNAME}" = "" -a "${GENIMG}" = "" ]; then + echo "ERROR: No image name specified, please use the -g option" + exit 1 +fi + +if [ ! -f "${CONFIG}" ]; then + echo "config file '${CONFIG}' cannot be found, aborting..." + exit 1 +fi + +. "${CONFIG}" +# export for mkinitcpio +[ -n "${APPENDBOOTMESSAGE}" ] && export APPENDBOOTMESSAGE +[ -n "${APPENDOPTIONSBOOTMESSAGE}" ] && export APPENDOPTIONSBOOTMESSAGE + +export RUNPROGRAM="${APPNAME}" +export BOOTDIRNAME="boot/syslinux" + +[ "${BOOTMESSAGE}" = "" ] && export BOOTMESSAGE=$(mktemp /tmp/bootmessage.XXXX) +[ "${OPTIONSBOOTMESSAGE}" = "" ] && export OPTIONSBOOTMESSAGE=$(mktemp /tmp/optionsbootmessage.XXXX) +[ "${ISONAME}" = "" ] && export ISONAME=$(mktemp /tmp/isoname.XXXX) +export USEKERNEL=${VERSION} + +# begin script +mkdir -p ${TEMPDIR}/${BOOTDIRNAME}/ +# prepare syslinux +install -m755 /usr/lib/syslinux/isolinux.bin ${TEMPDIR}/${BOOTDIRNAME}/isolinux.bin +for i in /usr/lib/syslinux/*.c32; do + install -m644 $i ${TEMPDIR}/${BOOTDIRNAME}/$(basename $i) +done +install -m644 /usr/share/hwdata/pci.ids ${TEMPDIR}/${BOOTDIRNAME}/pci.ids +# create syslinux.cfg +echo ":: Creating syslinux.cfg ..." +if [ "${ISOLINUXCFG}" = "" ]; then + [ -e ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && rm ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "prompt ${PROMPT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "timeout ${TIMEOUT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "display boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "F1 boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "F2 options.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "default parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "label parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "kernel /boot/vmlinuz" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "append initrd=/boot/initrd.img ${KERNEL_BOOT_OPTIONS}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg +else + sed "s|@@PROMPT@@|${PROMPT}|g;s|@@TIMEOUT@@|${TIMEOUT}|g;s|@@KERNEL_BOOT_OPTIONS@@|${KERNEL_BOOT_OPTIONS}|g" \ + ${ISOLINUXCFG} > ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg +fi +[ ! -s ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && echo "No syslinux.cfg found" && exit 1 + +echo ":: Calling mkinitcpio CONFIG=${MKINITCPIO_CONFIG} KERNEL=${VERSION} ..." +# generate initramdisk +echo ":: Creating initramdisk ..." + mkinitcpio -c ${MKINITCPIO_CONFIG} -k ${VERSION} -g ${TEMPDIR}/boot/initrd.img +echo ":: Using ${KERNEL} as image kernel ..." + install -m644 ${KERNEL} ${TEMPDIR}/boot/vmlinuz + install -m644 ${BOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/boot.msg + install -m644 ${OPTIONSBOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/options.msg + [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/boot.msg ] && echo 'ERROR:no boot.msg found, aborting!' && exit 1 + [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/options.msg ] && echo 'ERROR:no options.msg found, aborting!' && exit 1 +# create image +echo ":: Creating ISO image ..." + [ -e ${GENIMG} ] && rm ${GENIMG} + [ -s "${ISONAME}" ] && ISONAME=$(cat $ISONAME) || ISONAME="Parabola GNU/Linux-libre" + mkisofs -RlDJLV "${ISONAME}" -b boot/syslinux/isolinux.bin -c boot/syslinux/boot.cat \ + -no-emul-boot -boot-load-size 4 -boot-info-table -o ${GENIMG} ${TEMPDIR}/ > /dev/null 2>&1 \ + && echo ":: ISO Image succesfull created at ${GENIMG}" + # burning/blanking image + if [ "$BLANK" = "1" ]; then + echo ":: Blanking media DEVICE=${DEVICE}, BLANKMODE=${BLANKMODE}, SPEED=${SPEED} ..." + cdrecord dev=${DEVICE} speed=${SPEED} blank=${BLANKMODE} > /dev/null 2>&1 && echo ":: Successfull." + fi + if [ "$BURN" = "1" ]; then + echo ":: Burning ISO image DEVICE=${DEVICE}, SPEED=${SPEED} ..." + cdrecord dev=${DEVICE} speed=${SPEED} -eject ${GENIMG} > /dev/null 2>&1 && echo ":: Successfull." + fi + +# clean /tmp +rm -r ${TEMPDIR} diff --git a/libre/mkisolinux-parabola/mkisolinux.conf b/libre/mkisolinux-parabola/mkisolinux.conf new file mode 100644 index 000000000..e8b1e0df0 --- /dev/null +++ b/libre/mkisolinux-parabola/mkisolinux.conf @@ -0,0 +1,39 @@ +# Created by Tobias Powalowski +# Rebranded for Parabola by André Silva +# config file of mkisolinux + +# DEFAULT kernel boot options like root=/dev/sda3 etc. +# add your root= option, if you boot from a disk device +# and don't want to add it by hand on each boot +KERNEL_BOOT_OPTIONS="" + +# mkinitcpio config file, defaulted to stock config file +MKINITCPIO_CONFIG="/etc/mkinitcpio.conf" + +# kernel version, defaulted to build for runtime kernel +VERSION="$(uname -r)" + +# kernel image, defaulted to stock libre kernel +KERNEL="/boot/vmlinuz-linux-libre" + +# boot message files +BOOTMESSAGE="/usr/share/mkisolinux/boot.msg" +OPTIONSBOOTMESSAGE="/usr/share/mkisolinux/options.msg" + +# syslinux.cfg file to use +SYSLINUXCFG="" + +# Prompt on boot, 1=yes 0=no +PROMPT="1" + +# Name of the ISO, if empty Parabola GNU/Linux-libre is used if not set by a HOOK later +ISONAME="" + +# Timeout, 30 seconds to fix usb keyboard issues +# 0 means wait for prompt +TIMEOUT="300" + +# Setting cdrecord options +DEVICE="" +SPEED="" +BLANKMODE="" diff --git a/libre/mkisolinux-parabola/options.msg b/libre/mkisolinux-parabola/options.msg new file mode 100644 index 000000000..16c6b2eda --- /dev/null +++ b/libre/mkisolinux-parabola/options.msg @@ -0,0 +1,6 @@ +------------------------------------------------------------------------------ +Parabola GNU/Linux-libre options and troubleshooting: + +- If your system hangs during the boot process, any combinations of the + boot options noapic acpi=off pci=routeirq nosmp nomsi may be useful. +------------------------------------------------------------------------------ diff --git a/libre/mkisolinux/PKGBUILD b/libre/mkisolinux/PKGBUILD deleted file mode 100644 index 77e2c31b6..000000000 --- a/libre/mkisolinux/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 12670 2008-09-17 21:19:05Z tpowa $ -# Maintainer (Arch): Tobias Powalowski - -pkgname=mkisolinux -pkgver=2013.05 -pkgrel=1.1 -pkgdesc="Advanced, modular isolinux bootcd image creation utility (Parabola rebranded)" -arch=(any) -license=('GPL') -url="https://parabolagnulinux.org/" -depends=('mkinitcpio' 'cdrkit' 'syslinux' 'pciutils') -replaces=('mkbootcd') -backup=(etc/mkisolinux.conf) -source=('boot.msg' 'mkisolinux' 'mkisolinux.conf' 'options.msg') - - -package() -{ - cd "$srcdir/" - install -D -m755 mkisolinux "$pkgdir/usr/bin/mkisolinux" - install -D -m644 mkisolinux.conf "$pkgdir/etc/mkisolinux.conf" - install -D -m644 boot.msg "$pkgdir/usr/share/mkisolinux/boot.msg" - install -D -m644 options.msg "$pkgdir/usr/share/mkisolinux/options.msg" -} -md5sums=('945d5f5d74f37718c8c9d518bfd5698d' - '384aac3786506ff96ec3d1147bcacfe5' - '3cc23d74d7e4378d1be431d68a71a173' - 'ae0007d6679b5a575b2a9e5ac3664baf') diff --git a/libre/mkisolinux/boot.msg b/libre/mkisolinux/boot.msg deleted file mode 100644 index 2725404e0..000000000 --- a/libre/mkisolinux/boot.msg +++ /dev/null @@ -1,15 +0,0 @@ - - ------------------------------------------------------------------------------- -Parabola GNU/Linux-libre -ISOLINUX BOOT -created with 'mkisolinux' written by Tobias Powalowski -rebranded for Parabola by André Silva - -Press ENTER or type 'parabola' to boot the CD. - -If you wish to change your defaults to boot into your existing system, -type 'vmlinuz initrd=initrd.img ' -Use the F2 key for troubleshooting and options. ------------------------------------------------------------------------------- - diff --git a/libre/mkisolinux/mkisolinux b/libre/mkisolinux/mkisolinux deleted file mode 100755 index 048d925aa..000000000 --- a/libre/mkisolinux/mkisolinux +++ /dev/null @@ -1,116 +0,0 @@ -#! /bin/sh -# Created by Tobias Powalowski -# Rebranded for Parabola by André Silva -# Settings -APPNAME=$(basename "${0}") -CONFIG="/etc/mkisolinux.conf" -GENIMG="" -BURN="0" -BLANK="0" -TARNAME="" -export TEMPDIR=$(mktemp -d /tmp/mkisolinux.XXXX) -usage () -{ - echo "${APPNAME}: usage" - echo " -g=IMAGE Generate a ISO image as IMAGE" - echo " -c=CONFIG Use CONFIG file. default: /etc/mkisolinux.conf" - echo " -B Burn the ISO image after creation" - echo " -b Blanking media first" - echo " -h This message." - exit 1 -} - -[ "$1" == "" ] && usage - -while [ $# -gt 0 ]; do - case $1 in - -c=*|--c=*) CONFIG="$(echo $1 | awk -F= '{print $2;}')" ;; - -g=*|--g=*) GENIMG="$(echo $1 | awk -F= '{print $2;}')" ;; - -B|--B) BURN="1" ;; - -b|--b) BLANK="1" ;; - -t=*|--t=*) TARNAME="$(echo $1 | awk -F= '{print $2;}')" ;; - -h|--h|?) usage ;; - *) usage ;; - esac - shift -done - -if [ "${TARNAME}" = "" -a "${GENIMG}" = "" ]; then - echo "ERROR: No image name specified, please use the -g option" - exit 1 -fi - -if [ ! -f "${CONFIG}" ]; then - echo "config file '${CONFIG}' cannot be found, aborting..." - exit 1 -fi - -. "${CONFIG}" -# export for mkinitcpio -[ -n "${APPENDBOOTMESSAGE}" ] && export APPENDBOOTMESSAGE -[ -n "${APPENDOPTIONSBOOTMESSAGE}" ] && export APPENDOPTIONSBOOTMESSAGE - -export RUNPROGRAM="${APPNAME}" -export BOOTDIRNAME="boot/syslinux" - -[ "${BOOTMESSAGE}" = "" ] && export BOOTMESSAGE=$(mktemp /tmp/bootmessage.XXXX) -[ "${OPTIONSBOOTMESSAGE}" = "" ] && export OPTIONSBOOTMESSAGE=$(mktemp /tmp/optionsbootmessage.XXXX) -[ "${ISONAME}" = "" ] && export ISONAME=$(mktemp /tmp/isoname.XXXX) -export USEKERNEL=${VERSION} - -# begin script -mkdir -p ${TEMPDIR}/${BOOTDIRNAME}/ -# prepare syslinux -install -m755 /usr/lib/syslinux/isolinux.bin ${TEMPDIR}/${BOOTDIRNAME}/isolinux.bin -for i in /usr/lib/syslinux/*.c32; do - install -m644 $i ${TEMPDIR}/${BOOTDIRNAME}/$(basename $i) -done -install -m644 /usr/share/hwdata/pci.ids ${TEMPDIR}/${BOOTDIRNAME}/pci.ids -# create syslinux.cfg -echo ":: Creating syslinux.cfg ..." -if [ "${ISOLINUXCFG}" = "" ]; then - [ -e ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && rm ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "prompt ${PROMPT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "timeout ${TIMEOUT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "display boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "F1 boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "F2 options.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "default parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "label parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "kernel /boot/vmlinuz" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "append initrd=/boot/initrd.img ${KERNEL_BOOT_OPTIONS}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg -else - sed "s|@@PROMPT@@|${PROMPT}|g;s|@@TIMEOUT@@|${TIMEOUT}|g;s|@@KERNEL_BOOT_OPTIONS@@|${KERNEL_BOOT_OPTIONS}|g" \ - ${ISOLINUXCFG} > ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg -fi -[ ! -s ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && echo "No syslinux.cfg found" && exit 1 - -echo ":: Calling mkinitcpio CONFIG=${MKINITCPIO_CONFIG} KERNEL=${VERSION} ..." -# generate initramdisk -echo ":: Creating initramdisk ..." - mkinitcpio -c ${MKINITCPIO_CONFIG} -k ${VERSION} -g ${TEMPDIR}/boot/initrd.img -echo ":: Using ${KERNEL} as image kernel ..." - install -m644 ${KERNEL} ${TEMPDIR}/boot/vmlinuz - install -m644 ${BOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/boot.msg - install -m644 ${OPTIONSBOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/options.msg - [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/boot.msg ] && echo 'ERROR:no boot.msg found, aborting!' && exit 1 - [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/options.msg ] && echo 'ERROR:no options.msg found, aborting!' && exit 1 -# create image -echo ":: Creating ISO image ..." - [ -e ${GENIMG} ] && rm ${GENIMG} - [ -s "${ISONAME}" ] && ISONAME=$(cat $ISONAME) || ISONAME="Parabola GNU/Linux-libre" - mkisofs -RlDJLV "${ISONAME}" -b boot/syslinux/isolinux.bin -c boot/syslinux/boot.cat \ - -no-emul-boot -boot-load-size 4 -boot-info-table -o ${GENIMG} ${TEMPDIR}/ > /dev/null 2>&1 \ - && echo ":: ISO Image succesfull created at ${GENIMG}" - # burning/blanking image - if [ "$BLANK" = "1" ]; then - echo ":: Blanking media DEVICE=${DEVICE}, BLANKMODE=${BLANKMODE}, SPEED=${SPEED} ..." - cdrecord dev=${DEVICE} speed=${SPEED} blank=${BLANKMODE} > /dev/null 2>&1 && echo ":: Successfull." - fi - if [ "$BURN" = "1" ]; then - echo ":: Burning ISO image DEVICE=${DEVICE}, SPEED=${SPEED} ..." - cdrecord dev=${DEVICE} speed=${SPEED} -eject ${GENIMG} > /dev/null 2>&1 && echo ":: Successfull." - fi - -# clean /tmp -rm -r ${TEMPDIR} diff --git a/libre/mkisolinux/mkisolinux.conf b/libre/mkisolinux/mkisolinux.conf deleted file mode 100644 index e8b1e0df0..000000000 --- a/libre/mkisolinux/mkisolinux.conf +++ /dev/null @@ -1,39 +0,0 @@ -# Created by Tobias Powalowski -# Rebranded for Parabola by André Silva -# config file of mkisolinux - -# DEFAULT kernel boot options like root=/dev/sda3 etc. -# add your root= option, if you boot from a disk device -# and don't want to add it by hand on each boot -KERNEL_BOOT_OPTIONS="" - -# mkinitcpio config file, defaulted to stock config file -MKINITCPIO_CONFIG="/etc/mkinitcpio.conf" - -# kernel version, defaulted to build for runtime kernel -VERSION="$(uname -r)" - -# kernel image, defaulted to stock libre kernel -KERNEL="/boot/vmlinuz-linux-libre" - -# boot message files -BOOTMESSAGE="/usr/share/mkisolinux/boot.msg" -OPTIONSBOOTMESSAGE="/usr/share/mkisolinux/options.msg" - -# syslinux.cfg file to use -SYSLINUXCFG="" - -# Prompt on boot, 1=yes 0=no -PROMPT="1" - -# Name of the ISO, if empty Parabola GNU/Linux-libre is used if not set by a HOOK later -ISONAME="" - -# Timeout, 30 seconds to fix usb keyboard issues -# 0 means wait for prompt -TIMEOUT="300" - -# Setting cdrecord options -DEVICE="" -SPEED="" -BLANKMODE="" diff --git a/libre/mkisolinux/options.msg b/libre/mkisolinux/options.msg deleted file mode 100644 index 16c6b2eda..000000000 --- a/libre/mkisolinux/options.msg +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------------------------------------------- -Parabola GNU/Linux-libre options and troubleshooting: - -- If your system hangs during the boot process, any combinations of the - boot options noapic acpi=off pci=routeirq nosmp nomsi may be useful. ------------------------------------------------------------------------------- diff --git a/libre/mkpxelinux-parabola/PKGBUILD b/libre/mkpxelinux-parabola/PKGBUILD new file mode 100644 index 000000000..fa328967d --- /dev/null +++ b/libre/mkpxelinux-parabola/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 197074 2013-10-21 15:42:46Z tpowa $ +# Maintainer (Arch): Tobias Powalowski + +_pkgname=mkpxelinux +pkgname=mkpxelinux-parabola +pkgver=2013.10 +pkgrel=1 +pkgdesc="Advanced, modular network pxe boot image creation utility (Parabola rebranded)" +arch=(any) +license=('GPL') +url="https://parabolagnulinux.org/" +depends=('mkinitcpio' 'tftp-hpa' 'syslinux') +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +backup=(etc/mkpxelinux.conf) +optdepends=('dhcp: for dhcp server usage') +source=('boot.msg' 'mkpxelinux' 'mkpxelinux.conf' 'options.msg') + +package() +{ + cd "$srcdir/" + install -D -m755 mkpxelinux "$pkgdir/usr/bin/mkpxelinux" + install -D -m644 mkpxelinux.conf "$pkgdir/etc/mkpxelinux.conf" + install -D -m644 boot.msg "$pkgdir/usr/share/mkpxelinux/boot.msg" + install -D -m644 options.msg "$pkgdir/usr/share/mkpxelinux/options.msg" +} +md5sums=('7225e73bfe717f97bd7ab52f5ab157f6' + '44c6b9fa8ae668a432f26adb9e70bd3f' + '158dece3af889740b0f0ee397f9058ed' + 'ae0007d6679b5a575b2a9e5ac3664baf') diff --git a/libre/mkpxelinux-parabola/boot.msg b/libre/mkpxelinux-parabola/boot.msg new file mode 100644 index 000000000..6c1fcd476 --- /dev/null +++ b/libre/mkpxelinux-parabola/boot.msg @@ -0,0 +1,14 @@ + + +------------------------------------------------------------------------------ +Parabola GNU/Linux-libre +PXELINUX BOOT +created with 'mkpxelinux' written by Tobias Powalowski + +Press ENTER or type 'parabola' to boot image. + +If you wish to change your defaults to boot into your existing system, +type 'vmlinuz initrd=initrd.img ' +Use the F2 key for troubleshooting and options. +------------------------------------------------------------------------------ + diff --git a/libre/mkpxelinux-parabola/mkpxelinux b/libre/mkpxelinux-parabola/mkpxelinux new file mode 100755 index 000000000..35e946f82 --- /dev/null +++ b/libre/mkpxelinux-parabola/mkpxelinux @@ -0,0 +1,91 @@ +#! /bin/sh +# Created by Tobias Powalowski +# Rebranded for Parabola by André Silva +# Settings +APPNAME=$(basename "${0}") +CONFIG="/etc/mkpxelinux.conf" + +usage () +{ + echo "${APPNAME}: usage" + echo"" + echo " -d=INSTALLDIR Your INSTALLDIR overwrites config default" + echo " -c=CONFIG Use CONFIG file. default: /etc/mkpxelinux.conf" + echo " -h This message." + exit 1 +} + +[ "$1" == "" ] && usage && exit 1 + +while [ $# -gt 0 ]; do + case $1 in + -c=*|--c=*) CONFIG="$(echo $1 | awk -F= '{print $2;}')" ;; + -d=*|--d=*) CUSTOMINSTALLDIR="$(echo $1 | awk -F= '{print $2;}')" ;; + -h|--h|?) usage ;; + *) usage ;; + esac + shift +done + +if [ ! -f "${CONFIG}" ]; then + echo "config file '${CONFIG}' cannot be found, aborting..." + exit 1 +fi + +. "${CONFIG}" +# export for mkinitcpio +[ -n "${APPENDBOOTMESSAGE}" ] && export APPENDBOOTMESSAGE +[ -n "${APPENDOPTIONSBOOTMESSAGE}" ] && export APPENDOPTIONSBOOTMESSAGE + +! [ "${CUSTOMINSTALLDIR}" = "" ] && INSTALLDIR=${CUSTOMINSTALLDIR} + +if [ "${INSTALLDIR}" = "" ]; then + echo "ERROR: No INSTALLDIR name specified, please use the -d option" + exit 1 +fi + +if ! [ $UID -eq 0 ]; then + echo "ERROR: only works when run as root!" + exit 1 +fi + +! [ -e ${INSTALLDIR} ] && echo "No ${INSTALLDIR} found!" && exit 1 +export TEMPDIR=${NFSROOTDIR} +export INSTALLDIR=${INSTALLDIR} +export RUNPROGRAM="${APPNAME}" +[ "${BOOTMESSAGE}" = "" ] && export BOOTMESSAGE=$(mktemp /tmp/bootmessage.XXXX) +[ "${OPTIONSBOOTMESSAGE}" = "" ] && export OPTIONSBOOTMESSAGE=$(mktemp /tmp/optionsbootmessage.XXXX) +export USEKERNEL=${VERSION} +# begin script +# create default +echo ":: Creating pxelinux default config file ..." +mkdir -p ${INSTALLDIR}/pxelinux.cfg +if [ "${PXELINUX_DEFAULT}" = "" ]; then + [ -e ${INSTALLDIR}/pxelinux.cfg/default ] && rm ${INSTALLDIR}/pxelinux.cfg/default + echo "prompt ${PROMPT}" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "timeout ${TIMEOUT}" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "display boot.msg" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "F1 boot.msg" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "F2 options.msg" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "default parabola" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "label parabola" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "kernel vmlinuz" >> ${INSTALLDIR}/pxelinux.cfg/default + echo "append initrd=initrd.img ${KERNEL_BOOT_OPTIONS}" >> ${INSTALLDIR}/pxelinux.cfg/default +else + sed "s|@@PROMPT@@|${PROMPT}|g;s|@@TIMEOUT@@|${TIMEOUT}|g;s|@@KERNEL_BOOT_OPTIONS@@|${KERNEL_BOOT_OPTIONS}|g" \ + ${PXELINUX_DEFAULT} > ${INSTALLDIR}/pxelinux.cfg/default +fi +[ ! -s ${INSTALLDIR}/pxelinux.cfg/default ] && echo "No pxelinux default config found" && exit 1 +echo ":: Calling mkinitcpio CONFIG=${MKINITCPIO_CONFIG} KERNEL=${VERSION} ..." +# generate initramdisk +echo ":: Creating initramdisk ..." + mkinitcpio -c ${MKINITCPIO_CONFIG} -k ${VERSION} -g ${INSTALLDIR}/initrd.img +echo ":: Using ${KERNEL} as image kernel ..." + install -m644 ${KERNEL} ${INSTALLDIR}/vmlinuz +echo ":: Installing message files to ${INSTALLDIR} ..." + install -m644 ${BOOTMESSAGE} ${INSTALLDIR}/boot.msg + install -m644 ${OPTIONSBOOTMESSAGE} ${INSTALLDIR}/options.msg + [ ! -s ${INSTALLDIR}/boot.msg ] && echo 'ERROR:no boot.msg found, aborting!' && exit 1 + [ ! -s ${INSTALLDIR}/options.msg ] && echo 'ERROR:no options.msg found, aborting!' && exit 1 +echo ":: Installing PXELINUX to ${INSTALLDIR} ..." + install -m644 /usr/lib/syslinux/bios/pxelinux.0 ${INSTALLDIR}/pxelinux.0 && echo "Installation completed." diff --git a/libre/mkpxelinux-parabola/mkpxelinux.conf b/libre/mkpxelinux-parabola/mkpxelinux.conf new file mode 100644 index 000000000..55aba8247 --- /dev/null +++ b/libre/mkpxelinux-parabola/mkpxelinux.conf @@ -0,0 +1,37 @@ +# Created by Tobias Powalowski +# Rebranded for Parabola by André Silva +# config file of mkpxelinux + +# DEFAULT kernel boot options like ip=:::::eth0:dhcp etc. +# add your root= option, if you boot from a disk device +# and don't want to add it by hand on each boot +KERNEL_BOOT_OPTIONS="" + +# mkinitcpio config file, defaulted to stock config file +MKINITCPIO_CONFIG="/etc/mkinitcpio.conf" + +# kernel version, defaulted to build for runtime kernel +VERSION="$(uname -r)" + +# kernel image, defaulted to stock libre kernel +KERNEL="/boot/vmlinuz-linux-libre" + +# boot message files +BOOTMESSAGE="/usr/share/mkpxelinux/boot.msg" +OPTIONSBOOTMESSAGE="/usr/share/mkpxelinux/options.msg" + +#pxelinux default config file to use +PXELINUX_DEFAULT="" + +# Prompt on boot, 1=yes 0=no +PROMPT="1" + +# Timeout, 30 seconds to fix usb keyboard issues +# 0 means wait for prompt +TIMEOUT="300" + +# Installdir of tftp, default location +INSTALLDIR="/var/tftpboot" + +# Nfsrootdir, for hooks that might need it +NFSROOTDIR="" diff --git a/libre/mkpxelinux-parabola/options.msg b/libre/mkpxelinux-parabola/options.msg new file mode 100644 index 000000000..16c6b2eda --- /dev/null +++ b/libre/mkpxelinux-parabola/options.msg @@ -0,0 +1,6 @@ +------------------------------------------------------------------------------ +Parabola GNU/Linux-libre options and troubleshooting: + +- If your system hangs during the boot process, any combinations of the + boot options noapic acpi=off pci=routeirq nosmp nomsi may be useful. +------------------------------------------------------------------------------ diff --git a/libre/mkpxelinux/PKGBUILD b/libre/mkpxelinux/PKGBUILD deleted file mode 100644 index c0c30f18c..000000000 --- a/libre/mkpxelinux/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 197074 2013-10-21 15:42:46Z tpowa $ -# Maintainer (Arch): Tobias Powalowski - -pkgname=mkpxelinux -pkgver=2013.10 -pkgrel=1.1 -pkgdesc="Advanced, modular network pxe boot image creation utility (Parabola rebranded)" -arch=(any) -license=('GPL') -url="https://parabolagnulinux.org/" -depends=('mkinitcpio' 'tftp-hpa' 'syslinux') -backup=(etc/mkpxelinux.conf) -optdepends=('dhcp: for dhcp server usage') -source=('boot.msg' 'mkpxelinux' 'mkpxelinux.conf' 'options.msg') - -package() -{ - cd "$srcdir/" - install -D -m755 mkpxelinux "$pkgdir/usr/bin/mkpxelinux" - install -D -m644 mkpxelinux.conf "$pkgdir/etc/mkpxelinux.conf" - install -D -m644 boot.msg "$pkgdir/usr/share/mkpxelinux/boot.msg" - install -D -m644 options.msg "$pkgdir/usr/share/mkpxelinux/options.msg" -} -md5sums=('7225e73bfe717f97bd7ab52f5ab157f6' - '44c6b9fa8ae668a432f26adb9e70bd3f' - '158dece3af889740b0f0ee397f9058ed' - 'ae0007d6679b5a575b2a9e5ac3664baf') diff --git a/libre/mkpxelinux/boot.msg b/libre/mkpxelinux/boot.msg deleted file mode 100644 index 6c1fcd476..000000000 --- a/libre/mkpxelinux/boot.msg +++ /dev/null @@ -1,14 +0,0 @@ - - ------------------------------------------------------------------------------- -Parabola GNU/Linux-libre -PXELINUX BOOT -created with 'mkpxelinux' written by Tobias Powalowski - -Press ENTER or type 'parabola' to boot image. - -If you wish to change your defaults to boot into your existing system, -type 'vmlinuz initrd=initrd.img ' -Use the F2 key for troubleshooting and options. ------------------------------------------------------------------------------- - diff --git a/libre/mkpxelinux/mkpxelinux b/libre/mkpxelinux/mkpxelinux deleted file mode 100755 index 35e946f82..000000000 --- a/libre/mkpxelinux/mkpxelinux +++ /dev/null @@ -1,91 +0,0 @@ -#! /bin/sh -# Created by Tobias Powalowski -# Rebranded for Parabola by André Silva -# Settings -APPNAME=$(basename "${0}") -CONFIG="/etc/mkpxelinux.conf" - -usage () -{ - echo "${APPNAME}: usage" - echo"" - echo " -d=INSTALLDIR Your INSTALLDIR overwrites config default" - echo " -c=CONFIG Use CONFIG file. default: /etc/mkpxelinux.conf" - echo " -h This message." - exit 1 -} - -[ "$1" == "" ] && usage && exit 1 - -while [ $# -gt 0 ]; do - case $1 in - -c=*|--c=*) CONFIG="$(echo $1 | awk -F= '{print $2;}')" ;; - -d=*|--d=*) CUSTOMINSTALLDIR="$(echo $1 | awk -F= '{print $2;}')" ;; - -h|--h|?) usage ;; - *) usage ;; - esac - shift -done - -if [ ! -f "${CONFIG}" ]; then - echo "config file '${CONFIG}' cannot be found, aborting..." - exit 1 -fi - -. "${CONFIG}" -# export for mkinitcpio -[ -n "${APPENDBOOTMESSAGE}" ] && export APPENDBOOTMESSAGE -[ -n "${APPENDOPTIONSBOOTMESSAGE}" ] && export APPENDOPTIONSBOOTMESSAGE - -! [ "${CUSTOMINSTALLDIR}" = "" ] && INSTALLDIR=${CUSTOMINSTALLDIR} - -if [ "${INSTALLDIR}" = "" ]; then - echo "ERROR: No INSTALLDIR name specified, please use the -d option" - exit 1 -fi - -if ! [ $UID -eq 0 ]; then - echo "ERROR: only works when run as root!" - exit 1 -fi - -! [ -e ${INSTALLDIR} ] && echo "No ${INSTALLDIR} found!" && exit 1 -export TEMPDIR=${NFSROOTDIR} -export INSTALLDIR=${INSTALLDIR} -export RUNPROGRAM="${APPNAME}" -[ "${BOOTMESSAGE}" = "" ] && export BOOTMESSAGE=$(mktemp /tmp/bootmessage.XXXX) -[ "${OPTIONSBOOTMESSAGE}" = "" ] && export OPTIONSBOOTMESSAGE=$(mktemp /tmp/optionsbootmessage.XXXX) -export USEKERNEL=${VERSION} -# begin script -# create default -echo ":: Creating pxelinux default config file ..." -mkdir -p ${INSTALLDIR}/pxelinux.cfg -if [ "${PXELINUX_DEFAULT}" = "" ]; then - [ -e ${INSTALLDIR}/pxelinux.cfg/default ] && rm ${INSTALLDIR}/pxelinux.cfg/default - echo "prompt ${PROMPT}" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "timeout ${TIMEOUT}" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "display boot.msg" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "F1 boot.msg" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "F2 options.msg" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "default parabola" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "label parabola" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "kernel vmlinuz" >> ${INSTALLDIR}/pxelinux.cfg/default - echo "append initrd=initrd.img ${KERNEL_BOOT_OPTIONS}" >> ${INSTALLDIR}/pxelinux.cfg/default -else - sed "s|@@PROMPT@@|${PROMPT}|g;s|@@TIMEOUT@@|${TIMEOUT}|g;s|@@KERNEL_BOOT_OPTIONS@@|${KERNEL_BOOT_OPTIONS}|g" \ - ${PXELINUX_DEFAULT} > ${INSTALLDIR}/pxelinux.cfg/default -fi -[ ! -s ${INSTALLDIR}/pxelinux.cfg/default ] && echo "No pxelinux default config found" && exit 1 -echo ":: Calling mkinitcpio CONFIG=${MKINITCPIO_CONFIG} KERNEL=${VERSION} ..." -# generate initramdisk -echo ":: Creating initramdisk ..." - mkinitcpio -c ${MKINITCPIO_CONFIG} -k ${VERSION} -g ${INSTALLDIR}/initrd.img -echo ":: Using ${KERNEL} as image kernel ..." - install -m644 ${KERNEL} ${INSTALLDIR}/vmlinuz -echo ":: Installing message files to ${INSTALLDIR} ..." - install -m644 ${BOOTMESSAGE} ${INSTALLDIR}/boot.msg - install -m644 ${OPTIONSBOOTMESSAGE} ${INSTALLDIR}/options.msg - [ ! -s ${INSTALLDIR}/boot.msg ] && echo 'ERROR:no boot.msg found, aborting!' && exit 1 - [ ! -s ${INSTALLDIR}/options.msg ] && echo 'ERROR:no options.msg found, aborting!' && exit 1 -echo ":: Installing PXELINUX to ${INSTALLDIR} ..." - install -m644 /usr/lib/syslinux/bios/pxelinux.0 ${INSTALLDIR}/pxelinux.0 && echo "Installation completed." diff --git a/libre/mkpxelinux/mkpxelinux.conf b/libre/mkpxelinux/mkpxelinux.conf deleted file mode 100644 index 55aba8247..000000000 --- a/libre/mkpxelinux/mkpxelinux.conf +++ /dev/null @@ -1,37 +0,0 @@ -# Created by Tobias Powalowski -# Rebranded for Parabola by André Silva -# config file of mkpxelinux - -# DEFAULT kernel boot options like ip=:::::eth0:dhcp etc. -# add your root= option, if you boot from a disk device -# and don't want to add it by hand on each boot -KERNEL_BOOT_OPTIONS="" - -# mkinitcpio config file, defaulted to stock config file -MKINITCPIO_CONFIG="/etc/mkinitcpio.conf" - -# kernel version, defaulted to build for runtime kernel -VERSION="$(uname -r)" - -# kernel image, defaulted to stock libre kernel -KERNEL="/boot/vmlinuz-linux-libre" - -# boot message files -BOOTMESSAGE="/usr/share/mkpxelinux/boot.msg" -OPTIONSBOOTMESSAGE="/usr/share/mkpxelinux/options.msg" - -#pxelinux default config file to use -PXELINUX_DEFAULT="" - -# Prompt on boot, 1=yes 0=no -PROMPT="1" - -# Timeout, 30 seconds to fix usb keyboard issues -# 0 means wait for prompt -TIMEOUT="300" - -# Installdir of tftp, default location -INSTALLDIR="/var/tftpboot" - -# Nfsrootdir, for hooks that might need it -NFSROOTDIR="" diff --git a/libre/mkpxelinux/options.msg b/libre/mkpxelinux/options.msg deleted file mode 100644 index 16c6b2eda..000000000 --- a/libre/mkpxelinux/options.msg +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------------------------------------------- -Parabola GNU/Linux-libre options and troubleshooting: - -- If your system hangs during the boot process, any combinations of the - boot options noapic acpi=off pci=routeirq nosmp nomsi may be useful. ------------------------------------------------------------------------------- diff --git a/libre/mksyslinux-parabola/PKGBUILD b/libre/mksyslinux-parabola/PKGBUILD new file mode 100644 index 000000000..0369ebbc2 --- /dev/null +++ b/libre/mksyslinux-parabola/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 187120 2013-06-04 06:46:39Z tpowa $ +# Maintainer (Arch): Tobias Powalowski + +_pkgname=mksyslinux +pkgname=mksyslinux-parabola +pkgver=2013.06 +pkgrel=1 +pkgdesc="Advanced, modular syslinux boot image creation utility (Parabola rebranded)" +arch=(any) +license=('GPL') +url="https://parabolagnulinux.org/" +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +depends=('mkinitcpio' 'syslinux' 'pciutils') +backup=(etc/mksyslinux.conf) +source=('boot.msg' 'mksyslinux' 'mksyslinux.conf' 'options.msg') + +package() +{ + cd "$srcdir/" + install -D -m755 mksyslinux "$pkgdir/usr/bin/mksyslinux" + install -D -m644 mksyslinux.conf "$pkgdir/etc/mksyslinux.conf" + install -D -m644 boot.msg "$pkgdir/usr/share/mksyslinux/boot.msg" + install -D -m644 options.msg "$pkgdir/usr/share/mksyslinux/options.msg" +} +md5sums=('e9836ac2bbb436ca3a13bfbe9cc5c19a' + '0a9fd93356b5d98ab386f28bc849b808' + 'c702b0b41ae7f58e9b08b53f3b6b0961' + 'ae0007d6679b5a575b2a9e5ac3664baf') diff --git a/libre/mksyslinux-parabola/boot.msg b/libre/mksyslinux-parabola/boot.msg new file mode 100644 index 000000000..2cfe24d42 --- /dev/null +++ b/libre/mksyslinux-parabola/boot.msg @@ -0,0 +1,15 @@ + + +------------------------------------------------------------------------------ +Parabola GNU/Linux-libre +SYSLINUX BOOT +created with 'mksyslinux' by Tobias Powalowski +rebranded for Parabola by André Silva + +Press ENTER or type 'parabola' to boot image. + +If you wish to change your defaults to boot into your existing system, +type 'vmlinuz initrd=initrd.img ' +Use the F2 key for troubleshooting and options. +------------------------------------------------------------------------------ + diff --git a/libre/mksyslinux-parabola/mksyslinux b/libre/mksyslinux-parabola/mksyslinux new file mode 100755 index 000000000..96ad45133 --- /dev/null +++ b/libre/mksyslinux-parabola/mksyslinux @@ -0,0 +1,144 @@ +#! /bin/sh +# Created by Tobias Powalowski +# Settings +APPNAME=$(basename "${0}") +CONFIG="/etc/mksyslinux.conf" +export TEMPDIR=$(mktemp /tmp/mksyslinux.XXX) +TMPDIR=$(mktemp -d /tmp/mksyslinux-image.XXX) +BOOTDIRNAME=boot/syslinux + +usage () +{ + echo "${APPNAME}: usage" + echo "WRITING TO DEVICE:" + echo "- PREPARATION: Your device must have a bootable first partition in FAT16 format!" + echo "- ATTENTION: The MBR of your DEVICE will be overwritten! You have been warned!" + echo "" + echo "CREATING AN IMAGE FILE:" + echo "- For creating an image file use the -i=IMAGEFILE switch" + echo "- use 'dd if= of=' to write to your device afterwards." + echo "" + echo "PARAMETERS:" + echo " -d=DEVICE Your DEVICE first partition from /dev/xxx tree to install" + echo " -i=IMAGENAME Your IMAGENAME" + echo " -c=CONFIG Use CONFIG file. default: /etc/mksyslinux.conf" + echo " -h This message." + exit 1 +} + +[ "$1" == "" ] && usage && exit 1 + + +while [ $# -gt 0 ]; do + case $1 in + -c=*|--c=*) CONFIG="$(echo $1 | awk -F= '{print $2;}')" ;; + -d=*|--d=*) DEVICE="$(echo $1 | awk -F= '{print $2;}')" ;; + -i=*|--i=*) IMAGENAME="$(echo $1 | awk -F= '{print $2;}')" ;; + -h|--h|?) usage ;; + *) usage ;; + esac + shift +done + +if [ ! -f "${CONFIG}" ]; then + echo "config file '${CONFIG}' cannot be found, aborting..." + exit 1 +fi + +if [ "${IMAGENAME}" = "" ]; then + if [ "${DEVICE}" = "" ]; then + echo "ERROR: No DEVICE name specified, please use the -d option" + exit 1 + fi +fi + +if ! [ $UID -eq 0 ]; then + echo "ERROR: only works when run as root!" + exit 1 +fi + +. "${CONFIG}" +# export for mkinitcpio +[ -n "${APPENDBOOTMESSAGE}" ] && export APPENDBOOTMESSAGE +[ -n "${APPENDBOOTMESSAGE_SYSLINUX}" ] && export APPENDBOOTMESSAGE_SYSLINUX +[ -n "${APPENDOPTIONSBOOTMESSAGE}" ] && export APPENDOPTIONSBOOTMESSAGE + +MBRDEVICE="$(echo ${DEVICE} | sed -e 's/[0-9]//g')" + +export RUNPROGRAM="${APPNAME}" +[ "${BOOTMESSAGE}" = "" ] && export BOOTMESSAGE=$(mktemp /tmp/bootmessage.XXXX) +[ "${OPTIONSBOOTMESSAGE}" = "" ] && export OPTIONSBOOTMESSAGE=$(mktemp /tmp/optionsbootmessage.XXXX) +export USEKERNEL=${VERSION} +# begin script +[ -e ${TEMPDIR} ] && rm -r ${TEMPDIR} +mkdir -p ${TEMPDIR} +echo ":: Mounting ${DEVICE} ..." +if ! [ "${IMAGENAME}" = "" ]; then + modprobe loop +else + mount ${DEVICE} ${TEMPDIR} || exit 1 +fi +mkdir -p ${TEMPDIR}/${BOOTDIRNAME} +# prepare syslinux bootloader +install -m755 /usr/lib/syslinux/isolinux.bin ${TEMPDIR}/${BOOTDIRNAME}/isolinux.bin +for i in /usr/lib/syslinux/*.c32; do + install -m644 $i ${TEMPDIR}/${BOOTDIRNAME}/$(basename $i) +done +install -m644 /usr/share/hwdata/pci.ids ${TEMPDIR}/${BOOTDIRNAME}/pci.ids + +# create syslinux.cfg +echo ":: Creating syslinux.cfg ..." +if [ "${SYSLINUXCFG}" = "" ]; then + [ -e ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && rm ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "prompt ${PROMPT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "timeout ${TIMEOUT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "display boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "F1 boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "F2 options.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "default parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "label parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "kernel /boot/vmlinuz" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg + echo "append initrd=/boot/initrd.img ${KERNEL_BOOT_OPTIONS}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg +else + sed "s|@@PROMPT@@|${PROMPT}|g;s|@@TIMEOUT@@|${TIMEOUT}|g;s|@@KERNEL_BOOT_OPTIONS@@|${KERNEL_BOOT_OPTIONS}|g" \ + ${SYSLINUXCFG} > ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg +fi +[ ! -s ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && echo "No syslinux.cfg found" && exit 1 +echo ":: Calling mkinitcpio CONFIG=${MKINITCPIO_CONFIG} KERNEL=${VERSION} ..." +# generate initramdisk +echo ":: Creating initramdisk ..." + mkinitcpio -c ${MKINITCPIO_CONFIG} -k ${VERSION} -g ${TEMPDIR}/boot/initrd.img +echo ":: Using ${KERNEL} as image kernel ..." + install -m644 ${KERNEL} ${TEMPDIR}/boot/vmlinuz + install -m644 ${BOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/boot.msg + install -m644 ${OPTIONSBOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/options.msg + [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/boot.msg ] && echo 'ERROR:no boot.msg found, aborting!' && exit 1 + [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/options.msg ] && echo 'ERROR:no options.msg found, aborting!' && exit 1 +if ! [ "${IMAGENAME}" = "" ]; then + # ext2 overhead's upper bound is 6% + # empirically tested up to 1GB + rootsize=$(du -bs ${TEMPDIR}|cut -f1) + IMGSZ=$(( (${rootsize}*106)/100/512 + 1)) # image size in sectors + # create the filesystem image file + dd if=/dev/zero of="${IMAGENAME}" bs=512 count="${IMGSZ}" + # create a filesystem on the image + mkfs.vfat "${IMAGENAME}" + mount -o loop ${IMAGENAME} ${TMPDIR} || exit 1 + cp -r "${TEMPDIR}"/* "$TMPDIR" + umount ${TMPDIR} +else + echo ":: Unmounting ${DEVICE} ..." + umount ${TEMPDIR} || exit 1 +fi +if ! [ "${IMAGENAME}" = "" ]; then + echo ":: Installing SYSLINUX on ${IMAGENAME} ..." + syslinux ${IMAGENAME} && echo "Installation completed." +else + echo ":: Installing MBR on ${MBRDEVICE} ..." + cat ${MBR} > ${MBRDEVICE} + echo ":: Installing SYSLINUX on ${DEVICE} ..." + syslinux -t offset ${DEVICE} && echo "Installation completed." +fi +# clean /tmp +rm -r ${TEMPDIR} +! [ ${IMAGENAME} = "" ] && rm -r ${TMPDIR} diff --git a/libre/mksyslinux-parabola/mksyslinux.conf b/libre/mksyslinux-parabola/mksyslinux.conf new file mode 100644 index 000000000..a7d032295 --- /dev/null +++ b/libre/mksyslinux-parabola/mksyslinux.conf @@ -0,0 +1,34 @@ +# Created by Tobias Powalowski +# Rebranded for Parabola by André Silva +# config file of mksyslinux + +# DEFAULT kernel boot options like root=/dev/sda3 etc. +# add your root= option, if you boot from a disk device +# and don't want to add it by hand on each boot +KERNEL_BOOT_OPTIONS="" + +# mkinitcpio config file, defaulted to stock config file +MKINITCPIO_CONFIG="/etc/mkinitcpio.conf" + +# kernel version, defaulted to build for runtime kernel +VERSION="$(uname -r)" + +# kernel image, defaulted to stock libre kernel +KERNEL="/boot/vmlinuz-linux-libre" + +# boot message files +BOOTMESSAGE="/usr/share/mksyslinux/boot.msg" +OPTIONSBOOTMESSAGE="/usr/share/mksyslinux/options.msg" + +# syslinux.cfg file to use +SYSLINUXCFG="" + +# Prompt on boot, 1=yes 0=no +PROMPT="1" + +# Timeout, 30 seconds to fix usb keyboard issues +# 0 means wait for prompt +TIMEOUT="300" + +# default MBR +MBR="/usr/lib/syslinux/mbr.bin" diff --git a/libre/mksyslinux-parabola/options.msg b/libre/mksyslinux-parabola/options.msg new file mode 100644 index 000000000..16c6b2eda --- /dev/null +++ b/libre/mksyslinux-parabola/options.msg @@ -0,0 +1,6 @@ +------------------------------------------------------------------------------ +Parabola GNU/Linux-libre options and troubleshooting: + +- If your system hangs during the boot process, any combinations of the + boot options noapic acpi=off pci=routeirq nosmp nomsi may be useful. +------------------------------------------------------------------------------ diff --git a/libre/mksyslinux/PKGBUILD b/libre/mksyslinux/PKGBUILD deleted file mode 100644 index 4628c66e6..000000000 --- a/libre/mksyslinux/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 187120 2013-06-04 06:46:39Z tpowa $ -# Maintainer (Arch): Tobias Powalowski - -pkgname=mksyslinux -pkgver=2013.06 -pkgrel=1.1 -pkgdesc="Advanced, modular syslinux boot image creation utility (Parabola rebranded)" -arch=(any) -license=('GPL') -url="https://parabolagnulinux.org/" -depends=('mkinitcpio' 'syslinux' 'pciutils') -backup=(etc/mksyslinux.conf) -source=('boot.msg' 'mksyslinux' 'mksyslinux.conf' 'options.msg') - -package() -{ - cd "$srcdir/" - install -D -m755 mksyslinux "$pkgdir/usr/bin/mksyslinux" - install -D -m644 mksyslinux.conf "$pkgdir/etc/mksyslinux.conf" - install -D -m644 boot.msg "$pkgdir/usr/share/mksyslinux/boot.msg" - install -D -m644 options.msg "$pkgdir/usr/share/mksyslinux/options.msg" -} -md5sums=('287aad9693ca8061495e248c41ba43a7' - '0a9fd93356b5d98ab386f28bc849b808' - '15742e47e40a46491694b4b7680d4e38' - 'ae0007d6679b5a575b2a9e5ac3664baf') diff --git a/libre/mksyslinux/boot.msg b/libre/mksyslinux/boot.msg deleted file mode 100644 index 2cfe24d42..000000000 --- a/libre/mksyslinux/boot.msg +++ /dev/null @@ -1,15 +0,0 @@ - - ------------------------------------------------------------------------------- -Parabola GNU/Linux-libre -SYSLINUX BOOT -created with 'mksyslinux' by Tobias Powalowski -rebranded for Parabola by André Silva - -Press ENTER or type 'parabola' to boot image. - -If you wish to change your defaults to boot into your existing system, -type 'vmlinuz initrd=initrd.img ' -Use the F2 key for troubleshooting and options. ------------------------------------------------------------------------------- - diff --git a/libre/mksyslinux/mksyslinux b/libre/mksyslinux/mksyslinux deleted file mode 100755 index 96ad45133..000000000 --- a/libre/mksyslinux/mksyslinux +++ /dev/null @@ -1,144 +0,0 @@ -#! /bin/sh -# Created by Tobias Powalowski -# Settings -APPNAME=$(basename "${0}") -CONFIG="/etc/mksyslinux.conf" -export TEMPDIR=$(mktemp /tmp/mksyslinux.XXX) -TMPDIR=$(mktemp -d /tmp/mksyslinux-image.XXX) -BOOTDIRNAME=boot/syslinux - -usage () -{ - echo "${APPNAME}: usage" - echo "WRITING TO DEVICE:" - echo "- PREPARATION: Your device must have a bootable first partition in FAT16 format!" - echo "- ATTENTION: The MBR of your DEVICE will be overwritten! You have been warned!" - echo "" - echo "CREATING AN IMAGE FILE:" - echo "- For creating an image file use the -i=IMAGEFILE switch" - echo "- use 'dd if= of=' to write to your device afterwards." - echo "" - echo "PARAMETERS:" - echo " -d=DEVICE Your DEVICE first partition from /dev/xxx tree to install" - echo " -i=IMAGENAME Your IMAGENAME" - echo " -c=CONFIG Use CONFIG file. default: /etc/mksyslinux.conf" - echo " -h This message." - exit 1 -} - -[ "$1" == "" ] && usage && exit 1 - - -while [ $# -gt 0 ]; do - case $1 in - -c=*|--c=*) CONFIG="$(echo $1 | awk -F= '{print $2;}')" ;; - -d=*|--d=*) DEVICE="$(echo $1 | awk -F= '{print $2;}')" ;; - -i=*|--i=*) IMAGENAME="$(echo $1 | awk -F= '{print $2;}')" ;; - -h|--h|?) usage ;; - *) usage ;; - esac - shift -done - -if [ ! -f "${CONFIG}" ]; then - echo "config file '${CONFIG}' cannot be found, aborting..." - exit 1 -fi - -if [ "${IMAGENAME}" = "" ]; then - if [ "${DEVICE}" = "" ]; then - echo "ERROR: No DEVICE name specified, please use the -d option" - exit 1 - fi -fi - -if ! [ $UID -eq 0 ]; then - echo "ERROR: only works when run as root!" - exit 1 -fi - -. "${CONFIG}" -# export for mkinitcpio -[ -n "${APPENDBOOTMESSAGE}" ] && export APPENDBOOTMESSAGE -[ -n "${APPENDBOOTMESSAGE_SYSLINUX}" ] && export APPENDBOOTMESSAGE_SYSLINUX -[ -n "${APPENDOPTIONSBOOTMESSAGE}" ] && export APPENDOPTIONSBOOTMESSAGE - -MBRDEVICE="$(echo ${DEVICE} | sed -e 's/[0-9]//g')" - -export RUNPROGRAM="${APPNAME}" -[ "${BOOTMESSAGE}" = "" ] && export BOOTMESSAGE=$(mktemp /tmp/bootmessage.XXXX) -[ "${OPTIONSBOOTMESSAGE}" = "" ] && export OPTIONSBOOTMESSAGE=$(mktemp /tmp/optionsbootmessage.XXXX) -export USEKERNEL=${VERSION} -# begin script -[ -e ${TEMPDIR} ] && rm -r ${TEMPDIR} -mkdir -p ${TEMPDIR} -echo ":: Mounting ${DEVICE} ..." -if ! [ "${IMAGENAME}" = "" ]; then - modprobe loop -else - mount ${DEVICE} ${TEMPDIR} || exit 1 -fi -mkdir -p ${TEMPDIR}/${BOOTDIRNAME} -# prepare syslinux bootloader -install -m755 /usr/lib/syslinux/isolinux.bin ${TEMPDIR}/${BOOTDIRNAME}/isolinux.bin -for i in /usr/lib/syslinux/*.c32; do - install -m644 $i ${TEMPDIR}/${BOOTDIRNAME}/$(basename $i) -done -install -m644 /usr/share/hwdata/pci.ids ${TEMPDIR}/${BOOTDIRNAME}/pci.ids - -# create syslinux.cfg -echo ":: Creating syslinux.cfg ..." -if [ "${SYSLINUXCFG}" = "" ]; then - [ -e ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && rm ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "prompt ${PROMPT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "timeout ${TIMEOUT}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "display boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "F1 boot.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "F2 options.msg" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "default parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "label parabola" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "kernel /boot/vmlinuz" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg - echo "append initrd=/boot/initrd.img ${KERNEL_BOOT_OPTIONS}" >> ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg -else - sed "s|@@PROMPT@@|${PROMPT}|g;s|@@TIMEOUT@@|${TIMEOUT}|g;s|@@KERNEL_BOOT_OPTIONS@@|${KERNEL_BOOT_OPTIONS}|g" \ - ${SYSLINUXCFG} > ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg -fi -[ ! -s ${TEMPDIR}/${BOOTDIRNAME}/syslinux.cfg ] && echo "No syslinux.cfg found" && exit 1 -echo ":: Calling mkinitcpio CONFIG=${MKINITCPIO_CONFIG} KERNEL=${VERSION} ..." -# generate initramdisk -echo ":: Creating initramdisk ..." - mkinitcpio -c ${MKINITCPIO_CONFIG} -k ${VERSION} -g ${TEMPDIR}/boot/initrd.img -echo ":: Using ${KERNEL} as image kernel ..." - install -m644 ${KERNEL} ${TEMPDIR}/boot/vmlinuz - install -m644 ${BOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/boot.msg - install -m644 ${OPTIONSBOOTMESSAGE} ${TEMPDIR}/${BOOTDIRNAME}/options.msg - [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/boot.msg ] && echo 'ERROR:no boot.msg found, aborting!' && exit 1 - [ ! -s ${TEMPDIR}/${BOOTDIRNAME}/options.msg ] && echo 'ERROR:no options.msg found, aborting!' && exit 1 -if ! [ "${IMAGENAME}" = "" ]; then - # ext2 overhead's upper bound is 6% - # empirically tested up to 1GB - rootsize=$(du -bs ${TEMPDIR}|cut -f1) - IMGSZ=$(( (${rootsize}*106)/100/512 + 1)) # image size in sectors - # create the filesystem image file - dd if=/dev/zero of="${IMAGENAME}" bs=512 count="${IMGSZ}" - # create a filesystem on the image - mkfs.vfat "${IMAGENAME}" - mount -o loop ${IMAGENAME} ${TMPDIR} || exit 1 - cp -r "${TEMPDIR}"/* "$TMPDIR" - umount ${TMPDIR} -else - echo ":: Unmounting ${DEVICE} ..." - umount ${TEMPDIR} || exit 1 -fi -if ! [ "${IMAGENAME}" = "" ]; then - echo ":: Installing SYSLINUX on ${IMAGENAME} ..." - syslinux ${IMAGENAME} && echo "Installation completed." -else - echo ":: Installing MBR on ${MBRDEVICE} ..." - cat ${MBR} > ${MBRDEVICE} - echo ":: Installing SYSLINUX on ${DEVICE} ..." - syslinux -t offset ${DEVICE} && echo "Installation completed." -fi -# clean /tmp -rm -r ${TEMPDIR} -! [ ${IMAGENAME} = "" ] && rm -r ${TMPDIR} diff --git a/libre/mksyslinux/mksyslinux.conf b/libre/mksyslinux/mksyslinux.conf deleted file mode 100644 index a7d032295..000000000 --- a/libre/mksyslinux/mksyslinux.conf +++ /dev/null @@ -1,34 +0,0 @@ -# Created by Tobias Powalowski -# Rebranded for Parabola by André Silva -# config file of mksyslinux - -# DEFAULT kernel boot options like root=/dev/sda3 etc. -# add your root= option, if you boot from a disk device -# and don't want to add it by hand on each boot -KERNEL_BOOT_OPTIONS="" - -# mkinitcpio config file, defaulted to stock config file -MKINITCPIO_CONFIG="/etc/mkinitcpio.conf" - -# kernel version, defaulted to build for runtime kernel -VERSION="$(uname -r)" - -# kernel image, defaulted to stock libre kernel -KERNEL="/boot/vmlinuz-linux-libre" - -# boot message files -BOOTMESSAGE="/usr/share/mksyslinux/boot.msg" -OPTIONSBOOTMESSAGE="/usr/share/mksyslinux/options.msg" - -# syslinux.cfg file to use -SYSLINUXCFG="" - -# Prompt on boot, 1=yes 0=no -PROMPT="1" - -# Timeout, 30 seconds to fix usb keyboard issues -# 0 means wait for prompt -TIMEOUT="300" - -# default MBR -MBR="/usr/lib/syslinux/mbr.bin" diff --git a/libre/mksyslinux/options.msg b/libre/mksyslinux/options.msg deleted file mode 100644 index 16c6b2eda..000000000 --- a/libre/mksyslinux/options.msg +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------------------------------------------- -Parabola GNU/Linux-libre options and troubleshooting: - -- If your system hangs during the boot process, any combinations of the - boot options noapic acpi=off pci=routeirq nosmp nomsi may be useful. ------------------------------------------------------------------------------- diff --git a/libre/mplayer-libre-vaapi/PKGBUILD b/libre/mplayer-libre-vaapi/PKGBUILD deleted file mode 100644 index ff52cad64..000000000 --- a/libre/mplayer-libre-vaapi/PKGBUILD +++ /dev/null @@ -1,101 +0,0 @@ -# $Id: PKGBUILD 116440 2014-07-27 19:03:01Z foutrelis $ -# Maintainer (Arch): Evangelos Foutras -# Contributor (Arch): Ionut Biru -# Contributor (Arch): Hugo Doria -# Maintainer: André Silva -# Contributor: Nicolás Reynolds -# Contributor: Márcio Silva - -_pkgname=mplayer-vaapi -pkgname=mplayer-libre-vaapi -pkgver=36265 -pkgrel=12 -pkgdesc="A movie player, compiled with vaapi support, without nonfree faac support" -arch=('i686' 'x86_64') -url="http://gitorious.org/vaapi/mplayer" -license=('GPL') -depends=('libxxf86dga' 'libxxf86vm' 'libmad' 'libcdio-paranoia' 'libxinerama' - 'lame' 'fontconfig' 'libtheora' 'xvidcore' 'libmng' 'libxss' 'glu' - 'sdl' 'smbclient' 'aalib' 'jack' 'libcaca' 'speex' 'faad2' - 'lirc-utils' 'ttf-dejavu' 'libxvmc' 'enca' 'opencore-amr' 'libdca' - 'a52dec' 'schroedinger' 'mpg123' 'libvpx' 'libpulse' 'fribidi' 'opus' - 'libbluray' 'libva' 'libass' 'desktop-file-utils') -makedepends=('unzip' 'live-media' 'yasm' 'ladspa' 'git' 'mesa' 'x264') -provides=("mplayer=$pkgver" "mplayer-vaapi=$pkgver" 'mplayer-vaapi-libre') -conflicts=('mplayer' 'mplayer-vaapi' 'mplayer-vaapi-libre') -replaces=('mplayer-vaapi' 'mplayer-vaapi-libre') -backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf') -source=(http://pkgbuild.com/~foutrelis/sources/$_pkgname/$_pkgname-$pkgver.tar.xz{,.sig} - cdio-includes.patch - tweak-desktop-file.patch - subreader-fix-srt-parsing.patch - include-samba-4.0.patch) -options=('!buildflags' '!emptydirs') -install=mplayer-vaapi.install -sha256sums=('5747c28c30c15d1000fb655a8abaa4b22483746d0e82775b27466948ae0c549a' - 'SKIP' - '72e6c654f9733953ad2466d0ea1a52f23e753791d8232d90f13293eb1b358720' - '5a09fb462729a4e573568f9e8c1f57dbe7f69c0b68cfa4f6d70b3e52c450d93b' - '8b6cd325d89ff8bce3662c6aaa9b61b8e6163c6574e09b575426a1eed02b8ad3' - '169eb47b3b838ea95e50c871bdbbfb6fe0b9349b054da830f55f3b4d5055e4f3') - - -prepare() { - cd "$srcdir/$_pkgname-$pkgver" - - patch -Np0 -i "$srcdir/cdio-includes.patch" - patch -d etc -Np0 -i "$srcdir/tweak-desktop-file.patch" - - # http://bugzilla.mplayerhq.hu/show_bug.cgi?id=2139 - patch -Np0 -i "$srcdir/subreader-fix-srt-parsing.patch" - - # https://bugs.archlinux.org/task/41588 - patch -Np1 -i "$srcdir/include-samba-4.0.patch" -} - -build() { - cd "$srcdir/$_pkgname-$pkgver" - - ./configure \ - --prefix=/usr \ - --enable-runtime-cpudetection \ - --disable-gui \ - --disable-arts \ - --disable-gif \ - --disable-liblzo \ - --enable-speex \ - --disable-cdparanoia \ - --disable-openal \ - --disable-libdv \ - --disable-musepack \ - --disable-esd \ - --disable-mga \ - --disable-ass-internal \ - --disable-faac \ - --enable-xvmc \ - --enable-radio \ - --enable-radio-capture \ - --enable-smb \ - --disable-vdpau \ - --enable-vaapi \ - --language=all \ - --confdir=/etc/mplayer - - [[ $CARCH == i686 ]] && sed -i 's|-march=i486|-march=i686|g' config.mak - - make -} - -package() { - cd "$srcdir/$_pkgname-$pkgver" - - make DESTDIR="$pkgdir" install-mplayer install-mplayer-man - install -Dm644 etc/{codecs.conf,input.conf,example.conf} "$pkgdir/etc/mplayer/" - install -Dm644 etc/mplayer.desktop "$pkgdir/usr/share/applications/mplayer.desktop" - install -d "$pkgdir/usr/share/mplayer/" - ln -s /usr/share/fonts/TTF/DejaVuSans.ttf "$pkgdir/usr/share/mplayer/subfont.ttf" - rm -rf "$pkgdir/usr/share/mplayer/font" - install -Dm644 etc/mplayer256x256.png "$pkgdir/usr/share/pixmaps/mplayer.png" -} - -# vim:set ts=2 sw=2 et: diff --git a/libre/mplayer-libre-vaapi/cdio-includes.patch b/libre/mplayer-libre-vaapi/cdio-includes.patch deleted file mode 100644 index 894650717..000000000 --- a/libre/mplayer-libre-vaapi/cdio-includes.patch +++ /dev/null @@ -1,43 +0,0 @@ -Index: configure -=================================================================== ---- configure (revision 35421) -+++ configure (working copy) -@@ -5968,8 +5968,8 @@ - cat > $TMPC << EOF - #include - #include --#include --#include -+#include -+#include - int main(void) { - void *test = cdda_verbose_set; - printf("%s\n", CDIO_VERSION); -Index: gui/win32/interface.c -=================================================================== ---- gui/win32/interface.c (revision 35421) -+++ gui/win32/interface.c (working copy) -@@ -24,7 +24,7 @@ - #include "config.h" - - #if defined(CONFIG_LIBCDIO) --#include -+#include - #elif defined(CONFIG_CDDA) - #include - #endif -Index: stream/stream_cdda.c -=================================================================== ---- stream/stream_cdda.c (revision 35421) -+++ stream/stream_cdda.c (working copy) -@@ -21,8 +21,8 @@ - #include - #include - #else --#include --#include -+#include -+#include - #endif - #include - #include diff --git a/libre/mplayer-libre-vaapi/include-samba-4.0.patch b/libre/mplayer-libre-vaapi/include-samba-4.0.patch deleted file mode 100644 index 2ed272b6a..000000000 --- a/libre/mplayer-libre-vaapi/include-samba-4.0.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -rupN a/stream/stream_smb.c b/stream/stream_smb.c ---- a/stream/stream_smb.c 2013-03-16 13:38:34.000000000 +0000 -+++ b/stream/stream_smb.c 2013-10-31 20:05:32.473947926 +0000 -@@ -18,7 +18,7 @@ - - #include "config.h" - --#include -+#include - #include - - #include "mp_msg.h" diff --git a/libre/mplayer-libre-vaapi/mplayer-vaapi.install b/libre/mplayer-libre-vaapi/mplayer-vaapi.install deleted file mode 100644 index a44f19aef..000000000 --- a/libre/mplayer-libre-vaapi/mplayer-vaapi.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - update-desktop-database -q -} -post_upgrade() { - post_install -} -post_remove() { - post_install -} - -# vim:set ts=2 sw=2 et: diff --git a/libre/mplayer-libre-vaapi/subreader-fix-srt-parsing.patch b/libre/mplayer-libre-vaapi/subreader-fix-srt-parsing.patch deleted file mode 100644 index f1c087377..000000000 --- a/libre/mplayer-libre-vaapi/subreader-fix-srt-parsing.patch +++ /dev/null @@ -1,40 +0,0 @@ -Index: sub/subreader.c -=================================================================== ---- sub/subreader.c (revision 36284) -+++ sub/subreader.c (revision 36285) -@@ -378,14 +378,14 @@ - int h1, m1, s1, ms1, h2, m2, s2, ms2, j = 0; - - while (!current->text[0]) { -- char line[LINE_LEN + 1], full_line[LINE_LEN + 1], sep; -+ char line[LINE_LEN + 1], full_line[LINE_LEN + 1]; - int i; - - /* Parse SubRip header */ - if (!stream_read_line(st, line, LINE_LEN, utf16)) - return NULL; -- if (sscanf(line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d", -- &h1, &m1, &s1, &sep, &ms1, &h2, &m2, &s2, &sep, &ms2) < 10) -+ if (sscanf(line, "%d:%d:%d%*[,.:]%d --> %d:%d:%d%*[,.:]%d", -+ &h1, &m1, &s1, &ms1, &h2, &m2, &s2, &ms2) < 8) - continue; - - current->start = h1 * 360000 + m1 * 6000 + s1 * 100 + ms1 / 10; -@@ -442,7 +442,7 @@ - #endif - while (!current->text[0]) { - if (!stream_read_line (st, line, LINE_LEN, utf16)) return NULL; -- if ((len=sscanf (line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d",&a1,&a2,&a3,(char *)&i,&a4,&b1,&b2,&b3,(char *)&i,&b4)) < 10) -+ if ((len=sscanf (line, "%d:%d:%d%*[,.:]%d --> %d:%d:%d%*[,.:]%d",&a1,&a2,&a3,&a4,&b1,&b2,&b3,&b4)) < 8) - continue; - current->start = a1*360000+a2*6000+a3*100+a4/10; - current->end = b1*360000+b2*6000+b3*100+b4/10; -@@ -1123,7 +1123,7 @@ - {*uses_time=1;return SUB_MPL2;} - if (sscanf (line, "%d:%d:%d.%d,%d:%d:%d.%d", &i, &i, &i, &i, &i, &i, &i, &i)==8) - {*uses_time=1;return SUB_SUBRIP;} -- if (sscanf (line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d", &i, &i, &i, (char *)&i, &i, &i, &i, &i, (char *)&i, &i)==10) -+ if (sscanf (line, "%d:%d:%d%*[,.:]%d --> %d:%d:%d%*[,.:]%d", &i, &i, &i, &i, &i, &i, &i, &i)==8) - {*uses_time=1;return SUB_SUBVIEWER;} - if (sscanf (line, "{T %d:%d:%d:%d",&i, &i, &i, &i)==4) - {*uses_time=1;return SUB_SUBVIEWER2;} diff --git a/libre/mplayer-libre-vaapi/tweak-desktop-file.patch b/libre/mplayer-libre-vaapi/tweak-desktop-file.patch deleted file mode 100644 index 606e356b0..000000000 --- a/libre/mplayer-libre-vaapi/tweak-desktop-file.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- mplayer.desktop.orig 2012-07-08 22:18:27.000000000 +0300 -+++ mplayer.desktop 2012-07-08 22:19:08.000000000 +0300 -@@ -23,8 +23,9 @@ Comment[fr]=Lit les films et musiques - Comment[it]=Riproduce filmati e musica - Comment[ja]=動画や音声のファイルを再生します - Icon=mplayer --TryExec=gmplayer --Exec=gmplayer %F -+TryExec=mplayer -+Exec=mplayer -really-quiet %F - Terminal=false -+NoDisplay=true - Categories=GTK;AudioVideo;Audio;Video;Player;TV; - MimeType=application/mxf;application/x-netshow-channel;application/ogg;application/ram;application/vnd.rn-realmedia;application/x-shockwave-flash;application/smil;audio/ac3;audio/x-adpcm;audio/x-aiff;audio/AMR;audio/AMR-WB;audio/x-ape;audio/basic;audio/flac;audio/x-flac;audio/x-flac+ogg;audio/x-m4b;audio/x-matroska;audio/mp2;audio/mp4;audio/mpeg;audio/x-mpegurl;audio/x-ms-asx;audio/x-ms-wma;audio/x-musepack;audio/ogg;audio/vnd.rn-realaudio;audio/x-scpls;audio/x-voc;audio/x-vorbis+ogg;audio/x-wav;audio/x-wavpack;video/3gpp;video/3gpp2;video/dv;video/x-flic;video/x-flv;video/x-matroska;video/mp2t;video/mp4;video/mpeg;video/x-ms-asf;video/x-ms-wmv;video/x-msvideo;video/x-nsv;video/ogg;video/x-ogm+ogg;video/quicktime;video/vnd.rn-realvideo;video/x-theora+ogg;video/webm; diff --git a/libre/mplayer-libre/PKGBUILD b/libre/mplayer-libre/PKGBUILD deleted file mode 100644 index 50fa504c4..000000000 --- a/libre/mplayer-libre/PKGBUILD +++ /dev/null @@ -1,129 +0,0 @@ -# $Id: PKGBUILD 218200 2014-07-26 16:31:03Z bpiotrowski $ -# Maintainer (Arch): Ionut Biru -# Maintainer (Arch): Bartłomiej Piotrowski -# Contributor (Arch): Hugo Doria -# Maintainer: André Silva -# Contributor: Márcio Silva - -_pkgbase=mplayer -pkgbase=mplayer-libre -pkgname=('mplayer-libre' 'mencoder-libre') -pkgver=37224 -pkgrel=2 -arch=('i686' 'x86_64') -makedepends=( - 'libxxf86dga' 'libxxf86vm' 'libmad' 'libxinerama' 'sdl' 'lame' 'libtheora' - 'xvidcore' 'libmng' 'libxss' 'libgl' 'smbclient' 'aalib' 'jack' 'libcaca' - 'faad2' 'lirc-utils' 'libxvmc' 'enca' 'libvdpau' 'opencore-amr' - 'libdca' 'a52dec' 'schroedinger' 'libvpx' 'libpulse' 'fribidi' 'unzip' 'mesa' - 'live-media' 'yasm' 'git' 'fontconfig' 'mpg123' 'ladspa' 'libass' 'libbluray' - 'libcdio-paranoia' 'opus' 'subversion' 'x264' 'libx264' -) -license=('GPL') -url='http://www.mplayerhq.hu/' -options=('!buildflags' '!emptydirs') -source=($_pkgbase-$pkgver::svn://svn.mplayerhq.hu/mplayer/trunk#revision=$pkgver - http://ffmpeg.org/releases/ffmpeg-2.2.5.tar.bz2 - mplayer.desktop - cdio-includes.patch - include-samba-4.0.patch - giflib51.patch - revert-icl-fixes.patch) -md5sums=('SKIP' - 'a91dbd963f0ed16bf0eacaba98439d00' - '62f44a58f072b2b1a3c3d3e4976d64b3' - '7b5be7191aafbea64218dc4916343bbc' - '868a92bdef148df7f38bfa992b26ce9d' - '14461fb94b7aa5dda091ba4f737df2d9' - '3579402002b7302fdf2d146639333efd') - -pkgver() { - cd $_pkgbase-$pkgver - svnversion -} - -prepare() { - cd $_pkgbase-$pkgver - mv ../ffmpeg-2.2.5 ./ffmpeg - - patch -p0 -i ../cdio-includes.patch - patch -p1 -i ../include-samba-4.0.patch - patch -Np0 -i ../giflib51.patch - patch -Np0 -i ../revert-icl-fixes.patch - - ./version.sh -} - -build() { - cd $_pkgbase-$pkgver - - ./configure --prefix=/usr \ - --enable-runtime-cpudetection \ - --disable-gui \ - --disable-arts \ - --disable-liblzo \ - --disable-speex \ - --disable-openal \ - --disable-libdv \ - --disable-musepack \ - --disable-esd \ - --disable-mga \ - --disable-ass-internal \ - --disable-faac \ - --disable-cdparanoia \ - --enable-xvmc \ - --enable-radio \ - --enable-radio-capture \ - --enable-smb \ - --language=all \ - --confdir=/etc/mplayer - [[ "$CARCH" = "i686" ]] && sed 's|-march=i486|-march=i686|g' -i config.mak - - make -} - -package_mplayer-libre() { - pkgdesc='Media player for GNU/Linux, without nonfree faac support' - install=mplayer.install - backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf') - depends=( - 'desktop-file-utils' 'ttf-font' 'enca' 'libxss' 'a52dec' 'libvpx' - 'lirc-utils' 'libx264' 'libmng' 'libdca' 'aalib' 'lame' 'fontconfig' - 'libgl' 'libxinerama' 'libvdpau' 'libpulse' 'smbclient' 'xvidcore' - 'opencore-amr' 'jack' 'libmad' 'sdl' 'libtheora' 'libcaca' 'libxxf86dga' - 'fribidi' 'libjpeg' 'faad2' 'libxvmc' 'schroedinger' 'mpg123' - 'libass' 'libxxf86vm' 'libbluray' 'libcdio-paranoia' 'opus' - ) - provides=("mplayer=$pkgver") - replaces=('mplayer') - conflicts=('mplayer') - - cd $_pkgbase-$pkgver - make DESTDIR="$pkgdir" install-mplayer install-mplayer-man - - install -Dm644 etc/{codecs.conf,input.conf,example.conf} \ - "$pkgdir/etc/mplayer/" - - # desktop file (FS#14770) - install -Dm644 ../mplayer.desktop \ - "$pkgdir"/usr/share/applications/mplayer.desktop - install -Dm644 etc/mplayer256x256.png \ - "$pkgdir"/usr/share/pixmaps/mplayer.png -} - -package_mencoder-libre() { - pkgdesc='Free command line video decoding, encoding and filtering tool, without nonfree faac support' - depends=( - 'enca' 'a52dec' 'libvpx' 'libx264' 'libmng' 'libdca' 'bzip2' 'lame' - 'alsa-lib' 'fontconfig' 'giflib' 'libpng' 'smbclient' 'xvidcore' - 'opencore-amr' 'libmad' 'libtheora' 'fribidi' 'libjpeg' 'faad2' - 'schroedinger' 'mpg123' 'libass' 'libbluray' 'libcdio-paranoia' - 'libvorbis' 'opus' - ) - provides=("mencoder=$pkgver") - replaces=('mencoder') - conflicts=('mencoder') - - make -C $_pkgbase-$pkgver DESTDIR="$pkgdir" install-mencoder install-mencoder-man - find "$pkgdir"/usr/share/man -name mplayer.1 -exec rename mplayer.1 mencoder.1 {} + -} diff --git a/libre/mplayer-libre/cdio-includes.patch b/libre/mplayer-libre/cdio-includes.patch deleted file mode 100644 index f71472812..000000000 --- a/libre/mplayer-libre/cdio-includes.patch +++ /dev/null @@ -1,43 +0,0 @@ -Index: configure -=================================================================== ---- configure (revision 35421) -+++ configure (working copy) -@@ -5968,8 +5968,8 @@ - cat > $TMPC << EOF - #include - #include --#include --#include -+#include -+#include - int main(void) { - void *test = cdda_verbose_set; - printf("%s\n", CDIO_VERSION); -Index: gui/win32/interface.c -=================================================================== ---- gui/win32/interface.c (revision 35421) -+++ gui/win32/interface.c (working copy) -@@ -24,7 +24,7 @@ - #include "config.h" - - #if defined(CONFIG_LIBCDIO) --#include -+#include - #elif defined(CONFIG_CDDA) - #include - #endif -Index: stream/stream_cdda.c -=================================================================== ---- stream/stream_cdda.c (revision 35421) -+++ stream/stream_cdda.c (working copy) -@@ -21,8 +21,8 @@ - #include - #include - #else --#include --#include -+#include -+#include - #endif - #include - #include diff --git a/libre/mplayer-libre/giflib51.patch b/libre/mplayer-libre/giflib51.patch deleted file mode 100644 index e884b39f1..000000000 --- a/libre/mplayer-libre/giflib51.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- libvo/vo_gif89a.c.orig 2014-06-11 10:06:29.243216331 +0000 -+++ libvo/vo_gif89a.c 2014-06-11 10:08:37.346078847 +0000 -@@ -75,6 +75,9 @@ - #define MakeMapObject GifMakeMapObject - #define FreeMapObject GifFreeMapObject - #define QuantizeBuffer GifQuantizeBuffer -+#if defined GIFLIB_MINOR && GIFLIB_MINOR >= 1 -+#define EGifCloseFile(a) EGifCloseFile(a, NULL) -+#endif - #endif - - // how many frames per second we are aiming for during output. ---- libmpdemux/demux_gif.c.orig 2014-06-11 10:46:48.120883788 +0000 -+++ libmpdemux/demux_gif.c 2014-06-11 10:47:28.290732272 +0000 -@@ -50,6 +50,9 @@ - #define DGifOpenFileHandle(a) DGifOpenFileHandle(a, NULL) - #define GifError() (gif ? gif->Error : 0) - #define GifErrorString() GifErrorString(gif->Error) -+#if defined GIFLIB_MINOR && GIFLIB_MINOR >= 1 -+#define DGifCloseFile(a) DGifCloseFile(a, NULL) -+#endif - #endif - - /* >= 4.2 prior GIFLIB did not have MAJOR/MINOR defines */ diff --git a/libre/mplayer-libre/include-samba-4.0.patch b/libre/mplayer-libre/include-samba-4.0.patch deleted file mode 100644 index 2ed272b6a..000000000 --- a/libre/mplayer-libre/include-samba-4.0.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -rupN a/stream/stream_smb.c b/stream/stream_smb.c ---- a/stream/stream_smb.c 2013-03-16 13:38:34.000000000 +0000 -+++ b/stream/stream_smb.c 2013-10-31 20:05:32.473947926 +0000 -@@ -18,7 +18,7 @@ - - #include "config.h" - --#include -+#include - #include - - #include "mp_msg.h" diff --git a/libre/mplayer-libre/mplayer.desktop b/libre/mplayer-libre/mplayer.desktop deleted file mode 100644 index 946b8e345..000000000 --- a/libre/mplayer-libre/mplayer.desktop +++ /dev/null @@ -1,22 +0,0 @@ -[Desktop Entry] -Type=Application -Name=MPlayer Media Player -Name[ca]=Reproductor multimèdia MPlayer -Name[pl]=MPlayer odtwarzacz multimedialny -GenericName=Multimedia player -Comment=Play movies and songs -Comment[ca]=Reproduïu vídeos i cançons -Comment[de]=Filme und Musik abspielen -Comment[es]=Reproduzca vídeos y canciones -Comment[fr]=Lecteur multimédia -Comment[it]=Lettore multimediale -Comment[zh]=多媒体播放器 -Comment[pl]=Odtwarzaj filmy i muzykę -Icon=mplayer -TryExec=mplayer -Exec=mplayer %F -Terminal=false -NoDisplay=true -Categories=GTK;AudioVideo;Audio;Video;Player;TV; -MimeType=application/ogg;application/x-ogg;application/sdp;application/smil;application/x-smil;application/streamingmedia;application/x-streamingmedia;application/vnd.rn-realmedia;application/vnd.rn-realmedia-vbr;audio/aac;audio/x-aac;audio/m4a;audio/x-m4a;audio/mp1;audio/x-mp1;audio/mp2;audio/x-mp2;audio/mp3;audio/x-mp3;audio/mpeg;audio/x-mpeg;audio/mpegurl;audio/x-mpegurl;audio/mpg;audio/x-mpg;audio/rn-mpeg;audio/scpls;audio/x-scpls;audio/vnd.rn-realaudio;audio/wav;audio/x-pn-windows-pcm;audio/x-realaudio;audio/x-pn-realaudio;audio/x-ms-wma;audio/x-pls;audio/x-wav;video/mpeg;video/x-mpeg;video/x-mpeg2;video/mp4;video/msvideo;video/x-msvideo;video/quicktime;video/vnd.rn-realvideo;video/x-ms-afs;video/x-ms-asf;video/x-ms-wmv;video/x-ms-wmx;video/x-ms-wvxvideo;video/x-avi;video/x-fli;video/x-flv;video/x-theora;video/x-matroska; -X-KDE-Protocols=http,ftp,smb diff --git a/libre/mplayer-libre/mplayer.install b/libre/mplayer-libre/mplayer.install deleted file mode 100644 index 660593cf5..000000000 --- a/libre/mplayer-libre/mplayer.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/mplayer-libre/mplayer.png b/libre/mplayer-libre/mplayer.png deleted file mode 100644 index 799769335..000000000 Binary files a/libre/mplayer-libre/mplayer.png and /dev/null differ diff --git a/libre/mplayer-libre/revert-icl-fixes.patch b/libre/mplayer-libre/revert-icl-fixes.patch deleted file mode 100644 index e5f049ff5..000000000 --- a/libre/mplayer-libre/revert-icl-fixes.patch +++ /dev/null @@ -1,66 +0,0 @@ -Index: libmpcodecs/vf_fspp.c -=================================================================== ---- libmpcodecs/vf_fspp.c (revision 37183) -+++ libmpcodecs/vf_fspp.c (revision 37181) -@@ -1598,10 +1598,6 @@ - - : "+S"(data), "+D"(output), "+c"(cnt), "=o"(temps) - : "d"(thr_adr) -- NAMED_CONSTRAINTS_ADD(ff_MM_FIX_0_707106781,MM_2,MM_FIX_1_414213562_A,MM_FIX_1_414213562,MM_FIX_0_382683433, -- ff_MM_FIX_0_541196100,MM_FIX_1_306562965,MM_FIX_0_847759065) -- NAMED_CONSTRAINTS_ADD(MM_FIX_0_566454497,MM_FIX_0_198912367,MM_FIX_2_613125930,MM_FIX_1_847759065, -- MM_FIX_1_082392200) - : "%"REG_a - ); - } -@@ -1871,8 +1867,6 @@ - - : "+S"(workspace), "+D"(output_adr), "+c"(cnt), "=o"(temps) - : "a"(output_stride*sizeof(short)) -- NAMED_CONSTRAINTS_ADD(MM_FIX_1_414213562_A,MM_FIX_2_613125930,MM_FIX_1_847759065,MM_FIX_1_082392200, -- MM_FIX_1_414213562,MM_DESCALE_RND) - : "%"REG_d - ); - } -@@ -1980,10 +1974,10 @@ - "movd (%%"REG_S",%%"REG_a",2), %%mm3 \n\t" //5 - "paddw %%mm4, %%mm1 \n\t" - -- "movq %%mm5, %3 \n\t" //t7 -+ "movq %%mm5, 0*8+%3 \n\t" //t7 - "punpcklbw %%mm7, %%mm3 \n\t" - -- "movq %%mm6, %4 \n\t" //t6 -+ "movq %%mm6, 1*8+%3 \n\t" //t6 - "movq %%mm2, %%mm4 \n\t" - - "movd (%%"REG_S"), %%mm5 \n\t" //3 -@@ -2029,7 +2023,7 @@ - "psubw %%mm1, %%mm5 \n\t" //d1 - "movq %%mm0, %%mm6 \n\t" - -- "movq %4, %%mm1 \n\t" -+ "movq 1*8+%3, %%mm1 \n\t" - "punpcklwd %%mm5, %%mm0 \n\t" - - "punpckhwd %%mm5, %%mm6 \n\t" -@@ -2053,7 +2047,7 @@ - "movq %%mm7, "DCTSIZE_S"*3*2(%%"REG_D") \n\t" - "psllw $2, %%mm3 \n\t" //t10 - -- "movq %3, %%mm2 \n\t" -+ "movq 0*8+%3, %%mm2 \n\t" - "psllw $2, %%mm4 \n\t" //t11 - - "pmulhw "MANGLE(MM_FIX_0_707106781)", %%mm4 \n\t" //z3 -@@ -2116,9 +2110,8 @@ - "dec %%"REG_c" \n\t" - "jnz 6b \n\t" - -- : "+S"(pixels), "+D"(data), "+c"(cnt), "=o"(temps), "=o"(temps[1]) -+ : "+S"(pixels), "+D"(data), "+c"(cnt), "=o"(temps) - : "a"(line_size) -- NAMED_CONSTRAINTS_ADD(ff_MM_FIX_0_707106781,ff_MM_FIX_0_541196100,MM_FIX_0_382683433,MM_FIX_1_306562965) - : "%"REG_d); - } - diff --git a/libre/mplayer-parabola/PKGBUILD b/libre/mplayer-parabola/PKGBUILD new file mode 100644 index 000000000..82fef8d3d --- /dev/null +++ b/libre/mplayer-parabola/PKGBUILD @@ -0,0 +1,129 @@ +# $Id: PKGBUILD 218200 2014-07-26 16:31:03Z bpiotrowski $ +# Maintainer (Arch): Ionut Biru +# Maintainer (Arch): Bartłomiej Piotrowski +# Contributor (Arch): Hugo Doria +# Maintainer: André Silva +# Contributor: Márcio Silva + +_pkgbase=mplayer +pkgbase=mplayer-parabola +pkgname=('mplayer-parabola' 'mencoder-parabola') +pkgver=37224 +pkgrel=2 +arch=('i686' 'x86_64') +makedepends=( + 'libxxf86dga' 'libxxf86vm' 'libmad' 'libxinerama' 'sdl' 'lame' 'libtheora' + 'xvidcore' 'libmng' 'libxss' 'libgl' 'smbclient' 'aalib' 'jack' 'libcaca' + 'faad2' 'lirc-utils' 'libxvmc' 'enca' 'libvdpau' 'opencore-amr' + 'libdca' 'a52dec' 'schroedinger' 'libvpx' 'libpulse' 'fribidi' 'unzip' 'mesa' + 'live-media' 'yasm' 'git' 'fontconfig' 'mpg123' 'ladspa' 'libass' 'libbluray' + 'libcdio-paranoia' 'opus' 'subversion' 'x264' 'libx264' +) +license=('GPL') +url='http://www.mplayerhq.hu/' +options=('!buildflags' '!emptydirs') +source=($_pkgbase-$pkgver::svn://svn.mplayerhq.hu/mplayer/trunk#revision=$pkgver + http://ffmpeg.org/releases/ffmpeg-2.2.5.tar.bz2 + mplayer.desktop + cdio-includes.patch + include-samba-4.0.patch + giflib51.patch + revert-icl-fixes.patch) +md5sums=('SKIP' + 'a91dbd963f0ed16bf0eacaba98439d00' + '62f44a58f072b2b1a3c3d3e4976d64b3' + '7b5be7191aafbea64218dc4916343bbc' + '868a92bdef148df7f38bfa992b26ce9d' + '14461fb94b7aa5dda091ba4f737df2d9' + '3579402002b7302fdf2d146639333efd') + +pkgver() { + cd $_pkgbase-$pkgver + svnversion +} + +prepare() { + cd $_pkgbase-$pkgver + mv ../ffmpeg-2.2.5 ./ffmpeg + + patch -p0 -i ../cdio-includes.patch + patch -p1 -i ../include-samba-4.0.patch + patch -Np0 -i ../giflib51.patch + patch -Np0 -i ../revert-icl-fixes.patch + + ./version.sh +} + +build() { + cd $_pkgbase-$pkgver + + ./configure --prefix=/usr \ + --enable-runtime-cpudetection \ + --disable-gui \ + --disable-arts \ + --disable-liblzo \ + --disable-speex \ + --disable-openal \ + --disable-libdv \ + --disable-musepack \ + --disable-esd \ + --disable-mga \ + --disable-ass-internal \ + --disable-faac \ + --disable-cdparanoia \ + --enable-xvmc \ + --enable-radio \ + --enable-radio-capture \ + --enable-smb \ + --language=all \ + --confdir=/etc/mplayer + [[ "$CARCH" = "i686" ]] && sed 's|-march=i486|-march=i686|g' -i config.mak + + make +} + +package_mplayer-parabola() { + pkgdesc='Media player for GNU/Linux, without nonfree faac support' + install=mplayer.install + backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf') + depends=( + 'desktop-file-utils' 'ttf-font' 'enca' 'libxss' 'a52dec' 'libvpx' + 'lirc-utils' 'libx264' 'libmng' 'libdca' 'aalib' 'lame' 'fontconfig' + 'libgl' 'libxinerama' 'libvdpau' 'libpulse' 'smbclient' 'xvidcore' + 'opencore-amr' 'jack' 'libmad' 'sdl' 'libtheora' 'libcaca' 'libxxf86dga' + 'fribidi' 'libjpeg' 'faad2' 'libxvmc' 'schroedinger' 'mpg123' + 'libass' 'libxxf86vm' 'libbluray' 'libcdio-paranoia' 'opus' + ) + provides=("mplayer=$pkgver") + replaces=('mplayer' 'mplayer-libre') + conflicts=('mplayer' 'mplayer-libre') + + cd $_pkgbase-$pkgver + make DESTDIR="$pkgdir" install-mplayer install-mplayer-man + + install -Dm644 etc/{codecs.conf,input.conf,example.conf} \ + "$pkgdir/etc/mplayer/" + + # desktop file (FS#14770) + install -Dm644 ../mplayer.desktop \ + "$pkgdir"/usr/share/applications/mplayer.desktop + install -Dm644 etc/mplayer256x256.png \ + "$pkgdir"/usr/share/pixmaps/mplayer.png +} + +package_mencoder-parabola() { + pkgdesc='Free command line video decoding, encoding and filtering tool, without nonfree faac support' + depends=( + 'enca' 'a52dec' 'libvpx' 'libx264' 'libmng' 'libdca' 'bzip2' 'lame' + 'alsa-lib' 'fontconfig' 'giflib' 'libpng' 'smbclient' 'xvidcore' + 'opencore-amr' 'libmad' 'libtheora' 'fribidi' 'libjpeg' 'faad2' + 'schroedinger' 'mpg123' 'libass' 'libbluray' 'libcdio-paranoia' + 'libvorbis' 'opus' + ) + provides=("mencoder=$pkgver") + replaces=('mencoder' 'mencoder-libre') + conflicts=('mencoder' 'mencoder-libre') + + make -C $_pkgbase-$pkgver DESTDIR="$pkgdir" install-mencoder install-mencoder-man + find "$pkgdir"/usr/share/man -name mplayer.1 -exec rename mplayer.1 mencoder.1 {} + +} diff --git a/libre/mplayer-parabola/cdio-includes.patch b/libre/mplayer-parabola/cdio-includes.patch new file mode 100644 index 000000000..f71472812 --- /dev/null +++ b/libre/mplayer-parabola/cdio-includes.patch @@ -0,0 +1,43 @@ +Index: configure +=================================================================== +--- configure (revision 35421) ++++ configure (working copy) +@@ -5968,8 +5968,8 @@ + cat > $TMPC << EOF + #include + #include +-#include +-#include ++#include ++#include + int main(void) { + void *test = cdda_verbose_set; + printf("%s\n", CDIO_VERSION); +Index: gui/win32/interface.c +=================================================================== +--- gui/win32/interface.c (revision 35421) ++++ gui/win32/interface.c (working copy) +@@ -24,7 +24,7 @@ + #include "config.h" + + #if defined(CONFIG_LIBCDIO) +-#include ++#include + #elif defined(CONFIG_CDDA) + #include + #endif +Index: stream/stream_cdda.c +=================================================================== +--- stream/stream_cdda.c (revision 35421) ++++ stream/stream_cdda.c (working copy) +@@ -21,8 +21,8 @@ + #include + #include + #else +-#include +-#include ++#include ++#include + #endif + #include + #include diff --git a/libre/mplayer-parabola/giflib51.patch b/libre/mplayer-parabola/giflib51.patch new file mode 100644 index 000000000..e884b39f1 --- /dev/null +++ b/libre/mplayer-parabola/giflib51.patch @@ -0,0 +1,24 @@ +--- libvo/vo_gif89a.c.orig 2014-06-11 10:06:29.243216331 +0000 ++++ libvo/vo_gif89a.c 2014-06-11 10:08:37.346078847 +0000 +@@ -75,6 +75,9 @@ + #define MakeMapObject GifMakeMapObject + #define FreeMapObject GifFreeMapObject + #define QuantizeBuffer GifQuantizeBuffer ++#if defined GIFLIB_MINOR && GIFLIB_MINOR >= 1 ++#define EGifCloseFile(a) EGifCloseFile(a, NULL) ++#endif + #endif + + // how many frames per second we are aiming for during output. +--- libmpdemux/demux_gif.c.orig 2014-06-11 10:46:48.120883788 +0000 ++++ libmpdemux/demux_gif.c 2014-06-11 10:47:28.290732272 +0000 +@@ -50,6 +50,9 @@ + #define DGifOpenFileHandle(a) DGifOpenFileHandle(a, NULL) + #define GifError() (gif ? gif->Error : 0) + #define GifErrorString() GifErrorString(gif->Error) ++#if defined GIFLIB_MINOR && GIFLIB_MINOR >= 1 ++#define DGifCloseFile(a) DGifCloseFile(a, NULL) ++#endif + #endif + + /* >= 4.2 prior GIFLIB did not have MAJOR/MINOR defines */ diff --git a/libre/mplayer-parabola/include-samba-4.0.patch b/libre/mplayer-parabola/include-samba-4.0.patch new file mode 100644 index 000000000..2ed272b6a --- /dev/null +++ b/libre/mplayer-parabola/include-samba-4.0.patch @@ -0,0 +1,12 @@ +diff -rupN a/stream/stream_smb.c b/stream/stream_smb.c +--- a/stream/stream_smb.c 2013-03-16 13:38:34.000000000 +0000 ++++ b/stream/stream_smb.c 2013-10-31 20:05:32.473947926 +0000 +@@ -18,7 +18,7 @@ + + #include "config.h" + +-#include ++#include + #include + + #include "mp_msg.h" diff --git a/libre/mplayer-parabola/mplayer.desktop b/libre/mplayer-parabola/mplayer.desktop new file mode 100644 index 000000000..946b8e345 --- /dev/null +++ b/libre/mplayer-parabola/mplayer.desktop @@ -0,0 +1,22 @@ +[Desktop Entry] +Type=Application +Name=MPlayer Media Player +Name[ca]=Reproductor multimèdia MPlayer +Name[pl]=MPlayer odtwarzacz multimedialny +GenericName=Multimedia player +Comment=Play movies and songs +Comment[ca]=Reproduïu vídeos i cançons +Comment[de]=Filme und Musik abspielen +Comment[es]=Reproduzca vídeos y canciones +Comment[fr]=Lecteur multimédia +Comment[it]=Lettore multimediale +Comment[zh]=多媒体播放器 +Comment[pl]=Odtwarzaj filmy i muzykę +Icon=mplayer +TryExec=mplayer +Exec=mplayer %F +Terminal=false +NoDisplay=true +Categories=GTK;AudioVideo;Audio;Video;Player;TV; +MimeType=application/ogg;application/x-ogg;application/sdp;application/smil;application/x-smil;application/streamingmedia;application/x-streamingmedia;application/vnd.rn-realmedia;application/vnd.rn-realmedia-vbr;audio/aac;audio/x-aac;audio/m4a;audio/x-m4a;audio/mp1;audio/x-mp1;audio/mp2;audio/x-mp2;audio/mp3;audio/x-mp3;audio/mpeg;audio/x-mpeg;audio/mpegurl;audio/x-mpegurl;audio/mpg;audio/x-mpg;audio/rn-mpeg;audio/scpls;audio/x-scpls;audio/vnd.rn-realaudio;audio/wav;audio/x-pn-windows-pcm;audio/x-realaudio;audio/x-pn-realaudio;audio/x-ms-wma;audio/x-pls;audio/x-wav;video/mpeg;video/x-mpeg;video/x-mpeg2;video/mp4;video/msvideo;video/x-msvideo;video/quicktime;video/vnd.rn-realvideo;video/x-ms-afs;video/x-ms-asf;video/x-ms-wmv;video/x-ms-wmx;video/x-ms-wvxvideo;video/x-avi;video/x-fli;video/x-flv;video/x-theora;video/x-matroska; +X-KDE-Protocols=http,ftp,smb diff --git a/libre/mplayer-parabola/mplayer.install b/libre/mplayer-parabola/mplayer.install new file mode 100644 index 000000000..660593cf5 --- /dev/null +++ b/libre/mplayer-parabola/mplayer.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/libre/mplayer-parabola/mplayer.png b/libre/mplayer-parabola/mplayer.png new file mode 100644 index 000000000..799769335 Binary files /dev/null and b/libre/mplayer-parabola/mplayer.png differ diff --git a/libre/mplayer-parabola/revert-icl-fixes.patch b/libre/mplayer-parabola/revert-icl-fixes.patch new file mode 100644 index 000000000..e5f049ff5 --- /dev/null +++ b/libre/mplayer-parabola/revert-icl-fixes.patch @@ -0,0 +1,66 @@ +Index: libmpcodecs/vf_fspp.c +=================================================================== +--- libmpcodecs/vf_fspp.c (revision 37183) ++++ libmpcodecs/vf_fspp.c (revision 37181) +@@ -1598,10 +1598,6 @@ + + : "+S"(data), "+D"(output), "+c"(cnt), "=o"(temps) + : "d"(thr_adr) +- NAMED_CONSTRAINTS_ADD(ff_MM_FIX_0_707106781,MM_2,MM_FIX_1_414213562_A,MM_FIX_1_414213562,MM_FIX_0_382683433, +- ff_MM_FIX_0_541196100,MM_FIX_1_306562965,MM_FIX_0_847759065) +- NAMED_CONSTRAINTS_ADD(MM_FIX_0_566454497,MM_FIX_0_198912367,MM_FIX_2_613125930,MM_FIX_1_847759065, +- MM_FIX_1_082392200) + : "%"REG_a + ); + } +@@ -1871,8 +1867,6 @@ + + : "+S"(workspace), "+D"(output_adr), "+c"(cnt), "=o"(temps) + : "a"(output_stride*sizeof(short)) +- NAMED_CONSTRAINTS_ADD(MM_FIX_1_414213562_A,MM_FIX_2_613125930,MM_FIX_1_847759065,MM_FIX_1_082392200, +- MM_FIX_1_414213562,MM_DESCALE_RND) + : "%"REG_d + ); + } +@@ -1980,10 +1974,10 @@ + "movd (%%"REG_S",%%"REG_a",2), %%mm3 \n\t" //5 + "paddw %%mm4, %%mm1 \n\t" + +- "movq %%mm5, %3 \n\t" //t7 ++ "movq %%mm5, 0*8+%3 \n\t" //t7 + "punpcklbw %%mm7, %%mm3 \n\t" + +- "movq %%mm6, %4 \n\t" //t6 ++ "movq %%mm6, 1*8+%3 \n\t" //t6 + "movq %%mm2, %%mm4 \n\t" + + "movd (%%"REG_S"), %%mm5 \n\t" //3 +@@ -2029,7 +2023,7 @@ + "psubw %%mm1, %%mm5 \n\t" //d1 + "movq %%mm0, %%mm6 \n\t" + +- "movq %4, %%mm1 \n\t" ++ "movq 1*8+%3, %%mm1 \n\t" + "punpcklwd %%mm5, %%mm0 \n\t" + + "punpckhwd %%mm5, %%mm6 \n\t" +@@ -2053,7 +2047,7 @@ + "movq %%mm7, "DCTSIZE_S"*3*2(%%"REG_D") \n\t" + "psllw $2, %%mm3 \n\t" //t10 + +- "movq %3, %%mm2 \n\t" ++ "movq 0*8+%3, %%mm2 \n\t" + "psllw $2, %%mm4 \n\t" //t11 + + "pmulhw "MANGLE(MM_FIX_0_707106781)", %%mm4 \n\t" //z3 +@@ -2116,9 +2110,8 @@ + "dec %%"REG_c" \n\t" + "jnz 6b \n\t" + +- : "+S"(pixels), "+D"(data), "+c"(cnt), "=o"(temps), "=o"(temps[1]) ++ : "+S"(pixels), "+D"(data), "+c"(cnt), "=o"(temps) + : "a"(line_size) +- NAMED_CONSTRAINTS_ADD(ff_MM_FIX_0_707106781,ff_MM_FIX_0_541196100,MM_FIX_0_382683433,MM_FIX_1_306562965) + : "%"REG_d); + } + diff --git a/libre/mplayer-vaapi-parabola/PKGBUILD b/libre/mplayer-vaapi-parabola/PKGBUILD new file mode 100644 index 000000000..311fd42a8 --- /dev/null +++ b/libre/mplayer-vaapi-parabola/PKGBUILD @@ -0,0 +1,101 @@ +# $Id: PKGBUILD 117508 2014-08-18 09:21:58Z foutrelis $ +# Maintainer (Arch): Evangelos Foutras +# Contributor (Arch): Ionut Biru +# Contributor (Arch): Hugo Doria +# Maintainer: André Silva +# Contributor: Nicolás Reynolds +# Contributor: Márcio Silva + +_pkgname=mplayer-vaapi +pkgname=mplayer-vaapi-parabola +pkgver=36265 +pkgrel=12 +pkgdesc="A movie player, compiled with vaapi support, without nonfree faac support" +arch=('i686' 'x86_64') +url="http://gitorious.org/vaapi/mplayer" +license=('GPL') +depends=('libxxf86dga' 'libxxf86vm' 'libmad' 'libcdio-paranoia' 'libxinerama' + 'lame' 'fontconfig' 'libtheora' 'xvidcore' 'libmng' 'libxss' 'glu' + 'sdl' 'smbclient' 'aalib' 'jack' 'libcaca' 'speex' 'faad2' + 'lirc-utils' 'ttf-dejavu' 'libxvmc' 'enca' 'opencore-amr' 'libdca' + 'a52dec' 'schroedinger' 'mpg123' 'libvpx' 'libpulse' 'fribidi' 'opus' + 'libbluray' 'libva' 'libass' 'desktop-file-utils') +makedepends=('unzip' 'live-media' 'yasm' 'ladspa' 'git' 'mesa' 'x264') +provides=('mplayer' "mplayer-vaapi=$pkgver") +conflicts=('mplayer' 'mplayer-vaapi' 'mplayer-vaapi-libre' 'mplayer-libre-vaapi') +replaces=('mplayer-vaapi' 'mplayer-vaapi-libre' 'mplayer-libre-vaapi') +backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf') +source=(http://pkgbuild.com/~foutrelis/sources/$_pkgname/$_pkgname-$pkgver.tar.xz{,.sig} + cdio-includes.patch + tweak-desktop-file.patch + subreader-fix-srt-parsing.patch + include-samba-4.0.patch) +options=('!buildflags' '!emptydirs') +install=mplayer-vaapi.install +sha256sums=('5747c28c30c15d1000fb655a8abaa4b22483746d0e82775b27466948ae0c549a' + 'SKIP' + '72e6c654f9733953ad2466d0ea1a52f23e753791d8232d90f13293eb1b358720' + '5a09fb462729a4e573568f9e8c1f57dbe7f69c0b68cfa4f6d70b3e52c450d93b' + '8b6cd325d89ff8bce3662c6aaa9b61b8e6163c6574e09b575426a1eed02b8ad3' + '169eb47b3b838ea95e50c871bdbbfb6fe0b9349b054da830f55f3b4d5055e4f3') + + +prepare() { + cd "$srcdir/$_pkgname-$pkgver" + + patch -Np0 -i "$srcdir/cdio-includes.patch" + patch -d etc -Np0 -i "$srcdir/tweak-desktop-file.patch" + + # http://bugzilla.mplayerhq.hu/show_bug.cgi?id=2139 + patch -Np0 -i "$srcdir/subreader-fix-srt-parsing.patch" + + # https://bugs.archlinux.org/task/41588 + patch -Np1 -i "$srcdir/include-samba-4.0.patch" +} + +build() { + cd "$srcdir/$_pkgname-$pkgver" + + ./configure \ + --prefix=/usr \ + --enable-runtime-cpudetection \ + --disable-gui \ + --disable-arts \ + --disable-gif \ + --disable-liblzo \ + --enable-speex \ + --disable-cdparanoia \ + --disable-openal \ + --disable-libdv \ + --disable-musepack \ + --disable-esd \ + --disable-mga \ + --disable-ass-internal \ + --disable-faac \ + --enable-xvmc \ + --enable-radio \ + --enable-radio-capture \ + --enable-smb \ + --disable-vdpau \ + --enable-vaapi \ + --language=all \ + --confdir=/etc/mplayer + + [[ $CARCH == i686 ]] && sed -i 's|-march=i486|-march=i686|g' config.mak + + make +} + +package() { + cd "$srcdir/$_pkgname-$pkgver" + + make DESTDIR="$pkgdir" install-mplayer install-mplayer-man + install -Dm644 etc/{codecs.conf,input.conf,example.conf} "$pkgdir/etc/mplayer/" + install -Dm644 etc/mplayer.desktop "$pkgdir/usr/share/applications/mplayer.desktop" + install -d "$pkgdir/usr/share/mplayer/" + ln -s /usr/share/fonts/TTF/DejaVuSans.ttf "$pkgdir/usr/share/mplayer/subfont.ttf" + rm -rf "$pkgdir/usr/share/mplayer/font" + install -Dm644 etc/mplayer256x256.png "$pkgdir/usr/share/pixmaps/mplayer.png" +} + +# vim:set ts=2 sw=2 et: diff --git a/libre/mplayer-vaapi-parabola/cdio-includes.patch b/libre/mplayer-vaapi-parabola/cdio-includes.patch new file mode 100644 index 000000000..894650717 --- /dev/null +++ b/libre/mplayer-vaapi-parabola/cdio-includes.patch @@ -0,0 +1,43 @@ +Index: configure +=================================================================== +--- configure (revision 35421) ++++ configure (working copy) +@@ -5968,8 +5968,8 @@ + cat > $TMPC << EOF + #include + #include +-#include +-#include ++#include ++#include + int main(void) { + void *test = cdda_verbose_set; + printf("%s\n", CDIO_VERSION); +Index: gui/win32/interface.c +=================================================================== +--- gui/win32/interface.c (revision 35421) ++++ gui/win32/interface.c (working copy) +@@ -24,7 +24,7 @@ + #include "config.h" + + #if defined(CONFIG_LIBCDIO) +-#include ++#include + #elif defined(CONFIG_CDDA) + #include + #endif +Index: stream/stream_cdda.c +=================================================================== +--- stream/stream_cdda.c (revision 35421) ++++ stream/stream_cdda.c (working copy) +@@ -21,8 +21,8 @@ + #include + #include + #else +-#include +-#include ++#include ++#include + #endif + #include + #include diff --git a/libre/mplayer-vaapi-parabola/include-samba-4.0.patch b/libre/mplayer-vaapi-parabola/include-samba-4.0.patch new file mode 100644 index 000000000..2ed272b6a --- /dev/null +++ b/libre/mplayer-vaapi-parabola/include-samba-4.0.patch @@ -0,0 +1,12 @@ +diff -rupN a/stream/stream_smb.c b/stream/stream_smb.c +--- a/stream/stream_smb.c 2013-03-16 13:38:34.000000000 +0000 ++++ b/stream/stream_smb.c 2013-10-31 20:05:32.473947926 +0000 +@@ -18,7 +18,7 @@ + + #include "config.h" + +-#include ++#include + #include + + #include "mp_msg.h" diff --git a/libre/mplayer-vaapi-parabola/mplayer-vaapi.install b/libre/mplayer-vaapi-parabola/mplayer-vaapi.install new file mode 100644 index 000000000..a44f19aef --- /dev/null +++ b/libre/mplayer-vaapi-parabola/mplayer-vaapi.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} +post_upgrade() { + post_install +} +post_remove() { + post_install +} + +# vim:set ts=2 sw=2 et: diff --git a/libre/mplayer-vaapi-parabola/subreader-fix-srt-parsing.patch b/libre/mplayer-vaapi-parabola/subreader-fix-srt-parsing.patch new file mode 100644 index 000000000..f1c087377 --- /dev/null +++ b/libre/mplayer-vaapi-parabola/subreader-fix-srt-parsing.patch @@ -0,0 +1,40 @@ +Index: sub/subreader.c +=================================================================== +--- sub/subreader.c (revision 36284) ++++ sub/subreader.c (revision 36285) +@@ -378,14 +378,14 @@ + int h1, m1, s1, ms1, h2, m2, s2, ms2, j = 0; + + while (!current->text[0]) { +- char line[LINE_LEN + 1], full_line[LINE_LEN + 1], sep; ++ char line[LINE_LEN + 1], full_line[LINE_LEN + 1]; + int i; + + /* Parse SubRip header */ + if (!stream_read_line(st, line, LINE_LEN, utf16)) + return NULL; +- if (sscanf(line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d", +- &h1, &m1, &s1, &sep, &ms1, &h2, &m2, &s2, &sep, &ms2) < 10) ++ if (sscanf(line, "%d:%d:%d%*[,.:]%d --> %d:%d:%d%*[,.:]%d", ++ &h1, &m1, &s1, &ms1, &h2, &m2, &s2, &ms2) < 8) + continue; + + current->start = h1 * 360000 + m1 * 6000 + s1 * 100 + ms1 / 10; +@@ -442,7 +442,7 @@ + #endif + while (!current->text[0]) { + if (!stream_read_line (st, line, LINE_LEN, utf16)) return NULL; +- if ((len=sscanf (line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d",&a1,&a2,&a3,(char *)&i,&a4,&b1,&b2,&b3,(char *)&i,&b4)) < 10) ++ if ((len=sscanf (line, "%d:%d:%d%*[,.:]%d --> %d:%d:%d%*[,.:]%d",&a1,&a2,&a3,&a4,&b1,&b2,&b3,&b4)) < 8) + continue; + current->start = a1*360000+a2*6000+a3*100+a4/10; + current->end = b1*360000+b2*6000+b3*100+b4/10; +@@ -1123,7 +1123,7 @@ + {*uses_time=1;return SUB_MPL2;} + if (sscanf (line, "%d:%d:%d.%d,%d:%d:%d.%d", &i, &i, &i, &i, &i, &i, &i, &i)==8) + {*uses_time=1;return SUB_SUBRIP;} +- if (sscanf (line, "%d:%d:%d%[,.:]%d --> %d:%d:%d%[,.:]%d", &i, &i, &i, (char *)&i, &i, &i, &i, &i, (char *)&i, &i)==10) ++ if (sscanf (line, "%d:%d:%d%*[,.:]%d --> %d:%d:%d%*[,.:]%d", &i, &i, &i, &i, &i, &i, &i, &i)==8) + {*uses_time=1;return SUB_SUBVIEWER;} + if (sscanf (line, "{T %d:%d:%d:%d",&i, &i, &i, &i)==4) + {*uses_time=1;return SUB_SUBVIEWER2;} diff --git a/libre/mplayer-vaapi-parabola/tweak-desktop-file.patch b/libre/mplayer-vaapi-parabola/tweak-desktop-file.patch new file mode 100644 index 000000000..606e356b0 --- /dev/null +++ b/libre/mplayer-vaapi-parabola/tweak-desktop-file.patch @@ -0,0 +1,14 @@ +--- mplayer.desktop.orig 2012-07-08 22:18:27.000000000 +0300 ++++ mplayer.desktop 2012-07-08 22:19:08.000000000 +0300 +@@ -23,8 +23,9 @@ Comment[fr]=Lit les films et musiques + Comment[it]=Riproduce filmati e musica + Comment[ja]=動画や音声のファイルを再生します + Icon=mplayer +-TryExec=gmplayer +-Exec=gmplayer %F ++TryExec=mplayer ++Exec=mplayer -really-quiet %F + Terminal=false ++NoDisplay=true + Categories=GTK;AudioVideo;Audio;Video;Player;TV; + MimeType=application/mxf;application/x-netshow-channel;application/ogg;application/ram;application/vnd.rn-realmedia;application/x-shockwave-flash;application/smil;audio/ac3;audio/x-adpcm;audio/x-aiff;audio/AMR;audio/AMR-WB;audio/x-ape;audio/basic;audio/flac;audio/x-flac;audio/x-flac+ogg;audio/x-m4b;audio/x-matroska;audio/mp2;audio/mp4;audio/mpeg;audio/x-mpegurl;audio/x-ms-asx;audio/x-ms-wma;audio/x-musepack;audio/ogg;audio/vnd.rn-realaudio;audio/x-scpls;audio/x-voc;audio/x-vorbis+ogg;audio/x-wav;audio/x-wavpack;video/3gpp;video/3gpp2;video/dv;video/x-flic;video/x-flv;video/x-matroska;video/mp2t;video/mp4;video/mpeg;video/x-ms-asf;video/x-ms-wmv;video/x-msvideo;video/x-nsv;video/ogg;video/x-ogm+ogg;video/quicktime;video/vnd.rn-realvideo;video/x-theora+ogg;video/webm; diff --git a/libre/ogmrip-libre/PKGBUILD b/libre/ogmrip-libre/PKGBUILD deleted file mode 100644 index 548bf2689..000000000 --- a/libre/ogmrip-libre/PKGBUILD +++ /dev/null @@ -1,47 +0,0 @@ -# $Id: PKGBUILD 116644 2014-07-31 16:54:09Z jlichtblau $ -# Maintainer (Arch): Jaroslav Lichtblau -# Contributor (Arch): Daenyth -# Contributor (Arch): Allan McRae -# Contributor (Arch): Vrob (Markus Heuser) mheuser@mi.fu-berlin.de -# Maintainer: André Silva - -_pkgname=ogmrip -pkgname=ogmrip-libre -pkgver=1.0.1 -pkgrel=1 -pkgdesc="Libraries and GTK2 interface for DVD ripping using mencoder, without nonfree faac support" -arch=('i686' 'x86_64') -url="http://ogmrip.sourceforge.net/" -license=('GPL') -depends=('libdvdread>=4.1.3' 'mplayer' 'mencoder' 'enca' 'pkg-config' 'gconf' 'libglade' 'libnotify' 'enchant') -makedepends=('patch' 'intltool' 'perl-xml-parser' 'lame' 'mkvtoolnix' 'libtheora' 'ogmtools' 'gpac' 'vorbis-tools' 'tesseract') -optdepends=('lame: support for the MP3 audio codec' - 'mkvtoolnix: create, alter, and inspect Matroska files' - 'libtheora: decode and encode Ogg Theora files' - 'ogmtools: support for the Ogg Media container' - 'gpac: support for the MP4 container' - 'vorbis-tools: support for the Ogg Vorbis audio codec' - 'gocr: support for the SRT subtitle format' - 'ocrad: support for the SRT subtitle format' - 'tesseract: support for the SRT subtitle format') -replaces=($_pkgname) -conflicts=($_pkgname) -provides=($_pkgname=$pkgver) -options=('!makeflags') -changelog=$_pkgname.changelog -install=$_pkgname.install -source=(http://downloads.sourceforge.net/sourceforge/${_pkgname}/${_pkgname}-${pkgver}.tar.gz) -sha256sums=('1c7bb9a346f94a0b6ba783d71df7d21ce021b2f179f5c1a2ebf870366d53ed56') - -build() { - cd "${srcdir}/${_pkgname}-${pkgver}" - - ./configure --prefix=/usr --sysconfdir=/usr/share - make -} - -package() { - cd "${srcdir}/${_pkgname}-${pkgver}" - - make DESTDIR="${pkgdir}" install -} diff --git a/libre/ogmrip-libre/ogmrip.changelog b/libre/ogmrip-libre/ogmrip.changelog deleted file mode 100644 index 48f6e98e8..000000000 --- a/libre/ogmrip-libre/ogmrip.changelog +++ /dev/null @@ -1,36 +0,0 @@ -2014-07-31 Jaroslav Lichtblau - * ogmrip 1.0.1-1 - -2013-12-25 Jaroslav Lichtblau - * ogmrip 1.0.0-3 static libraries removed - -2013-04-20 Jaroslav Lichtblau - * ogmrip 1.0.0-1 - -2013-03-13 André Silva - * Remove nonfree faac support - -2012-06-07 Jaroslav Lichtblau - * ogmrip O.13.8-1 - -2012-01-26 Eric Belanger - * Rebuild against libpng 1.5 and libtiff 4.0 - * Add .install file - -2011-10-09 Jaroslav Lichtblau - * ogmrip O.13.7-1 - -2010-08-29 Jaroslav Lichtblau - * ogmrip O.13.6-1 - -2010-06-29 Jaroslav Lichtblau - * Update to major release O.13.5 - -2010-04-21 Jaroslav Lichtblau - * Update to major release O.13.4 - -2010-01-03 Jaroslav Lichtblau - * FS#17517 fixed in minor release O.13.3-2 - -2010-01-01 Jaroslav Lichtblau - * Update to major release O.13.3 diff --git a/libre/ogmrip-libre/ogmrip.install b/libre/ogmrip-libre/ogmrip.install deleted file mode 100644 index 660593cf5..000000000 --- a/libre/ogmrip-libre/ogmrip.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/ogmrip-parabola/PKGBUILD b/libre/ogmrip-parabola/PKGBUILD new file mode 100644 index 000000000..cb5b04e7c --- /dev/null +++ b/libre/ogmrip-parabola/PKGBUILD @@ -0,0 +1,47 @@ +# $Id: PKGBUILD 116644 2014-07-31 16:54:09Z jlichtblau $ +# Maintainer (Arch): Jaroslav Lichtblau +# Contributor (Arch): Daenyth +# Contributor (Arch): Allan McRae +# Contributor (Arch): Vrob (Markus Heuser) mheuser@mi.fu-berlin.de +# Maintainer: André Silva + +_pkgname=ogmrip +pkgname=ogmrip-parabola +pkgver=1.0.1 +pkgrel=1 +pkgdesc="Libraries and GTK2 interface for DVD ripping using mencoder, without nonfree faac support" +arch=('i686' 'x86_64') +url="http://ogmrip.sourceforge.net/" +license=('GPL') +depends=('libdvdread>=4.1.3' 'mplayer' 'mencoder' 'enca' 'pkg-config' 'gconf' 'libglade' 'libnotify' 'enchant') +makedepends=('patch' 'intltool' 'perl-xml-parser' 'lame' 'mkvtoolnix' 'libtheora' 'ogmtools' 'gpac' 'vorbis-tools' 'tesseract') +optdepends=('lame: support for the MP3 audio codec' + 'mkvtoolnix: create, alter, and inspect Matroska files' + 'libtheora: decode and encode Ogg Theora files' + 'ogmtools: support for the Ogg Media container' + 'gpac: support for the MP4 container' + 'vorbis-tools: support for the Ogg Vorbis audio codec' + 'gocr: support for the SRT subtitle format' + 'ocrad: support for the SRT subtitle format' + 'tesseract: support for the SRT subtitle format') +replaces=("${_pkgname}" "${_pkgname}-libre") +conflicts=("${_pkgname}" "${_pkgname}-libre") +provides=(${_pkgname}=${pkgver}) +options=('!makeflags') +changelog=$_pkgname.changelog +install=$_pkgname.install +source=(http://downloads.sourceforge.net/sourceforge/${_pkgname}/${_pkgname}-${pkgver}.tar.gz) +sha256sums=('1c7bb9a346f94a0b6ba783d71df7d21ce021b2f179f5c1a2ebf870366d53ed56') + +build() { + cd "${srcdir}/${_pkgname}-${pkgver}" + + ./configure --prefix=/usr --sysconfdir=/usr/share + make +} + +package() { + cd "${srcdir}/${_pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install +} diff --git a/libre/ogmrip-parabola/ogmrip.changelog b/libre/ogmrip-parabola/ogmrip.changelog new file mode 100644 index 000000000..48f6e98e8 --- /dev/null +++ b/libre/ogmrip-parabola/ogmrip.changelog @@ -0,0 +1,36 @@ +2014-07-31 Jaroslav Lichtblau + * ogmrip 1.0.1-1 + +2013-12-25 Jaroslav Lichtblau + * ogmrip 1.0.0-3 static libraries removed + +2013-04-20 Jaroslav Lichtblau + * ogmrip 1.0.0-1 + +2013-03-13 André Silva + * Remove nonfree faac support + +2012-06-07 Jaroslav Lichtblau + * ogmrip O.13.8-1 + +2012-01-26 Eric Belanger + * Rebuild against libpng 1.5 and libtiff 4.0 + * Add .install file + +2011-10-09 Jaroslav Lichtblau + * ogmrip O.13.7-1 + +2010-08-29 Jaroslav Lichtblau + * ogmrip O.13.6-1 + +2010-06-29 Jaroslav Lichtblau + * Update to major release O.13.5 + +2010-04-21 Jaroslav Lichtblau + * Update to major release O.13.4 + +2010-01-03 Jaroslav Lichtblau + * FS#17517 fixed in minor release O.13.3-2 + +2010-01-01 Jaroslav Lichtblau + * Update to major release O.13.3 diff --git a/libre/ogmrip-parabola/ogmrip.install b/libre/ogmrip-parabola/ogmrip.install new file mode 100644 index 000000000..660593cf5 --- /dev/null +++ b/libre/ogmrip-parabola/ogmrip.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/libre/openshot-libre/PKGBUILD b/libre/openshot-libre/PKGBUILD deleted file mode 100644 index 473592202..000000000 --- a/libre/openshot-libre/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 97284 2013-09-16 08:04:43Z bluewind $ -# Maintainer (Arch): Sergej Pupykin -# Contributor (Arch): Asa Marco -# Maintainer: André Silva - -_pkgname=openshot -pkgname=openshot-libre -pkgver=1.4.3 -pkgrel=3 -pkgdesc="a free, non-linear video editor for GNU/Linux based on MLT framework, without nonfree faac recommendation" -arch=('any') -url="http://www.openshotvideo.com/" -license=('GPL') -depends=('mlt-python-bindings' 'pygoocanvas' 'sdl' 'librsvg' 'mplayer' - 'pyxdg' 'pygtk' 'python2-httplib2' 'python2-pillow') -optdepends=('dvgrab: for IEEE digital sources' - 'libquicktime' 'libavc1394' 'jack' 'jack-rack' 'ladspa') -replaces=($_pkgname) -conflicts=($_pkgname) -provides=($_pkgname=$pkgver) -install=openshot.install -source=(http://launchpad.net/openshot/${pkgver%.*}/$pkgver/+download/$_pkgname-$pkgver.tar.gz) -md5sums=('5ec82a7e8b7700ee4a359458aedf19e9') - -package() { - cd $srcdir/$_pkgname-$pkgver - python2 setup.py install --root=$pkgdir/ --optimize=1 -} diff --git a/libre/openshot-libre/openshot.install b/libre/openshot-libre/openshot.install deleted file mode 100644 index 046df0051..000000000 --- a/libre/openshot-libre/openshot.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - update-mime-database usr/share/mime &>/dev/null - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/openshot-parabola/PKGBUILD b/libre/openshot-parabola/PKGBUILD new file mode 100644 index 000000000..2c1b02964 --- /dev/null +++ b/libre/openshot-parabola/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 97284 2013-09-16 08:04:43Z bluewind $ +# Maintainer (Arch): Sergej Pupykin +# Contributor (Arch): Asa Marco +# Maintainer: André Silva + +_pkgname=openshot +pkgname=openshot-parabola +pkgver=1.4.3 +pkgrel=3 +pkgdesc="a free, non-linear video editor for GNU/Linux based on MLT framework, without nonfree faac recommendation" +arch=('any') +url="http://www.openshotvideo.com/" +license=('GPL') +depends=('mlt-python-bindings' 'pygoocanvas' 'sdl' 'librsvg' 'mplayer' + 'pyxdg' 'pygtk' 'python2-httplib2' 'python2-pillow') +optdepends=('dvgrab: for IEEE digital sources' + 'libquicktime' 'libavc1394' 'jack' 'jack-rack' 'ladspa') +replaces=("${_pkgname}" "${_pkgname}-libre") +conflicts=("${_pkgname}" "${_pkgname}-libre") +provides=(${_pkgname}=${pkgver}) +install=openshot.install +source=(http://launchpad.net/openshot/${pkgver%.*}/$pkgver/+download/$_pkgname-$pkgver.tar.gz) +md5sums=('5ec82a7e8b7700ee4a359458aedf19e9') + +package() { + cd $srcdir/$_pkgname-$pkgver + python2 setup.py install --root=$pkgdir/ --optimize=1 +} diff --git a/libre/openshot-parabola/openshot.install b/libre/openshot-parabola/openshot.install new file mode 100644 index 000000000..046df0051 --- /dev/null +++ b/libre/openshot-parabola/openshot.install @@ -0,0 +1,12 @@ +post_install() { + update-mime-database usr/share/mime &>/dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/libre/psi-parabola/PKGBUILD b/libre/psi-parabola/PKGBUILD new file mode 100644 index 000000000..cf835f032 --- /dev/null +++ b/libre/psi-parabola/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 196956 2013-10-21 11:28:57Z pierre $ +# Maintainer (Arch): Pierre Schmitz +# Maintainer: André Silva + +_pkgname=psi +pkgname=psi-parabola +pkgver=0.15 +pkgrel=2 +pkgdesc='Instant messaging application designed for the Jabber IM (Parabola rebranded)' +url='http://psi-im.org/' +license=('GPL') +arch=('i686' 'x86_64' 'mips64el') +depends=('qca-ossl' 'qca-gnupg' 'enchant' 'libxss' 'xdg-utils') +makedepends=('icu') +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +install='psi.install' +source=("http://downloads.sourceforge.net/psi/psi-${pkgver}.tar.bz2" + 'parabola.patch') +md5sums=('aea15f17cf93e7cea52f305523f761be' + '8a5c799ad8b6fd5310d4a849c324c82c') + +prepare() { + cd ${srcdir}/psi-${pkgver} + patch -p0 -i ${srcdir}/parabola.patch +} + +build() { + cd ${srcdir}/psi-${pkgver} + ./configure --prefix=/usr --release --no-separate-debug-info + make +} + +package() { + cd ${srcdir}/psi-${pkgver} + make INSTALL_ROOT=${pkgdir} install + rm -rf ${pkgdir}/usr/share/psi/certs/ +} diff --git a/libre/psi-parabola/parabola.patch b/libre/psi-parabola/parabola.patch new file mode 100644 index 000000000..9d41bffc4 --- /dev/null +++ b/libre/psi-parabola/parabola.patch @@ -0,0 +1,54 @@ +--- src/systeminfo.cpp 2012-10-03 21:53:03.000000000 -0300 ++++ src/systeminfo.cpp 2013-03-25 21:27:28.691880863 -0300 +@@ -75,23 +75,7 @@ + enum LinuxName { + LinuxNone = 0, + +- LinuxMandrake, +- LinuxDebian, +- LinuxRedHat, +- LinuxGentoo, +- LinuxExherbo, +- LinuxSlackware, +- LinuxSuSE, +- LinuxConectiva, +- LinuxCaldera, +- LinuxLFS, +- +- LinuxASP, // Russian Linux distros +- LinuxALT, +- +- LinuxPLD, // Polish Linux distros +- LinuxAurox, +- LinuxArch ++ LinuxParabola + }; + + enum OsFlags { +@@ -106,24 +90,8 @@ + QString file; + QString name; + } osInfo[] = { +- { LinuxMandrake, OsUseFile, "/etc/mandrake-release", "Mandrake Linux" }, +- { LinuxDebian, OsAppendFile, "/etc/debian_version", "Debian GNU/Linux" }, +- { LinuxGentoo, OsUseFile, "/etc/gentoo-release", "Gentoo Linux" }, +- { LinuxExherbo, OsUseName, "/etc/exherbo-release", "Exherbo Linux" }, +- { LinuxArch, OsUseName, "/etc/arch-release", "Arch Linux" }, +- { LinuxSlackware, OsAppendFile, "/etc/slackware-version", "Slackware Linux" }, +- { LinuxPLD, OsUseFile, "/etc/pld-release", "PLD Linux" }, +- { LinuxAurox, OsUseName, "/etc/aurox-release", "Aurox Linux" }, +- { LinuxArch, OsUseFile, "/etc/arch-release", "Arch Linux" }, +- { LinuxLFS, OsAppendFile, "/etc/lfs-release", "LFS Linux" }, +- +- // untested +- { LinuxSuSE, OsUseFile, "/etc/SuSE-release", "SuSE Linux" }, +- { LinuxConectiva, OsUseFile, "/etc/conectiva-release", "Conectiva Linux" }, +- { LinuxCaldera, OsUseFile, "/etc/.installed", "Caldera Linux" }, +- +- // many distros use the /etc/redhat-release for compatibility, so RedHat will be the last :) +- { LinuxRedHat, OsUseFile, "/etc/redhat-release", "RedHat Linux" }, ++ { LinuxParabola, OsUseName, "/etc/parabola-release", "Parabola GNU/Linux-libre" }, ++ { LinuxParabola, OsUseFile, "/etc/parabola-release", "Parabola GNU/Linux-libre" }, + + { LinuxNone, OsUseName, "", "" } + }; diff --git a/libre/psi-parabola/psi.install b/libre/psi-parabola/psi.install new file mode 100644 index 000000000..464d2e625 --- /dev/null +++ b/libre/psi-parabola/psi.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/libre/psi/PKGBUILD b/libre/psi/PKGBUILD deleted file mode 100644 index e5903d9d5..000000000 --- a/libre/psi/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 196956 2013-10-21 11:28:57Z pierre $ -# Maintainer (Arch): Pierre Schmitz -# Maintainer: André Silva - -pkgname=psi -pkgver=0.15 -pkgrel=2.2 -pkgdesc='Instant messaging application designed for the Jabber IM (Parabola rebranded)' -url='http://psi-im.org/' -license=('GPL') -arch=('i686' 'x86_64' 'mips64el') -depends=('qca-ossl' 'qca-gnupg' 'enchant' 'libxss' 'xdg-utils') -makedepends=('icu') -install='psi.install' -source=("http://downloads.sourceforge.net/psi/psi-${pkgver}.tar.bz2" - 'parabola.patch') -md5sums=('aea15f17cf93e7cea52f305523f761be' - '8a5c799ad8b6fd5310d4a849c324c82c') - -prepare() { - cd ${srcdir}/psi-${pkgver} - patch -p0 -i ${srcdir}/parabola.patch -} - -build() { - cd ${srcdir}/psi-${pkgver} - ./configure --prefix=/usr --release --no-separate-debug-info - make -} - -package() { - cd ${srcdir}/psi-${pkgver} - make INSTALL_ROOT=${pkgdir} install - rm -rf ${pkgdir}/usr/share/psi/certs/ -} diff --git a/libre/psi/parabola.patch b/libre/psi/parabola.patch deleted file mode 100644 index 9d41bffc4..000000000 --- a/libre/psi/parabola.patch +++ /dev/null @@ -1,54 +0,0 @@ ---- src/systeminfo.cpp 2012-10-03 21:53:03.000000000 -0300 -+++ src/systeminfo.cpp 2013-03-25 21:27:28.691880863 -0300 -@@ -75,23 +75,7 @@ - enum LinuxName { - LinuxNone = 0, - -- LinuxMandrake, -- LinuxDebian, -- LinuxRedHat, -- LinuxGentoo, -- LinuxExherbo, -- LinuxSlackware, -- LinuxSuSE, -- LinuxConectiva, -- LinuxCaldera, -- LinuxLFS, -- -- LinuxASP, // Russian Linux distros -- LinuxALT, -- -- LinuxPLD, // Polish Linux distros -- LinuxAurox, -- LinuxArch -+ LinuxParabola - }; - - enum OsFlags { -@@ -106,24 +90,8 @@ - QString file; - QString name; - } osInfo[] = { -- { LinuxMandrake, OsUseFile, "/etc/mandrake-release", "Mandrake Linux" }, -- { LinuxDebian, OsAppendFile, "/etc/debian_version", "Debian GNU/Linux" }, -- { LinuxGentoo, OsUseFile, "/etc/gentoo-release", "Gentoo Linux" }, -- { LinuxExherbo, OsUseName, "/etc/exherbo-release", "Exherbo Linux" }, -- { LinuxArch, OsUseName, "/etc/arch-release", "Arch Linux" }, -- { LinuxSlackware, OsAppendFile, "/etc/slackware-version", "Slackware Linux" }, -- { LinuxPLD, OsUseFile, "/etc/pld-release", "PLD Linux" }, -- { LinuxAurox, OsUseName, "/etc/aurox-release", "Aurox Linux" }, -- { LinuxArch, OsUseFile, "/etc/arch-release", "Arch Linux" }, -- { LinuxLFS, OsAppendFile, "/etc/lfs-release", "LFS Linux" }, -- -- // untested -- { LinuxSuSE, OsUseFile, "/etc/SuSE-release", "SuSE Linux" }, -- { LinuxConectiva, OsUseFile, "/etc/conectiva-release", "Conectiva Linux" }, -- { LinuxCaldera, OsUseFile, "/etc/.installed", "Caldera Linux" }, -- -- // many distros use the /etc/redhat-release for compatibility, so RedHat will be the last :) -- { LinuxRedHat, OsUseFile, "/etc/redhat-release", "RedHat Linux" }, -+ { LinuxParabola, OsUseName, "/etc/parabola-release", "Parabola GNU/Linux-libre" }, -+ { LinuxParabola, OsUseFile, "/etc/parabola-release", "Parabola GNU/Linux-libre" }, - - { LinuxNone, OsUseName, "", "" } - }; diff --git a/libre/psi/psi.install b/libre/psi/psi.install deleted file mode 100644 index 464d2e625..000000000 --- a/libre/psi/psi.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null - update-desktop-database -q &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/reflector-parabola/PKGBUILD b/libre/reflector-parabola/PKGBUILD new file mode 100644 index 000000000..6735b352a --- /dev/null +++ b/libre/reflector-parabola/PKGBUILD @@ -0,0 +1,47 @@ +#Maintainer (Arch): Xyne +#Maintainer: André Silva +_pkgname=reflector +pkgname=reflector-parabola +pkgver=2014.8 +pkgrel=1 +pkgdesc='A Python 3 module and script to retrieve and filter the latest Pacman mirror list (Parabola rebranded)' +arch=(any) +license=(GPL) +url="http://xyne.archlinux.ca/projects/reflector" +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +depends=(python3) +optdepends=('rsync: rate rsync mirrors') +source=( + http://xyne.archlinux.ca/projects/reflector/src/reflector-2014.8.tar.xz + http://xyne.archlinux.ca/projects/reflector/src/reflector-2014.8.tar.xz.sig + rebranding.patch +) +sha512sums=( + c548a5fe638c465803ff7962bdebeef3740b0cbfc65ba5fbbfb1b07d485e90ee1ea35c71e07f9ac3cb9964cf754b28edd81b3df2f3a14c7686ca7fb84cc471eb + e9177dcc04b498ffaeadfd83278b0f51dfd7167267e6556ca55768afbe01b1d712ade2ab7252a191002d12da07e5330ade410d8dfa99112ec2aaa93b24d46beb + fc042cd3ffa67445a874d460659e43a55607271a2b776a4c810507443babe3a505014a2c48e0e4760cb7c19d6d66797e09c6b1b200985f4685eb8ed5c2347819 +) +md5sums=( + b7bf2653b68e79ee40fc715bf180490e + 583a9a95465c5daa6c0ca6bb86e96f0d + d938639a354d46e9819f1f36b3aa5fb3 +) + +prepare () +{ + cd "$srcdir/$_pkgname-$pkgver" + # Rebranding for Parabola + patch -Np1 -i "$srcdir/rebranding.patch" +} + +package () +{ + cd "$srcdir/$_pkgname-$pkgver" + python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 + install -Dm755 "$srcdir/$_pkgname-$pkgver/$_pkgname" "$pkgdir/usr/bin/$_pkgname" +} + + +# vim: set ts=2 sw=2 et: diff --git a/libre/reflector-parabola/rebranding.patch b/libre/reflector-parabola/rebranding.patch new file mode 100644 index 000000000..b29653ffd --- /dev/null +++ b/libre/reflector-parabola/rebranding.patch @@ -0,0 +1,64 @@ +diff --git a/Reflector.py b/Reflector.py +index 20b7fc7..22e5f9d 100644 +--- a/Reflector.py ++++ b/Reflector.py +@@ -63,7 +63,7 @@ def get_cache_file(): + + class MirrorStatus(object): + # JSON URI +- URL = 'https://www.archlinux.org/mirrors/status/json/' ++ URL = 'https://parabolagnulinux.org/mirrors/status/json/' + # Mirror URL format. Accepts server base URL, repository, and architecture. + MIRROR_URL_FORMAT = '{0}{1}/os/{2}' + MIRRORLIST_ENTRY_FORMAT = "Server = " + MIRROR_URL_FORMAT + "\n" +@@ -92,8 +92,13 @@ class MirrorStatus(object): + 'extra', + 'gnome-unstable', + 'kde-unstable', ++ 'libre', ++ 'libre-testing', ++ 'libre-multilib', + 'multilib', +- 'multilib-testing' ++ 'multilib-testing', ++ 'nonprism', ++ 'pcr', + 'staging', + 'testing' + ) +@@ -453,7 +458,7 @@ class MirrorStatus(object): + + width = 80 + colw = 11 +- header = '# Arch Linux mirrorlist generated by Reflector #'.center(width, '#') ++ header = '# Parabola GNU/Linux-libre mirrorlist generated by Reflector #'.center(width, '#') + border = '#' * len(header) + mirrorlist = '{}\n{}\n{}\n'.format(border, header, border) + \ + '\n' + \ +@@ -542,7 +547,7 @@ def add_arguments(parser): + ''' + Add reflector arguments to the argument parser. + ''' +- parser = argparse.ArgumentParser(description='retrieve and filter a list of the latest Arch Linux mirrors') ++ parser = argparse.ArgumentParser(description='retrieve and filter a list of the latest Parabola GNU/Linux-libre mirrors') + + parser.add_argument( + '--connection-timeout', type=int, metavar='n', default=5, +@@ -561,7 +566,7 @@ def add_arguments(parser): + + parser.add_argument( + '--cache-timeout', type=int, metavar='n', default=300, +- help='The cache timeout in seconds for the data retrieved from the Arch Linux Mirror Status API. The default is 300 (5 minutes).' ++ help='The cache timeout in seconds for the data retrieved from the Parabola GNU/Linux-libre Mirror Status API. The default is 300 (5 minutes).' + ) + + parser.add_argument( +@@ -646,7 +651,7 @@ def parse_args(args=None): + Parse command-line arguments. + ''' + parser = argparse.ArgumentParser( +- description='retrieve and filter a list of the latest Arch Linux mirrors' ++ description='retrieve and filter a list of the latest Parabola GNU/Linux-libre mirrors' + ) + parser = add_arguments(parser) + options = parser.parse_args(args) diff --git a/libre/reflector/PKGBUILD b/libre/reflector/PKGBUILD deleted file mode 100644 index 7cee826e8..000000000 --- a/libre/reflector/PKGBUILD +++ /dev/null @@ -1,43 +0,0 @@ -#Maintainer (Arch): Xyne -#Maintainer: André Silva -pkgname=reflector -pkgver=2014.8 -pkgrel=1 -pkgdesc='A Python 3 module and script to retrieve and filter the latest Pacman mirror list (Parabola rebranded)' -arch=(any) -license=(GPL) -url="http://xyne.archlinux.ca/projects/reflector" -depends=(python3) -optdepends=('rsync: rate rsync mirrors') -source=( - http://xyne.archlinux.ca/projects/reflector/src/reflector-2014.8.tar.xz - http://xyne.archlinux.ca/projects/reflector/src/reflector-2014.8.tar.xz.sig - rebranding.patch -) -sha512sums=( - c548a5fe638c465803ff7962bdebeef3740b0cbfc65ba5fbbfb1b07d485e90ee1ea35c71e07f9ac3cb9964cf754b28edd81b3df2f3a14c7686ca7fb84cc471eb - e9177dcc04b498ffaeadfd83278b0f51dfd7167267e6556ca55768afbe01b1d712ade2ab7252a191002d12da07e5330ade410d8dfa99112ec2aaa93b24d46beb - fc042cd3ffa67445a874d460659e43a55607271a2b776a4c810507443babe3a505014a2c48e0e4760cb7c19d6d66797e09c6b1b200985f4685eb8ed5c2347819 -) -md5sums=( - b7bf2653b68e79ee40fc715bf180490e - 583a9a95465c5daa6c0ca6bb86e96f0d - d938639a354d46e9819f1f36b3aa5fb3 -) - -prepare () -{ - cd "$srcdir/$pkgname-$pkgver" - # Rebranding for Parabola - patch -Np1 -i "$srcdir/rebranding.patch" -} - -package () -{ - cd "$srcdir/$pkgname-$pkgver" - python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 - install -Dm755 "$srcdir/$pkgname-$pkgver/$pkgname" "$pkgdir/usr/bin/$pkgname" -} - - -# vim: set ts=2 sw=2 et: diff --git a/libre/reflector/rebranding.patch b/libre/reflector/rebranding.patch deleted file mode 100644 index b29653ffd..000000000 --- a/libre/reflector/rebranding.patch +++ /dev/null @@ -1,64 +0,0 @@ -diff --git a/Reflector.py b/Reflector.py -index 20b7fc7..22e5f9d 100644 ---- a/Reflector.py -+++ b/Reflector.py -@@ -63,7 +63,7 @@ def get_cache_file(): - - class MirrorStatus(object): - # JSON URI -- URL = 'https://www.archlinux.org/mirrors/status/json/' -+ URL = 'https://parabolagnulinux.org/mirrors/status/json/' - # Mirror URL format. Accepts server base URL, repository, and architecture. - MIRROR_URL_FORMAT = '{0}{1}/os/{2}' - MIRRORLIST_ENTRY_FORMAT = "Server = " + MIRROR_URL_FORMAT + "\n" -@@ -92,8 +92,13 @@ class MirrorStatus(object): - 'extra', - 'gnome-unstable', - 'kde-unstable', -+ 'libre', -+ 'libre-testing', -+ 'libre-multilib', - 'multilib', -- 'multilib-testing' -+ 'multilib-testing', -+ 'nonprism', -+ 'pcr', - 'staging', - 'testing' - ) -@@ -453,7 +458,7 @@ class MirrorStatus(object): - - width = 80 - colw = 11 -- header = '# Arch Linux mirrorlist generated by Reflector #'.center(width, '#') -+ header = '# Parabola GNU/Linux-libre mirrorlist generated by Reflector #'.center(width, '#') - border = '#' * len(header) - mirrorlist = '{}\n{}\n{}\n'.format(border, header, border) + \ - '\n' + \ -@@ -542,7 +547,7 @@ def add_arguments(parser): - ''' - Add reflector arguments to the argument parser. - ''' -- parser = argparse.ArgumentParser(description='retrieve and filter a list of the latest Arch Linux mirrors') -+ parser = argparse.ArgumentParser(description='retrieve and filter a list of the latest Parabola GNU/Linux-libre mirrors') - - parser.add_argument( - '--connection-timeout', type=int, metavar='n', default=5, -@@ -561,7 +566,7 @@ def add_arguments(parser): - - parser.add_argument( - '--cache-timeout', type=int, metavar='n', default=300, -- help='The cache timeout in seconds for the data retrieved from the Arch Linux Mirror Status API. The default is 300 (5 minutes).' -+ help='The cache timeout in seconds for the data retrieved from the Parabola GNU/Linux-libre Mirror Status API. The default is 300 (5 minutes).' - ) - - parser.add_argument( -@@ -646,7 +651,7 @@ def parse_args(args=None): - Parse command-line arguments. - ''' - parser = argparse.ArgumentParser( -- description='retrieve and filter a list of the latest Arch Linux mirrors' -+ description='retrieve and filter a list of the latest Parabola GNU/Linux-libre mirrors' - ) - parser = add_arguments(parser) - options = parser.parse_args(args) diff --git a/libre/soundkonverter-libre/PKGBUILD b/libre/soundkonverter-libre/PKGBUILD deleted file mode 100644 index c0aea726b..000000000 --- a/libre/soundkonverter-libre/PKGBUILD +++ /dev/null @@ -1,52 +0,0 @@ -# $Id: PKGBUILD 109579 2014-04-16 10:34:29Z stativ $ -# Maintainer (Arch): Lukas Jirkovsky -# Contributor (Arch): Mateusz Herych -# Contributor (Arch): Eric Belanger -# Contributor (Arch): Darwin Bautista -# Maintainer: André Silva - -_pkgname=soundkonverter -pkgname=soundkonverter-libre -pkgver=2.1.1 -pkgrel=1 -pkgdesc="Front-end to various audio converters, without nonfree faac and mac recommendation" -arch=('i686' 'x86_64') -url="http://www.kde-apps.org/content/show.php?content=29024" -license=('GPL') -replaces=($_pkgname) -conflicts=($_pkgname) -provides=($_pkgname=$pkgver) -depends=('kdebase-runtime' 'libkcddb' 'cdparanoia' 'taglib') -makedepends=('automoc4' 'cmake') -optdepends=('cdrkit: cdda2wav backend' - 'faad2: faad backend' - 'ffmpeg: ffmpeg backend' - 'flac: flac backend' - 'fluidsynth: flouidsynth backend' - 'lame: lame backend' - 'mplayer: mplayer backend' - 'mp3gain: mp3gain backend' - 'opus-tools: opus backend' - 'speex: speexenc, speexdec backends' - 'timidity++: midi backend' - 'twolame: twolame backend' - 'vorbisgain: vorbisgain backend' - 'vorbis-tools: vorbis tools backend' - 'wavpack: wavpack backend' - 'sox: sox plugin (change sample rate, various effects)') -install=$_pkgname.install -source=("http://kde-apps.org/CONTENT/content-files/29024-${_pkgname}-${pkgver}.tar.gz") -md5sums=('fa008d90b5c12bc3af569ec104c3b4cc') - -build() { - cd "$srcdir"/$_pkgname-$pkgver - cmake . \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release - make -} - -package() { - cd "$srcdir"/$_pkgname-$pkgver - make DESTDIR="$pkgdir" install -} diff --git a/libre/soundkonverter-libre/soundkonverter.install b/libre/soundkonverter-libre/soundkonverter.install deleted file mode 100644 index 0e8feb79c..000000000 --- a/libre/soundkonverter-libre/soundkonverter.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} - diff --git a/libre/soundkonverter-parabola/PKGBUILD b/libre/soundkonverter-parabola/PKGBUILD new file mode 100644 index 000000000..e3f8d06d0 --- /dev/null +++ b/libre/soundkonverter-parabola/PKGBUILD @@ -0,0 +1,52 @@ +# $Id: PKGBUILD 109579 2014-04-16 10:34:29Z stativ $ +# Maintainer (Arch): Lukas Jirkovsky +# Contributor (Arch): Mateusz Herych +# Contributor (Arch): Eric Belanger +# Contributor (Arch): Darwin Bautista +# Maintainer: André Silva + +_pkgname=soundkonverter +pkgname=soundkonverter-parabola +pkgver=2.1.1 +pkgrel=1 +pkgdesc="Front-end to various audio converters, without nonfree faac and mac recommendation" +arch=('i686' 'x86_64') +url="http://www.kde-apps.org/content/show.php?content=29024" +license=('GPL') +replaces=("${_pkgname}" "${_pkgname}-libre") +conflicts=("${_pkgname}" "${_pkgname}-libre" ) +provides=(${_pkgname}=${pkgver}) +depends=('kdebase-runtime' 'libkcddb' 'cdparanoia' 'taglib') +makedepends=('automoc4' 'cmake') +optdepends=('cdrkit: cdda2wav backend' + 'faad2: faad backend' + 'ffmpeg: ffmpeg backend' + 'flac: flac backend' + 'fluidsynth: flouidsynth backend' + 'lame: lame backend' + 'mplayer: mplayer backend' + 'mp3gain: mp3gain backend' + 'opus-tools: opus backend' + 'speex: speexenc, speexdec backends' + 'timidity++: midi backend' + 'twolame: twolame backend' + 'vorbisgain: vorbisgain backend' + 'vorbis-tools: vorbis tools backend' + 'wavpack: wavpack backend' + 'sox: sox plugin (change sample rate, various effects)') +install=$_pkgname.install +source=("http://kde-apps.org/CONTENT/content-files/29024-${_pkgname}-${pkgver}.tar.gz") +md5sums=('fa008d90b5c12bc3af569ec104c3b4cc') + +build() { + cd "$srcdir"/$_pkgname-$pkgver + cmake . \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release + make +} + +package() { + cd "$srcdir"/$_pkgname-$pkgver + make DESTDIR="$pkgdir" install +} diff --git a/libre/soundkonverter-parabola/soundkonverter.install b/libre/soundkonverter-parabola/soundkonverter.install new file mode 100644 index 000000000..0e8feb79c --- /dev/null +++ b/libre/soundkonverter-parabola/soundkonverter.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} + diff --git a/libre/syslinux-parabola/PKGBUILD b/libre/syslinux-parabola/PKGBUILD new file mode 100644 index 000000000..575bbaf04 --- /dev/null +++ b/libre/syslinux-parabola/PKGBUILD @@ -0,0 +1,280 @@ +# Maintainer (Arch): Tobias Powalowski +# Maintainer (Arch): Thomas Bächler +# Contributor (Arch): Keshav Amburay <(the ddoott ridikulus ddoott rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> +# Maintainer: André Silva + +## "1" to enable IA32-EFI build in Arch x86_64, "0" to disable +_IA32_EFI_IN_ARCH_X64="1" + +_VER="6.03-pre19" +_GIT_TAG="syslinux-${_VER}" + +_pkgname="syslinux" +pkgname="syslinux-parabola" +pkgver="${_VER/-/}" +pkgrel="1" +arch=('x86_64' 'i686') +pkgdesc="Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE (Parabola rebranded)" +url="http://syslinux.zytor.com/" +license=('GPL2') +options=('!makeflags' '!emptydirs') +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +backup=('boot/syslinux/syslinux.cfg' + 'boot/syslinux/splash.png') +makedepends=('git' 'python2' 'nasm' 'ncurses') +if [[ "$CARCH" == "x86_64" ]]; then + makedepends+=('lib32-glibc') +fi +depends=('glibc') +optdepends=('perl-passwd-md5: For md5pass' + 'perl-digest-sha1: For sha1pass' + 'mtools: For mkdiskimage and syslinux support' + 'gptfdisk: For GPT support' + 'util-linux: For isohybrid' + 'efibootmgr: For EFI support' + 'dosfstools: For EFI support') +install="${_pkgname}.install" +source=("${_pkgname}::git+http://git.zytor.com/syslinux/syslinux.git#tag=${_GIT_TAG}" + "gnu-efi::git+http://git.code.sf.net/p/gnu-efi/code#commit=3c62e78556aea01e9798380cd46794c6ca09d4bd" + 'syslinux.cfg' + 'syslinux-install_update' + 'splash.png') +md5sums=('SKIP' + 'SKIP' + 'f048880b57e2c5a7017ff8804bfda327' + '9376f18fa3e42fc36cffa4cff0a84c09' + 'cb46ca47c6b6323127d908440057d98f') + +_pkgver() { + cd "${srcdir}/${_pkgname}/" + echo "$(git describe --tags)" | sed -e 's|syslinux-||g' -e 's|-pre|pre|g' -e 's|-|.|g' +} + +prepare() { + + mv "${srcdir}/${_pkgname}" "${srcdir}/${_pkgname}-${pkgver}/" + cd "${srcdir}/${_pkgname}-${pkgver}/" + + msg "Run git clean" + git clean -x -d -f + + msg "Do not try to build the Windows or DOS installers and DIAG files" + sed 's|diag libinstaller dos win32 win64 dosutil txt|libinstaller txt|g' -i "${srcdir}/${_pkgname}-${pkgver}/Makefile" || true + sed 's|win32/syslinux.exe win64/syslinux64.exe||g' -i "${srcdir}/${_pkgname}-${pkgver}/Makefile" || true + sed 's|dosutil/*.com dosutil/*.sys||g' -i "${srcdir}/${_pkgname}-${pkgver}/Makefile" || true + sed 's|dos/syslinux.com||g' -i "${srcdir}/${_pkgname}-${pkgver}/Makefile" || true + sed 's|INSTALLSUBDIRS = com32 utils dosutil|INSTALLSUBDIRS = com32 utils|g' -i "${srcdir}/${_pkgname}-${pkgver}/Makefile" || true + sed 's|install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|# install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|g' -i "${srcdir}/${_pkgname}-${pkgver}/Makefile" || true + sed 's|-include $(MAKEDIR)/devel.mk||g' -i "${srcdir}/${_pkgname}-${pkgver}/mk/syslinux.mk" || true + + msg "Fix FHS manpage path" + sed 's|/usr/man|/usr/share/man|g' -i "${srcdir}/${_pkgname}-${pkgver}/mk/syslinux.mk" || true + + cd "${srcdir}/gnu-efi/" + + msg "Run git clean for gnu-efi" + git clean -x -d -f + + msg "Revert gnu-efi Makefile 'make install' problamatic commit" + git revert --no-commit 06744d69273de4945cf0ffcaa4a6abf7cec707b6 + + msg "Prepare gnu-efi source" + cp -r "${srcdir}/gnu-efi/gnu-efi-3.0" "${srcdir}/${_pkgname}-${pkgver}/gnu-efi/gnu-efi-3.0" + + cd "${srcdir}/${_pkgname}-${pkgver}/" + +} + +_build_syslinux_bios() { + + rm -rf "${srcdir}/${_pkgname}-${pkgver}-bios/" || true + cp -r "${srcdir}/${_pkgname}-${pkgver}" "${srcdir}/${_pkgname}-${pkgver}-bios" + + mkdir -p "${srcdir}/${_pkgname}-${pkgver}-bios/OBJDIR" + cd "${srcdir}/${_pkgname}-${pkgver}-bios/" + + msg "Do not try to compile bios build with our default LDFLAGS, it will fail" + unset LDFLAGS + + msg "Run make bios" + make PYTHON="python2" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-bios/OBJDIR" bios + + msg "Run make bios installer" + make PYTHON="python2" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-bios/OBJDIR" bios installer + +} + +_build_syslinux_efi64() { + + rm -rf "${srcdir}/${_pkgname}-${pkgver}-efi64/" || true + cp -r "${srcdir}/${_pkgname}-${pkgver}" "${srcdir}/${_pkgname}-${pkgver}-efi64" + + mkdir -p "${srcdir}/${_pkgname}-${pkgver}-efi64/OBJDIR/efi64/" + cd "${srcdir}/${_pkgname}-${pkgver}-efi64/gnu-efi/gnu-efi-3.0/" + + msg "Unset all compiler FLAGS for gnu-efi efi64 build" + unset CFLAGS + unset CPPFLAGS + unset CXXFLAGS + unset LDFLAGS + unset MAKEFLAGS + + msg "Run make gnu-efi for syslinux efi64" + make ARCH="x86_64" -j1 + + msg "Run make install gnu-efi for syslinux efi64" + make ARCH="x86_64" PREFIX="${srcdir}/${_pkgname}-${pkgver}-efi64/OBJDIR/efi64/" -j1 install + + cd "${srcdir}/${_pkgname}-${pkgver}-efi64/" + + msg "Unset all compiler FLAGS for efi64 build" + unset CFLAGS + unset CPPFLAGS + unset CXXFLAGS + unset LDFLAGS + unset MAKEFLAGS + + msg "Run make efi64" + make PYTHON="python2" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-efi64/OBJDIR" efi64 + + msg "Run make efi64 installer" + make PYTHON="python2" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-efi64/OBJDIR" efi64 installer + +} + +_build_syslinux_efi32() { + + rm -rf "${srcdir}/${_pkgname}-${pkgver}-efi32/" || true + cp -r "${srcdir}/${_pkgname}-${pkgver}" "${srcdir}/${_pkgname}-${pkgver}-efi32" + + mkdir -p "${srcdir}/${_pkgname}-${pkgver}-efi32/OBJDIR/efi32/" + cd "${srcdir}/${_pkgname}-${pkgver}-efi32/gnu-efi/gnu-efi-3.0/" + + msg "Unset all compiler FLAGS for gnu-efi efi32 build" + unset CFLAGS + unset CPPFLAGS + unset CXXFLAGS + unset LDFLAGS + unset MAKEFLAGS + + msg "Run make gnu-efi for syslinux efi32" + make ARCH="ia32" -j1 + + msg "Run make install gnu-efi for syslinux efi32" + make ARCH="ia32" PREFIX="${srcdir}/${_pkgname}-${pkgver}-efi32/OBJDIR/efi32/" install + + cd "${srcdir}/${_pkgname}-${pkgver}-efi32/" + + msg "Unset all compiler FLAGS for efi32 build" + unset CFLAGS + unset CPPFLAGS + unset CXXFLAGS + unset LDFLAGS + unset MAKEFLAGS + + msg "Run make efi32" + make PYTHON="python2" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-efi32/OBJDIR" efi32 + + msg "Run make efi32 installer" + make PYTHON="python2" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-efi32/OBJDIR" efi32 installer + +} + +build() { + + cd "${srcdir}/${_pkgname}-${pkgver}/" + + if [[ "${CARCH}" == "x86_64" ]]; then + msg "Build syslinux efi64" + _build_syslinux_efi64 + + if [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then + msg "Build syslinux efi32" + _build_syslinux_efi32 + fi + fi + + if [[ "${CARCH}" == "i686" ]]; then + msg "Build syslinux efi32" + _build_syslinux_efi32 + fi + + msg "Build syslinux bios" + _build_syslinux_bios + +} + +_package_syslinux_bios() { + + cd "${srcdir}/${_pkgname}-${pkgver}-bios/" + + msg "Install Syslinux bios" + make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/bios/" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-bios/OBJDIR" bios install + + msg "Remove syslinux.exe,syslinux64.exe,syslinux.com and dosutil dir" + rm "${pkgdir}/usr/lib/syslinux/bios"/syslinux.{com,exe} || true + rm "${pkgdir}/usr/lib/syslinux/bios/syslinux64.exe" || true + rm -rf "${pkgdir}/usr/lib/syslinux/bios/dosutil/" || true + + msg "Remove com32 and diag dirs" + rm -rf "${pkgdir}/usr/lib/syslinux/bios/diag/" || true + rm -rf "${pkgdir}/usr/lib/syslinux/bios/com32/" || true + + msg "Move extlinux binary to /usr/bin" + install -d "${pkgdir}/usr/bin" + mv "${pkgdir}/sbin/extlinux" "${pkgdir}/usr/bin/extlinux" + rm -rf "${pkgdir}/sbin/" + + msg "Install syslinux docs" + install -d "${pkgdir}/usr/share/doc" + cp -ar "${srcdir}/${_pkgname}-${pkgver}/doc" "${pkgdir}/usr/share/doc/syslinux" + + msg "Install syslinux.cfg" + install -D -m0644 "${srcdir}/syslinux.cfg" "${pkgdir}/boot/syslinux/syslinux.cfg" + + msg "Install the syslinux-install_update script" + ## This script is maintained at https://gist.github.com/pyther/772138 + ## Script not yet updated for syslinux-efi + install -D -m0755 "${srcdir}/syslinux-install_update" "${pkgdir}/usr/bin/syslinux-install_update" + + msg "Install Parabola splash" + install -D -m644 "${srcdir}/splash.png" "${pkgdir}/boot/syslinux/splash.png" +} + +_package_syslinux_efi() { + + cd "${srcdir}/${_pkgname}-${pkgver}/" + + if [[ "${CARCH}" == "x86_64" ]]; then + cd "${srcdir}/${_pkgname}-${pkgver}-efi64/" + msg "Install Syslinux efi64" + make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-efi64/OBJDIR" efi64 install + + if [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then + cd "${srcdir}/${_pkgname}-${pkgver}-efi32/" + msg "Install Syslinux efi32" + make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-efi32/OBJDIR" efi32 install + fi + fi + + if [[ "${CARCH}" == "i686" ]]; then + cd "${srcdir}/${_pkgname}-${pkgver}-efi32/" + msg "Install Syslinux efi32" + make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/" OBJDIR="${srcdir}/${_pkgname}-${pkgver}-efi32/OBJDIR" efi32 install + fi + +} + +package() { + + cd "${srcdir}/${_pkgname}-${pkgver}/" + + msg "Package Syslinux efi" + _package_syslinux_efi + + msg "Package Syslinux bios" + _package_syslinux_bios + +} diff --git a/libre/syslinux-parabola/splash.png b/libre/syslinux-parabola/splash.png new file mode 100644 index 000000000..eac14536b Binary files /dev/null and b/libre/syslinux-parabola/splash.png differ diff --git a/libre/syslinux-parabola/splash.xcf b/libre/syslinux-parabola/splash.xcf new file mode 100644 index 000000000..c27d04445 Binary files /dev/null and b/libre/syslinux-parabola/splash.xcf differ diff --git a/libre/syslinux-parabola/syslinux-6.02-fix-bios-isolinux.patch b/libre/syslinux-parabola/syslinux-6.02-fix-bios-isolinux.patch new file mode 100644 index 000000000..48df46f12 --- /dev/null +++ b/libre/syslinux-parabola/syslinux-6.02-fix-bios-isolinux.patch @@ -0,0 +1,12 @@ +diff --git a/core/isolinux.asm b/core/isolinux.asm +index bd4e9556922d..c4db4133e274 100644 +--- a/core/isolinux.asm ++++ b/core/isolinux.asm +@@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K) + call getlinsec + pop eax + pop cx +- mov dx,cx ++ movzx edx,cx + pop bp + pop bx diff --git a/libre/syslinux-parabola/syslinux-6.02-fix-chainloading.patch b/libre/syslinux-parabola/syslinux-6.02-fix-chainloading.patch new file mode 100644 index 000000000..6fd7ef4a8 --- /dev/null +++ b/libre/syslinux-parabola/syslinux-6.02-fix-chainloading.patch @@ -0,0 +1,47 @@ +Reported-by: Dark Raven +Signed-off-by: Raphael S. Carvalho +--- + com32/lib/syslinux/disk.c | 22 ++++++++++++++-------- + 1 files changed, 14 insertions(+), 8 deletions(-) + +diff --git a/com32/lib/syslinux/disk.c b/com32/lib/syslinux/disk.c +index 0b0c737..47ecb52 100644 +--- a/com32/lib/syslinux/disk.c ++++ b/com32/lib/syslinux/disk.c +@@ -171,22 +171,28 @@ out: + static void *ebios_setup(const struct disk_info *const diskinfo, com32sys_t *inreg, + uint64_t lba, uint8_t count, uint8_t op_code) + { +- static __lowmem struct disk_ebios_dapa dapa; ++ static struct disk_ebios_dapa *dapa = NULL; + void *buf; + ++ if (!dapa) { ++ dapa = lmalloc(sizeof *dapa); ++ if (!dapa) ++ return NULL; ++ } ++ + buf = lmalloc(count * diskinfo->bps); + if (!buf) + return NULL; + +- dapa.len = sizeof(dapa); +- dapa.count = count; +- dapa.off = OFFS(buf); +- dapa.seg = SEG(buf); +- dapa.lba = lba; ++ dapa->len = sizeof(*dapa); ++ dapa->count = count; ++ dapa->off = OFFS(buf); ++ dapa->seg = SEG(buf); ++ dapa->lba = lba; + + inreg->eax.b[1] = op_code; +- inreg->esi.w[0] = OFFS(&dapa); +- inreg->ds = SEG(&dapa); ++ inreg->esi.w[0] = OFFS(dapa); ++ inreg->ds = SEG(dapa); + inreg->edx.b[0] = diskinfo->disk; + + return buf; diff --git a/libre/syslinux-parabola/syslinux-6.02-fix-efi-ovmf.patch b/libre/syslinux-parabola/syslinux-6.02-fix-efi-ovmf.patch new file mode 100644 index 000000000..f33f4c1de --- /dev/null +++ b/libre/syslinux-parabola/syslinux-6.02-fix-efi-ovmf.patch @@ -0,0 +1,621 @@ +The value of the field rva_and_sizes_nr is used by OVMF to check the +consistency of the PE file with respect to the field optional_hdr_sz. It +now have the right value. + +Signed-off-by: Celelibi +--- + efi/wrapper.c | 6 +++--- + efi/wrapper.h | 28 ++++++++++++++++------------ + 2 files changed, 19 insertions(+), 15 deletions(-) + +diff --git a/efi/wrapper.c b/efi/wrapper.c +index 04c895f..ec77271 100644 +--- a/efi/wrapper.c ++++ b/efi/wrapper.c +@@ -102,7 +102,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + e_hdr.image_sz = total_sz; + e_hdr.headers_sz = 512; + e_hdr.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; +- e_hdr.rva_and_sizes_nr = 1; ++ e_hdr.rva_and_sizes_nr = sizeof(e_hdr.data_directory) / sizeof(__uint64_t); + fwrite(&e_hdr, sizeof(e_hdr), 1, f); + } + else if (class == ELFCLASS64) { +@@ -130,7 +130,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + e_hdr_pe32p.image_sz = total_sz; + e_hdr_pe32p.headers_sz = 512; + e_hdr_pe32p.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; +- e_hdr_pe32p.rva_and_sizes_nr = 1; ++ e_hdr_pe32p.rva_and_sizes_nr = sizeof(e_hdr_pe32p.data_directory) / sizeof(__uint64_t); + fwrite(&e_hdr_pe32p, sizeof(e_hdr_pe32p), 1, f); + } + +@@ -237,7 +237,7 @@ int main(int argc, char **argv) + fprintf(stderr, "Unsupported architecture\n"); + exit(EXIT_FAILURE); + } +- ++ + if (id[EI_MAG0] != ELFMAG0 || + id[EI_MAG1] != ELFMAG1 || + id[EI_MAG2] != ELFMAG2 || +diff --git a/efi/wrapper.h b/efi/wrapper.h +index 4f76991..0e6b38e 100644 +--- a/efi/wrapper.h ++++ b/efi/wrapper.h +@@ -102,12 +102,14 @@ struct extra_hdr { + __uint32_t heap_commit_sz; + __uint32_t loader_flags; + __uint32_t rva_and_sizes_nr; +- __uint64_t export_table; +- __uint64_t import_table; +- __uint64_t resource_table; +- __uint64_t exception_table; +- __uint64_t certification_table; +- __uint64_t base_relocation_table; ++ struct { ++ __uint64_t export_table; ++ __uint64_t import_table; ++ __uint64_t resource_table; ++ __uint64_t exception_table; ++ __uint64_t certification_table; ++ __uint64_t base_relocation_table; ++ } data_directory; + } __packed; + + /* Extra header for PE32+ format +@@ -136,12 +138,14 @@ struct extra_hdr_pe32p { + __uint64_t heap_commit_sz; + __uint32_t loader_flags; + __uint32_t rva_and_sizes_nr; +- __uint64_t export_table; +- __uint64_t import_table; +- __uint64_t resource_table; +- __uint64_t exception_table; +- __uint64_t certification_table; +- __uint64_t base_relocation_table; ++ struct { ++ __uint64_t export_table; ++ __uint64_t import_table; ++ __uint64_t resource_table; ++ __uint64_t exception_table; ++ __uint64_t certification_table; ++ __uint64_t base_relocation_table; ++ } data_directory; + } __packed; + + struct section { +In the generated PE file, the section header for the .text section used +to address more than the whole file. Starting at offset 0 (before the +end of the headers) is illegal and is rejected by OVMF. Giving a size +greater than the actual file size is also illegal and rejected. + +Moreover, the actual data inside the PE file have to be aligned to at +least 512 bytes. Hence, .text need to be aligned as well. + +Signed-off-by: Celelibi +--- + efi/wrapper.c | 44 +++++++++++++++++++++++++------------------- + 1 file changed, 25 insertions(+), 19 deletions(-) + +diff --git a/efi/wrapper.c b/efi/wrapper.c +index ec77271..bd2c175 100644 +--- a/efi/wrapper.c ++++ b/efi/wrapper.c +@@ -54,11 +54,15 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + struct coff_hdr c_hdr; + struct header hdr; + struct coff_reloc c_rel; +- __uint32_t total_sz = so_size; ++ __uint32_t total_sz = data_size; + __uint32_t dummy = 0; + __uint32_t hdr_sz; + __uint32_t reloc_start, reloc_end; + ++ hdr_sz = 512; ++ total_sz += hdr_sz; ++ entry += hdr_sz; ++ + memset(&hdr, 0, sizeof(hdr)); + hdr.msdos_signature = MSDOS_SIGNATURE; + +@@ -77,11 +81,6 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + c_hdr.nr_sections = 2; + c_hdr.nr_syms = 1; + if (class == ELFCLASS32) { +- hdr_sz = sizeof(o_hdr) + sizeof(t_sec) + sizeof(e_hdr) + +- sizeof(r_sec) + sizeof(c_hdr) + sizeof(hdr) + sizeof(c_rel) +- + sizeof(dummy); +- total_sz += hdr_sz; +- entry += hdr_sz; + c_hdr.arch = IMAGE_FILE_MACHINE_I386; + c_hdr.characteristics = IMAGE_FILE_32BIT_MACHINE | + IMAGE_FILE_DEBUG_STRIPPED | IMAGE_FILE_EXECUTABLE_IMAGE | +@@ -92,25 +91,20 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + o_hdr.format = PE32_FORMAT; + o_hdr.major_linker_version = 0x02; + o_hdr.minor_linker_version = 0x14; +- o_hdr.code_sz = total_sz; ++ o_hdr.code_sz = data_size; + o_hdr.entry_point = entry; + o_hdr.initialized_data_sz = data_size; + fwrite(&o_hdr, sizeof(o_hdr), 1, f); + memset(&e_hdr, 0, sizeof(e_hdr)); + e_hdr.section_align = 4096; + e_hdr.file_align = 512; +- e_hdr.image_sz = total_sz; +- e_hdr.headers_sz = 512; ++ e_hdr.image_sz = hdr_sz + so_size; ++ e_hdr.headers_sz = hdr_sz; + e_hdr.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; + e_hdr.rva_and_sizes_nr = sizeof(e_hdr.data_directory) / sizeof(__uint64_t); + fwrite(&e_hdr, sizeof(e_hdr), 1, f); + } + else if (class == ELFCLASS64) { +- hdr_sz = sizeof(o_hdr_pe32p) + sizeof(t_sec) + sizeof(e_hdr_pe32p) + +- sizeof(r_sec) + sizeof(c_hdr) + sizeof(hdr) + sizeof(c_rel) +- + sizeof(dummy); +- total_sz += hdr_sz; +- entry += hdr_sz; + c_hdr.arch = IMAGE_FILE_MACHINE_X86_64; + c_hdr.characteristics = IMAGE_FILE_DEBUG_STRIPPED | IMAGE_FILE_EXECUTABLE_IMAGE | + IMAGE_FILE_LINE_NUMBERS_STRIPPED; +@@ -120,15 +114,15 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + o_hdr_pe32p.format = PE32P_FORMAT; + o_hdr_pe32p.major_linker_version = 0x02; + o_hdr_pe32p.minor_linker_version = 0x14; +- o_hdr_pe32p.code_sz = total_sz; ++ o_hdr_pe32p.code_sz = data_size; + o_hdr_pe32p.entry_point = entry; + o_hdr.initialized_data_sz = data_size; + fwrite(&o_hdr_pe32p, sizeof(o_hdr_pe32p), 1, f); + memset(&e_hdr_pe32p, 0, sizeof(e_hdr)); + e_hdr_pe32p.section_align = 4096; + e_hdr_pe32p.file_align = 512; +- e_hdr_pe32p.image_sz = total_sz; +- e_hdr_pe32p.headers_sz = 512; ++ e_hdr_pe32p.image_sz = hdr_sz + so_size; ++ e_hdr_pe32p.headers_sz = hdr_sz; + e_hdr_pe32p.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; + e_hdr_pe32p.rva_and_sizes_nr = sizeof(e_hdr_pe32p.data_directory) / sizeof(__uint64_t); + fwrite(&e_hdr_pe32p, sizeof(e_hdr_pe32p), 1, f); +@@ -136,8 +130,10 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + + memset(&t_sec, 0, sizeof(t_sec)); + strcpy((char *)t_sec.name, ".text"); +- t_sec.virtual_sz = total_sz; +- t_sec.raw_data_sz = total_sz; ++ t_sec.virtual_sz = data_size; ++ t_sec.virtual_address = hdr_sz; ++ t_sec.raw_data_sz = t_sec.virtual_sz; ++ t_sec.raw_data = t_sec.virtual_address; + t_sec.characteristics = IMAGE_SCN_CNT_CODE | + IMAGE_SCN_ALIGN_16BYTES | IMAGE_SCN_MEM_EXECUTE | + IMAGE_SCN_MEM_READ; +@@ -163,6 +159,16 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + fwrite(&c_rel, sizeof(c_rel), 1, f); + fwrite(&dummy, sizeof(dummy), 1, f); + ++ /* ++ * Add some padding to align the ELF as needed ++ */ ++ if (ftell(f) > t_sec.virtual_address) { ++ // A fseek that rewind would be a bug hard to track ++ fprintf(stderr, "PE+ headers are too large.\n"); ++ exit(EXIT_FAILURE); ++ } ++ ++ fseek(f, t_sec.virtual_address, SEEK_SET); + } + + static void usage(char *progname) +There is no need to have a relocation section that nothing points at. +The image is still seen as relocatable as long as the Characteristics of +the FileHeader do not say otherwise. + +Moreover, the field base_relocation_table wasn't initialized properly +leading to unpredictable bugs. + +Signed-off-by: Celelibi +--- + +I'm not 100% positive about the uselessness of the relocation section. However: +1) it works on my real hardware; +2) OVMF doesn't check the section headers at all; +3) all the docs I could find say that the section names are arbitrary; +4) the only way to make the relocation actually happen is by setting the +base_relocation_table field of the extra headers to point to this section; +5) The right way to indicate the image is not relocatable would be by setting +the characteristics IMAGE_FILE_RELOCS_STRIPPED in the coff header. + +Moreover, the relocation entry cannot be inserted before the end of the headers +(512 bytes), this mean we would have to push everything a few bytes further. +And I think it's better if it can be avoided. :) + + efi/wrapper.c | 28 +++------------------------- + 1 file changed, 3 insertions(+), 25 deletions(-) + +diff --git a/efi/wrapper.c b/efi/wrapper.c +index bd2c175..9652368 100644 +--- a/efi/wrapper.c ++++ b/efi/wrapper.c +@@ -48,14 +48,12 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + { + struct optional_hdr o_hdr; + struct optional_hdr_pe32p o_hdr_pe32p; +- struct section t_sec, r_sec; ++ struct section t_sec; + struct extra_hdr e_hdr; + struct extra_hdr_pe32p e_hdr_pe32p; + struct coff_hdr c_hdr; + struct header hdr; +- struct coff_reloc c_rel; + __uint32_t total_sz = data_size; +- __uint32_t dummy = 0; + __uint32_t hdr_sz; + __uint32_t reloc_start, reloc_end; + +@@ -78,7 +76,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + fwrite(&hdr, sizeof(hdr), 1, f); + + memset(&c_hdr, 0, sizeof(c_hdr)); +- c_hdr.nr_sections = 2; ++ c_hdr.nr_sections = 1; + c_hdr.nr_syms = 1; + if (class == ELFCLASS32) { + c_hdr.arch = IMAGE_FILE_MACHINE_I386; +@@ -118,7 +116,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + o_hdr_pe32p.entry_point = entry; + o_hdr.initialized_data_sz = data_size; + fwrite(&o_hdr_pe32p, sizeof(o_hdr_pe32p), 1, f); +- memset(&e_hdr_pe32p, 0, sizeof(e_hdr)); ++ memset(&e_hdr_pe32p, 0, sizeof(e_hdr_pe32p)); + e_hdr_pe32p.section_align = 4096; + e_hdr_pe32p.file_align = 512; + e_hdr_pe32p.image_sz = hdr_sz + so_size; +@@ -140,26 +138,6 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + fwrite(&t_sec, sizeof(t_sec), 1, f); + + /* +- * Write our dummy relocation and reloc section. +- */ +- memset(&r_sec, 0, sizeof(r_sec)); +- strcpy((char *)r_sec.name, ".reloc"); +- r_sec.virtual_sz = sizeof(c_rel); +- r_sec.virtual_address = ftell(f) + sizeof(r_sec); +- r_sec.raw_data_sz = r_sec.virtual_sz; +- r_sec.raw_data = r_sec.virtual_address; +- r_sec.characteristics = IMAGE_SCN_CNT_INITIALIZED_DATA | +- IMAGE_SCN_ALIGN_1BYTES | IMAGE_SCN_MEM_DISCARDABLE | +- IMAGE_SCN_MEM_READ; +- fwrite(&r_sec, sizeof(r_sec), 1, f); +- +- memset(&c_rel, 0, sizeof(c_rel)); +- c_rel.virtual_address = ftell(f) + sizeof(c_rel); +- c_rel.symtab_index = 10; +- fwrite(&c_rel, sizeof(c_rel), 1, f); +- fwrite(&dummy, sizeof(dummy), 1, f); +- +- /* + * Add some padding to align the ELF as needed + */ + if (ftell(f) > t_sec.virtual_address) { +PE headers code_sz and image_sz indicate more or less, the size of the +file and the size of the in-memory image. They are now given the right +value. + +In the ELF format, only the program headers are reliable to determine +the actually needed part of the file and the in-memory size. + +The .bss section should always be marked as NOLOAD for ld since its +content shouldn't be included into the binary file. + +Signed-off-by: Celelibi +--- + +Again, I'm not 100% positive about the semantics of NOLOAD in a linker script. +However I found this make things work better. +Actually the file core/fs/fs.o have a .bss16 section that is not empty. If I +understood correctly, only .bss can be empty in a .o. Thus ld generates the +zeros that belong to that section in the .o. Then, when merging the section +.bss16 into the .bss of syslinux.so, ld is forced to generate ALL the zeros +that belong to the .bss section. Marking this section as NOLOAD make ld to +ignore its content but still produce a PT_LOAD program header with the right +memory size, as needed for the bss. + + efi/i386/syslinux.ld | 4 +- + efi/wrapper.c | 138 +++++++++++++++---------------------------------- + efi/x86_64/syslinux.ld | 4 +- + 3 files changed, 45 insertions(+), 101 deletions(-) + +diff --git a/efi/i386/syslinux.ld b/efi/i386/syslinux.ld +index 523a9b9..bab3fc7 100644 +--- a/efi/i386/syslinux.ld ++++ b/efi/i386/syslinux.ld +@@ -136,7 +136,7 @@ SECTIONS + *(.strtab) + } + +- .bss : { ++ .bss (NOLOAD) : { + /* the EFI loader doesn't seem to like a .bss section, + so we stick it all into .data: */ + __bss_start = .; +@@ -153,7 +153,7 @@ SECTIONS + __bss_dwords = (__bss_len + 3) >> 2; + + . = ALIGN(128); +- ++ + /* Very large objects which don't need to be zeroed */ + + .hugebss : { +diff --git a/efi/wrapper.c b/efi/wrapper.c +index 9652368..a5247ae 100644 +--- a/efi/wrapper.c ++++ b/efi/wrapper.c +@@ -35,7 +35,7 @@ typedef Elf64_Addr Elf_Addr; + #endif + + /* +- * 'so_size' is the file size of the ELF shared object. ++ * 'so_memsz' is the size of the ELF shared object once loaded. + * 'data_size' is the size of initialised data in the shared object. + * 'class' dictates how the header is written + * For 32bit machines (class == ELFCLASS32), the optional +@@ -44,7 +44,7 @@ typedef Elf64_Addr Elf_Addr; + * header includes PE32+header fields + */ + static void write_header(FILE *f, __uint32_t entry, size_t data_size, +- __uint32_t so_size, __uint8_t class) ++ __uint32_t so_memsz, __uint8_t class) + { + struct optional_hdr o_hdr; + struct optional_hdr_pe32p o_hdr_pe32p; +@@ -96,7 +96,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + memset(&e_hdr, 0, sizeof(e_hdr)); + e_hdr.section_align = 4096; + e_hdr.file_align = 512; +- e_hdr.image_sz = hdr_sz + so_size; ++ e_hdr.image_sz = hdr_sz + so_memsz; + e_hdr.headers_sz = hdr_sz; + e_hdr.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; + e_hdr.rva_and_sizes_nr = sizeof(e_hdr.data_directory) / sizeof(__uint64_t); +@@ -119,7 +119,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, + memset(&e_hdr_pe32p, 0, sizeof(e_hdr_pe32p)); + e_hdr_pe32p.section_align = 4096; + e_hdr_pe32p.file_align = 512; +- e_hdr_pe32p.image_sz = hdr_sz + so_size; ++ e_hdr_pe32p.image_sz = hdr_sz + so_memsz; + e_hdr_pe32p.headers_sz = hdr_sz; + e_hdr_pe32p.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; + e_hdr_pe32p.rva_and_sizes_nr = sizeof(e_hdr_pe32p.data_directory) / sizeof(__uint64_t); +@@ -157,17 +157,16 @@ static void usage(char *progname) + + int main(int argc, char **argv) + { +- struct stat st; + Elf32_Ehdr e32_hdr; + Elf64_Ehdr e64_hdr; + __uint32_t entry; + __uint8_t class; +- __uint64_t shoff; +- __uint16_t shnum, shentsize, shstrndx; ++ __uint64_t phoff = 0; ++ __uint16_t phnum = 0, phentsize = 0; + unsigned char *id; + FILE *f_in, *f_out; + void *buf; +- size_t datasz, rv; ++ size_t datasz, memsz, rv; + + if (argc < 3) { + usage(argv[0]); +@@ -180,11 +179,6 @@ int main(int argc, char **argv) + exit(EXIT_FAILURE); + } + +- if (stat(argv[1], &st) != 0) { +- perror("stat"); +- exit(EXIT_FAILURE); +- } +- + f_out = fopen(argv[2], "w"); + if (!f_out) { + perror("fopen"); +@@ -194,15 +188,14 @@ int main(int argc, char **argv) + /* + * Parse the ELF header and find the entry point. + */ +- fread((void *)&e32_hdr, sizeof(e32_hdr), 1, f_in); ++ fread((void *)&e32_hdr, sizeof(e32_hdr), 1, f_in); + if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS32) { + id = e32_hdr.e_ident; + class = ELFCLASS32; + entry = e32_hdr.e_entry; +- shoff = e32_hdr.e_shoff; +- shnum = e32_hdr.e_shnum; +- shstrndx = e32_hdr.e_shstrndx; +- shentsize = e32_hdr.e_shentsize; ++ phoff = e32_hdr.e_phoff; ++ phnum = e32_hdr.e_phnum; ++ phentsize = e32_hdr.e_phentsize; + } + else if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS64) { + /* read the header again for x86_64 +@@ -213,10 +206,9 @@ int main(int argc, char **argv) + fread((void *)&e64_hdr, sizeof(e64_hdr), 1, f_in); + id = e64_hdr.e_ident; + entry = e64_hdr.e_entry; +- shoff = e64_hdr.e_shoff; +- shnum = e64_hdr.e_shnum; +- shstrndx = e64_hdr.e_shstrndx; +- shentsize = e64_hdr.e_shentsize; ++ phoff = e64_hdr.e_phoff; ++ phnum = e64_hdr.e_phnum; ++ phentsize = e64_hdr.e_phentsize; + } else { + fprintf(stderr, "Unsupported architecture\n"); + exit(EXIT_FAILURE); +@@ -230,98 +222,47 @@ int main(int argc, char **argv) + exit(EXIT_FAILURE); + } + +- if (!shoff || !shnum || (shstrndx == SHN_UNDEF)) { +- fprintf(stderr, "Cannot find section table\n"); ++ if (!phoff || !phnum) { ++ fprintf(stderr, "Cannot find segment table\n"); + exit(EXIT_FAILURE); + } + + /* +- * Find the beginning of the .bss section. Everything preceding +- * it is copied verbatim to the output file. ++ * Find the LOAD program header. Everything in this segment ++ * is copied verbatim to the output file. ++ * Although there may be several LOAD program headers, only ++ * one is currently copied. + */ + if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS32) { +- const char *shstrtab, *name; +- Elf32_Shdr shdr; ++ Elf32_Phdr phdr; + int i; +- void *strtab; +- +- fseek(f_in, shoff, SEEK_SET); +- +- /* First find the strtab section */ +- fseek(f_in, shstrndx * shentsize, SEEK_CUR); +- fread(&shdr, sizeof(shdr), 1, f_in); + +- strtab = malloc(shdr.sh_size); +- if (!strtab) { +- fprintf(stderr, "Failed to malloc strtab\n"); +- exit(EXIT_FAILURE); +- } +- +- fseek(f_in, shdr.sh_offset, SEEK_SET); +- fread(strtab, shdr.sh_size, 1, f_in); +- +- /* Now search for the .bss section */ +- fseek(f_in, shoff, SEEK_SET); +- for (i = 0; i < shnum; i++) { +- rv = fread(&shdr, sizeof(shdr), 1, f_in); +- if (!rv) { +- fprintf(stderr, "Failed to read section table\n"); +- exit(EXIT_FAILURE); +- } ++ /* Find the first LOAD program header */ ++ for (i = 0; i < phnum; i++) { ++ fseek(f_in, phoff + i * phentsize, SEEK_SET); ++ fread(&phdr, sizeof(phdr), 1, f_in); + +- name = strtab + shdr.sh_name; +- if (!strcmp(name, ".bss")) ++ if (phdr.p_type == PT_LOAD) + break; + } + +- if (i == shnum) { +- fprintf(stderr, "Failed to find .bss section\n"); +- exit(EXIT_FAILURE); +- } +- +- datasz = shdr.sh_offset; +- } +- else if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS64) { +- const char *shstrtab, *name; +- Elf64_Shdr shdr; ++ datasz = phdr.p_filesz; ++ memsz = phdr.p_memsz; ++ } else if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS64) { ++ Elf64_Phdr phdr; + int i; +- void *strtab; +- +- fseek(f_in, shoff, SEEK_SET); + +- /* First find the strtab section */ +- fseek(f_in, shstrndx * shentsize, SEEK_CUR); +- fread(&shdr, sizeof(shdr), 1, f_in); +- +- strtab = malloc(shdr.sh_size); +- if (!strtab) { +- fprintf(stderr, "Failed to malloc strtab\n"); +- exit(EXIT_FAILURE); +- } ++ /* Find the first LOAD program header */ ++ for (i = 0; i < phnum; i++) { ++ fseek(f_in, phoff + i * phentsize, SEEK_SET); ++ fread(&phdr, sizeof(phdr), 1, f_in); + +- fseek(f_in, shdr.sh_offset, SEEK_SET); +- fread(strtab, shdr.sh_size, 1, f_in); +- +- /* Now search for the .bss section */ +- fseek(f_in, shoff, SEEK_SET); +- for (i = 0; i < shnum; i++) { +- rv = fread(&shdr, sizeof(shdr), 1, f_in); +- if (!rv) { +- fprintf(stderr, "Failed to read section table\n"); +- exit(EXIT_FAILURE); +- } +- +- name = strtab + shdr.sh_name; +- if (!strcmp(name, ".bss")) ++ if (phdr.p_type == PT_LOAD) + break; + } + +- if (i == shnum) { +- fprintf(stderr, "Failed to find .bss section\n"); +- exit(EXIT_FAILURE); +- } +- +- datasz = shdr.sh_offset; ++ datasz = phdr.p_filesz; ++ memsz = phdr.p_memsz; + } + + buf = malloc(datasz); +@@ -330,7 +271,7 @@ int main(int argc, char **argv) + exit(EXIT_FAILURE); + } + +- write_header(f_out, entry, datasz, st.st_size, class); ++ write_header(f_out, entry, datasz, memsz, class); + + /* Write out the entire ELF shared object */ + rewind(f_in); +@@ -341,5 +282,8 @@ int main(int argc, char **argv) + } + + fwrite(buf, datasz, rv, f_out); ++ free(buf); ++ fclose(f_out); ++ fclose(f_in); + return 0; + } +diff --git a/efi/x86_64/syslinux.ld b/efi/x86_64/syslinux.ld +index 95160bd..450641c 100644 +--- a/efi/x86_64/syslinux.ld ++++ b/efi/x86_64/syslinux.ld +@@ -136,7 +136,7 @@ SECTIONS + *(.strtab) + } + +- .bss : { ++ .bss (NOLOAD) : { + /* the EFI loader doesn't seem to like a .bss section, + so we stick it all into .data: */ + __bss_start = .; +@@ -153,7 +153,7 @@ SECTIONS + __bss_dwords = (__bss_len + 3) >> 2; + + . = ALIGN(128); +- ++ + /* Very large objects which don't need to be zeroed */ + + .hugebss : { diff --git a/libre/syslinux-parabola/syslinux-install_update b/libre/syslinux-parabola/syslinux-install_update new file mode 100644 index 000000000..3843b5fed --- /dev/null +++ b/libre/syslinux-parabola/syslinux-install_update @@ -0,0 +1,453 @@ +#!/usr/bin/env bash +# +# Syslinux Installer / Updater Script (for BIOS only) +# Copyright (C) 2011-2013 Matthew Gyurgyik +# Copyright (C) 2013 Keshav Padram Amburay <(the) (ddoott) (ridikulus) (ddoott) (rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +#----------------- +# ChangeLog: +# 2013-10-23 : Keshav Padram Amburay : Updated script to work with Syslinux 6.02 Arch Linux pkg +#----------------- +# Exit Codes: +# 1 - get_boot_device or other function failed +# 2 - install/update failed +# 3 - set_active failed +# 4 - install_mbr failed +#----------------- + +shopt -s nullglob + +bios_libpath="/usr/lib/syslinux/bios" +bios_bootpath="/boot/syslinux" +EXTLINUX="/usr/bin/extlinux" + +bios_autoupdate_file="/boot/syslinux/SYSLINUX_AUTOUPDATE" +pciids_file="/usr/share/hwdata/pci.ids" + +## Helper functions ## +# Taken from libui-sh +# $1 needle +# $2 set (array) haystack +check_is_in() { + local needle="$1" element + shift + for element; do + [[ $element = $needle ]] && return 0 + done + return 1 +} + +# return true when blockdevice is an md raid, otherwise return a unset value +# get all devices that are part of raid device $1 +device_is_raid() { + [[ $1 && -f /proc/mdstat ]] || return 1 + local devmajor=$(stat -c %t "$1") + (( devmajor == 9 )) +} + +mdraid_all_slaves() { + local slave slaves + for slave in /sys/class/block/${1##*/}/slaves/*; do + source "$slave/uevent" + slaves="$slaves/dev/$DEVNAME " + unset DEVNAME + done + echo $slaves +} + +# Check /sys/block to see if device is partitioned +# If we have a partitioned block device (sda1) /sys/block/sda1/dev will not exist +# However, if we have an unpartitioned block device (sda) /sys/block/sda/dev will exist +dev_is_part() { + # $1 - blockdevice + local dev=$1 + + # If block device uevent file should be found + # If a partition is passed in path shouldn't exist + if [[ $dev = *cciss* ]]; then + [[ -f /sys/block/cciss\!${dev##*/}/dev ]] && return 1 + elif [[ $dev = *ida* ]]; then + [[ -f /sys/block/ida\!${dev##*/}/dev ]] && return 1 + else + [[ -f /sys/block/${dev##*/}/dev ]] && return 1 + fi + + return 0 +} + +# If EFI PART is present in the first 8 bytes then it must be a GPT disk +device_is_gpt() { + local partsig=$(dd if="$1" skip=64 bs=8 count=1 2>/dev/null) + [[ $partsig = "EFI PART" ]] +} + +clear_gpt_attr2() { + # $1 - Block Device, no partitions + local disk=$1 + + # Special Exception for cciss controllers + if [[ $disk = *cciss* ]]; then + for part in /dev/cciss/${disk##*/}*p*; do + local partnum="${part##*[[:alpha:]]}" + sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null + done + # Smart 2 Controllers + elif [[ $disk = *ida* ]]; then + for part in /dev/ida/${disk##*/}*p*; do + local partnum="${part##*[[:alpha:]]}" + sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null + done + else + for part in /sys/block/${disk##*/}/${disk##*/}*; do + local partnum="${part##*[[:alpha:]]}" + sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null + done + fi + return 0 +} + +usage() { +cat << EOF +usage: $0 options + +This script will install or upgrade Syslinux (for BIOS only) + +OPTIONS: + -h Show this message + -i Install Syslinux + -u Update Syslinux + -a Set Boot flag on boot partiton + -m Install Syslinux MBR + -s Updates Syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists + + Arguments Required: + -c Chroot install (ex: -c /mnt) + +Example Usage: $0 -i -a -m # (install, set boot flag, install mbr) + $0 -u # (update) +EOF +} + +# Trys to find the partition that /boot resides on +# This will either be on /boot or / (root) +getBoot() { + if [[ ! -d "$bios_bootpath" ]]; then + echo "Could not find $bios_bootpath" + echo "Is boot mounted? Is Syslinux installed?" + exit 1 + fi + + syslinux_fs=(ext2 ext3 ext4 btrfs vfat) + + # Use DATA from findmnt see rc.sysint for more info + if [[ -f /proc/self/mountinfo ]]; then + read rootdev rootfs < <(findmnt -run -t noautofs -o SOURCE,FSTYPE "$CHROOT/") + read bootdev bootfs < <(findmnt -run -t noautofs -o SOURCE,FSTYPE "$CHROOT/boot") + else + echo "Could not find /proc/self/mountinfo" + echo "Are you running a kernel greater than 2.6.24?" + exit 1 + fi + + if [[ $bootfs ]]; then + if ! check_is_in "$bootfs" "${syslinux_fs[@]}"; then + echo "/boot file system is not supported by Syslinux" + exit 1 + fi + boot="boot" + bootpart="$bootdev" + elif [[ $rootfs ]]; then + if ! check_is_in "$rootfs" "${syslinux_fs[@]}"; then + echo "/ (root) file system is not supported by Syslinux" + exit 1 + fi + boot="root" + bootpart="$rootdev" + else + echo "Could not find filesystem on / (root) or /boot." + exit 1 + fi +} + +# We store the partition table type either gpt or mbr in var ptb +# In rare cases a user could have one raid disk using mbr and another using gpt +# In such cases we accept that the output may be incomplete + +# Calls get_ptb() for $bootpart or for all device in RAID +declare -A bootdevs +get_boot_devices() { + if device_is_raid "$bootpart"; then + slaves=$(mdraid_all_slaves "$bootpart") + + for slave in ${slaves[@]}; do + local disk="${slave%%[[:digit:]]*}" + device_is_gpt "$disk" && local ptb="GPT" || local ptb="MBR" + bootdevs[$slave]="$ptb" + done + else + local disk="${bootpart%%[[:digit:]]*}" + device_is_gpt "$disk" && local ptb="GPT" || local ptb="MBR" + bootdevs[$bootpart]="$ptb" + fi +} + +# Function Assumes the boot partition should be marked as active +# All other partitions should not have the boot flag set +set_active() { + # If any bootdev is a block device without partitions bail + # we want to set the boot flag on partitioned disk + for dev in "${!bootdevs[@]}"; do + dev_is_part $dev || { echo "$dev - is a block device. Aborting set_active!"; return 1; } + done + + # Clear BIOS Bootable Legacy Attribute for GPT drives + # In rare cases where a RAID device has slaves on the same block device + # Attribute 2 will be cleared for each partition multiple times + for dev in "${!bootdevs[@]}"; do + local ptb="${bootdevs[$dev]}" + if [[ "$ptb" = GPT ]]; then + local disk="${dev%%[[:digit:]]*}" #ex: /dev/sda + clear_gpt_attr2 "$disk" + fi + done + + # Set the boot flag on bootdevs (generated from get_boot_devices) + for part in "${!bootdevs[@]}"; do + local ptb="${bootdevs[$part]}" + local partnum="${part##*[[:alpha:]]}" + case "$part" in + *[[:digit:]]p[[:digit:]]*) + local disk="${part%%p$partnum}" # get everything before p1 + ;; + *) + local disk="${part%%[[:digit:]]*}" + ;; + esac + + if [[ "$ptb" = MBR ]]; then + if sfdisk "$disk" -A "$partnum" &>/dev/null; then + echo "Boot Flag Set - $part" + else + echo "FAILED to Set the boot flag on $part" + exit 3 + fi + elif [[ "$ptb" = GPT ]]; then + if sgdisk "$disk" --attributes="$partnum":set:2 &>/dev/null; then + echo "Attribute Legacy Bios Bootable Set - $part" + else + echo "FAILED to set attribute Legacy BIOS Bootable on $part" + exit 3 + fi + fi + done + return 0 +} + +install_mbr() { + # If any bootdev is a block device without partitions bail + # we want to install the mbr to a partitioned disk + for dev in "${!bootdevs[@]}"; do + dev_is_part "$dev" || { echo "$dev - is a block device. Aborting MBR install"; return 1; } + done + + for part in "${!bootdevs[@]}"; do + local partnum="${part##*[[:alpha:]]}" + case "$part" in + *[[:digit:]]p[[:digit:]]*) + local disk="${part%%p$partnum}" # get everything before p1 + ;; + *) + local disk="${part%%[[:digit:]]*}" + ;; + esac + local ptb="${bootdevs[$part]}" + + # We want to install to the root of the block device + # If the device is a partition - ABORT! + dev_is_part "$disk" && \ + { echo "ABORT! MBR installation to partition ($disk)!"; exit 4;} + + if [[ "$ptb" = MBR ]]; then + mbrfile="$bios_libpath/mbr.bin" + elif [[ "$ptb" = GPT ]]; then + mbrfile="$bios_libpath/gptmbr.bin" + fi + + if dd bs=440 count=1 conv=notrunc if="$mbrfile" of="$disk" &> /dev/null; then + echo "Installed MBR ($mbrfile) to $disk" + else + echo "Error Installing MBR ($mbrfile) to $disk" + exit 4 + fi + done + return 0 +} + +install_modules() { + # Copy all syslinux *.c32 modules to /boot + rm "$bios_bootpath"/*.c32 &> /dev/null + cp "$bios_libpath"/*.c32 "$bios_bootpath"/ &> /dev/null + + # Copy / Symlink pci.ids if pci.ids exists on the FS + if [[ -f "$pciids_file" ]]; then + rm "$bios_bootpath/pci.ids" &> /dev/null + cp "$pciids_file" "$bios_bootpath/pci.ids" &> /dev/null + fi +} + +_install() { + install_modules + + if device_is_raid "$bootpart" ; then + echo "Detected RAID on /boot - installing Syslinux with --raid" + "$EXTLINUX" --install "$bios_bootpath" --raid &> /dev/null + else + "$EXTLINUX" --install "$bios_bootpath" &> /dev/null + fi + + if (( $? )); then + echo "Syslinux BIOS install failed" + exit 2 + else + echo "Syslinux BIOS install successful" + fi + + touch "$CHROOT/$bios_autoupdate_file" +} + +update() { + install_modules + + if device_is_raid "$bootpart" ; then + echo "Detected RAID on /boot - updating Syslinux with --raid" + "$EXTLINUX" --update "$bios_bootpath" --raid &> /dev/null + else + "$EXTLINUX" --update "$bios_bootpath" &> /dev/null + fi + + if (($?)); then + echo "Syslinux BIOS update failed" + exit 2 + else + echo "Syslinux BIOS update successful" + fi +} + +if (( $# == 0 )); then + usage + exit 1 +fi + +while getopts "c:uihmas" opt; do + case $opt in + c) + CHROOT=$(readlink -e "$OPTARG") + if [[ -z $CHROOT ]]; then + echo "error: chroot path ``$OPTARG does not exist"; + exit 1 + fi + ;; + h) + USAGE="True" + ;; + i) + INSTALL="True" + ;; + u) + UPDATE="True" + ;; + m) + MBR="True" + ;; + a) + SET_ACTIVE="True" + ;; + s) + # If AUTOUPDATE_FILE does not exist exit the script + if [[ -f $bios_autoupdate_file ]]; then + UPDATE="True" + else + exit 0 + fi + ;; + *) + usage + exit 1 + ;; + esac +done + +if [[ $USAGE ]]; then + usage + exit 0 +fi + +# Display Usage Information if both Install and Update are passed +if [[ $INSTALL && $UPDATE ]]; then + usage + exit 1 +fi + +# Make sure only root can run our script +if (( $(id -u) != 0 )); then + echo "This script must be run as root" 1>&2 + exit 1 +fi + +# If a chroot dir is path set variables to reflect chroot +if [[ "$CHROOT" ]]; then + bios_libpath="$CHROOT$bios_libpath" + bios_bootpath="$CHROOT$bios_bootpath" + EXTLINUX="$CHROOT$EXTLINUX" +fi + +# Exit if no /boot path exists +if ( f=("$bios_bootpath"/*); (( ! ${#f[@]} )) ); then + echo "Error: $bios_bootpath is empty!" + echo "Is /boot mounted?" + exit 1 +fi + +# Get the boot device if any of these options are passed +if [[ $INSTALL || $UPDATE || $SET_ACTIVE || $MBR ]]; then + getBoot +fi + +# Install or Update +if [[ $INSTALL ]]; then + _install || exit +elif [[ $UPDATE ]]; then + update || exit +fi + + +# SET_ACTIVE and MBR +if [[ $SET_ACTIVE ]] || [[ $MBR ]]; then + get_boot_devices + + if [[ $SET_ACTIVE ]]; then + set_active || exit + fi + + if [[ $MBR ]]; then + install_mbr || exit + fi +fi + +exit 0 + +# vim: set et sw=4: diff --git a/libre/syslinux-parabola/syslinux.cfg b/libre/syslinux-parabola/syslinux.cfg new file mode 100644 index 000000000..0c0c6339a --- /dev/null +++ b/libre/syslinux-parabola/syslinux.cfg @@ -0,0 +1,78 @@ +# Config file for Syslinux - +# /boot/syslinux/syslinux.cfg +# +# Comboot modules: +# * menu.c32 - provides a text menu +# * vesamenu.c32 - provides a graphical menu +# * chain.c32 - chainload MBRs, partition boot sectors, Windows bootloaders +# * hdt.c32 - hardware detection tool +# * reboot.c32 - reboots the system +# +# To Use: Copy the respective files from /usr/lib/syslinux to /boot/syslinux. +# If /usr and /boot are on the same file system, symlink the files instead +# of copying them. +# +# If you do not use a menu, a 'boot:' prompt will be shown and the system +# will boot automatically after 5 seconds. +# +# Please review the wiki: https://wiki.archlinux.org/index.php/Syslinux +# The wiki provides further configuration examples + +DEFAULT parabola +PROMPT 0 # Set to 1 if you always want to display the boot: prompt +TIMEOUT 50 +# You can create syslinux keymaps with the keytab-lilo tool +#KBDMAP de.ktl + +# Menu Configuration +# Either menu.c32 or vesamenu32.c32 must be copied to /boot/syslinux +#UI menu.c32 +UI vesamenu.c32 + +# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu +MENU TITLE Parabola GNU/Linux-libre +MENU BACKGROUND splash.png +MENU COLOR border 35;40 #ff777caa #a0000000 std +MENU COLOR title 1;35;40 #ff777caa #a0000000 std +MENU COLOR sel 7;35;47 #e0ffffff #20777caa all +MENU COLOR unsel 35;40 #ff777caa #a0000000 std +MENU COLOR help 35;40 #c0b2b2b2 #a0000000 std +MENU COLOR timeout_msg 35;40 #ff777caa #00000000 std +MENU COLOR timeout 1;35;40 #ff777caa #00000000 std +MENU COLOR msg07 35;40 #ff777caa #a0000000 std +MENU COLOR tabmsg 35;40 #ff777caa #00000000 std + +# boot sections follow +# +# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line. +# +#-* + +LABEL parabola + MENU LABEL Parabola GNU/Linux-libre + LINUX ../vmlinuz-linux-libre + APPEND root=/dev/sda3 rw + INITRD ../initramfs-linux-libre.img + +LABEL parabolafallback + MENU LABEL Parabola GNU/Linux-libre Fallback + LINUX ../vmlinuz-linux-libre + APPEND root=/dev/sda3 rw + INITRD ../initramfs-linux-libre-fallback.img + +# If you want Memtest on syslinux, use this LABEL section to launch it (install the memtest86+ package) +# LABEL memtest +# MENU LABEL Memtest86+ +# LINUX ../memtest86+/memtest.bin + +LABEL hdt + MENU LABEL HDT (Hardware Detection Tool) + COM32 hdt.c32 + +LABEL reboot + MENU LABEL Reboot + COM32 reboot.c32 + +LABEL poweroff + MENU LABEL Poweroff + COM32 poweroff.c32 diff --git a/libre/syslinux-parabola/syslinux.install b/libre/syslinux-parabola/syslinux.install new file mode 100644 index 000000000..ed8387773 --- /dev/null +++ b/libre/syslinux-parabola/syslinux.install @@ -0,0 +1,43 @@ +post_install() { + + cat << EOF + +==> For setting up Syslinux BIOS using the syslinux-install_update script follow + https://wiki.parabolagnulinux.org/index.php/Syslinux#Automatic_Install +EOF + + ## Message specific to Syslinux 4.xx (or 5.xx) to 6.xx upgrade + if [ "$(vercmp $2 6.00)" -lt 0 ]; then + + cat << EOF + +==> If you are upgrading from Syslinux 4.xx or 5.xx, please re-install + (not update) Syslinux BIOS manually (not using the install script) once + by following https://wiki.parabolagnulinux.org/index.php/Syslinux#Manual_install + +==> The install script may not properly upgrade Syslinux to 6.xx version +EOF + + fi + + cat << EOF + +==> For setting up Syslinux EFI follow + https://wiki.parabolagnulinux.org/index.php/Syslinux#UEFI_Systems + +==> The syslinux-install_update script does not currently support EFI install + +EOF + +} + +post_upgrade() { + + ## auto-update syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists + /usr/bin/syslinux-install_update -s + + post_install + +} + +# vim:set ts=2 sw=2 et: diff --git a/libre/syslinux/PKGBUILD b/libre/syslinux/PKGBUILD deleted file mode 100644 index 8b3676cca..000000000 --- a/libre/syslinux/PKGBUILD +++ /dev/null @@ -1,276 +0,0 @@ -# Maintainer (Arch): Tobias Powalowski -# Maintainer (Arch): Thomas Bächler -# Contributor (Arch): Keshav Amburay <(the ddoott ridikulus ddoott rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> -# Maintainer: André Silva - -## "1" to enable IA32-EFI build in Arch x86_64, "0" to disable -_IA32_EFI_IN_ARCH_X64="1" - -_VER="6.03-pre19" -_GIT_TAG="syslinux-${_VER}" - -pkgname="syslinux" -pkgver="${_VER/-/}" -pkgrel="1" -arch=('x86_64' 'i686') -pkgdesc="Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE (Parabola rebranded)" -url="http://syslinux.zytor.com/" -license=('GPL2') -options=('!makeflags' '!emptydirs') -backup=('boot/syslinux/syslinux.cfg' - 'boot/syslinux/splash.png') -makedepends=('git' 'python2' 'nasm' 'ncurses') -if [[ "$CARCH" == "x86_64" ]]; then - makedepends+=('lib32-glibc') -fi -depends=('glibc') -optdepends=('perl-passwd-md5: For md5pass' - 'perl-digest-sha1: For sha1pass' - 'mtools: For mkdiskimage and syslinux support' - 'gptfdisk: For GPT support' - 'util-linux: For isohybrid' - 'efibootmgr: For EFI support' - 'dosfstools: For EFI support') -install="${pkgname}.install" -source=("${pkgname}::git+http://git.zytor.com/syslinux/syslinux.git#tag=${_GIT_TAG}" - "gnu-efi::git+http://git.code.sf.net/p/gnu-efi/code#commit=3c62e78556aea01e9798380cd46794c6ca09d4bd" - 'syslinux.cfg' - 'syslinux-install_update' - 'splash.png') -md5sums=('SKIP' - 'SKIP' - 'f048880b57e2c5a7017ff8804bfda327' - '9376f18fa3e42fc36cffa4cff0a84c09' - 'cb46ca47c6b6323127d908440057d98f') - -_pkgver() { - cd "${srcdir}/${pkgname}/" - echo "$(git describe --tags)" | sed -e 's|syslinux-||g' -e 's|-pre|pre|g' -e 's|-|.|g' -} - -prepare() { - - mv "${srcdir}/${pkgname}" "${srcdir}/${pkgname}-${pkgver}/" - cd "${srcdir}/${pkgname}-${pkgver}/" - - msg "Run git clean" - git clean -x -d -f - - msg "Do not try to build the Windows or DOS installers and DIAG files" - sed 's|diag libinstaller dos win32 win64 dosutil txt|libinstaller txt|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true - sed 's|win32/syslinux.exe win64/syslinux64.exe||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true - sed 's|dosutil/*.com dosutil/*.sys||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true - sed 's|dos/syslinux.com||g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true - sed 's|INSTALLSUBDIRS = com32 utils dosutil|INSTALLSUBDIRS = com32 utils|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true - sed 's|install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|# install -m 644 -c $(INSTALL_DIAG) $(INSTALLROOT)$(DIAGDIR)|g' -i "${srcdir}/${pkgname}-${pkgver}/Makefile" || true - sed 's|-include $(MAKEDIR)/devel.mk||g' -i "${srcdir}/${pkgname}-${pkgver}/mk/syslinux.mk" || true - - msg "Fix FHS manpage path" - sed 's|/usr/man|/usr/share/man|g' -i "${srcdir}/${pkgname}-${pkgver}/mk/syslinux.mk" || true - - cd "${srcdir}/gnu-efi/" - - msg "Run git clean for gnu-efi" - git clean -x -d -f - - msg "Revert gnu-efi Makefile 'make install' problamatic commit" - git revert --no-commit 06744d69273de4945cf0ffcaa4a6abf7cec707b6 - - msg "Prepare gnu-efi source" - cp -r "${srcdir}/gnu-efi/gnu-efi-3.0" "${srcdir}/${pkgname}-${pkgver}/gnu-efi/gnu-efi-3.0" - - cd "${srcdir}/${pkgname}-${pkgver}/" - -} - -_build_syslinux_bios() { - - rm -rf "${srcdir}/${pkgname}-${pkgver}-bios/" || true - cp -r "${srcdir}/${pkgname}-${pkgver}" "${srcdir}/${pkgname}-${pkgver}-bios" - - mkdir -p "${srcdir}/${pkgname}-${pkgver}-bios/OBJDIR" - cd "${srcdir}/${pkgname}-${pkgver}-bios/" - - msg "Do not try to compile bios build with our default LDFLAGS, it will fail" - unset LDFLAGS - - msg "Run make bios" - make PYTHON="python2" OBJDIR="${srcdir}/${pkgname}-${pkgver}-bios/OBJDIR" bios - - msg "Run make bios installer" - make PYTHON="python2" OBJDIR="${srcdir}/${pkgname}-${pkgver}-bios/OBJDIR" bios installer - -} - -_build_syslinux_efi64() { - - rm -rf "${srcdir}/${pkgname}-${pkgver}-efi64/" || true - cp -r "${srcdir}/${pkgname}-${pkgver}" "${srcdir}/${pkgname}-${pkgver}-efi64" - - mkdir -p "${srcdir}/${pkgname}-${pkgver}-efi64/OBJDIR/efi64/" - cd "${srcdir}/${pkgname}-${pkgver}-efi64/gnu-efi/gnu-efi-3.0/" - - msg "Unset all compiler FLAGS for gnu-efi efi64 build" - unset CFLAGS - unset CPPFLAGS - unset CXXFLAGS - unset LDFLAGS - unset MAKEFLAGS - - msg "Run make gnu-efi for syslinux efi64" - make ARCH="x86_64" -j1 - - msg "Run make install gnu-efi for syslinux efi64" - make ARCH="x86_64" PREFIX="${srcdir}/${pkgname}-${pkgver}-efi64/OBJDIR/efi64/" -j1 install - - cd "${srcdir}/${pkgname}-${pkgver}-efi64/" - - msg "Unset all compiler FLAGS for efi64 build" - unset CFLAGS - unset CPPFLAGS - unset CXXFLAGS - unset LDFLAGS - unset MAKEFLAGS - - msg "Run make efi64" - make PYTHON="python2" OBJDIR="${srcdir}/${pkgname}-${pkgver}-efi64/OBJDIR" efi64 - - msg "Run make efi64 installer" - make PYTHON="python2" OBJDIR="${srcdir}/${pkgname}-${pkgver}-efi64/OBJDIR" efi64 installer - -} - -_build_syslinux_efi32() { - - rm -rf "${srcdir}/${pkgname}-${pkgver}-efi32/" || true - cp -r "${srcdir}/${pkgname}-${pkgver}" "${srcdir}/${pkgname}-${pkgver}-efi32" - - mkdir -p "${srcdir}/${pkgname}-${pkgver}-efi32/OBJDIR/efi32/" - cd "${srcdir}/${pkgname}-${pkgver}-efi32/gnu-efi/gnu-efi-3.0/" - - msg "Unset all compiler FLAGS for gnu-efi efi32 build" - unset CFLAGS - unset CPPFLAGS - unset CXXFLAGS - unset LDFLAGS - unset MAKEFLAGS - - msg "Run make gnu-efi for syslinux efi32" - make ARCH="ia32" -j1 - - msg "Run make install gnu-efi for syslinux efi32" - make ARCH="ia32" PREFIX="${srcdir}/${pkgname}-${pkgver}-efi32/OBJDIR/efi32/" install - - cd "${srcdir}/${pkgname}-${pkgver}-efi32/" - - msg "Unset all compiler FLAGS for efi32 build" - unset CFLAGS - unset CPPFLAGS - unset CXXFLAGS - unset LDFLAGS - unset MAKEFLAGS - - msg "Run make efi32" - make PYTHON="python2" OBJDIR="${srcdir}/${pkgname}-${pkgver}-efi32/OBJDIR" efi32 - - msg "Run make efi32 installer" - make PYTHON="python2" OBJDIR="${srcdir}/${pkgname}-${pkgver}-efi32/OBJDIR" efi32 installer - -} - -build() { - - cd "${srcdir}/${pkgname}-${pkgver}/" - - if [[ "${CARCH}" == "x86_64" ]]; then - msg "Build syslinux efi64" - _build_syslinux_efi64 - - if [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then - msg "Build syslinux efi32" - _build_syslinux_efi32 - fi - fi - - if [[ "${CARCH}" == "i686" ]]; then - msg "Build syslinux efi32" - _build_syslinux_efi32 - fi - - msg "Build syslinux bios" - _build_syslinux_bios - -} - -_package_syslinux_bios() { - - cd "${srcdir}/${pkgname}-${pkgver}-bios/" - - msg "Install Syslinux bios" - make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/bios/" OBJDIR="${srcdir}/${pkgname}-${pkgver}-bios/OBJDIR" bios install - - msg "Remove syslinux.exe,syslinux64.exe,syslinux.com and dosutil dir" - rm "${pkgdir}/usr/lib/syslinux/bios"/syslinux.{com,exe} || true - rm "${pkgdir}/usr/lib/syslinux/bios/syslinux64.exe" || true - rm -rf "${pkgdir}/usr/lib/syslinux/bios/dosutil/" || true - - msg "Remove com32 and diag dirs" - rm -rf "${pkgdir}/usr/lib/syslinux/bios/diag/" || true - rm -rf "${pkgdir}/usr/lib/syslinux/bios/com32/" || true - - msg "Move extlinux binary to /usr/bin" - install -d "${pkgdir}/usr/bin" - mv "${pkgdir}/sbin/extlinux" "${pkgdir}/usr/bin/extlinux" - rm -rf "${pkgdir}/sbin/" - - msg "Install syslinux docs" - install -d "${pkgdir}/usr/share/doc" - cp -ar "${srcdir}/${pkgname}-${pkgver}/doc" "${pkgdir}/usr/share/doc/syslinux" - - msg "Install syslinux.cfg" - install -D -m0644 "${srcdir}/syslinux.cfg" "${pkgdir}/boot/syslinux/syslinux.cfg" - - msg "Install the syslinux-install_update script" - ## This script is maintained at https://gist.github.com/pyther/772138 - ## Script not yet updated for syslinux-efi - install -D -m0755 "${srcdir}/syslinux-install_update" "${pkgdir}/usr/bin/syslinux-install_update" - - msg "Install Parabola splash" - install -D -m644 "${srcdir}/splash.png" "${pkgdir}/boot/syslinux/splash.png" -} - -_package_syslinux_efi() { - - cd "${srcdir}/${pkgname}-${pkgver}/" - - if [[ "${CARCH}" == "x86_64" ]]; then - cd "${srcdir}/${pkgname}-${pkgver}-efi64/" - msg "Install Syslinux efi64" - make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/" OBJDIR="${srcdir}/${pkgname}-${pkgver}-efi64/OBJDIR" efi64 install - - if [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then - cd "${srcdir}/${pkgname}-${pkgver}-efi32/" - msg "Install Syslinux efi32" - make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/" OBJDIR="${srcdir}/${pkgname}-${pkgver}-efi32/OBJDIR" efi32 install - fi - fi - - if [[ "${CARCH}" == "i686" ]]; then - cd "${srcdir}/${pkgname}-${pkgver}-efi32/" - msg "Install Syslinux efi32" - make INSTALLROOT="${pkgdir}/" AUXDIR="/usr/lib/syslinux/" OBJDIR="${srcdir}/${pkgname}-${pkgver}-efi32/OBJDIR" efi32 install - fi - -} - -package() { - - cd "${srcdir}/${pkgname}-${pkgver}/" - - msg "Package Syslinux efi" - _package_syslinux_efi - - msg "Package Syslinux bios" - _package_syslinux_bios - -} diff --git a/libre/syslinux/splash.png b/libre/syslinux/splash.png deleted file mode 100644 index eac14536b..000000000 Binary files a/libre/syslinux/splash.png and /dev/null differ diff --git a/libre/syslinux/splash.xcf b/libre/syslinux/splash.xcf deleted file mode 100644 index c27d04445..000000000 Binary files a/libre/syslinux/splash.xcf and /dev/null differ diff --git a/libre/syslinux/syslinux-6.02-fix-bios-isolinux.patch b/libre/syslinux/syslinux-6.02-fix-bios-isolinux.patch deleted file mode 100644 index 48df46f12..000000000 --- a/libre/syslinux/syslinux-6.02-fix-bios-isolinux.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/core/isolinux.asm b/core/isolinux.asm -index bd4e9556922d..c4db4133e274 100644 ---- a/core/isolinux.asm -+++ b/core/isolinux.asm -@@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K) - call getlinsec - pop eax - pop cx -- mov dx,cx -+ movzx edx,cx - pop bp - pop bx diff --git a/libre/syslinux/syslinux-6.02-fix-chainloading.patch b/libre/syslinux/syslinux-6.02-fix-chainloading.patch deleted file mode 100644 index 6fd7ef4a8..000000000 --- a/libre/syslinux/syslinux-6.02-fix-chainloading.patch +++ /dev/null @@ -1,47 +0,0 @@ -Reported-by: Dark Raven -Signed-off-by: Raphael S. Carvalho ---- - com32/lib/syslinux/disk.c | 22 ++++++++++++++-------- - 1 files changed, 14 insertions(+), 8 deletions(-) - -diff --git a/com32/lib/syslinux/disk.c b/com32/lib/syslinux/disk.c -index 0b0c737..47ecb52 100644 ---- a/com32/lib/syslinux/disk.c -+++ b/com32/lib/syslinux/disk.c -@@ -171,22 +171,28 @@ out: - static void *ebios_setup(const struct disk_info *const diskinfo, com32sys_t *inreg, - uint64_t lba, uint8_t count, uint8_t op_code) - { -- static __lowmem struct disk_ebios_dapa dapa; -+ static struct disk_ebios_dapa *dapa = NULL; - void *buf; - -+ if (!dapa) { -+ dapa = lmalloc(sizeof *dapa); -+ if (!dapa) -+ return NULL; -+ } -+ - buf = lmalloc(count * diskinfo->bps); - if (!buf) - return NULL; - -- dapa.len = sizeof(dapa); -- dapa.count = count; -- dapa.off = OFFS(buf); -- dapa.seg = SEG(buf); -- dapa.lba = lba; -+ dapa->len = sizeof(*dapa); -+ dapa->count = count; -+ dapa->off = OFFS(buf); -+ dapa->seg = SEG(buf); -+ dapa->lba = lba; - - inreg->eax.b[1] = op_code; -- inreg->esi.w[0] = OFFS(&dapa); -- inreg->ds = SEG(&dapa); -+ inreg->esi.w[0] = OFFS(dapa); -+ inreg->ds = SEG(dapa); - inreg->edx.b[0] = diskinfo->disk; - - return buf; diff --git a/libre/syslinux/syslinux-6.02-fix-efi-ovmf.patch b/libre/syslinux/syslinux-6.02-fix-efi-ovmf.patch deleted file mode 100644 index f33f4c1de..000000000 --- a/libre/syslinux/syslinux-6.02-fix-efi-ovmf.patch +++ /dev/null @@ -1,621 +0,0 @@ -The value of the field rva_and_sizes_nr is used by OVMF to check the -consistency of the PE file with respect to the field optional_hdr_sz. It -now have the right value. - -Signed-off-by: Celelibi ---- - efi/wrapper.c | 6 +++--- - efi/wrapper.h | 28 ++++++++++++++++------------ - 2 files changed, 19 insertions(+), 15 deletions(-) - -diff --git a/efi/wrapper.c b/efi/wrapper.c -index 04c895f..ec77271 100644 ---- a/efi/wrapper.c -+++ b/efi/wrapper.c -@@ -102,7 +102,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - e_hdr.image_sz = total_sz; - e_hdr.headers_sz = 512; - e_hdr.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; -- e_hdr.rva_and_sizes_nr = 1; -+ e_hdr.rva_and_sizes_nr = sizeof(e_hdr.data_directory) / sizeof(__uint64_t); - fwrite(&e_hdr, sizeof(e_hdr), 1, f); - } - else if (class == ELFCLASS64) { -@@ -130,7 +130,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - e_hdr_pe32p.image_sz = total_sz; - e_hdr_pe32p.headers_sz = 512; - e_hdr_pe32p.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; -- e_hdr_pe32p.rva_and_sizes_nr = 1; -+ e_hdr_pe32p.rva_and_sizes_nr = sizeof(e_hdr_pe32p.data_directory) / sizeof(__uint64_t); - fwrite(&e_hdr_pe32p, sizeof(e_hdr_pe32p), 1, f); - } - -@@ -237,7 +237,7 @@ int main(int argc, char **argv) - fprintf(stderr, "Unsupported architecture\n"); - exit(EXIT_FAILURE); - } -- -+ - if (id[EI_MAG0] != ELFMAG0 || - id[EI_MAG1] != ELFMAG1 || - id[EI_MAG2] != ELFMAG2 || -diff --git a/efi/wrapper.h b/efi/wrapper.h -index 4f76991..0e6b38e 100644 ---- a/efi/wrapper.h -+++ b/efi/wrapper.h -@@ -102,12 +102,14 @@ struct extra_hdr { - __uint32_t heap_commit_sz; - __uint32_t loader_flags; - __uint32_t rva_and_sizes_nr; -- __uint64_t export_table; -- __uint64_t import_table; -- __uint64_t resource_table; -- __uint64_t exception_table; -- __uint64_t certification_table; -- __uint64_t base_relocation_table; -+ struct { -+ __uint64_t export_table; -+ __uint64_t import_table; -+ __uint64_t resource_table; -+ __uint64_t exception_table; -+ __uint64_t certification_table; -+ __uint64_t base_relocation_table; -+ } data_directory; - } __packed; - - /* Extra header for PE32+ format -@@ -136,12 +138,14 @@ struct extra_hdr_pe32p { - __uint64_t heap_commit_sz; - __uint32_t loader_flags; - __uint32_t rva_and_sizes_nr; -- __uint64_t export_table; -- __uint64_t import_table; -- __uint64_t resource_table; -- __uint64_t exception_table; -- __uint64_t certification_table; -- __uint64_t base_relocation_table; -+ struct { -+ __uint64_t export_table; -+ __uint64_t import_table; -+ __uint64_t resource_table; -+ __uint64_t exception_table; -+ __uint64_t certification_table; -+ __uint64_t base_relocation_table; -+ } data_directory; - } __packed; - - struct section { -In the generated PE file, the section header for the .text section used -to address more than the whole file. Starting at offset 0 (before the -end of the headers) is illegal and is rejected by OVMF. Giving a size -greater than the actual file size is also illegal and rejected. - -Moreover, the actual data inside the PE file have to be aligned to at -least 512 bytes. Hence, .text need to be aligned as well. - -Signed-off-by: Celelibi ---- - efi/wrapper.c | 44 +++++++++++++++++++++++++------------------- - 1 file changed, 25 insertions(+), 19 deletions(-) - -diff --git a/efi/wrapper.c b/efi/wrapper.c -index ec77271..bd2c175 100644 ---- a/efi/wrapper.c -+++ b/efi/wrapper.c -@@ -54,11 +54,15 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - struct coff_hdr c_hdr; - struct header hdr; - struct coff_reloc c_rel; -- __uint32_t total_sz = so_size; -+ __uint32_t total_sz = data_size; - __uint32_t dummy = 0; - __uint32_t hdr_sz; - __uint32_t reloc_start, reloc_end; - -+ hdr_sz = 512; -+ total_sz += hdr_sz; -+ entry += hdr_sz; -+ - memset(&hdr, 0, sizeof(hdr)); - hdr.msdos_signature = MSDOS_SIGNATURE; - -@@ -77,11 +81,6 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - c_hdr.nr_sections = 2; - c_hdr.nr_syms = 1; - if (class == ELFCLASS32) { -- hdr_sz = sizeof(o_hdr) + sizeof(t_sec) + sizeof(e_hdr) + -- sizeof(r_sec) + sizeof(c_hdr) + sizeof(hdr) + sizeof(c_rel) -- + sizeof(dummy); -- total_sz += hdr_sz; -- entry += hdr_sz; - c_hdr.arch = IMAGE_FILE_MACHINE_I386; - c_hdr.characteristics = IMAGE_FILE_32BIT_MACHINE | - IMAGE_FILE_DEBUG_STRIPPED | IMAGE_FILE_EXECUTABLE_IMAGE | -@@ -92,25 +91,20 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - o_hdr.format = PE32_FORMAT; - o_hdr.major_linker_version = 0x02; - o_hdr.minor_linker_version = 0x14; -- o_hdr.code_sz = total_sz; -+ o_hdr.code_sz = data_size; - o_hdr.entry_point = entry; - o_hdr.initialized_data_sz = data_size; - fwrite(&o_hdr, sizeof(o_hdr), 1, f); - memset(&e_hdr, 0, sizeof(e_hdr)); - e_hdr.section_align = 4096; - e_hdr.file_align = 512; -- e_hdr.image_sz = total_sz; -- e_hdr.headers_sz = 512; -+ e_hdr.image_sz = hdr_sz + so_size; -+ e_hdr.headers_sz = hdr_sz; - e_hdr.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; - e_hdr.rva_and_sizes_nr = sizeof(e_hdr.data_directory) / sizeof(__uint64_t); - fwrite(&e_hdr, sizeof(e_hdr), 1, f); - } - else if (class == ELFCLASS64) { -- hdr_sz = sizeof(o_hdr_pe32p) + sizeof(t_sec) + sizeof(e_hdr_pe32p) + -- sizeof(r_sec) + sizeof(c_hdr) + sizeof(hdr) + sizeof(c_rel) -- + sizeof(dummy); -- total_sz += hdr_sz; -- entry += hdr_sz; - c_hdr.arch = IMAGE_FILE_MACHINE_X86_64; - c_hdr.characteristics = IMAGE_FILE_DEBUG_STRIPPED | IMAGE_FILE_EXECUTABLE_IMAGE | - IMAGE_FILE_LINE_NUMBERS_STRIPPED; -@@ -120,15 +114,15 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - o_hdr_pe32p.format = PE32P_FORMAT; - o_hdr_pe32p.major_linker_version = 0x02; - o_hdr_pe32p.minor_linker_version = 0x14; -- o_hdr_pe32p.code_sz = total_sz; -+ o_hdr_pe32p.code_sz = data_size; - o_hdr_pe32p.entry_point = entry; - o_hdr.initialized_data_sz = data_size; - fwrite(&o_hdr_pe32p, sizeof(o_hdr_pe32p), 1, f); - memset(&e_hdr_pe32p, 0, sizeof(e_hdr)); - e_hdr_pe32p.section_align = 4096; - e_hdr_pe32p.file_align = 512; -- e_hdr_pe32p.image_sz = total_sz; -- e_hdr_pe32p.headers_sz = 512; -+ e_hdr_pe32p.image_sz = hdr_sz + so_size; -+ e_hdr_pe32p.headers_sz = hdr_sz; - e_hdr_pe32p.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; - e_hdr_pe32p.rva_and_sizes_nr = sizeof(e_hdr_pe32p.data_directory) / sizeof(__uint64_t); - fwrite(&e_hdr_pe32p, sizeof(e_hdr_pe32p), 1, f); -@@ -136,8 +130,10 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - - memset(&t_sec, 0, sizeof(t_sec)); - strcpy((char *)t_sec.name, ".text"); -- t_sec.virtual_sz = total_sz; -- t_sec.raw_data_sz = total_sz; -+ t_sec.virtual_sz = data_size; -+ t_sec.virtual_address = hdr_sz; -+ t_sec.raw_data_sz = t_sec.virtual_sz; -+ t_sec.raw_data = t_sec.virtual_address; - t_sec.characteristics = IMAGE_SCN_CNT_CODE | - IMAGE_SCN_ALIGN_16BYTES | IMAGE_SCN_MEM_EXECUTE | - IMAGE_SCN_MEM_READ; -@@ -163,6 +159,16 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - fwrite(&c_rel, sizeof(c_rel), 1, f); - fwrite(&dummy, sizeof(dummy), 1, f); - -+ /* -+ * Add some padding to align the ELF as needed -+ */ -+ if (ftell(f) > t_sec.virtual_address) { -+ // A fseek that rewind would be a bug hard to track -+ fprintf(stderr, "PE+ headers are too large.\n"); -+ exit(EXIT_FAILURE); -+ } -+ -+ fseek(f, t_sec.virtual_address, SEEK_SET); - } - - static void usage(char *progname) -There is no need to have a relocation section that nothing points at. -The image is still seen as relocatable as long as the Characteristics of -the FileHeader do not say otherwise. - -Moreover, the field base_relocation_table wasn't initialized properly -leading to unpredictable bugs. - -Signed-off-by: Celelibi ---- - -I'm not 100% positive about the uselessness of the relocation section. However: -1) it works on my real hardware; -2) OVMF doesn't check the section headers at all; -3) all the docs I could find say that the section names are arbitrary; -4) the only way to make the relocation actually happen is by setting the -base_relocation_table field of the extra headers to point to this section; -5) The right way to indicate the image is not relocatable would be by setting -the characteristics IMAGE_FILE_RELOCS_STRIPPED in the coff header. - -Moreover, the relocation entry cannot be inserted before the end of the headers -(512 bytes), this mean we would have to push everything a few bytes further. -And I think it's better if it can be avoided. :) - - efi/wrapper.c | 28 +++------------------------- - 1 file changed, 3 insertions(+), 25 deletions(-) - -diff --git a/efi/wrapper.c b/efi/wrapper.c -index bd2c175..9652368 100644 ---- a/efi/wrapper.c -+++ b/efi/wrapper.c -@@ -48,14 +48,12 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - { - struct optional_hdr o_hdr; - struct optional_hdr_pe32p o_hdr_pe32p; -- struct section t_sec, r_sec; -+ struct section t_sec; - struct extra_hdr e_hdr; - struct extra_hdr_pe32p e_hdr_pe32p; - struct coff_hdr c_hdr; - struct header hdr; -- struct coff_reloc c_rel; - __uint32_t total_sz = data_size; -- __uint32_t dummy = 0; - __uint32_t hdr_sz; - __uint32_t reloc_start, reloc_end; - -@@ -78,7 +76,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - fwrite(&hdr, sizeof(hdr), 1, f); - - memset(&c_hdr, 0, sizeof(c_hdr)); -- c_hdr.nr_sections = 2; -+ c_hdr.nr_sections = 1; - c_hdr.nr_syms = 1; - if (class == ELFCLASS32) { - c_hdr.arch = IMAGE_FILE_MACHINE_I386; -@@ -118,7 +116,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - o_hdr_pe32p.entry_point = entry; - o_hdr.initialized_data_sz = data_size; - fwrite(&o_hdr_pe32p, sizeof(o_hdr_pe32p), 1, f); -- memset(&e_hdr_pe32p, 0, sizeof(e_hdr)); -+ memset(&e_hdr_pe32p, 0, sizeof(e_hdr_pe32p)); - e_hdr_pe32p.section_align = 4096; - e_hdr_pe32p.file_align = 512; - e_hdr_pe32p.image_sz = hdr_sz + so_size; -@@ -140,26 +138,6 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - fwrite(&t_sec, sizeof(t_sec), 1, f); - - /* -- * Write our dummy relocation and reloc section. -- */ -- memset(&r_sec, 0, sizeof(r_sec)); -- strcpy((char *)r_sec.name, ".reloc"); -- r_sec.virtual_sz = sizeof(c_rel); -- r_sec.virtual_address = ftell(f) + sizeof(r_sec); -- r_sec.raw_data_sz = r_sec.virtual_sz; -- r_sec.raw_data = r_sec.virtual_address; -- r_sec.characteristics = IMAGE_SCN_CNT_INITIALIZED_DATA | -- IMAGE_SCN_ALIGN_1BYTES | IMAGE_SCN_MEM_DISCARDABLE | -- IMAGE_SCN_MEM_READ; -- fwrite(&r_sec, sizeof(r_sec), 1, f); -- -- memset(&c_rel, 0, sizeof(c_rel)); -- c_rel.virtual_address = ftell(f) + sizeof(c_rel); -- c_rel.symtab_index = 10; -- fwrite(&c_rel, sizeof(c_rel), 1, f); -- fwrite(&dummy, sizeof(dummy), 1, f); -- -- /* - * Add some padding to align the ELF as needed - */ - if (ftell(f) > t_sec.virtual_address) { -PE headers code_sz and image_sz indicate more or less, the size of the -file and the size of the in-memory image. They are now given the right -value. - -In the ELF format, only the program headers are reliable to determine -the actually needed part of the file and the in-memory size. - -The .bss section should always be marked as NOLOAD for ld since its -content shouldn't be included into the binary file. - -Signed-off-by: Celelibi ---- - -Again, I'm not 100% positive about the semantics of NOLOAD in a linker script. -However I found this make things work better. -Actually the file core/fs/fs.o have a .bss16 section that is not empty. If I -understood correctly, only .bss can be empty in a .o. Thus ld generates the -zeros that belong to that section in the .o. Then, when merging the section -.bss16 into the .bss of syslinux.so, ld is forced to generate ALL the zeros -that belong to the .bss section. Marking this section as NOLOAD make ld to -ignore its content but still produce a PT_LOAD program header with the right -memory size, as needed for the bss. - - efi/i386/syslinux.ld | 4 +- - efi/wrapper.c | 138 +++++++++++++++---------------------------------- - efi/x86_64/syslinux.ld | 4 +- - 3 files changed, 45 insertions(+), 101 deletions(-) - -diff --git a/efi/i386/syslinux.ld b/efi/i386/syslinux.ld -index 523a9b9..bab3fc7 100644 ---- a/efi/i386/syslinux.ld -+++ b/efi/i386/syslinux.ld -@@ -136,7 +136,7 @@ SECTIONS - *(.strtab) - } - -- .bss : { -+ .bss (NOLOAD) : { - /* the EFI loader doesn't seem to like a .bss section, - so we stick it all into .data: */ - __bss_start = .; -@@ -153,7 +153,7 @@ SECTIONS - __bss_dwords = (__bss_len + 3) >> 2; - - . = ALIGN(128); -- -+ - /* Very large objects which don't need to be zeroed */ - - .hugebss : { -diff --git a/efi/wrapper.c b/efi/wrapper.c -index 9652368..a5247ae 100644 ---- a/efi/wrapper.c -+++ b/efi/wrapper.c -@@ -35,7 +35,7 @@ typedef Elf64_Addr Elf_Addr; - #endif - - /* -- * 'so_size' is the file size of the ELF shared object. -+ * 'so_memsz' is the size of the ELF shared object once loaded. - * 'data_size' is the size of initialised data in the shared object. - * 'class' dictates how the header is written - * For 32bit machines (class == ELFCLASS32), the optional -@@ -44,7 +44,7 @@ typedef Elf64_Addr Elf_Addr; - * header includes PE32+header fields - */ - static void write_header(FILE *f, __uint32_t entry, size_t data_size, -- __uint32_t so_size, __uint8_t class) -+ __uint32_t so_memsz, __uint8_t class) - { - struct optional_hdr o_hdr; - struct optional_hdr_pe32p o_hdr_pe32p; -@@ -96,7 +96,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - memset(&e_hdr, 0, sizeof(e_hdr)); - e_hdr.section_align = 4096; - e_hdr.file_align = 512; -- e_hdr.image_sz = hdr_sz + so_size; -+ e_hdr.image_sz = hdr_sz + so_memsz; - e_hdr.headers_sz = hdr_sz; - e_hdr.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; - e_hdr.rva_and_sizes_nr = sizeof(e_hdr.data_directory) / sizeof(__uint64_t); -@@ -119,7 +119,7 @@ static void write_header(FILE *f, __uint32_t entry, size_t data_size, - memset(&e_hdr_pe32p, 0, sizeof(e_hdr_pe32p)); - e_hdr_pe32p.section_align = 4096; - e_hdr_pe32p.file_align = 512; -- e_hdr_pe32p.image_sz = hdr_sz + so_size; -+ e_hdr_pe32p.image_sz = hdr_sz + so_memsz; - e_hdr_pe32p.headers_sz = hdr_sz; - e_hdr_pe32p.subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; - e_hdr_pe32p.rva_and_sizes_nr = sizeof(e_hdr_pe32p.data_directory) / sizeof(__uint64_t); -@@ -157,17 +157,16 @@ static void usage(char *progname) - - int main(int argc, char **argv) - { -- struct stat st; - Elf32_Ehdr e32_hdr; - Elf64_Ehdr e64_hdr; - __uint32_t entry; - __uint8_t class; -- __uint64_t shoff; -- __uint16_t shnum, shentsize, shstrndx; -+ __uint64_t phoff = 0; -+ __uint16_t phnum = 0, phentsize = 0; - unsigned char *id; - FILE *f_in, *f_out; - void *buf; -- size_t datasz, rv; -+ size_t datasz, memsz, rv; - - if (argc < 3) { - usage(argv[0]); -@@ -180,11 +179,6 @@ int main(int argc, char **argv) - exit(EXIT_FAILURE); - } - -- if (stat(argv[1], &st) != 0) { -- perror("stat"); -- exit(EXIT_FAILURE); -- } -- - f_out = fopen(argv[2], "w"); - if (!f_out) { - perror("fopen"); -@@ -194,15 +188,14 @@ int main(int argc, char **argv) - /* - * Parse the ELF header and find the entry point. - */ -- fread((void *)&e32_hdr, sizeof(e32_hdr), 1, f_in); -+ fread((void *)&e32_hdr, sizeof(e32_hdr), 1, f_in); - if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS32) { - id = e32_hdr.e_ident; - class = ELFCLASS32; - entry = e32_hdr.e_entry; -- shoff = e32_hdr.e_shoff; -- shnum = e32_hdr.e_shnum; -- shstrndx = e32_hdr.e_shstrndx; -- shentsize = e32_hdr.e_shentsize; -+ phoff = e32_hdr.e_phoff; -+ phnum = e32_hdr.e_phnum; -+ phentsize = e32_hdr.e_phentsize; - } - else if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS64) { - /* read the header again for x86_64 -@@ -213,10 +206,9 @@ int main(int argc, char **argv) - fread((void *)&e64_hdr, sizeof(e64_hdr), 1, f_in); - id = e64_hdr.e_ident; - entry = e64_hdr.e_entry; -- shoff = e64_hdr.e_shoff; -- shnum = e64_hdr.e_shnum; -- shstrndx = e64_hdr.e_shstrndx; -- shentsize = e64_hdr.e_shentsize; -+ phoff = e64_hdr.e_phoff; -+ phnum = e64_hdr.e_phnum; -+ phentsize = e64_hdr.e_phentsize; - } else { - fprintf(stderr, "Unsupported architecture\n"); - exit(EXIT_FAILURE); -@@ -230,98 +222,47 @@ int main(int argc, char **argv) - exit(EXIT_FAILURE); - } - -- if (!shoff || !shnum || (shstrndx == SHN_UNDEF)) { -- fprintf(stderr, "Cannot find section table\n"); -+ if (!phoff || !phnum) { -+ fprintf(stderr, "Cannot find segment table\n"); - exit(EXIT_FAILURE); - } - - /* -- * Find the beginning of the .bss section. Everything preceding -- * it is copied verbatim to the output file. -+ * Find the LOAD program header. Everything in this segment -+ * is copied verbatim to the output file. -+ * Although there may be several LOAD program headers, only -+ * one is currently copied. - */ - if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS32) { -- const char *shstrtab, *name; -- Elf32_Shdr shdr; -+ Elf32_Phdr phdr; - int i; -- void *strtab; -- -- fseek(f_in, shoff, SEEK_SET); -- -- /* First find the strtab section */ -- fseek(f_in, shstrndx * shentsize, SEEK_CUR); -- fread(&shdr, sizeof(shdr), 1, f_in); - -- strtab = malloc(shdr.sh_size); -- if (!strtab) { -- fprintf(stderr, "Failed to malloc strtab\n"); -- exit(EXIT_FAILURE); -- } -- -- fseek(f_in, shdr.sh_offset, SEEK_SET); -- fread(strtab, shdr.sh_size, 1, f_in); -- -- /* Now search for the .bss section */ -- fseek(f_in, shoff, SEEK_SET); -- for (i = 0; i < shnum; i++) { -- rv = fread(&shdr, sizeof(shdr), 1, f_in); -- if (!rv) { -- fprintf(stderr, "Failed to read section table\n"); -- exit(EXIT_FAILURE); -- } -+ /* Find the first LOAD program header */ -+ for (i = 0; i < phnum; i++) { -+ fseek(f_in, phoff + i * phentsize, SEEK_SET); -+ fread(&phdr, sizeof(phdr), 1, f_in); - -- name = strtab + shdr.sh_name; -- if (!strcmp(name, ".bss")) -+ if (phdr.p_type == PT_LOAD) - break; - } - -- if (i == shnum) { -- fprintf(stderr, "Failed to find .bss section\n"); -- exit(EXIT_FAILURE); -- } -- -- datasz = shdr.sh_offset; -- } -- else if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS64) { -- const char *shstrtab, *name; -- Elf64_Shdr shdr; -+ datasz = phdr.p_filesz; -+ memsz = phdr.p_memsz; -+ } else if (e32_hdr.e_ident[EI_CLASS] == ELFCLASS64) { -+ Elf64_Phdr phdr; - int i; -- void *strtab; -- -- fseek(f_in, shoff, SEEK_SET); - -- /* First find the strtab section */ -- fseek(f_in, shstrndx * shentsize, SEEK_CUR); -- fread(&shdr, sizeof(shdr), 1, f_in); -- -- strtab = malloc(shdr.sh_size); -- if (!strtab) { -- fprintf(stderr, "Failed to malloc strtab\n"); -- exit(EXIT_FAILURE); -- } -+ /* Find the first LOAD program header */ -+ for (i = 0; i < phnum; i++) { -+ fseek(f_in, phoff + i * phentsize, SEEK_SET); -+ fread(&phdr, sizeof(phdr), 1, f_in); - -- fseek(f_in, shdr.sh_offset, SEEK_SET); -- fread(strtab, shdr.sh_size, 1, f_in); -- -- /* Now search for the .bss section */ -- fseek(f_in, shoff, SEEK_SET); -- for (i = 0; i < shnum; i++) { -- rv = fread(&shdr, sizeof(shdr), 1, f_in); -- if (!rv) { -- fprintf(stderr, "Failed to read section table\n"); -- exit(EXIT_FAILURE); -- } -- -- name = strtab + shdr.sh_name; -- if (!strcmp(name, ".bss")) -+ if (phdr.p_type == PT_LOAD) - break; - } - -- if (i == shnum) { -- fprintf(stderr, "Failed to find .bss section\n"); -- exit(EXIT_FAILURE); -- } -- -- datasz = shdr.sh_offset; -+ datasz = phdr.p_filesz; -+ memsz = phdr.p_memsz; - } - - buf = malloc(datasz); -@@ -330,7 +271,7 @@ int main(int argc, char **argv) - exit(EXIT_FAILURE); - } - -- write_header(f_out, entry, datasz, st.st_size, class); -+ write_header(f_out, entry, datasz, memsz, class); - - /* Write out the entire ELF shared object */ - rewind(f_in); -@@ -341,5 +282,8 @@ int main(int argc, char **argv) - } - - fwrite(buf, datasz, rv, f_out); -+ free(buf); -+ fclose(f_out); -+ fclose(f_in); - return 0; - } -diff --git a/efi/x86_64/syslinux.ld b/efi/x86_64/syslinux.ld -index 95160bd..450641c 100644 ---- a/efi/x86_64/syslinux.ld -+++ b/efi/x86_64/syslinux.ld -@@ -136,7 +136,7 @@ SECTIONS - *(.strtab) - } - -- .bss : { -+ .bss (NOLOAD) : { - /* the EFI loader doesn't seem to like a .bss section, - so we stick it all into .data: */ - __bss_start = .; -@@ -153,7 +153,7 @@ SECTIONS - __bss_dwords = (__bss_len + 3) >> 2; - - . = ALIGN(128); -- -+ - /* Very large objects which don't need to be zeroed */ - - .hugebss : { diff --git a/libre/syslinux/syslinux-install_update b/libre/syslinux/syslinux-install_update deleted file mode 100644 index 3843b5fed..000000000 --- a/libre/syslinux/syslinux-install_update +++ /dev/null @@ -1,453 +0,0 @@ -#!/usr/bin/env bash -# -# Syslinux Installer / Updater Script (for BIOS only) -# Copyright (C) 2011-2013 Matthew Gyurgyik -# Copyright (C) 2013 Keshav Padram Amburay <(the) (ddoott) (ridikulus) (ddoott) (rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -#----------------- -# ChangeLog: -# 2013-10-23 : Keshav Padram Amburay : Updated script to work with Syslinux 6.02 Arch Linux pkg -#----------------- -# Exit Codes: -# 1 - get_boot_device or other function failed -# 2 - install/update failed -# 3 - set_active failed -# 4 - install_mbr failed -#----------------- - -shopt -s nullglob - -bios_libpath="/usr/lib/syslinux/bios" -bios_bootpath="/boot/syslinux" -EXTLINUX="/usr/bin/extlinux" - -bios_autoupdate_file="/boot/syslinux/SYSLINUX_AUTOUPDATE" -pciids_file="/usr/share/hwdata/pci.ids" - -## Helper functions ## -# Taken from libui-sh -# $1 needle -# $2 set (array) haystack -check_is_in() { - local needle="$1" element - shift - for element; do - [[ $element = $needle ]] && return 0 - done - return 1 -} - -# return true when blockdevice is an md raid, otherwise return a unset value -# get all devices that are part of raid device $1 -device_is_raid() { - [[ $1 && -f /proc/mdstat ]] || return 1 - local devmajor=$(stat -c %t "$1") - (( devmajor == 9 )) -} - -mdraid_all_slaves() { - local slave slaves - for slave in /sys/class/block/${1##*/}/slaves/*; do - source "$slave/uevent" - slaves="$slaves/dev/$DEVNAME " - unset DEVNAME - done - echo $slaves -} - -# Check /sys/block to see if device is partitioned -# If we have a partitioned block device (sda1) /sys/block/sda1/dev will not exist -# However, if we have an unpartitioned block device (sda) /sys/block/sda/dev will exist -dev_is_part() { - # $1 - blockdevice - local dev=$1 - - # If block device uevent file should be found - # If a partition is passed in path shouldn't exist - if [[ $dev = *cciss* ]]; then - [[ -f /sys/block/cciss\!${dev##*/}/dev ]] && return 1 - elif [[ $dev = *ida* ]]; then - [[ -f /sys/block/ida\!${dev##*/}/dev ]] && return 1 - else - [[ -f /sys/block/${dev##*/}/dev ]] && return 1 - fi - - return 0 -} - -# If EFI PART is present in the first 8 bytes then it must be a GPT disk -device_is_gpt() { - local partsig=$(dd if="$1" skip=64 bs=8 count=1 2>/dev/null) - [[ $partsig = "EFI PART" ]] -} - -clear_gpt_attr2() { - # $1 - Block Device, no partitions - local disk=$1 - - # Special Exception for cciss controllers - if [[ $disk = *cciss* ]]; then - for part in /dev/cciss/${disk##*/}*p*; do - local partnum="${part##*[[:alpha:]]}" - sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null - done - # Smart 2 Controllers - elif [[ $disk = *ida* ]]; then - for part in /dev/ida/${disk##*/}*p*; do - local partnum="${part##*[[:alpha:]]}" - sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null - done - else - for part in /sys/block/${disk##*/}/${disk##*/}*; do - local partnum="${part##*[[:alpha:]]}" - sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null - done - fi - return 0 -} - -usage() { -cat << EOF -usage: $0 options - -This script will install or upgrade Syslinux (for BIOS only) - -OPTIONS: - -h Show this message - -i Install Syslinux - -u Update Syslinux - -a Set Boot flag on boot partiton - -m Install Syslinux MBR - -s Updates Syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists - - Arguments Required: - -c Chroot install (ex: -c /mnt) - -Example Usage: $0 -i -a -m # (install, set boot flag, install mbr) - $0 -u # (update) -EOF -} - -# Trys to find the partition that /boot resides on -# This will either be on /boot or / (root) -getBoot() { - if [[ ! -d "$bios_bootpath" ]]; then - echo "Could not find $bios_bootpath" - echo "Is boot mounted? Is Syslinux installed?" - exit 1 - fi - - syslinux_fs=(ext2 ext3 ext4 btrfs vfat) - - # Use DATA from findmnt see rc.sysint for more info - if [[ -f /proc/self/mountinfo ]]; then - read rootdev rootfs < <(findmnt -run -t noautofs -o SOURCE,FSTYPE "$CHROOT/") - read bootdev bootfs < <(findmnt -run -t noautofs -o SOURCE,FSTYPE "$CHROOT/boot") - else - echo "Could not find /proc/self/mountinfo" - echo "Are you running a kernel greater than 2.6.24?" - exit 1 - fi - - if [[ $bootfs ]]; then - if ! check_is_in "$bootfs" "${syslinux_fs[@]}"; then - echo "/boot file system is not supported by Syslinux" - exit 1 - fi - boot="boot" - bootpart="$bootdev" - elif [[ $rootfs ]]; then - if ! check_is_in "$rootfs" "${syslinux_fs[@]}"; then - echo "/ (root) file system is not supported by Syslinux" - exit 1 - fi - boot="root" - bootpart="$rootdev" - else - echo "Could not find filesystem on / (root) or /boot." - exit 1 - fi -} - -# We store the partition table type either gpt or mbr in var ptb -# In rare cases a user could have one raid disk using mbr and another using gpt -# In such cases we accept that the output may be incomplete - -# Calls get_ptb() for $bootpart or for all device in RAID -declare -A bootdevs -get_boot_devices() { - if device_is_raid "$bootpart"; then - slaves=$(mdraid_all_slaves "$bootpart") - - for slave in ${slaves[@]}; do - local disk="${slave%%[[:digit:]]*}" - device_is_gpt "$disk" && local ptb="GPT" || local ptb="MBR" - bootdevs[$slave]="$ptb" - done - else - local disk="${bootpart%%[[:digit:]]*}" - device_is_gpt "$disk" && local ptb="GPT" || local ptb="MBR" - bootdevs[$bootpart]="$ptb" - fi -} - -# Function Assumes the boot partition should be marked as active -# All other partitions should not have the boot flag set -set_active() { - # If any bootdev is a block device without partitions bail - # we want to set the boot flag on partitioned disk - for dev in "${!bootdevs[@]}"; do - dev_is_part $dev || { echo "$dev - is a block device. Aborting set_active!"; return 1; } - done - - # Clear BIOS Bootable Legacy Attribute for GPT drives - # In rare cases where a RAID device has slaves on the same block device - # Attribute 2 will be cleared for each partition multiple times - for dev in "${!bootdevs[@]}"; do - local ptb="${bootdevs[$dev]}" - if [[ "$ptb" = GPT ]]; then - local disk="${dev%%[[:digit:]]*}" #ex: /dev/sda - clear_gpt_attr2 "$disk" - fi - done - - # Set the boot flag on bootdevs (generated from get_boot_devices) - for part in "${!bootdevs[@]}"; do - local ptb="${bootdevs[$part]}" - local partnum="${part##*[[:alpha:]]}" - case "$part" in - *[[:digit:]]p[[:digit:]]*) - local disk="${part%%p$partnum}" # get everything before p1 - ;; - *) - local disk="${part%%[[:digit:]]*}" - ;; - esac - - if [[ "$ptb" = MBR ]]; then - if sfdisk "$disk" -A "$partnum" &>/dev/null; then - echo "Boot Flag Set - $part" - else - echo "FAILED to Set the boot flag on $part" - exit 3 - fi - elif [[ "$ptb" = GPT ]]; then - if sgdisk "$disk" --attributes="$partnum":set:2 &>/dev/null; then - echo "Attribute Legacy Bios Bootable Set - $part" - else - echo "FAILED to set attribute Legacy BIOS Bootable on $part" - exit 3 - fi - fi - done - return 0 -} - -install_mbr() { - # If any bootdev is a block device without partitions bail - # we want to install the mbr to a partitioned disk - for dev in "${!bootdevs[@]}"; do - dev_is_part "$dev" || { echo "$dev - is a block device. Aborting MBR install"; return 1; } - done - - for part in "${!bootdevs[@]}"; do - local partnum="${part##*[[:alpha:]]}" - case "$part" in - *[[:digit:]]p[[:digit:]]*) - local disk="${part%%p$partnum}" # get everything before p1 - ;; - *) - local disk="${part%%[[:digit:]]*}" - ;; - esac - local ptb="${bootdevs[$part]}" - - # We want to install to the root of the block device - # If the device is a partition - ABORT! - dev_is_part "$disk" && \ - { echo "ABORT! MBR installation to partition ($disk)!"; exit 4;} - - if [[ "$ptb" = MBR ]]; then - mbrfile="$bios_libpath/mbr.bin" - elif [[ "$ptb" = GPT ]]; then - mbrfile="$bios_libpath/gptmbr.bin" - fi - - if dd bs=440 count=1 conv=notrunc if="$mbrfile" of="$disk" &> /dev/null; then - echo "Installed MBR ($mbrfile) to $disk" - else - echo "Error Installing MBR ($mbrfile) to $disk" - exit 4 - fi - done - return 0 -} - -install_modules() { - # Copy all syslinux *.c32 modules to /boot - rm "$bios_bootpath"/*.c32 &> /dev/null - cp "$bios_libpath"/*.c32 "$bios_bootpath"/ &> /dev/null - - # Copy / Symlink pci.ids if pci.ids exists on the FS - if [[ -f "$pciids_file" ]]; then - rm "$bios_bootpath/pci.ids" &> /dev/null - cp "$pciids_file" "$bios_bootpath/pci.ids" &> /dev/null - fi -} - -_install() { - install_modules - - if device_is_raid "$bootpart" ; then - echo "Detected RAID on /boot - installing Syslinux with --raid" - "$EXTLINUX" --install "$bios_bootpath" --raid &> /dev/null - else - "$EXTLINUX" --install "$bios_bootpath" &> /dev/null - fi - - if (( $? )); then - echo "Syslinux BIOS install failed" - exit 2 - else - echo "Syslinux BIOS install successful" - fi - - touch "$CHROOT/$bios_autoupdate_file" -} - -update() { - install_modules - - if device_is_raid "$bootpart" ; then - echo "Detected RAID on /boot - updating Syslinux with --raid" - "$EXTLINUX" --update "$bios_bootpath" --raid &> /dev/null - else - "$EXTLINUX" --update "$bios_bootpath" &> /dev/null - fi - - if (($?)); then - echo "Syslinux BIOS update failed" - exit 2 - else - echo "Syslinux BIOS update successful" - fi -} - -if (( $# == 0 )); then - usage - exit 1 -fi - -while getopts "c:uihmas" opt; do - case $opt in - c) - CHROOT=$(readlink -e "$OPTARG") - if [[ -z $CHROOT ]]; then - echo "error: chroot path ``$OPTARG does not exist"; - exit 1 - fi - ;; - h) - USAGE="True" - ;; - i) - INSTALL="True" - ;; - u) - UPDATE="True" - ;; - m) - MBR="True" - ;; - a) - SET_ACTIVE="True" - ;; - s) - # If AUTOUPDATE_FILE does not exist exit the script - if [[ -f $bios_autoupdate_file ]]; then - UPDATE="True" - else - exit 0 - fi - ;; - *) - usage - exit 1 - ;; - esac -done - -if [[ $USAGE ]]; then - usage - exit 0 -fi - -# Display Usage Information if both Install and Update are passed -if [[ $INSTALL && $UPDATE ]]; then - usage - exit 1 -fi - -# Make sure only root can run our script -if (( $(id -u) != 0 )); then - echo "This script must be run as root" 1>&2 - exit 1 -fi - -# If a chroot dir is path set variables to reflect chroot -if [[ "$CHROOT" ]]; then - bios_libpath="$CHROOT$bios_libpath" - bios_bootpath="$CHROOT$bios_bootpath" - EXTLINUX="$CHROOT$EXTLINUX" -fi - -# Exit if no /boot path exists -if ( f=("$bios_bootpath"/*); (( ! ${#f[@]} )) ); then - echo "Error: $bios_bootpath is empty!" - echo "Is /boot mounted?" - exit 1 -fi - -# Get the boot device if any of these options are passed -if [[ $INSTALL || $UPDATE || $SET_ACTIVE || $MBR ]]; then - getBoot -fi - -# Install or Update -if [[ $INSTALL ]]; then - _install || exit -elif [[ $UPDATE ]]; then - update || exit -fi - - -# SET_ACTIVE and MBR -if [[ $SET_ACTIVE ]] || [[ $MBR ]]; then - get_boot_devices - - if [[ $SET_ACTIVE ]]; then - set_active || exit - fi - - if [[ $MBR ]]; then - install_mbr || exit - fi -fi - -exit 0 - -# vim: set et sw=4: diff --git a/libre/syslinux/syslinux.cfg b/libre/syslinux/syslinux.cfg deleted file mode 100644 index 0c0c6339a..000000000 --- a/libre/syslinux/syslinux.cfg +++ /dev/null @@ -1,78 +0,0 @@ -# Config file for Syslinux - -# /boot/syslinux/syslinux.cfg -# -# Comboot modules: -# * menu.c32 - provides a text menu -# * vesamenu.c32 - provides a graphical menu -# * chain.c32 - chainload MBRs, partition boot sectors, Windows bootloaders -# * hdt.c32 - hardware detection tool -# * reboot.c32 - reboots the system -# -# To Use: Copy the respective files from /usr/lib/syslinux to /boot/syslinux. -# If /usr and /boot are on the same file system, symlink the files instead -# of copying them. -# -# If you do not use a menu, a 'boot:' prompt will be shown and the system -# will boot automatically after 5 seconds. -# -# Please review the wiki: https://wiki.archlinux.org/index.php/Syslinux -# The wiki provides further configuration examples - -DEFAULT parabola -PROMPT 0 # Set to 1 if you always want to display the boot: prompt -TIMEOUT 50 -# You can create syslinux keymaps with the keytab-lilo tool -#KBDMAP de.ktl - -# Menu Configuration -# Either menu.c32 or vesamenu32.c32 must be copied to /boot/syslinux -#UI menu.c32 -UI vesamenu.c32 - -# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu -MENU TITLE Parabola GNU/Linux-libre -MENU BACKGROUND splash.png -MENU COLOR border 35;40 #ff777caa #a0000000 std -MENU COLOR title 1;35;40 #ff777caa #a0000000 std -MENU COLOR sel 7;35;47 #e0ffffff #20777caa all -MENU COLOR unsel 35;40 #ff777caa #a0000000 std -MENU COLOR help 35;40 #c0b2b2b2 #a0000000 std -MENU COLOR timeout_msg 35;40 #ff777caa #00000000 std -MENU COLOR timeout 1;35;40 #ff777caa #00000000 std -MENU COLOR msg07 35;40 #ff777caa #a0000000 std -MENU COLOR tabmsg 35;40 #ff777caa #00000000 std - -# boot sections follow -# -# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line. -# -#-* - -LABEL parabola - MENU LABEL Parabola GNU/Linux-libre - LINUX ../vmlinuz-linux-libre - APPEND root=/dev/sda3 rw - INITRD ../initramfs-linux-libre.img - -LABEL parabolafallback - MENU LABEL Parabola GNU/Linux-libre Fallback - LINUX ../vmlinuz-linux-libre - APPEND root=/dev/sda3 rw - INITRD ../initramfs-linux-libre-fallback.img - -# If you want Memtest on syslinux, use this LABEL section to launch it (install the memtest86+ package) -# LABEL memtest -# MENU LABEL Memtest86+ -# LINUX ../memtest86+/memtest.bin - -LABEL hdt - MENU LABEL HDT (Hardware Detection Tool) - COM32 hdt.c32 - -LABEL reboot - MENU LABEL Reboot - COM32 reboot.c32 - -LABEL poweroff - MENU LABEL Poweroff - COM32 poweroff.c32 diff --git a/libre/syslinux/syslinux.install b/libre/syslinux/syslinux.install deleted file mode 100644 index ed8387773..000000000 --- a/libre/syslinux/syslinux.install +++ /dev/null @@ -1,43 +0,0 @@ -post_install() { - - cat << EOF - -==> For setting up Syslinux BIOS using the syslinux-install_update script follow - https://wiki.parabolagnulinux.org/index.php/Syslinux#Automatic_Install -EOF - - ## Message specific to Syslinux 4.xx (or 5.xx) to 6.xx upgrade - if [ "$(vercmp $2 6.00)" -lt 0 ]; then - - cat << EOF - -==> If you are upgrading from Syslinux 4.xx or 5.xx, please re-install - (not update) Syslinux BIOS manually (not using the install script) once - by following https://wiki.parabolagnulinux.org/index.php/Syslinux#Manual_install - -==> The install script may not properly upgrade Syslinux to 6.xx version -EOF - - fi - - cat << EOF - -==> For setting up Syslinux EFI follow - https://wiki.parabolagnulinux.org/index.php/Syslinux#UEFI_Systems - -==> The syslinux-install_update script does not currently support EFI install - -EOF - -} - -post_upgrade() { - - ## auto-update syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists - /usr/bin/syslinux-install_update -s - - post_install - -} - -# vim:set ts=2 sw=2 et: diff --git a/libre/texlive-bin-libre/09-texlive-fonts.conf b/libre/texlive-bin-libre/09-texlive-fonts.conf deleted file mode 100644 index f870fbd7a..000000000 --- a/libre/texlive-bin-libre/09-texlive-fonts.conf +++ /dev/null @@ -1,9 +0,0 @@ - - - - /usr/share/texmf-dist/fonts/opentype - /usr/share/texmf-dist/fonts/truetype - /usr/local/share/texmf/fonts/opentype - /usr/local/share/texmf/fonts/truetype - - diff --git a/libre/texlive-bin-libre/PKGBUILD b/libre/texlive-bin-libre/PKGBUILD deleted file mode 100644 index 03d829d53..000000000 --- a/libre/texlive-bin-libre/PKGBUILD +++ /dev/null @@ -1,311 +0,0 @@ -# $Id: PKGBUILD 211863 2014-04-28 15:07:05Z jgc $ -# Maintainer (Arch): Rémy Oudompheng -# Contributor (Arch): francois -# Maintainer: Michał Masłowski -# Contributor: André Silva - -pkgname=texlive-bin-libre -pkgver=2013.30973 -pkgrel=10 -pkgdesc="TeX Live binaries, without biber binaries (Parabola rebranded)" -license=('GPL') -arch=('i686' 'x86_64' 'mips64el') -depends=('cairo' 'pixman' 'graphite' 't1lib' 'gd' 'poppler' - 'libsigsegv' 'zziplib' 'libpng' 'libjpeg' 'freetype2' - 'icu' 'harfbuzz' 'harfbuzz-icu') -makedepends=('perl' 'clisp' 'ffcall') -optdepends=('ed: for texconfig') -provides=('texlive-bin' 'lcdf-typetools' 'kpathsea' 'xindy' 'pdfjam') -conflicts=('texlive-bin' 'pdfjam') -replaces=('texlive-bin') -options=('!strip') -url='http://tug.org/texlive/' -install="texlive.install" -source=('fix-fontforge-encoding.patch' - "http://mirrors.kernel.org/archlinux/other/texlive/texlive-bin-source-${pkgver}.tar.xz" - poppler-0.26.patch -) -md5sums=('bfb9716aa00c86c08cd31e5b32edeb98' - '0a8ffd5c0002a080a4202057b1f106c6' - '65f5eef04fdf65fe8ff2df873509c855') - -prepare() { - cd source - patch -Np2 -i ../poppler-0.26.patch -} - -build() { - cd "$srcdir" - - if [ "${CARCH}" != "i686" ]; then - export CFLAGS="${CFLAGS} -fPIC" - export CXXFLAGS="${CXXFLAGS} -fPIC" - fi - - # this patch removes spurious error message with locale "xx_YY.utf8" - #patch -Np0 -i fix-fontforge-encoding.patch - # t4ht expects to be un /usr/share/texmf/bin/t4ht (FS#27251) - sed -i s/SELFAUTOPARENT/TEXMFROOT/ source/texk/tex4htk/t4ht.c - ############################################################# - ### configure - cd source - ## prevent compiling Xdvi with libXp - sed -i~ 's|-lXp ||' texk/xdvik/configure - test ! -d Work && mkdir Work - cd Work - echo "--> Initial configuration..." - # we use temporary prefix to avoid messing the existing - # $pkgdir/usr/share/texmf tree - # system zlib is disabled due to issues with zlib 1.2.6 (FS#28221) - ../configure --prefix=/usr -C \ - --sysconfdir=/etc \ - --datarootdir=/usr/share \ - --datadir=/usr/share \ - --mandir=/usr/share/man \ - --disable-native-texlive-build \ - --with-banner-add="/Parabola GNU/Linux-libre" \ - --disable-multiplatform \ - --disable-dialog \ - --disable-psutils \ - --disable-t1utils \ - --disable-bibtexu \ - --disable-xz \ - --enable-shared \ - --disable-static \ - --with-system-zlib \ - --with-system-zziplib \ - --with-system-pnglib \ - --with-system-ncurses \ - --with-system-t1lib \ - --with-system-gd \ - --with-system-poppler \ - --with-system-xpdf \ - --with-system-freetype2 \ - --with-system-pixman \ - --with-system-cairo \ - --with-system-harfbuzz \ - --with-system-graphite \ - --with-system-icu \ - --with-freetype2-libdir=/usr/lib \ - --with-freetype2-include=/usr/include/freetype2 \ - --with-xdvi-x-toolkit=xaw \ - --disable-dump-share \ - --disable-aleph \ - --enable-luatex \ - --with-clisp-runtime=default \ - --enable-xindy --disable-xindy-rules --disable-xindy-docs - ############################################################# - ### make - echo "-------------------------------------------------------" - echo "--> Building the whole beast ..." - echo "-------------------------------------------------------" - make -} - -package() { - cd "$srcdir" - - ############################################################# - ### install - cd source - # fixes for xindy - find utils/xindy -name Makefile -exec sed -i -e "s|^prefix =.\+$|prefix = $pkgdir/usr|" -e "s|^mandir =.\+$|mandir = \${prefix}/share/man|" -e "s|^datadir =.\+$|datadir = \${datarootdir}/texmf|" -e "s|^docdir =.\+$|docdir = \${datadir}/doc/xindy|" '{}' \; - - echo "-------------------------------------------------------" - echo "--> Proceeding with make install ..." - echo "-------------------------------------------------------" - cd Work - make DESTDIR="${pkgdir}" texmf="$pkgdir"/usr/share/texmf install - rm -rf "${pkgdir}"/usr/{texmf,share/texmf-dist} - - ## install Perl libraries - mkdir -p "$pkgdir"/usr/share/tlpkg/TeXLive - install -m644 "${srcdir}"/source/utils/biber/TeXLive/*.pm "${pkgdir}/usr/share/tlpkg/TeXLive" - - ## symlink engines by hand. texlinks has moved to texlive-core... - mkdir -p ${pkgdir}/usr/bin - ln -s eptex ${pkgdir}/usr/bin/platex - ln -s euptex ${pkgdir}/usr/bin/uplatex - ln -s luatex ${pkgdir}/usr/bin/dvilualatex - ln -s luatex ${pkgdir}/usr/bin/dviluatex - ln -s luatex ${pkgdir}/usr/bin/lualatex - ln -s pdftex ${pkgdir}/usr/bin/amstex - ln -s pdftex ${pkgdir}/usr/bin/cslatex - ln -s pdftex ${pkgdir}/usr/bin/csplain - ln -s pdftex ${pkgdir}/usr/bin/eplain - ln -s pdftex ${pkgdir}/usr/bin/etex - ln -s pdftex ${pkgdir}/usr/bin/jadetex - ln -s pdftex ${pkgdir}/usr/bin/latex - ln -s pdftex ${pkgdir}/usr/bin/mex - ln -s pdftex ${pkgdir}/usr/bin/mllatex - ln -s pdftex ${pkgdir}/usr/bin/mltex - ln -s pdftex ${pkgdir}/usr/bin/pdfetex - ln -s pdftex ${pkgdir}/usr/bin/pdfcslatex - ln -s pdftex ${pkgdir}/usr/bin/pdfcsplain - ln -s pdftex ${pkgdir}/usr/bin/pdfjadetex - ln -s pdftex ${pkgdir}/usr/bin/pdflatex - ln -s pdftex ${pkgdir}/usr/bin/pdfmex - ln -s pdftex ${pkgdir}/usr/bin/pdfxmltex - ln -s pdftex ${pkgdir}/usr/bin/texsis - ln -s pdftex ${pkgdir}/usr/bin/utf8mex - ln -s pdftex ${pkgdir}/usr/bin/xmltex - ln -s xetex ${pkgdir}/usr/bin/xelatex - - ############################################################# - # remove dangling symlinks - _bibtexextra_scripts=" -bibexport -listbib -multibibliography -urlbst -" - _core_scripts=" -a2ping -a5toa4 -adhocfilelist -afm2afm -allcm -allec -allneeded -arara -arlatex -autoinst -bundledoc -checkcites -chkweb -context -ctanify -ctanupload -ctxtools -de-macro -deweb -dosepsbin -dtxgen -dvi2fax -dviasm -dvired -e2pall -epstopdf -findhyph -fmtutil -fmtutil-sys -fontinst -fragmaster -installfont-tl -kpsepath -kpsetool -kpsewhere -kpsexpand -latex2man -latexdiff -latexdiff-vc -latexfileversion -latexmk -latexpand -latexrevise -listings-ext.sh -ltxfileinfo -lua2dox_filter -luaotfload-tool -luatools -match_parens -mf2pt1 -mkjobtexmf -mkluatexfontdb -mkt1font -mktexfmt -mptopdf -mtxrun -ot2kpx -pdf180 -pdf270 -pdf90 -pdfatfi -pdfbook -pdfcrop -pdfflip -pdfjam -pdfjam-pocketmod -pdfjam-slides3up -pdfjam-slides6up -pdfjoin -pdfnup -pdfpun -pfarrei -pkfix -pkfix-helper -ps2eps -ps2frag -pslatex -pstopdf -purifyeps -repstopdf -rpdfcrop -rungs -simpdftex -sty2dtx -texconfig -texconfig-dialog -texconfig-sys -texcount -texdef -texdiff -texdirflatten -texdoc -texdoctk -texexec -texindy -texlinks -texliveonfly -texloganalyser -texmfstart -thumbpdf -typeoutfileinfo -updmap -updmap-sys -vpl2ovp -vpl2vpl -xindy -" - _htmlxml_scripts="ht htcontext htlatex htmex httex httexi htxelatex htxetex mk4ht" - _langcyrillic_scripts="rubibtex rumakeindex" - _langcjk_scripts="convbkmk ptex2pdf -kanji-fontmap-creator -kanji-config-updmap -kanji-config-updmap-sys -" - _langextra_scripts="ebong" - _langgreek_scripts="mkgrkindex" - _latexextra_scripts=" -authorindex -exceltex -makeglossaries -pdfannotextractor -perltex -ps4pdf -splitindex -svn-multi -vpe" - _music_scripts="m-tx musixtex musixflx pmx2pdf" - _pictures_scripts="cachepic epspdf epspdftk fig4latex mathspic" - _pstricks_scripts="pedigree pst2pdf" - _science_scripts="ulqda" - for s in \ - ${_bibtexextra_scripts} \ - ${_core_scripts} \ - ${_htmlxml_scripts} \ - ${_langcjk_scripts} \ - ${_langcyrillic_scripts} \ - ${_langextra_scripts} \ - ${_langgreek_scripts} \ - ${_latexextra_scripts} \ - ${_music_scripts} \ - ${_pictures_scripts} \ - ${_pstricks_scripts} \ - ${_science_scripts} \ - tlmgr; do - ! readlink -e "$pkgdir"/usr/bin/$s && rm "$pkgdir"/usr/bin/$s - done - ################################################################### -} - diff --git a/libre/texlive-bin-libre/fix-fontforge-encoding.patch b/libre/texlive-bin-libre/fix-fontforge-encoding.patch deleted file mode 100644 index 8104b3289..000000000 --- a/libre/texlive-bin-libre/fix-fontforge-encoding.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/noprefs.c.orig 2009-09-30 19:27:00.935039526 +0200 -+++ source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/noprefs.c 2009-09-30 19:28:04.908364646 +0200 -@@ -495,6 +495,9 @@ - { "Big5HKSCS", e_big5hkscs }, - { "Big5-HKSCS", e_big5hkscs }, - { "UTF-8", e_utf8 }, -+ { "utf-8", e_utf8 }, -+ { "UTF8", e_utf8 }, -+ { "utf8", e_utf8 }, - { "ISO-10646/UTF-8", e_utf8 }, - { "ISO_10646/UTF-8", e_utf8 }, - { "UCS2", e_unicode }, diff --git a/libre/texlive-bin-libre/luatex-poppler-0.20.patch b/libre/texlive-bin-libre/luatex-poppler-0.20.patch deleted file mode 100644 index 175824f3e..000000000 --- a/libre/texlive-bin-libre/luatex-poppler-0.20.patch +++ /dev/null @@ -1,77 +0,0 @@ ---- source/texk/web2c/luatexdir/lua/lepdflib.cc.orig 2011-10-06 06:14:20.000000000 +0000 -+++ source/texk/web2c/luatexdir/lua/lepdflib.cc 2012-05-17 11:30:26.327236883 +0000 -@@ -157,7 +157,7 @@ - pdfdoc_changed_error(L); - uout = new_Annot_userdata(L); - uout->d = -- new Annot((XRef *) uxref->d, (Dict *) udict->d, (Catalog *) ucatalog->d, -+ new Annot((PDFDoc *) uxref->pd, (Dict *) udict->d, - (Object *) uref->d); - uout->atype = ALLOC_LEPDF; - uout->pc = uxref->pc; -@@ -179,7 +179,7 @@ - pdfdoc_changed_error(L); - uout = new_Annots_userdata(L); - uout->d = -- new Annots((XRef *) uxref->d, (Catalog *) ucatalog->d, -+ new Annots((PDFDoc *) uxref->pd, - (Object *) uannotsobj->d); - uout->atype = ALLOC_LEPDF; - uout->pc = uxref->pc; -@@ -369,7 +369,7 @@ - // Annot - - m_poppler_get_BOOL(Annot, isOk); --m_poppler_get_OBJECT(Annot, getAppearance); -+m_poppler_get_OBJECT(Annot, getAppearanceResDict); - m_poppler_get_poppler(Annot, AnnotBorder, getBorder); - - static int m_Annot_match(lua_State * L) -@@ -408,7 +408,7 @@ - - static const struct luaL_Reg Annot_m[] = { - {"isOk", m_Annot_isOk}, -- {"getAppearance", m_Annot_getAppearance}, -+ {"getAppearance", m_Annot_getAppearanceResDict}, - {"getBorder", m_Annot_getBorder}, - {"match", m_Annot_match}, - {"__tostring", m_Annot__tostring}, -@@ -1433,7 +1433,7 @@ - - static int m_Object_getTypeName(lua_State * L) - { -- char *s; -+ const char *s; - udstruct *uin; - uin = (udstruct *) luaL_checkudata(L, 1, M_Object); - if (uin->pd != NULL && uin->pd->pc != uin->pc) -@@ -2120,7 +2120,7 @@ - if ((uin->pd != NULL && uin->pd->pc != uin->pc) - || (ucat->pd != NULL && ucat->pd->pc != ucat->pd->pc)) - pdfdoc_changed_error(L); -- links = ((Page *) uin->d)->getLinks((Catalog *) ucat->d); -+ links = ((Page *) uin->d)->getLinks(); - if (links != NULL) { - uout = new_Links_userdata(L); - uout->d = links; -@@ -2738,7 +2738,10 @@ - return 1; - } - --m_poppler_get_INT(XRef, getSize); -+static int m_XRef_getSize(lua_State * L) -+{ -+ return m_XRef_getNumObjects(L); -+} - - static int m_XRef_getEntry(lua_State * L) - { -@@ -2748,7 +2751,7 @@ - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); - i = luaL_checkint(L, 2); -- size = ((XRef *) uin->d)->getSize(); -+ size = ((XRef *) uin->d)->getNumObjects(); - if (i > 0 && i <= size) { - uout = new_XRefEntry_userdata(L); - uout->d = ((XRef *) uin->d)->getEntry(i); diff --git a/libre/texlive-bin-libre/luatex-r4449-radical-rule-thickness.patch b/libre/texlive-bin-libre/luatex-r4449-radical-rule-thickness.patch deleted file mode 100644 index f925a1a93..000000000 --- a/libre/texlive-bin-libre/luatex-r4449-radical-rule-thickness.patch +++ /dev/null @@ -1,23 +0,0 @@ -Index: source/texk/web2c/luatexdir/tex/mlist.w -=================================================================== ---- source/texk/web2c/luatexdir/tex/mlist.w (revision 4448) -+++ source/texk/web2c/luatexdir/tex/mlist.w (revision 4449) -@@ -1798,7 +1798,17 @@ - theta = fraction_rule(cur_style); - y = var_delimiter(left_delimiter(q), cur_size, - height(x) + depth(x) + clr + theta, NULL, cur_style); -- theta = height(y); -+ /* If |y| is a composite then set |theta| to the height of its top -+ character, else set it to the height of |y|. */ -+ if (list_ptr(y) != null -+ && type(list_ptr(y)) == hlist_node -+ && list_ptr(list_ptr(y)) != null -+ && type(list_ptr(list_ptr(y))) == glyph_node) { /* and it should be */ -+ theta = char_height(font(list_ptr(list_ptr(y))), -+ character(list_ptr(list_ptr(y)))); -+ } else { -+ theta = height(y); -+ } - } else { - y = var_delimiter(left_delimiter(q), cur_size, - height(x) + depth(x) + clr + theta, NULL, cur_style); diff --git a/libre/texlive-bin-libre/poppler-0.20.patch b/libre/texlive-bin-libre/poppler-0.20.patch deleted file mode 100644 index 3bd8183ab..000000000 --- a/libre/texlive-bin-libre/poppler-0.20.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- source/texk/web2c/luatexdir/lua/lepdflib.cc.orig 2011-10-06 06:14:20.000000000 +0000 -+++ source/texk/web2c/luatexdir/lua/lepdflib.cc 2012-05-17 11:30:26.327236883 +0000 -@@ -1433,7 +1433,7 @@ - - static int m_Object_getTypeName(lua_State * L) - { -- char *s; -+ const char *s; - udstruct *uin; - uin = (udstruct *) luaL_checkudata(L, 1, M_Object); - if (uin->pd != NULL && uin->pd->pc != uin->pc) ---- source/texk/web2c/pdftexdir/pdftosrc.cc.orig 2012-06-24 17:12:34.376329435 +0200 -+++ source/texk/web2c/pdftexdir/pdftosrc.cc 2012-06-24 17:12:25.490003152 +0200 -@@ -134,7 +134,7 @@ - exit(1); - } - if (extract_xref_table) { -- int size = xref->getSize(); -+ int size = xref->getNumObjects(); - int i; - for (i = 0; i < size; i++) { - if (xref->getEntry(i)->offset == 0xffffffff) diff --git a/libre/texlive-bin-libre/poppler-0.26.patch b/libre/texlive-bin-libre/poppler-0.26.patch deleted file mode 100644 index fde123f62..000000000 --- a/libre/texlive-bin-libre/poppler-0.26.patch +++ /dev/null @@ -1,104 +0,0 @@ ---- trunk/source/texk/web2c/luatexdir/image/epdf.h 2013/01/20 19:58:26 4559 -+++ trunk/source/texk/web2c/luatexdir/image/epdf.h 2014/01/02 15:35:31 4718 -@@ -40,21 +40,22 @@ - # include - # include - # include --# include "Object.h" --# include "Stream.h" --# include "Gfx.h" --# include "Annot.h" --# include "Array.h" --# include "Dict.h" --# include "XRef.h" --# include "Catalog.h" --# include "Link.h" --# include "Page.h" --# include "GfxFont.h" --# include "PDFDoc.h" --# include "GlobalParams.h" --# include "Error.h" --# include "FileSpec.h" -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include - - extern "C" { - -@@ -81,8 +82,8 @@ - # include "utils/avlstuff.h" - # include "pdf/pdftypes.h" - --# include "lua52/lua.h" --# include "lua52/lauxlib.h" -+# include "lua.h" -+# include "lauxlib.h" - - /* pdfgen.w */ - extern int ten_pow[10]; ---- trunk/source/texk/web2c/luatexdir/lua/lepdflib.cc 2013/04/05 10:54:08 4629 -+++ trunk/source/texk/web2c/luatexdir/lua/lepdflib.cc 2014/01/02 15:35:31 4718 -@@ -65,6 +65,7 @@ - #define M_PDFRectangle "PDFRectangle" - #define M_Ref "Ref" - #define M_Stream "Stream" -+#define M_StructTreeRoot "StructTreeRoot" - #define M_XRefEntry "XRefEntry" - #define M_XRef "XRef" - -@@ -96,6 +97,7 @@ - new_poppler_userdata(PDFRectangle); - new_poppler_userdata(Ref); - new_poppler_userdata(Stream); -+new_poppler_userdata(StructTreeRoot); - new_poppler_userdata(XRef); - - //********************************************************************** -@@ -573,7 +575,11 @@ - - m_poppler_get_GOOSTRING(Catalog, getBaseURI); - m_poppler_get_GOOSTRING(Catalog, readMetadata); -+#ifdef GETSTRUCTTREEROOT_RETURNS_OBJECT - m_poppler_get_poppler(Catalog, Object, getStructTreeRoot); -+#else -+m_poppler_get_poppler(Catalog, StructTreeRoot, getStructTreeRoot); -+#endif - - static int m_Catalog_findPage(lua_State * L) - { -@@ -2146,14 +2152,22 @@ - - static int m_PDFDoc_getStructTreeRoot(lua_State * L) - { -+#ifdef GETSTRUCTTREEROOT_RETURNS_OBJECT - Object *obj; -+#else -+ StructTreeRoot *obj; -+#endif - udstruct *uin, *uout; - uin = (udstruct *) luaL_checkudata(L, 1, M_PDFDoc); - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); - if (((PdfDocument *) uin->d)->doc->getCatalog()->isOk()) { - obj = ((PdfDocument *) uin->d)->doc->getStructTreeRoot(); -+#ifdef GETSTRUCTTREEROOT_RETURNS_OBJECT - uout = new_Object_userdata(L); -+#else -+ uout = new_StructTreeRoot_userdata(L); -+#endif - uout->d = obj; - uout->pc = uin->pc; - uout->pd = uin->pd; diff --git a/libre/texlive-bin-libre/texlive.install b/libre/texlive-bin-libre/texlive.install deleted file mode 100644 index 4932650e6..000000000 --- a/libre/texlive-bin-libre/texlive.install +++ /dev/null @@ -1,50 +0,0 @@ -infodir=usr/share/info -filelist=(dvipng.info dvips.info eplain.info epspdf.info fontname.info kpathsea.info latex2e-es.info latex2e.info latex2man.info mf2pt1.info tds.info texdraw.info web2c.info) - -post_install() { - if [[ -f usr/bin/mktexlsr ]]; then - echo ">>> texlive: updating the filename database..." - usr/bin/mktexlsr - fi - if [[ -f usr/bin/fmtutil-sys ]]; then - echo -n "creating all formats..." - usr/bin/fmtutil-sys --all 1>/dev/null - echo " done." - echo " (logs are under /var/lib/texmf/web2c//.log)" - fi - [[ -x usr/bin/install-info ]] || return 0 - for file in "${filelist[@]}"; do - install-info "$infodir/$file.gz" "$infodir/dir" 2> /dev/null - done -} - -post_upgrade() { - local corename corever _pacout - if [[ -f usr/bin/mktexlsr ]]; then - echo ">>> texlive: updating the filename database..." - usr/bin/mktexlsr - fi - _pacout=$(pacman -Q texlive-core 2>/dev/null) - read corename corever <<< ${_pacout} - if [[ ${corever} == 2013* ]]; then - if [[ -f usr/bin/fmtutil-sys ]]; then - echo -n "recreating all formats..." - usr/bin/fmtutil-sys --all 1>/dev/null - echo " done." - echo " (logs are under /var/lib/texmf/web2c//.log)" - fi - else - echo "WARNING: not recreating formats since texlive-core has version '$corever'" - fi - [[ -x usr/bin/install-info ]] || return 0 - for file in "${filelist[@]}"; do - install-info "$infodir/$file.gz" "$infodir/dir" 2> /dev/null - done -} - -pre_remove() { - [[ -x usr/bin/install-info ]] || return 0 - for file in "${filelist[@]}"; do - install-info --delete "$infodir/$file.gz" "$infodir/dir" 2> /dev/null - done -} diff --git a/libre/texlive-bin-libre/texmf.cnf b/libre/texlive-bin-libre/texmf.cnf deleted file mode 100644 index 76975ee5c..000000000 --- a/libre/texlive-bin-libre/texmf.cnf +++ /dev/null @@ -1,724 +0,0 @@ -% texmf.cnf for TeXLive/Arch Linux -- runtime path configuration file for kpathsea. -% Public domain. -% -% If you modify this original file, YOUR CHANGES WILL BE LOST when it is -% updated. Instead, put your changes -- and only your changes, not an -% entire copy of the full texmf.cnf! -- in ../../texmf.cnf. That is, if -% this file is installed in /some/path/to/texlive/2011/texmf/web2c/texmf.cnf, -% add your custom settings to /some/path/to/texlive/2011/texmf.cnf. -% -% What follows is a super-summary of what this .cnf file can -% contain. Please read the Kpathsea manual for more information. -% -% Any identifier (sticking to A-Za-z_ for names is safest) can be assigned. -% The `=' (and surrounding spaces) is optional. -% $foo (or ${foo}) in a value expands to the envvar or cnf value of foo. -% Long lines can be continued with a \. -% -% Earlier entries (in the same or another file) override later ones, and -% an environment variable foo overrides any texmf.cnf definition of foo. -% -% All definitions are read before anything is expanded, so you can use -% variables before they are defined. -% -% If a variable assignment is qualified with `.PROGRAM', it is ignored -% unless the current executable (last filename component of argv[0]) is -% named PROGRAM. This foo.PROGRAM construct is not recognized on the -% right-hand side. For environment variables, use FOO_PROGRAM. -% -% Which file formats use which paths for searches is described in the -% various programs' and the Kpathsea documentation (http://tug.org/kpathsea). -% -% // means to search subdirectories (recursively). -% A leading !! means to look only in the ls-R db, never on the disk. -% In this file, either ; or : can be used to separate path components. -% A leading/trailing/doubled path separator in the paths will be -% expanded into the compile-time default. Probably not what you want. -% -% Brace notation is supported, for example: /usr/local/{mytex,othertex} -% expands to /usr/local/mytex:/usr/local/othertex. We make extensive -% use of this. - - -% Part 1: Search paths and directories. - -% This is the parent directory of our several trees, i.e., -% /usr/local/texlive/YYYY in the original TeX Live distribution. -% -% All trees must be organized according to the TeX Directory Structure -% (http://tug.org/tds), or files may not be found. -% -% Redistributors will probably want $SELFAUTODIR/share, i.e., /usr/share. -TEXMFROOT = $SELFAUTODIR/share - -% The tree containing runtime files related to the specific -% distribution and version. -TEXMFMAIN = $TEXMFROOT/texmf - -% The main tree of packages, distribution-agnostic: -TEXMFDIST = $TEXMFROOT/texmf-dist - -% Local additions to the distribution trees. -TEXMFLOCAL = /usr/local/share/texmf - -% TEXMFSYSVAR, where *-sys store cached runtime data. -TEXMFSYSVAR = /var/lib/texmf - -% TEXMFSYSCONFIG, where *-sys store configuration data. -TEXMFSYSCONFIG = /etc/texmf - -% Per-user texmf tree(s) -- organized per the TDS, as usual. To define -% more than one per-user tree, set this to a list of directories in -% braces, as described above. (This used to be HOMETEXMF.) ~ expands -% to %USERPROFILE% on Windows, $HOME otherwise. -TEXMFHOME = ~/texmf - -% TEXMFVAR, where texconfig/updmap/fmtutil store cached runtime data. -TEXMFVAR = ~/.texlive/texmf-var - -% TEXMFCONFIG, where texconfig/updmap/fmtutil store configuration data. -TEXMFCONFIG = ~/.texlive/texmf-config - -% List all the texmf trees. -% -% For texconfig to work properly, TEXMFCONFIG and TEXMFVAR should be named -% explicitly and before all other trees. -% -% TEXMFLOCAL follows TEXMFMAIN (and precedes TEXMFDIST) because the -% files in TEXMFMAIN are tightly coupled with the particular version of -% the distribution, such as configuration files. Overriding them would -% be more likely to cause trouble than help. On the other hand, the -% bulk of packages and fonts are in TEXMFDIST, and locally-installed -% versions should take precedence over those -- although it is generally -% a source of confusion to have different versions of a package -% installed, whatever the trees, so try to avoid it. -TEXMF = {$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST} - -% Where to look for ls-R files. There need not be an ls-R in the -% directories in this path, but if there is one, Kpathsea will use it. -% By default, this is only the !! elements of TEXMF, so that mktexlsr -% does not create ls-R files in the non-!! elements -- because if an -% ls-R is present, it will be used, and the disk will not be searched. -% This is arguably a bug in kpathsea. -TEXMFDBS = {!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST} - -% The system trees. These are the trees that are shared by all users. -% If a tree appears in this list, the mktex* scripts will use -% VARTEXFONTS for generated files, if the original tree isn't writable; -% otherwise the current working directory is used. -SYSTEXMF = $TEXMFSYSVAR;$TEXMFMAIN;$TEXMFLOCAL;$TEXMFDIST - -% Where generated fonts may be written. This tree is used when the sources -% were found in a system tree and either that tree wasn't writable, or the -% varfonts feature was enabled in MT_FEATURES in mktex.cnf. -VARTEXFONTS = $TEXMFVAR/fonts - -% On some systems, there will be a system tree which contains all the font -% files that may be created as well as the formats. For example -% TEXMFVAR = /var/lib/texmf -% is used in many distros. In this case, set VARTEXFONTS like this -%VARTEXFONTS = $TEXMFVAR/fonts -% and do not mention it in TEXMFDBS (but _do_ mention TEXMFVAR). -% -% Remove $VARTEXFONTS from TEXMFDBS if the VARTEXFONTS directory is below -% one of the TEXMF directories (avoids overlapping ls-R files). - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Usually you will not need to edit any of the following variables. -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% WEB2C is for Web2C specific files. The current directory may not be -% a good place to look for them. -WEB2C = $TEXMF/web2c - -% TEXINPUTS is for TeX input files -- i.e., anything to be found by \input -% or \openin, including .sty, .eps, etc. We specify paths for all known -% formats, past or present. Not all of them are built these days. - -% Plain TeX. Have the command tex check all directories as a last -% resort, we may have plain-compatible stuff anywhere. -TEXINPUTS.tex = .;$TEXMF/tex/{plain,generic,}// - -% Fontinst needs to read afm files. -TEXINPUTS.fontinst = .;$TEXMF/{tex,fonts/afm}// - -% Other plain-based formats. -TEXINPUTS.amstex = .;$TEXMF/tex/{amstex,plain,generic,}// -TEXINPUTS.csplain = .;$TEXMF/tex/{csplain,plain,generic,}// -TEXINPUTS.eplain = .;$TEXMF/tex/{eplain,plain,generic,}// -TEXINPUTS.ftex = .;$TEXMF/tex/{formate,plain,generic,}// -TEXINPUTS.mex = .;$TEXMF/tex/{mex,plain,generic,}// -TEXINPUTS.texinfo = .;$TEXMF/tex/{texinfo,plain,generic,}// - -% LaTeX 2e specific macros are stored in latex/, macros that can only be -% used with 2.09 in latex209/. In addition, we look in the directory -% latex209, useful for macros that were written for 2.09 and do not -% mention 2e at all, but can be used with 2e. -TEXINPUTS.cslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}// -TEXINPUTS.latex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.latex209 = .;$TEXMF/tex/{latex209,generic,latex,}// -TEXINPUTS.olatex = .;$TEXMF/tex/{latex,generic,}// - -% MLTeX. -TEXINPUTS.frlatex = .;$TEXMF/tex/{french,latex,generic,}// -TEXINPUTS.frtex = .;$TEXMF/tex/{french,plain,generic,}// -TEXINPUTS.mllatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.mltex = .;$TEXMF/tex/{plain,generic,}// - -% e-TeX. -TEXINPUTS.elatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.etex = .;$TEXMF/tex/{plain,generic,}// - -% pdfTeX. -TEXINPUTS.pdfcslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}// -TEXINPUTS.pdfcsplain = .;$TEXMF/tex/{csplain,plain,generic,}// -TEXINPUTS.pdflatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.pdfmex = .;$TEXMF/tex/{mex,plain,generic,}// -TEXINPUTS.utf8mex = .;$TEXMF/tex/{mex,plain,generic,}// -TEXINPUTS.pdftex = .;$TEXMF/tex/{plain,generic,}// -TEXINPUTS.pdftexinfo = .;$TEXMF/tex/{texinfo,plain,generic,}// -TEXINPUTS.pdfamstex = .;$TEXMF/tex/{amstex,plain,generic,}// - -% pdfeTeX. -TEXINPUTS.pdfelatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.pdfetex = .;$TEXMF/tex/{plain,generic,}// - -% pdfxTeX. -TEXINPUTS.pdfxlatex = .;$TEXMF/tex/{latex,generic,}// -TEXINPUTS.pdfxmex = .;$TEXMF/tex/{mex,plain,generic,}// -TEXINPUTS.pdfxtex = .;$TEXMF/tex/{plain,generic,}// - -% LuaTeX. -TEXINPUTS.lualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -TEXINPUTS.luatex = .;$TEXMF/tex/{luatex,plain,generic,}// -TEXINPUTS.dvilualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -TEXINPUTS.dviluatex = .;$TEXMF/tex/{luatex,plain,generic,}// - -% XeTeX. -TEXINPUTS.xelatex = .;$TEXMF/tex/{xelatex,latex,xetex,generic,}// -TEXINPUTS.xeplain = .;$TEXMF/tex/{xeplain,eplain,plain,xetex,generic,}// -TEXINPUTS.xetex = .;$TEXMF/tex/{xetex,plain,generic,}// - -% Omega / Aleph. -TEXINPUTS.aleph = .;$TEXMF/tex/{plain,generic,}// -TEXINPUTS.elambda = .;$TEXMF/tex/{lambda,latex,generic,}// -TEXINPUTS.eomega = .;$TEXMF/tex/{plain,generic,}// -TEXINPUTS.lambda = .;$TEXMF/tex/{lambda,latex,generic,}// -TEXINPUTS.lamed = .;$TEXMF/tex/{lamed,lambda,latex,generic,}// -TEXINPUTS.omega = .;$TEXMF/tex/{plain,generic,}// - -% p(La)TeX. -TEXINPUTS.ptex = .;$TEXMF/tex/{ptex,ptexgeneric,plain,generic,}// -TEXINPUTS.platex = .;$TEXMF/tex/{platex,ptexgeneric,latex,generic,}// - -% epTeX. -TEXINPUTS.eptex = .;$TEXMF/tex/{ptex,ptexgeneric,plain,generic,}// - -% pBibTeX bibliographies and style files. -BIBINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bib// -BSTINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bst// - -% ConTeXt. -TEXINPUTS.context = .;$TEXMF/tex/{context,plain,generic,}// - -% jadetex. -TEXINPUTS.jadetex = .;$TEXMF/tex/{jadetex,latex,generic,}// -TEXINPUTS.pdfjadetex = .;$TEXMF/tex/{jadetex,latex,generic,}// - -% XMLTeX. -TEXINPUTS.xmltex = .;$TEXMF/tex/{xmltex,latex,generic,}// -TEXINPUTS.pdfxmltex = .;$TEXMF/tex/{xmltex,latex,generic,}// - -% Miscellany, no longer built. -TEXINPUTS.lamstex = .;$TEXMF/tex/{lamstex,plain,generic,}// -TEXINPUTS.lollipop = .;$TEXMF/tex/{lollipop,plain,generic,}// -TEXINPUTS.frpdflatex = .;$TEXMF/tex/{french,latex,generic,}// -TEXINPUTS.frpdftex = .;$TEXMF/tex/{french,plain,generic,}// - -% Earlier entries override later ones, so put this generic one last. -TEXINPUTS = .;$TEXMF/tex/{$progname,generic,}// - -% ttf2tfm. -TTF2TFMINPUTS = .;$TEXMF/ttf2pk// - -% Metafont, MetaPost inputs. -MFINPUTS = .;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source// -MPINPUTS = .;$TEXMF/metapost// - -% Dump files (fmt/base/mem) for vir{tex,mf,mp} to read. -% We want to find the engine-specific file, e.g., cont-en.fmt can -% exist under both pdftex/ and xetex/. But just in case some formats -% end up without an engine directory, look directly in web2c/ too. -% We repeat the same definition three times because of the way fmtutil -% is implemented; if we use ${TEXFORMATS}, the mpost/mf/etc. formats -% will not be found. -TEXFORMATS = .;$TEXMF/web2c{/$engine,} -MFBASES = .;$TEXMF/web2c{/$engine,} -MPMEMS = .;$TEXMF/web2c{/$engine,} -% -% As of 2008, pool files don't exist any more (the strings are compiled -% into the binaries), but just in case something expects to find these: -TEXPOOL = .;$TEXMF/web2c -MFPOOL = ${TEXPOOL} -MPPOOL = ${TEXPOOL} - -% support the original xdvi. Must come before the generic settings. -PKFONTS.XDvi = .;$TEXMF/%s;$VARTEXFONTS/pk/{%m,modeless}// -VFFONTS.XDvi = .;$TEXMF/%s -PSHEADERS.XDvi = .;$TEXMF/%q{dvips,fonts/type1}// -TEXPICTS.XDvi = .;$TEXMF/%q{dvips,tex}// - -% Device-independent font metric files. -VFFONTS = .;$TEXMF/fonts/vf// -TFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/tfm// - -% The $MAKETEX_MODE below means the drivers will not use a cx font when -% the mode is ricoh. If no mode is explicitly specified, kpse_prog_init -% sets MAKETEX_MODE to /, so all subdirectories are searched. See the manual. -% The modeless part guarantees that bitmaps for PostScript fonts are found. -PKFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}// - -% Similarly for the GF format, which only remains in existence because -% Metafont outputs it (and MF isn't going to change). -GFFONTS = .;$TEXMF/fonts/gf/$MAKETEX_MODE// - -% A backup for PKFONTS and GFFONTS. Not used for anything. -GLYPHFONTS = .;$TEXMF/fonts - -% A place to puth everything that doesn't fit the other font categories. -MISCFONTS = .;$TEXMF/fonts/misc// - -% font name map files. This isn't just fonts/map// because ConTeXt -% wants support for having files with the same name in the different -% subdirs. Maybe if the programs ever get unified to accepting the same -% map file syntax the definition can be simplified again. -TEXFONTMAPS = .;$TEXMF/fonts/map/{$progname,pdftex,dvips,}// - -% BibTeX bibliographies and style files. bibtex8 also uses these. -BIBINPUTS = .;$TEXMF/bibtex/bib// -BSTINPUTS = .;$TEXMF/bibtex/{bst,csf}// - -% MlBibTeX. -MLBIBINPUTS = .;$TEXMF/bibtex/bib/{mlbib,}// -MLBSTINPUTS = .;$TEXMF/bibtex/{mlbst,bst}// - -% .ris and .bltxml bibliography formats. -RISINPUTS = .;$TEXMF/bibtex/ris// -BLTXMLINPUTS = .;$TEXMF/bibtex/bltxml// - -% MFT style files. -MFTINPUTS = .;$TEXMF/mft// - -% PostScript headers and prologues (.pro); unfortunately, some programs -% also use this for acessing font files (enc, type1, truetype) -TEXPSHEADERS = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3}}// -TEXPSHEADERS.gsftopk = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}// - -% OSFONTDIR is to provide a convenient hook for allowing TeX to find -% fonts installed on the system (outside of TeX). An empty default -% value would add "//" to the search paths, so we give it a dummy value. -% OSFONTDIR = /usr/share/fonts - -% PostScript Type 1 outline fonts. -T1FONTS = .;$TEXMF/fonts/type1//;$OSFONTDIR// - -% PostScript AFM metric files. -AFMFONTS = .;$TEXMF/fonts/afm//;$OSFONTDIR// - -% TrueType outline fonts. -TTFONTS = .;$TEXMF/fonts/{truetype,opentype}//;$OSFONTDIR// - -% OpenType outline fonts. -OPENTYPEFONTS = .;$TEXMF/fonts/{opentype,truetype}//;$OSFONTDIR// - -% Type 42 outline fonts. -T42FONTS = .;$TEXMF/fonts/type42// - -% Ligature definition files. -LIGFONTS = .;$TEXMF/fonts/lig// - -% Dvips' config.* files (this name should not start with `TEX'!). -TEXCONFIG = $TEXMF/dvips// - -% Makeindex style (.ist) files. -INDEXSTYLE = .;$TEXMF/makeindex// - -% Font encoding files (.enc). -ENCFONTS = .;$TEXMF/fonts/enc// - -% CMap files. -CMAPFONTS = .;$TEXMF/fonts/cmap// - -% Subfont definition files. -SFDFONTS = .;$TEXMF/fonts/sfd// - -% OpenType feature files (.fea). -FONTFEATURES=.;$TEXMF/fonts/fea// - -% .cid and .cidmap -FONTCIDMAPS=.;$TEXMF/fonts/cid// - -% pdftex config files: -PDFTEXCONFIG = .;$TEXMF/pdftex/{$progname,}// - -% Used by DMP (ditroff-to-mpx), called by makempx -troff. -TRFONTS = /usr{/local,}/share/groff/{current/font,site-font}/devps -MPSUPPORT = .;$TEXMF/metapost/support - -% For xdvi to find mime.types and .mailcap, if they do not exist in -% ~. These are single directories, not paths. -% (But the default mime.types, at least, may well suffice.) -MIMELIBDIR = /etc -MAILCAPLIBDIR = /etc - -% Default settings for the fontconfig library as used by the Windows -% versions of xetex/xdvipdfmx. On Unixish systems, fontconfig ignores -% this. ConTeXT MkIV (all platforms) also use these values. -% -FONTCONFIG_FILE = fonts.conf -FONTCONFIG_PATH = $TEXMFSYSVAR/fonts/conf -FC_CACHEDIR = $TEXMFSYSVAR/fonts/cache - -% TeX documentation and source files, for use with texdoc and kpsewhich. -TEXDOCS = $TEXMF/doc// -TEXSOURCES = .;$TEXMF/source// - -% Web and CWeb input paths. -WEBINPUTS = .;$TEXMF/web// -CWEBINPUTS = .;$TEXMF/cweb// - -% Omega-related fonts and other files. -OFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}// -OPLFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/opl// -OVFFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ovf,vf}// -OVPFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/ovp// -OTPINPUTS = .;$TEXMF/omega/otp// -OCPINPUTS = .;$TEXMF/omega/ocp// - -% Some additional input variables for several programs. If you add -% a program that uses the `other text files' or `other binary files' -% search formats, you'll want to add their variables here as well. -T4HTINPUTS = .;$TEXMF/tex4ht// - -%% t4ht utility, sharing files with TeX4ht -TEX4HTFONTSET=alias,iso8859,unicode -TEX4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// - -% TeXworks editor configuration and settings -TW_LIBPATH = $TEXMFCONFIG/texworks -TW_INIPATH = $TW_LIBPATH - -% For security, do not look in . for dvipdfmx.cfg, since the D option -% would allow command execution. -DVIPDFMXINPUTS = $TEXMF/dvipdfmx - -% Lua needs to look in TEXINPUTS for lua scripts distributed with packages. -% -% But we can't simply use $TEXINPUTS, since then if TEXINPUTS is set in -% the environment with a colon, say, TEXINPUTS=/some/dir:, the intended -% default expansion of TEXINPUTS will not happen and .lua files under -% the /tex/ will not be found. -% -% So, duplicate the TEXINPUTS.*lualatex values as LUAINPUTS.*lualatex. -% The default LUAINPUTS sufficess for luatex and dviluatex. -% -LUAINPUTS.lualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -LUAINPUTS.dvilualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// -LUAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{luatex,plain,generic,}// - -% Lua needs to look for binary lua libraries distributed with packages. -CLUAINPUTS = .;$SELFAUTOLOC/lib/{$progname,$engine,}/lua// - -% Architecture independent executables. -TEXMFSCRIPTS = $TEXMF/scripts/{$progname,$engine,}// - -% Other languages. -JAVAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/java// -PERLINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/perl// -PYTHONINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/python// -RUBYINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/ruby// - - -%% The mktex* scripts rely on KPSE_DOT. Do not set it in the environment. -% KPSE_DOT = . - -% This definition isn't used from this .cnf file itself (that would be -% paradoxical), but the compile-time default in paths.h is built from it. -% The SELFAUTO* variables are set automatically from the location of -% argv[0], in kpse_set_program_name. -% -% This main texmf.cnf file is installed, for a release YYYY, in a -% directory such as /usr/local/texlive/YYYY/texmf/web2c/texmf.cnf. -% Since this file is subject to future updates, the TeX Live installer -% or human administrator may also create a file -% /usr/local/texlive/YYYY/texmf.cnf; any settings in this latter file -% will take precedence over the distributed one under texmf/web2c. -% -% For security reasons, it is better not to include . in this path. -% -TEXMFCNF = {$SELFAUTOLOC,$SELFAUTODIR,$SELFAUTOPARENT}{,{/share,}/texmf{-local,}/web2c} - -% kpathsea 3.5.3 and later sets these at runtime. To avoid empty -% expansions from binaries linked against an earlier version of the -% library, we set $progname and $engine to something non-empty: -progname = unsetprogname -engine = unsetengine - - -% Part 2: Options. - -% If this option is set to true, `tex a.b' will look first for a.b.tex -% (within each path element), and then for a.b, i.e., we try standard -% extensions first. If this is false, we first look for a.b and then -% a.b.tex, i.e., we try the name as-is first. -% -% Both names are always tried; the difference is the order in which they -% are tried. The setting applies to all searches, not just .tex. -% -% This setting only affects names being looked up which *already* have -% an extension. A name without an extension (e.g., `tex story') will -% always have an extension added first. -% -% The default is true, because we already avoid adding the standard -% extension(s) in the usual cases. E.g., babel.sty will only look for -% babel.sty, not babel.sty.tex, regardless of this setting. -try_std_extension_first = t - -% Enable system commands via \write18{...}. When enabled fully (set to -% t), obviously insecure. When enabled partially (set to p), only the -% commands listed in shell_escape_commands are allowed. Although this -% is not fully secure either, it is much better, and so useful that we -% enable it for everything but bare tex. -shell_escape = p - -% No spaces in this command list. -% -% The programs listed here are as safe as any we know: they either do -% not write any output files, respect openout_any, or have hard-coded -% restrictions similar or higher to openout_any=p. They also have no -% features to invoke arbitrary other programs, and no known exploitable -% bugs. All to the best of our knowledge. They also have practical use -% for being called from TeX. -% -shell_escape_commands = \ -bibtex,bibtex8,\ -kpsewhich,\ -makeindex,\ -repstopdf,\ - -% we'd like to allow: -% dvips - but external commands can be executed, need at least -R1. -% epspdf, ps2pdf, pstopdf - need to respect openout_any, -% and gs -dSAFER must be used and check for shell injection with filenames. -% (img)convert (ImageMagick) - delegates.mgk possible misconfig, besides, -% without Unix convert it hardly seems worth it, and Windows convert -% is something completely different that destroys filesystems, so skip. -% pygmentize - but is the filter feature insecure? -% ps4pdf - but it calls an unrestricted latex. -% rpdfcrop - maybe ok, but let's get experience with repstopdf first. -% texindy,xindy - but is the module feature insecure? -% ulqda - but requires optional SHA1.pm, so why bother. -% tex, latex, etc. - need to forbid --shell-escape, and inherit openout_any. - -% plain TeX should remain unenhanced. -shell_escape.tex = f -shell_escape.initex = f - -% This is used by the Windows script wrapper for restricting searching -% for the purportedly safe shell_escape_commands above to system -% directories. -TEXMF_RESTRICTED_SCRIPTS = \ - {!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST}/scripts/{$progname,$engine,}// - -% Allow TeX \openin, \openout, or \input on filenames starting with `.' -% (e.g., .rhosts) or outside the current tree (e.g., /etc/passwd)? -% a (any) : any file can be opened. -% r (restricted) : disallow opening "dotfiles". -% p (paranoid) : as `r' and disallow going to parent directories, and -% restrict absolute paths to be under $TEXMFOUTPUT. -openout_any = p -openin_any = a - -% Write .log/.dvi/etc. files here, if the current directory is unwritable. -%TEXMFOUTPUT = /tmp - -% If a dynamic file creation fails, log the command to this file, in -% either the current directory or TEXMFOUTPUT. Set to the -% empty string or 0 to avoid logging. -MISSFONT_LOG = missfont.log - -% Set to a colon-separated list of words specifying warnings to suppress. -% To suppress everything, use TEX_HUSH = all; this is currently equivalent to -% TEX_HUSH = checksum:lostchar:readable:special -% To suppress nothing, use TEX_HUSH = none or do not set the variable at all. -TEX_HUSH = none - -% Allow TeX, and MF to parse the first line of an input file for -% the %&format construct. -parse_first_line = t - -% But don't parse the first line if invoked as "tex", since we want that -% to remain Knuth-compatible. The src_specials and -% file_line_error_style settings, as well as the options -enctex, -% -mltex, -8bit, etc., also affect this, but they are all off by default. -parse_first_line.tex = f -parse_first_line.initex = f - -% Control file:line:error style messages. -file_line_error_style = f - -% Enable the mktex... scripts by default? These must be set to 0 or 1. -% Particular programs can and do override these settings, for example -% dvips's -M option. Your first chance to specify whether the scripts -% are invoked by default is at configure time. -% -% These values are ignored if the script names are changed; e.g., if you -% set DVIPSMAKEPK to `foo', what counts is the value of the environment -% variable/config value `FOO', not the `MKTEXPK' value. -% -%MKTEXTEX = 0 -%MKTEXPK = 0 -%MKTEXMF = 0 -%MKTEXTFM = 0 -%MKTEXFMT = 0 -%MKOCP = 0 -%MKOFM = 0 - -% Used by makempx to run TeX. We use "etex" because MetaPost is -% expecting DVI, and not "tex" because we want first line parsing. -TEX = etex - -% These variables specify the external program called for the -% interactive `e' option. %d is replaced by the line number and %s by -% the current filename. The default is specified at compile-time, and -% we let that stay in place since different platforms like different values. -%TEXEDIT = vi +%d '%s' % default for Unix -%TEXEDIT = texworks --position=+%d "%s" % default for Windows -%MFEDIT = ${TEXEDIT} -%MPEDIT = ${TEXEDIT} - -% The default `codepage and sort order' file for BibTeX8, when none is -% given as command line option or environment variable. -BIBTEX_CSFILE = 88591lat.csf - -% This variable is specific to Windows. It must be set to 0 or 1. The -% default is 0. Setting it to 1 tells the Windows script wrappers to -% use an already installed Perl interpreter if one is found on the -% search path, in preference to the Perl shipped with TeX Live. Thus, -% it may be useful if you both (a) installed a full Perl distribution -% for general use, and (b) need to run Perl programs from TL that use -% additional modules we don't provide. The TL Perl does provide all the -% standard Perl modules. -% -%TEXLIVE_WINDOWS_TRY_EXTERNAL_PERL = 0 - - -% Part 3: Array and other sizes for TeX (and Metafont). -% -% If you want to change some of these sizes only for a certain TeX -% variant, the usual dot notation works, e.g., -% main_memory.hugetex = 20000000 -% -% If a change here appears to be ignored, try redumping the format file. - -% Memory. Must be less than 8,000,000 total. -% -% main_memory is relevant only to initex, extra_mem_* only to non-ini. -% Thus, have to redump the .fmt file after changing main_memory; to add -% to existing fmt files, increase extra_mem_*. (To get an idea of how -% much, try \tracingstats=2 in your TeX source file; -% web2c/tests/memtest.tex might also be interesting.) -% -% To increase space for boxes (as might be needed by, e.g., PiCTeX), -% increase extra_mem_bot. -% -% For some xy-pic samples, you may need as much as 700000 words of memory. -% For the vast majority of documents, 60000 or less will do. -% -main_memory = 3000000 % words of inimemory available; also applies to inimf&mp -extra_mem_top = 0 % extra high memory for chars, tokens, etc. -extra_mem_bot = 0 % extra low memory for boxes, glue, breakpoints, etc. - -% ConTeXt needs lots of memory. -extra_mem_top.context = 2000000 -extra_mem_bot.context = 4000000 - -% Words of font info for TeX (total size of all TFM files, approximately). -% Must be >= 20000 and <= 147483647 (without tex.ch changes). -font_mem_size = 3000000 - -% Total number of fonts. Must be >= 50 and <= 9000 (without tex.ch changes). -font_max = 9000 - -% Extra space for the hash table of control sequences. -hash_extra = 200000 - -% Max number of characters in all strings, including all error messages, -% help texts, font names, control sequences. These values apply to TeX. -pool_size = 3250000 -% Minimum pool space after TeX's own strings; must be at least -% 25000 less than pool_size, but doesn't need to be nearly that large. -string_vacancies = 90000 -% Maximum number of strings. -max_strings = 500000 -% min pool space left after loading .fmt -pool_free = 47500 - -% Buffer size. TeX uses the buffer to contain input lines, but macro -% expansion works by writing material into the buffer and reparsing the -% line. As a consequence, certain constructs require the buffer to be -% very large, even though most documents can be handled with a small value. -buf_size = 200000 - -% Hyphenation trie. The maximum possible is 4194303 (ssup_trie_size in -% the sources), but we don't need that much. The value here suffices -% for all known free hyphenation patterns to be loaded simultaneously -% (as TeX Live does). -% -trie_size = 1000000 - -hyph_size = 8191 % prime number of hyphenation exceptions, >610, <32767. - % http://primes.utm.edu/curios/page.php/8191.html -nest_size = 500 % simultaneous semantic levels (e.g., groups) -max_in_open = 15 % simultaneous input files and error insertions, - % also applies to MetaPost -param_size = 10000 % simultaneous macro parameters, also applies to MP -save_size = 50000 % for saving values outside current group -stack_size = 5000 % simultaneous input sources - -% These are Omega-specific. -ocp_buf_size = 500000 % character buffers for ocp filters. -ocp_stack_size = 10000 % stacks for ocp computations. -ocp_list_size = 1000 % control for multiple ocps. - -% These work best if they are the same as the I/O buffer size, but it -% doesn't matter much. Must be a multiple of 8. -dvi_buf_size = 16384 % TeX -gf_buf_size = 16384 % MF - -% It's probably inadvisable to change these. At any rate, we must have: -% 45 < error_line < 255; -% 30 < half_error_line < error_line - 15; -% 60 <= max_print_line; -% These apply to TeX, Metafont, and MetaPost. -error_line = 79 -half_error_line = 50 -max_print_line = 79 - -% Metafont only. -screen_width.mf = 1664 -screen_depth.mf = 1200 - -% BibTeX only (max_strings also determines hash_size and hash_prime). -ent_str_size = 250 -glob_str_size = 5000 -max_strings.bibtex = 35307 -max_strings.bibtex8 = 35307 -max_strings.bibtexu = 35307 -max_strings.pbibtex = 35307 - -% GFtype only. -line_length.gftype = 500 -max_rows.gftype = 8191 -max_cols.gftype = 8191 diff --git a/libre/texlive-bin-parabola/09-texlive-fonts.conf b/libre/texlive-bin-parabola/09-texlive-fonts.conf new file mode 100644 index 000000000..f870fbd7a --- /dev/null +++ b/libre/texlive-bin-parabola/09-texlive-fonts.conf @@ -0,0 +1,9 @@ + + + + /usr/share/texmf-dist/fonts/opentype + /usr/share/texmf-dist/fonts/truetype + /usr/local/share/texmf/fonts/opentype + /usr/local/share/texmf/fonts/truetype + + diff --git a/libre/texlive-bin-parabola/PKGBUILD b/libre/texlive-bin-parabola/PKGBUILD new file mode 100644 index 000000000..52f8566ce --- /dev/null +++ b/libre/texlive-bin-parabola/PKGBUILD @@ -0,0 +1,311 @@ +# $Id: PKGBUILD 211863 2014-04-28 15:07:05Z jgc $ +# Maintainer (Arch): Rémy Oudompheng +# Contributor (Arch): francois +# Maintainer: Michał Masłowski +# Contributor: André Silva + +pkgname=texlive-bin-parabola +pkgver=2013.30973 +pkgrel=10 +pkgdesc="TeX Live binaries, without biber binaries (Parabola rebranded)" +license=('GPL') +arch=('i686' 'x86_64' 'mips64el') +depends=('cairo' 'pixman' 'graphite' 't1lib' 'gd' 'poppler' + 'libsigsegv' 'zziplib' 'libpng' 'libjpeg' 'freetype2' + 'icu' 'harfbuzz' 'harfbuzz-icu') +makedepends=('perl' 'clisp' 'ffcall') +optdepends=('ed: for texconfig') +provides=("texlive-bin=$pkgver" 'lcdf-typetools' 'kpathsea' 'xindy' 'pdfjam') +conflicts=('texlive-bin' 'pdfjam' 'texlive-bin-libre') +replaces=('texlive-bin' 'texlive-bin-libre') +options=('!strip') +url='http://tug.org/texlive/' +install="texlive.install" +source=('fix-fontforge-encoding.patch' + "http://mirrors.kernel.org/archlinux/other/texlive/texlive-bin-source-${pkgver}.tar.xz" + poppler-0.26.patch +) +md5sums=('bfb9716aa00c86c08cd31e5b32edeb98' + '0a8ffd5c0002a080a4202057b1f106c6' + '65f5eef04fdf65fe8ff2df873509c855') + +prepare() { + cd source + patch -Np2 -i ../poppler-0.26.patch +} + +build() { + cd "$srcdir" + + if [ "${CARCH}" != "i686" ]; then + export CFLAGS="${CFLAGS} -fPIC" + export CXXFLAGS="${CXXFLAGS} -fPIC" + fi + + # this patch removes spurious error message with locale "xx_YY.utf8" + #patch -Np0 -i fix-fontforge-encoding.patch + # t4ht expects to be un /usr/share/texmf/bin/t4ht (FS#27251) + sed -i s/SELFAUTOPARENT/TEXMFROOT/ source/texk/tex4htk/t4ht.c + ############################################################# + ### configure + cd source + ## prevent compiling Xdvi with libXp + sed -i~ 's|-lXp ||' texk/xdvik/configure + test ! -d Work && mkdir Work + cd Work + echo "--> Initial configuration..." + # we use temporary prefix to avoid messing the existing + # $pkgdir/usr/share/texmf tree + # system zlib is disabled due to issues with zlib 1.2.6 (FS#28221) + ../configure --prefix=/usr -C \ + --sysconfdir=/etc \ + --datarootdir=/usr/share \ + --datadir=/usr/share \ + --mandir=/usr/share/man \ + --disable-native-texlive-build \ + --with-banner-add="/Parabola GNU/Linux-libre" \ + --disable-multiplatform \ + --disable-dialog \ + --disable-psutils \ + --disable-t1utils \ + --disable-bibtexu \ + --disable-xz \ + --enable-shared \ + --disable-static \ + --with-system-zlib \ + --with-system-zziplib \ + --with-system-pnglib \ + --with-system-ncurses \ + --with-system-t1lib \ + --with-system-gd \ + --with-system-poppler \ + --with-system-xpdf \ + --with-system-freetype2 \ + --with-system-pixman \ + --with-system-cairo \ + --with-system-harfbuzz \ + --with-system-graphite \ + --with-system-icu \ + --with-freetype2-libdir=/usr/lib \ + --with-freetype2-include=/usr/include/freetype2 \ + --with-xdvi-x-toolkit=xaw \ + --disable-dump-share \ + --disable-aleph \ + --enable-luatex \ + --with-clisp-runtime=default \ + --enable-xindy --disable-xindy-rules --disable-xindy-docs + ############################################################# + ### make + echo "-------------------------------------------------------" + echo "--> Building the whole beast ..." + echo "-------------------------------------------------------" + make +} + +package() { + cd "$srcdir" + + ############################################################# + ### install + cd source + # fixes for xindy + find utils/xindy -name Makefile -exec sed -i -e "s|^prefix =.\+$|prefix = $pkgdir/usr|" -e "s|^mandir =.\+$|mandir = \${prefix}/share/man|" -e "s|^datadir =.\+$|datadir = \${datarootdir}/texmf|" -e "s|^docdir =.\+$|docdir = \${datadir}/doc/xindy|" '{}' \; + + echo "-------------------------------------------------------" + echo "--> Proceeding with make install ..." + echo "-------------------------------------------------------" + cd Work + make DESTDIR="${pkgdir}" texmf="$pkgdir"/usr/share/texmf install + rm -rf "${pkgdir}"/usr/{texmf,share/texmf-dist} + + ## install Perl libraries + mkdir -p "$pkgdir"/usr/share/tlpkg/TeXLive + install -m644 "${srcdir}"/source/utils/biber/TeXLive/*.pm "${pkgdir}/usr/share/tlpkg/TeXLive" + + ## symlink engines by hand. texlinks has moved to texlive-core... + mkdir -p ${pkgdir}/usr/bin + ln -s eptex ${pkgdir}/usr/bin/platex + ln -s euptex ${pkgdir}/usr/bin/uplatex + ln -s luatex ${pkgdir}/usr/bin/dvilualatex + ln -s luatex ${pkgdir}/usr/bin/dviluatex + ln -s luatex ${pkgdir}/usr/bin/lualatex + ln -s pdftex ${pkgdir}/usr/bin/amstex + ln -s pdftex ${pkgdir}/usr/bin/cslatex + ln -s pdftex ${pkgdir}/usr/bin/csplain + ln -s pdftex ${pkgdir}/usr/bin/eplain + ln -s pdftex ${pkgdir}/usr/bin/etex + ln -s pdftex ${pkgdir}/usr/bin/jadetex + ln -s pdftex ${pkgdir}/usr/bin/latex + ln -s pdftex ${pkgdir}/usr/bin/mex + ln -s pdftex ${pkgdir}/usr/bin/mllatex + ln -s pdftex ${pkgdir}/usr/bin/mltex + ln -s pdftex ${pkgdir}/usr/bin/pdfetex + ln -s pdftex ${pkgdir}/usr/bin/pdfcslatex + ln -s pdftex ${pkgdir}/usr/bin/pdfcsplain + ln -s pdftex ${pkgdir}/usr/bin/pdfjadetex + ln -s pdftex ${pkgdir}/usr/bin/pdflatex + ln -s pdftex ${pkgdir}/usr/bin/pdfmex + ln -s pdftex ${pkgdir}/usr/bin/pdfxmltex + ln -s pdftex ${pkgdir}/usr/bin/texsis + ln -s pdftex ${pkgdir}/usr/bin/utf8mex + ln -s pdftex ${pkgdir}/usr/bin/xmltex + ln -s xetex ${pkgdir}/usr/bin/xelatex + + ############################################################# + # remove dangling symlinks + _bibtexextra_scripts=" +bibexport +listbib +multibibliography +urlbst +" + _core_scripts=" +a2ping +a5toa4 +adhocfilelist +afm2afm +allcm +allec +allneeded +arara +arlatex +autoinst +bundledoc +checkcites +chkweb +context +ctanify +ctanupload +ctxtools +de-macro +deweb +dosepsbin +dtxgen +dvi2fax +dviasm +dvired +e2pall +epstopdf +findhyph +fmtutil +fmtutil-sys +fontinst +fragmaster +installfont-tl +kpsepath +kpsetool +kpsewhere +kpsexpand +latex2man +latexdiff +latexdiff-vc +latexfileversion +latexmk +latexpand +latexrevise +listings-ext.sh +ltxfileinfo +lua2dox_filter +luaotfload-tool +luatools +match_parens +mf2pt1 +mkjobtexmf +mkluatexfontdb +mkt1font +mktexfmt +mptopdf +mtxrun +ot2kpx +pdf180 +pdf270 +pdf90 +pdfatfi +pdfbook +pdfcrop +pdfflip +pdfjam +pdfjam-pocketmod +pdfjam-slides3up +pdfjam-slides6up +pdfjoin +pdfnup +pdfpun +pfarrei +pkfix +pkfix-helper +ps2eps +ps2frag +pslatex +pstopdf +purifyeps +repstopdf +rpdfcrop +rungs +simpdftex +sty2dtx +texconfig +texconfig-dialog +texconfig-sys +texcount +texdef +texdiff +texdirflatten +texdoc +texdoctk +texexec +texindy +texlinks +texliveonfly +texloganalyser +texmfstart +thumbpdf +typeoutfileinfo +updmap +updmap-sys +vpl2ovp +vpl2vpl +xindy +" + _htmlxml_scripts="ht htcontext htlatex htmex httex httexi htxelatex htxetex mk4ht" + _langcyrillic_scripts="rubibtex rumakeindex" + _langcjk_scripts="convbkmk ptex2pdf +kanji-fontmap-creator +kanji-config-updmap +kanji-config-updmap-sys +" + _langextra_scripts="ebong" + _langgreek_scripts="mkgrkindex" + _latexextra_scripts=" +authorindex +exceltex +makeglossaries +pdfannotextractor +perltex +ps4pdf +splitindex +svn-multi +vpe" + _music_scripts="m-tx musixtex musixflx pmx2pdf" + _pictures_scripts="cachepic epspdf epspdftk fig4latex mathspic" + _pstricks_scripts="pedigree pst2pdf" + _science_scripts="ulqda" + for s in \ + ${_bibtexextra_scripts} \ + ${_core_scripts} \ + ${_htmlxml_scripts} \ + ${_langcjk_scripts} \ + ${_langcyrillic_scripts} \ + ${_langextra_scripts} \ + ${_langgreek_scripts} \ + ${_latexextra_scripts} \ + ${_music_scripts} \ + ${_pictures_scripts} \ + ${_pstricks_scripts} \ + ${_science_scripts} \ + tlmgr; do + ! readlink -e "$pkgdir"/usr/bin/$s && rm "$pkgdir"/usr/bin/$s + done + ################################################################### +} + diff --git a/libre/texlive-bin-parabola/fix-fontforge-encoding.patch b/libre/texlive-bin-parabola/fix-fontforge-encoding.patch new file mode 100644 index 000000000..8104b3289 --- /dev/null +++ b/libre/texlive-bin-parabola/fix-fontforge-encoding.patch @@ -0,0 +1,12 @@ +--- source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/noprefs.c.orig 2009-09-30 19:27:00.935039526 +0200 ++++ source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/noprefs.c 2009-09-30 19:28:04.908364646 +0200 +@@ -495,6 +495,9 @@ + { "Big5HKSCS", e_big5hkscs }, + { "Big5-HKSCS", e_big5hkscs }, + { "UTF-8", e_utf8 }, ++ { "utf-8", e_utf8 }, ++ { "UTF8", e_utf8 }, ++ { "utf8", e_utf8 }, + { "ISO-10646/UTF-8", e_utf8 }, + { "ISO_10646/UTF-8", e_utf8 }, + { "UCS2", e_unicode }, diff --git a/libre/texlive-bin-parabola/luatex-poppler-0.20.patch b/libre/texlive-bin-parabola/luatex-poppler-0.20.patch new file mode 100644 index 000000000..175824f3e --- /dev/null +++ b/libre/texlive-bin-parabola/luatex-poppler-0.20.patch @@ -0,0 +1,77 @@ +--- source/texk/web2c/luatexdir/lua/lepdflib.cc.orig 2011-10-06 06:14:20.000000000 +0000 ++++ source/texk/web2c/luatexdir/lua/lepdflib.cc 2012-05-17 11:30:26.327236883 +0000 +@@ -157,7 +157,7 @@ + pdfdoc_changed_error(L); + uout = new_Annot_userdata(L); + uout->d = +- new Annot((XRef *) uxref->d, (Dict *) udict->d, (Catalog *) ucatalog->d, ++ new Annot((PDFDoc *) uxref->pd, (Dict *) udict->d, + (Object *) uref->d); + uout->atype = ALLOC_LEPDF; + uout->pc = uxref->pc; +@@ -179,7 +179,7 @@ + pdfdoc_changed_error(L); + uout = new_Annots_userdata(L); + uout->d = +- new Annots((XRef *) uxref->d, (Catalog *) ucatalog->d, ++ new Annots((PDFDoc *) uxref->pd, + (Object *) uannotsobj->d); + uout->atype = ALLOC_LEPDF; + uout->pc = uxref->pc; +@@ -369,7 +369,7 @@ + // Annot + + m_poppler_get_BOOL(Annot, isOk); +-m_poppler_get_OBJECT(Annot, getAppearance); ++m_poppler_get_OBJECT(Annot, getAppearanceResDict); + m_poppler_get_poppler(Annot, AnnotBorder, getBorder); + + static int m_Annot_match(lua_State * L) +@@ -408,7 +408,7 @@ + + static const struct luaL_Reg Annot_m[] = { + {"isOk", m_Annot_isOk}, +- {"getAppearance", m_Annot_getAppearance}, ++ {"getAppearance", m_Annot_getAppearanceResDict}, + {"getBorder", m_Annot_getBorder}, + {"match", m_Annot_match}, + {"__tostring", m_Annot__tostring}, +@@ -1433,7 +1433,7 @@ + + static int m_Object_getTypeName(lua_State * L) + { +- char *s; ++ const char *s; + udstruct *uin; + uin = (udstruct *) luaL_checkudata(L, 1, M_Object); + if (uin->pd != NULL && uin->pd->pc != uin->pc) +@@ -2120,7 +2120,7 @@ + if ((uin->pd != NULL && uin->pd->pc != uin->pc) + || (ucat->pd != NULL && ucat->pd->pc != ucat->pd->pc)) + pdfdoc_changed_error(L); +- links = ((Page *) uin->d)->getLinks((Catalog *) ucat->d); ++ links = ((Page *) uin->d)->getLinks(); + if (links != NULL) { + uout = new_Links_userdata(L); + uout->d = links; +@@ -2738,7 +2738,10 @@ + return 1; + } + +-m_poppler_get_INT(XRef, getSize); ++static int m_XRef_getSize(lua_State * L) ++{ ++ return m_XRef_getNumObjects(L); ++} + + static int m_XRef_getEntry(lua_State * L) + { +@@ -2748,7 +2751,7 @@ + if (uin->pd != NULL && uin->pd->pc != uin->pc) + pdfdoc_changed_error(L); + i = luaL_checkint(L, 2); +- size = ((XRef *) uin->d)->getSize(); ++ size = ((XRef *) uin->d)->getNumObjects(); + if (i > 0 && i <= size) { + uout = new_XRefEntry_userdata(L); + uout->d = ((XRef *) uin->d)->getEntry(i); diff --git a/libre/texlive-bin-parabola/luatex-r4449-radical-rule-thickness.patch b/libre/texlive-bin-parabola/luatex-r4449-radical-rule-thickness.patch new file mode 100644 index 000000000..f925a1a93 --- /dev/null +++ b/libre/texlive-bin-parabola/luatex-r4449-radical-rule-thickness.patch @@ -0,0 +1,23 @@ +Index: source/texk/web2c/luatexdir/tex/mlist.w +=================================================================== +--- source/texk/web2c/luatexdir/tex/mlist.w (revision 4448) ++++ source/texk/web2c/luatexdir/tex/mlist.w (revision 4449) +@@ -1798,7 +1798,17 @@ + theta = fraction_rule(cur_style); + y = var_delimiter(left_delimiter(q), cur_size, + height(x) + depth(x) + clr + theta, NULL, cur_style); +- theta = height(y); ++ /* If |y| is a composite then set |theta| to the height of its top ++ character, else set it to the height of |y|. */ ++ if (list_ptr(y) != null ++ && type(list_ptr(y)) == hlist_node ++ && list_ptr(list_ptr(y)) != null ++ && type(list_ptr(list_ptr(y))) == glyph_node) { /* and it should be */ ++ theta = char_height(font(list_ptr(list_ptr(y))), ++ character(list_ptr(list_ptr(y)))); ++ } else { ++ theta = height(y); ++ } + } else { + y = var_delimiter(left_delimiter(q), cur_size, + height(x) + depth(x) + clr + theta, NULL, cur_style); diff --git a/libre/texlive-bin-parabola/poppler-0.20.patch b/libre/texlive-bin-parabola/poppler-0.20.patch new file mode 100644 index 000000000..3bd8183ab --- /dev/null +++ b/libre/texlive-bin-parabola/poppler-0.20.patch @@ -0,0 +1,22 @@ +--- source/texk/web2c/luatexdir/lua/lepdflib.cc.orig 2011-10-06 06:14:20.000000000 +0000 ++++ source/texk/web2c/luatexdir/lua/lepdflib.cc 2012-05-17 11:30:26.327236883 +0000 +@@ -1433,7 +1433,7 @@ + + static int m_Object_getTypeName(lua_State * L) + { +- char *s; ++ const char *s; + udstruct *uin; + uin = (udstruct *) luaL_checkudata(L, 1, M_Object); + if (uin->pd != NULL && uin->pd->pc != uin->pc) +--- source/texk/web2c/pdftexdir/pdftosrc.cc.orig 2012-06-24 17:12:34.376329435 +0200 ++++ source/texk/web2c/pdftexdir/pdftosrc.cc 2012-06-24 17:12:25.490003152 +0200 +@@ -134,7 +134,7 @@ + exit(1); + } + if (extract_xref_table) { +- int size = xref->getSize(); ++ int size = xref->getNumObjects(); + int i; + for (i = 0; i < size; i++) { + if (xref->getEntry(i)->offset == 0xffffffff) diff --git a/libre/texlive-bin-parabola/poppler-0.26.patch b/libre/texlive-bin-parabola/poppler-0.26.patch new file mode 100644 index 000000000..fde123f62 --- /dev/null +++ b/libre/texlive-bin-parabola/poppler-0.26.patch @@ -0,0 +1,104 @@ +--- trunk/source/texk/web2c/luatexdir/image/epdf.h 2013/01/20 19:58:26 4559 ++++ trunk/source/texk/web2c/luatexdir/image/epdf.h 2014/01/02 15:35:31 4718 +@@ -40,21 +40,22 @@ + # include + # include + # include +-# include "Object.h" +-# include "Stream.h" +-# include "Gfx.h" +-# include "Annot.h" +-# include "Array.h" +-# include "Dict.h" +-# include "XRef.h" +-# include "Catalog.h" +-# include "Link.h" +-# include "Page.h" +-# include "GfxFont.h" +-# include "PDFDoc.h" +-# include "GlobalParams.h" +-# include "Error.h" +-# include "FileSpec.h" ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + + extern "C" { + +@@ -81,8 +82,8 @@ + # include "utils/avlstuff.h" + # include "pdf/pdftypes.h" + +-# include "lua52/lua.h" +-# include "lua52/lauxlib.h" ++# include "lua.h" ++# include "lauxlib.h" + + /* pdfgen.w */ + extern int ten_pow[10]; +--- trunk/source/texk/web2c/luatexdir/lua/lepdflib.cc 2013/04/05 10:54:08 4629 ++++ trunk/source/texk/web2c/luatexdir/lua/lepdflib.cc 2014/01/02 15:35:31 4718 +@@ -65,6 +65,7 @@ + #define M_PDFRectangle "PDFRectangle" + #define M_Ref "Ref" + #define M_Stream "Stream" ++#define M_StructTreeRoot "StructTreeRoot" + #define M_XRefEntry "XRefEntry" + #define M_XRef "XRef" + +@@ -96,6 +97,7 @@ + new_poppler_userdata(PDFRectangle); + new_poppler_userdata(Ref); + new_poppler_userdata(Stream); ++new_poppler_userdata(StructTreeRoot); + new_poppler_userdata(XRef); + + //********************************************************************** +@@ -573,7 +575,11 @@ + + m_poppler_get_GOOSTRING(Catalog, getBaseURI); + m_poppler_get_GOOSTRING(Catalog, readMetadata); ++#ifdef GETSTRUCTTREEROOT_RETURNS_OBJECT + m_poppler_get_poppler(Catalog, Object, getStructTreeRoot); ++#else ++m_poppler_get_poppler(Catalog, StructTreeRoot, getStructTreeRoot); ++#endif + + static int m_Catalog_findPage(lua_State * L) + { +@@ -2146,14 +2152,22 @@ + + static int m_PDFDoc_getStructTreeRoot(lua_State * L) + { ++#ifdef GETSTRUCTTREEROOT_RETURNS_OBJECT + Object *obj; ++#else ++ StructTreeRoot *obj; ++#endif + udstruct *uin, *uout; + uin = (udstruct *) luaL_checkudata(L, 1, M_PDFDoc); + if (uin->pd != NULL && uin->pd->pc != uin->pc) + pdfdoc_changed_error(L); + if (((PdfDocument *) uin->d)->doc->getCatalog()->isOk()) { + obj = ((PdfDocument *) uin->d)->doc->getStructTreeRoot(); ++#ifdef GETSTRUCTTREEROOT_RETURNS_OBJECT + uout = new_Object_userdata(L); ++#else ++ uout = new_StructTreeRoot_userdata(L); ++#endif + uout->d = obj; + uout->pc = uin->pc; + uout->pd = uin->pd; diff --git a/libre/texlive-bin-parabola/texlive.install b/libre/texlive-bin-parabola/texlive.install new file mode 100644 index 000000000..4932650e6 --- /dev/null +++ b/libre/texlive-bin-parabola/texlive.install @@ -0,0 +1,50 @@ +infodir=usr/share/info +filelist=(dvipng.info dvips.info eplain.info epspdf.info fontname.info kpathsea.info latex2e-es.info latex2e.info latex2man.info mf2pt1.info tds.info texdraw.info web2c.info) + +post_install() { + if [[ -f usr/bin/mktexlsr ]]; then + echo ">>> texlive: updating the filename database..." + usr/bin/mktexlsr + fi + if [[ -f usr/bin/fmtutil-sys ]]; then + echo -n "creating all formats..." + usr/bin/fmtutil-sys --all 1>/dev/null + echo " done." + echo " (logs are under /var/lib/texmf/web2c//.log)" + fi + [[ -x usr/bin/install-info ]] || return 0 + for file in "${filelist[@]}"; do + install-info "$infodir/$file.gz" "$infodir/dir" 2> /dev/null + done +} + +post_upgrade() { + local corename corever _pacout + if [[ -f usr/bin/mktexlsr ]]; then + echo ">>> texlive: updating the filename database..." + usr/bin/mktexlsr + fi + _pacout=$(pacman -Q texlive-core 2>/dev/null) + read corename corever <<< ${_pacout} + if [[ ${corever} == 2013* ]]; then + if [[ -f usr/bin/fmtutil-sys ]]; then + echo -n "recreating all formats..." + usr/bin/fmtutil-sys --all 1>/dev/null + echo " done." + echo " (logs are under /var/lib/texmf/web2c//.log)" + fi + else + echo "WARNING: not recreating formats since texlive-core has version '$corever'" + fi + [[ -x usr/bin/install-info ]] || return 0 + for file in "${filelist[@]}"; do + install-info "$infodir/$file.gz" "$infodir/dir" 2> /dev/null + done +} + +pre_remove() { + [[ -x usr/bin/install-info ]] || return 0 + for file in "${filelist[@]}"; do + install-info --delete "$infodir/$file.gz" "$infodir/dir" 2> /dev/null + done +} diff --git a/libre/texlive-bin-parabola/texmf.cnf b/libre/texlive-bin-parabola/texmf.cnf new file mode 100644 index 000000000..76975ee5c --- /dev/null +++ b/libre/texlive-bin-parabola/texmf.cnf @@ -0,0 +1,724 @@ +% texmf.cnf for TeXLive/Arch Linux -- runtime path configuration file for kpathsea. +% Public domain. +% +% If you modify this original file, YOUR CHANGES WILL BE LOST when it is +% updated. Instead, put your changes -- and only your changes, not an +% entire copy of the full texmf.cnf! -- in ../../texmf.cnf. That is, if +% this file is installed in /some/path/to/texlive/2011/texmf/web2c/texmf.cnf, +% add your custom settings to /some/path/to/texlive/2011/texmf.cnf. +% +% What follows is a super-summary of what this .cnf file can +% contain. Please read the Kpathsea manual for more information. +% +% Any identifier (sticking to A-Za-z_ for names is safest) can be assigned. +% The `=' (and surrounding spaces) is optional. +% $foo (or ${foo}) in a value expands to the envvar or cnf value of foo. +% Long lines can be continued with a \. +% +% Earlier entries (in the same or another file) override later ones, and +% an environment variable foo overrides any texmf.cnf definition of foo. +% +% All definitions are read before anything is expanded, so you can use +% variables before they are defined. +% +% If a variable assignment is qualified with `.PROGRAM', it is ignored +% unless the current executable (last filename component of argv[0]) is +% named PROGRAM. This foo.PROGRAM construct is not recognized on the +% right-hand side. For environment variables, use FOO_PROGRAM. +% +% Which file formats use which paths for searches is described in the +% various programs' and the Kpathsea documentation (http://tug.org/kpathsea). +% +% // means to search subdirectories (recursively). +% A leading !! means to look only in the ls-R db, never on the disk. +% In this file, either ; or : can be used to separate path components. +% A leading/trailing/doubled path separator in the paths will be +% expanded into the compile-time default. Probably not what you want. +% +% Brace notation is supported, for example: /usr/local/{mytex,othertex} +% expands to /usr/local/mytex:/usr/local/othertex. We make extensive +% use of this. + + +% Part 1: Search paths and directories. + +% This is the parent directory of our several trees, i.e., +% /usr/local/texlive/YYYY in the original TeX Live distribution. +% +% All trees must be organized according to the TeX Directory Structure +% (http://tug.org/tds), or files may not be found. +% +% Redistributors will probably want $SELFAUTODIR/share, i.e., /usr/share. +TEXMFROOT = $SELFAUTODIR/share + +% The tree containing runtime files related to the specific +% distribution and version. +TEXMFMAIN = $TEXMFROOT/texmf + +% The main tree of packages, distribution-agnostic: +TEXMFDIST = $TEXMFROOT/texmf-dist + +% Local additions to the distribution trees. +TEXMFLOCAL = /usr/local/share/texmf + +% TEXMFSYSVAR, where *-sys store cached runtime data. +TEXMFSYSVAR = /var/lib/texmf + +% TEXMFSYSCONFIG, where *-sys store configuration data. +TEXMFSYSCONFIG = /etc/texmf + +% Per-user texmf tree(s) -- organized per the TDS, as usual. To define +% more than one per-user tree, set this to a list of directories in +% braces, as described above. (This used to be HOMETEXMF.) ~ expands +% to %USERPROFILE% on Windows, $HOME otherwise. +TEXMFHOME = ~/texmf + +% TEXMFVAR, where texconfig/updmap/fmtutil store cached runtime data. +TEXMFVAR = ~/.texlive/texmf-var + +% TEXMFCONFIG, where texconfig/updmap/fmtutil store configuration data. +TEXMFCONFIG = ~/.texlive/texmf-config + +% List all the texmf trees. +% +% For texconfig to work properly, TEXMFCONFIG and TEXMFVAR should be named +% explicitly and before all other trees. +% +% TEXMFLOCAL follows TEXMFMAIN (and precedes TEXMFDIST) because the +% files in TEXMFMAIN are tightly coupled with the particular version of +% the distribution, such as configuration files. Overriding them would +% be more likely to cause trouble than help. On the other hand, the +% bulk of packages and fonts are in TEXMFDIST, and locally-installed +% versions should take precedence over those -- although it is generally +% a source of confusion to have different versions of a package +% installed, whatever the trees, so try to avoid it. +TEXMF = {$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST} + +% Where to look for ls-R files. There need not be an ls-R in the +% directories in this path, but if there is one, Kpathsea will use it. +% By default, this is only the !! elements of TEXMF, so that mktexlsr +% does not create ls-R files in the non-!! elements -- because if an +% ls-R is present, it will be used, and the disk will not be searched. +% This is arguably a bug in kpathsea. +TEXMFDBS = {!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST} + +% The system trees. These are the trees that are shared by all users. +% If a tree appears in this list, the mktex* scripts will use +% VARTEXFONTS for generated files, if the original tree isn't writable; +% otherwise the current working directory is used. +SYSTEXMF = $TEXMFSYSVAR;$TEXMFMAIN;$TEXMFLOCAL;$TEXMFDIST + +% Where generated fonts may be written. This tree is used when the sources +% were found in a system tree and either that tree wasn't writable, or the +% varfonts feature was enabled in MT_FEATURES in mktex.cnf. +VARTEXFONTS = $TEXMFVAR/fonts + +% On some systems, there will be a system tree which contains all the font +% files that may be created as well as the formats. For example +% TEXMFVAR = /var/lib/texmf +% is used in many distros. In this case, set VARTEXFONTS like this +%VARTEXFONTS = $TEXMFVAR/fonts +% and do not mention it in TEXMFDBS (but _do_ mention TEXMFVAR). +% +% Remove $VARTEXFONTS from TEXMFDBS if the VARTEXFONTS directory is below +% one of the TEXMF directories (avoids overlapping ls-R files). + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Usually you will not need to edit any of the following variables. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% WEB2C is for Web2C specific files. The current directory may not be +% a good place to look for them. +WEB2C = $TEXMF/web2c + +% TEXINPUTS is for TeX input files -- i.e., anything to be found by \input +% or \openin, including .sty, .eps, etc. We specify paths for all known +% formats, past or present. Not all of them are built these days. + +% Plain TeX. Have the command tex check all directories as a last +% resort, we may have plain-compatible stuff anywhere. +TEXINPUTS.tex = .;$TEXMF/tex/{plain,generic,}// + +% Fontinst needs to read afm files. +TEXINPUTS.fontinst = .;$TEXMF/{tex,fonts/afm}// + +% Other plain-based formats. +TEXINPUTS.amstex = .;$TEXMF/tex/{amstex,plain,generic,}// +TEXINPUTS.csplain = .;$TEXMF/tex/{csplain,plain,generic,}// +TEXINPUTS.eplain = .;$TEXMF/tex/{eplain,plain,generic,}// +TEXINPUTS.ftex = .;$TEXMF/tex/{formate,plain,generic,}// +TEXINPUTS.mex = .;$TEXMF/tex/{mex,plain,generic,}// +TEXINPUTS.texinfo = .;$TEXMF/tex/{texinfo,plain,generic,}// + +% LaTeX 2e specific macros are stored in latex/, macros that can only be +% used with 2.09 in latex209/. In addition, we look in the directory +% latex209, useful for macros that were written for 2.09 and do not +% mention 2e at all, but can be used with 2e. +TEXINPUTS.cslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}// +TEXINPUTS.latex = .;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.latex209 = .;$TEXMF/tex/{latex209,generic,latex,}// +TEXINPUTS.olatex = .;$TEXMF/tex/{latex,generic,}// + +% MLTeX. +TEXINPUTS.frlatex = .;$TEXMF/tex/{french,latex,generic,}// +TEXINPUTS.frtex = .;$TEXMF/tex/{french,plain,generic,}// +TEXINPUTS.mllatex = .;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.mltex = .;$TEXMF/tex/{plain,generic,}// + +% e-TeX. +TEXINPUTS.elatex = .;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.etex = .;$TEXMF/tex/{plain,generic,}// + +% pdfTeX. +TEXINPUTS.pdfcslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}// +TEXINPUTS.pdfcsplain = .;$TEXMF/tex/{csplain,plain,generic,}// +TEXINPUTS.pdflatex = .;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.pdfmex = .;$TEXMF/tex/{mex,plain,generic,}// +TEXINPUTS.utf8mex = .;$TEXMF/tex/{mex,plain,generic,}// +TEXINPUTS.pdftex = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.pdftexinfo = .;$TEXMF/tex/{texinfo,plain,generic,}// +TEXINPUTS.pdfamstex = .;$TEXMF/tex/{amstex,plain,generic,}// + +% pdfeTeX. +TEXINPUTS.pdfelatex = .;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.pdfetex = .;$TEXMF/tex/{plain,generic,}// + +% pdfxTeX. +TEXINPUTS.pdfxlatex = .;$TEXMF/tex/{latex,generic,}// +TEXINPUTS.pdfxmex = .;$TEXMF/tex/{mex,plain,generic,}// +TEXINPUTS.pdfxtex = .;$TEXMF/tex/{plain,generic,}// + +% LuaTeX. +TEXINPUTS.lualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +TEXINPUTS.luatex = .;$TEXMF/tex/{luatex,plain,generic,}// +TEXINPUTS.dvilualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +TEXINPUTS.dviluatex = .;$TEXMF/tex/{luatex,plain,generic,}// + +% XeTeX. +TEXINPUTS.xelatex = .;$TEXMF/tex/{xelatex,latex,xetex,generic,}// +TEXINPUTS.xeplain = .;$TEXMF/tex/{xeplain,eplain,plain,xetex,generic,}// +TEXINPUTS.xetex = .;$TEXMF/tex/{xetex,plain,generic,}// + +% Omega / Aleph. +TEXINPUTS.aleph = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.elambda = .;$TEXMF/tex/{lambda,latex,generic,}// +TEXINPUTS.eomega = .;$TEXMF/tex/{plain,generic,}// +TEXINPUTS.lambda = .;$TEXMF/tex/{lambda,latex,generic,}// +TEXINPUTS.lamed = .;$TEXMF/tex/{lamed,lambda,latex,generic,}// +TEXINPUTS.omega = .;$TEXMF/tex/{plain,generic,}// + +% p(La)TeX. +TEXINPUTS.ptex = .;$TEXMF/tex/{ptex,ptexgeneric,plain,generic,}// +TEXINPUTS.platex = .;$TEXMF/tex/{platex,ptexgeneric,latex,generic,}// + +% epTeX. +TEXINPUTS.eptex = .;$TEXMF/tex/{ptex,ptexgeneric,plain,generic,}// + +% pBibTeX bibliographies and style files. +BIBINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bib// +BSTINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bst// + +% ConTeXt. +TEXINPUTS.context = .;$TEXMF/tex/{context,plain,generic,}// + +% jadetex. +TEXINPUTS.jadetex = .;$TEXMF/tex/{jadetex,latex,generic,}// +TEXINPUTS.pdfjadetex = .;$TEXMF/tex/{jadetex,latex,generic,}// + +% XMLTeX. +TEXINPUTS.xmltex = .;$TEXMF/tex/{xmltex,latex,generic,}// +TEXINPUTS.pdfxmltex = .;$TEXMF/tex/{xmltex,latex,generic,}// + +% Miscellany, no longer built. +TEXINPUTS.lamstex = .;$TEXMF/tex/{lamstex,plain,generic,}// +TEXINPUTS.lollipop = .;$TEXMF/tex/{lollipop,plain,generic,}// +TEXINPUTS.frpdflatex = .;$TEXMF/tex/{french,latex,generic,}// +TEXINPUTS.frpdftex = .;$TEXMF/tex/{french,plain,generic,}// + +% Earlier entries override later ones, so put this generic one last. +TEXINPUTS = .;$TEXMF/tex/{$progname,generic,}// + +% ttf2tfm. +TTF2TFMINPUTS = .;$TEXMF/ttf2pk// + +% Metafont, MetaPost inputs. +MFINPUTS = .;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source// +MPINPUTS = .;$TEXMF/metapost// + +% Dump files (fmt/base/mem) for vir{tex,mf,mp} to read. +% We want to find the engine-specific file, e.g., cont-en.fmt can +% exist under both pdftex/ and xetex/. But just in case some formats +% end up without an engine directory, look directly in web2c/ too. +% We repeat the same definition three times because of the way fmtutil +% is implemented; if we use ${TEXFORMATS}, the mpost/mf/etc. formats +% will not be found. +TEXFORMATS = .;$TEXMF/web2c{/$engine,} +MFBASES = .;$TEXMF/web2c{/$engine,} +MPMEMS = .;$TEXMF/web2c{/$engine,} +% +% As of 2008, pool files don't exist any more (the strings are compiled +% into the binaries), but just in case something expects to find these: +TEXPOOL = .;$TEXMF/web2c +MFPOOL = ${TEXPOOL} +MPPOOL = ${TEXPOOL} + +% support the original xdvi. Must come before the generic settings. +PKFONTS.XDvi = .;$TEXMF/%s;$VARTEXFONTS/pk/{%m,modeless}// +VFFONTS.XDvi = .;$TEXMF/%s +PSHEADERS.XDvi = .;$TEXMF/%q{dvips,fonts/type1}// +TEXPICTS.XDvi = .;$TEXMF/%q{dvips,tex}// + +% Device-independent font metric files. +VFFONTS = .;$TEXMF/fonts/vf// +TFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/tfm// + +% The $MAKETEX_MODE below means the drivers will not use a cx font when +% the mode is ricoh. If no mode is explicitly specified, kpse_prog_init +% sets MAKETEX_MODE to /, so all subdirectories are searched. See the manual. +% The modeless part guarantees that bitmaps for PostScript fonts are found. +PKFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}// + +% Similarly for the GF format, which only remains in existence because +% Metafont outputs it (and MF isn't going to change). +GFFONTS = .;$TEXMF/fonts/gf/$MAKETEX_MODE// + +% A backup for PKFONTS and GFFONTS. Not used for anything. +GLYPHFONTS = .;$TEXMF/fonts + +% A place to puth everything that doesn't fit the other font categories. +MISCFONTS = .;$TEXMF/fonts/misc// + +% font name map files. This isn't just fonts/map// because ConTeXt +% wants support for having files with the same name in the different +% subdirs. Maybe if the programs ever get unified to accepting the same +% map file syntax the definition can be simplified again. +TEXFONTMAPS = .;$TEXMF/fonts/map/{$progname,pdftex,dvips,}// + +% BibTeX bibliographies and style files. bibtex8 also uses these. +BIBINPUTS = .;$TEXMF/bibtex/bib// +BSTINPUTS = .;$TEXMF/bibtex/{bst,csf}// + +% MlBibTeX. +MLBIBINPUTS = .;$TEXMF/bibtex/bib/{mlbib,}// +MLBSTINPUTS = .;$TEXMF/bibtex/{mlbst,bst}// + +% .ris and .bltxml bibliography formats. +RISINPUTS = .;$TEXMF/bibtex/ris// +BLTXMLINPUTS = .;$TEXMF/bibtex/bltxml// + +% MFT style files. +MFTINPUTS = .;$TEXMF/mft// + +% PostScript headers and prologues (.pro); unfortunately, some programs +% also use this for acessing font files (enc, type1, truetype) +TEXPSHEADERS = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3}}// +TEXPSHEADERS.gsftopk = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}// + +% OSFONTDIR is to provide a convenient hook for allowing TeX to find +% fonts installed on the system (outside of TeX). An empty default +% value would add "//" to the search paths, so we give it a dummy value. +% OSFONTDIR = /usr/share/fonts + +% PostScript Type 1 outline fonts. +T1FONTS = .;$TEXMF/fonts/type1//;$OSFONTDIR// + +% PostScript AFM metric files. +AFMFONTS = .;$TEXMF/fonts/afm//;$OSFONTDIR// + +% TrueType outline fonts. +TTFONTS = .;$TEXMF/fonts/{truetype,opentype}//;$OSFONTDIR// + +% OpenType outline fonts. +OPENTYPEFONTS = .;$TEXMF/fonts/{opentype,truetype}//;$OSFONTDIR// + +% Type 42 outline fonts. +T42FONTS = .;$TEXMF/fonts/type42// + +% Ligature definition files. +LIGFONTS = .;$TEXMF/fonts/lig// + +% Dvips' config.* files (this name should not start with `TEX'!). +TEXCONFIG = $TEXMF/dvips// + +% Makeindex style (.ist) files. +INDEXSTYLE = .;$TEXMF/makeindex// + +% Font encoding files (.enc). +ENCFONTS = .;$TEXMF/fonts/enc// + +% CMap files. +CMAPFONTS = .;$TEXMF/fonts/cmap// + +% Subfont definition files. +SFDFONTS = .;$TEXMF/fonts/sfd// + +% OpenType feature files (.fea). +FONTFEATURES=.;$TEXMF/fonts/fea// + +% .cid and .cidmap +FONTCIDMAPS=.;$TEXMF/fonts/cid// + +% pdftex config files: +PDFTEXCONFIG = .;$TEXMF/pdftex/{$progname,}// + +% Used by DMP (ditroff-to-mpx), called by makempx -troff. +TRFONTS = /usr{/local,}/share/groff/{current/font,site-font}/devps +MPSUPPORT = .;$TEXMF/metapost/support + +% For xdvi to find mime.types and .mailcap, if they do not exist in +% ~. These are single directories, not paths. +% (But the default mime.types, at least, may well suffice.) +MIMELIBDIR = /etc +MAILCAPLIBDIR = /etc + +% Default settings for the fontconfig library as used by the Windows +% versions of xetex/xdvipdfmx. On Unixish systems, fontconfig ignores +% this. ConTeXT MkIV (all platforms) also use these values. +% +FONTCONFIG_FILE = fonts.conf +FONTCONFIG_PATH = $TEXMFSYSVAR/fonts/conf +FC_CACHEDIR = $TEXMFSYSVAR/fonts/cache + +% TeX documentation and source files, for use with texdoc and kpsewhich. +TEXDOCS = $TEXMF/doc// +TEXSOURCES = .;$TEXMF/source// + +% Web and CWeb input paths. +WEBINPUTS = .;$TEXMF/web// +CWEBINPUTS = .;$TEXMF/cweb// + +% Omega-related fonts and other files. +OFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}// +OPLFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/opl// +OVFFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ovf,vf}// +OVPFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/ovp// +OTPINPUTS = .;$TEXMF/omega/otp// +OCPINPUTS = .;$TEXMF/omega/ocp// + +% Some additional input variables for several programs. If you add +% a program that uses the `other text files' or `other binary files' +% search formats, you'll want to add their variables here as well. +T4HTINPUTS = .;$TEXMF/tex4ht// + +%% t4ht utility, sharing files with TeX4ht +TEX4HTFONTSET=alias,iso8859,unicode +TEX4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// + +% TeXworks editor configuration and settings +TW_LIBPATH = $TEXMFCONFIG/texworks +TW_INIPATH = $TW_LIBPATH + +% For security, do not look in . for dvipdfmx.cfg, since the D option +% would allow command execution. +DVIPDFMXINPUTS = $TEXMF/dvipdfmx + +% Lua needs to look in TEXINPUTS for lua scripts distributed with packages. +% +% But we can't simply use $TEXINPUTS, since then if TEXINPUTS is set in +% the environment with a colon, say, TEXINPUTS=/some/dir:, the intended +% default expansion of TEXINPUTS will not happen and .lua files under +% the /tex/ will not be found. +% +% So, duplicate the TEXINPUTS.*lualatex values as LUAINPUTS.*lualatex. +% The default LUAINPUTS sufficess for luatex and dviluatex. +% +LUAINPUTS.lualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +LUAINPUTS.dvilualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}// +LUAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{luatex,plain,generic,}// + +% Lua needs to look for binary lua libraries distributed with packages. +CLUAINPUTS = .;$SELFAUTOLOC/lib/{$progname,$engine,}/lua// + +% Architecture independent executables. +TEXMFSCRIPTS = $TEXMF/scripts/{$progname,$engine,}// + +% Other languages. +JAVAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/java// +PERLINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/perl// +PYTHONINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/python// +RUBYINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/ruby// + + +%% The mktex* scripts rely on KPSE_DOT. Do not set it in the environment. +% KPSE_DOT = . + +% This definition isn't used from this .cnf file itself (that would be +% paradoxical), but the compile-time default in paths.h is built from it. +% The SELFAUTO* variables are set automatically from the location of +% argv[0], in kpse_set_program_name. +% +% This main texmf.cnf file is installed, for a release YYYY, in a +% directory such as /usr/local/texlive/YYYY/texmf/web2c/texmf.cnf. +% Since this file is subject to future updates, the TeX Live installer +% or human administrator may also create a file +% /usr/local/texlive/YYYY/texmf.cnf; any settings in this latter file +% will take precedence over the distributed one under texmf/web2c. +% +% For security reasons, it is better not to include . in this path. +% +TEXMFCNF = {$SELFAUTOLOC,$SELFAUTODIR,$SELFAUTOPARENT}{,{/share,}/texmf{-local,}/web2c} + +% kpathsea 3.5.3 and later sets these at runtime. To avoid empty +% expansions from binaries linked against an earlier version of the +% library, we set $progname and $engine to something non-empty: +progname = unsetprogname +engine = unsetengine + + +% Part 2: Options. + +% If this option is set to true, `tex a.b' will look first for a.b.tex +% (within each path element), and then for a.b, i.e., we try standard +% extensions first. If this is false, we first look for a.b and then +% a.b.tex, i.e., we try the name as-is first. +% +% Both names are always tried; the difference is the order in which they +% are tried. The setting applies to all searches, not just .tex. +% +% This setting only affects names being looked up which *already* have +% an extension. A name without an extension (e.g., `tex story') will +% always have an extension added first. +% +% The default is true, because we already avoid adding the standard +% extension(s) in the usual cases. E.g., babel.sty will only look for +% babel.sty, not babel.sty.tex, regardless of this setting. +try_std_extension_first = t + +% Enable system commands via \write18{...}. When enabled fully (set to +% t), obviously insecure. When enabled partially (set to p), only the +% commands listed in shell_escape_commands are allowed. Although this +% is not fully secure either, it is much better, and so useful that we +% enable it for everything but bare tex. +shell_escape = p + +% No spaces in this command list. +% +% The programs listed here are as safe as any we know: they either do +% not write any output files, respect openout_any, or have hard-coded +% restrictions similar or higher to openout_any=p. They also have no +% features to invoke arbitrary other programs, and no known exploitable +% bugs. All to the best of our knowledge. They also have practical use +% for being called from TeX. +% +shell_escape_commands = \ +bibtex,bibtex8,\ +kpsewhich,\ +makeindex,\ +repstopdf,\ + +% we'd like to allow: +% dvips - but external commands can be executed, need at least -R1. +% epspdf, ps2pdf, pstopdf - need to respect openout_any, +% and gs -dSAFER must be used and check for shell injection with filenames. +% (img)convert (ImageMagick) - delegates.mgk possible misconfig, besides, +% without Unix convert it hardly seems worth it, and Windows convert +% is something completely different that destroys filesystems, so skip. +% pygmentize - but is the filter feature insecure? +% ps4pdf - but it calls an unrestricted latex. +% rpdfcrop - maybe ok, but let's get experience with repstopdf first. +% texindy,xindy - but is the module feature insecure? +% ulqda - but requires optional SHA1.pm, so why bother. +% tex, latex, etc. - need to forbid --shell-escape, and inherit openout_any. + +% plain TeX should remain unenhanced. +shell_escape.tex = f +shell_escape.initex = f + +% This is used by the Windows script wrapper for restricting searching +% for the purportedly safe shell_escape_commands above to system +% directories. +TEXMF_RESTRICTED_SCRIPTS = \ + {!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST}/scripts/{$progname,$engine,}// + +% Allow TeX \openin, \openout, or \input on filenames starting with `.' +% (e.g., .rhosts) or outside the current tree (e.g., /etc/passwd)? +% a (any) : any file can be opened. +% r (restricted) : disallow opening "dotfiles". +% p (paranoid) : as `r' and disallow going to parent directories, and +% restrict absolute paths to be under $TEXMFOUTPUT. +openout_any = p +openin_any = a + +% Write .log/.dvi/etc. files here, if the current directory is unwritable. +%TEXMFOUTPUT = /tmp + +% If a dynamic file creation fails, log the command to this file, in +% either the current directory or TEXMFOUTPUT. Set to the +% empty string or 0 to avoid logging. +MISSFONT_LOG = missfont.log + +% Set to a colon-separated list of words specifying warnings to suppress. +% To suppress everything, use TEX_HUSH = all; this is currently equivalent to +% TEX_HUSH = checksum:lostchar:readable:special +% To suppress nothing, use TEX_HUSH = none or do not set the variable at all. +TEX_HUSH = none + +% Allow TeX, and MF to parse the first line of an input file for +% the %&format construct. +parse_first_line = t + +% But don't parse the first line if invoked as "tex", since we want that +% to remain Knuth-compatible. The src_specials and +% file_line_error_style settings, as well as the options -enctex, +% -mltex, -8bit, etc., also affect this, but they are all off by default. +parse_first_line.tex = f +parse_first_line.initex = f + +% Control file:line:error style messages. +file_line_error_style = f + +% Enable the mktex... scripts by default? These must be set to 0 or 1. +% Particular programs can and do override these settings, for example +% dvips's -M option. Your first chance to specify whether the scripts +% are invoked by default is at configure time. +% +% These values are ignored if the script names are changed; e.g., if you +% set DVIPSMAKEPK to `foo', what counts is the value of the environment +% variable/config value `FOO', not the `MKTEXPK' value. +% +%MKTEXTEX = 0 +%MKTEXPK = 0 +%MKTEXMF = 0 +%MKTEXTFM = 0 +%MKTEXFMT = 0 +%MKOCP = 0 +%MKOFM = 0 + +% Used by makempx to run TeX. We use "etex" because MetaPost is +% expecting DVI, and not "tex" because we want first line parsing. +TEX = etex + +% These variables specify the external program called for the +% interactive `e' option. %d is replaced by the line number and %s by +% the current filename. The default is specified at compile-time, and +% we let that stay in place since different platforms like different values. +%TEXEDIT = vi +%d '%s' % default for Unix +%TEXEDIT = texworks --position=+%d "%s" % default for Windows +%MFEDIT = ${TEXEDIT} +%MPEDIT = ${TEXEDIT} + +% The default `codepage and sort order' file for BibTeX8, when none is +% given as command line option or environment variable. +BIBTEX_CSFILE = 88591lat.csf + +% This variable is specific to Windows. It must be set to 0 or 1. The +% default is 0. Setting it to 1 tells the Windows script wrappers to +% use an already installed Perl interpreter if one is found on the +% search path, in preference to the Perl shipped with TeX Live. Thus, +% it may be useful if you both (a) installed a full Perl distribution +% for general use, and (b) need to run Perl programs from TL that use +% additional modules we don't provide. The TL Perl does provide all the +% standard Perl modules. +% +%TEXLIVE_WINDOWS_TRY_EXTERNAL_PERL = 0 + + +% Part 3: Array and other sizes for TeX (and Metafont). +% +% If you want to change some of these sizes only for a certain TeX +% variant, the usual dot notation works, e.g., +% main_memory.hugetex = 20000000 +% +% If a change here appears to be ignored, try redumping the format file. + +% Memory. Must be less than 8,000,000 total. +% +% main_memory is relevant only to initex, extra_mem_* only to non-ini. +% Thus, have to redump the .fmt file after changing main_memory; to add +% to existing fmt files, increase extra_mem_*. (To get an idea of how +% much, try \tracingstats=2 in your TeX source file; +% web2c/tests/memtest.tex might also be interesting.) +% +% To increase space for boxes (as might be needed by, e.g., PiCTeX), +% increase extra_mem_bot. +% +% For some xy-pic samples, you may need as much as 700000 words of memory. +% For the vast majority of documents, 60000 or less will do. +% +main_memory = 3000000 % words of inimemory available; also applies to inimf&mp +extra_mem_top = 0 % extra high memory for chars, tokens, etc. +extra_mem_bot = 0 % extra low memory for boxes, glue, breakpoints, etc. + +% ConTeXt needs lots of memory. +extra_mem_top.context = 2000000 +extra_mem_bot.context = 4000000 + +% Words of font info for TeX (total size of all TFM files, approximately). +% Must be >= 20000 and <= 147483647 (without tex.ch changes). +font_mem_size = 3000000 + +% Total number of fonts. Must be >= 50 and <= 9000 (without tex.ch changes). +font_max = 9000 + +% Extra space for the hash table of control sequences. +hash_extra = 200000 + +% Max number of characters in all strings, including all error messages, +% help texts, font names, control sequences. These values apply to TeX. +pool_size = 3250000 +% Minimum pool space after TeX's own strings; must be at least +% 25000 less than pool_size, but doesn't need to be nearly that large. +string_vacancies = 90000 +% Maximum number of strings. +max_strings = 500000 +% min pool space left after loading .fmt +pool_free = 47500 + +% Buffer size. TeX uses the buffer to contain input lines, but macro +% expansion works by writing material into the buffer and reparsing the +% line. As a consequence, certain constructs require the buffer to be +% very large, even though most documents can be handled with a small value. +buf_size = 200000 + +% Hyphenation trie. The maximum possible is 4194303 (ssup_trie_size in +% the sources), but we don't need that much. The value here suffices +% for all known free hyphenation patterns to be loaded simultaneously +% (as TeX Live does). +% +trie_size = 1000000 + +hyph_size = 8191 % prime number of hyphenation exceptions, >610, <32767. + % http://primes.utm.edu/curios/page.php/8191.html +nest_size = 500 % simultaneous semantic levels (e.g., groups) +max_in_open = 15 % simultaneous input files and error insertions, + % also applies to MetaPost +param_size = 10000 % simultaneous macro parameters, also applies to MP +save_size = 50000 % for saving values outside current group +stack_size = 5000 % simultaneous input sources + +% These are Omega-specific. +ocp_buf_size = 500000 % character buffers for ocp filters. +ocp_stack_size = 10000 % stacks for ocp computations. +ocp_list_size = 1000 % control for multiple ocps. + +% These work best if they are the same as the I/O buffer size, but it +% doesn't matter much. Must be a multiple of 8. +dvi_buf_size = 16384 % TeX +gf_buf_size = 16384 % MF + +% It's probably inadvisable to change these. At any rate, we must have: +% 45 < error_line < 255; +% 30 < half_error_line < error_line - 15; +% 60 <= max_print_line; +% These apply to TeX, Metafont, and MetaPost. +error_line = 79 +half_error_line = 50 +max_print_line = 79 + +% Metafont only. +screen_width.mf = 1664 +screen_depth.mf = 1200 + +% BibTeX only (max_strings also determines hash_size and hash_prime). +ent_str_size = 250 +glob_str_size = 5000 +max_strings.bibtex = 35307 +max_strings.bibtex8 = 35307 +max_strings.bibtexu = 35307 +max_strings.pbibtex = 35307 + +% GFtype only. +line_length.gftype = 500 +max_rows.gftype = 8191 +max_cols.gftype = 8191 diff --git a/libre/usermin-parabola/PKGBUILD b/libre/usermin-parabola/PKGBUILD new file mode 100644 index 000000000..3c2db7573 --- /dev/null +++ b/libre/usermin-parabola/PKGBUILD @@ -0,0 +1,133 @@ +# $Id: PKGBUILD 208134 2014-03-18 07:25:18Z tpowa $ +# Maintainer (Arch): Tobias Powalowski +_pkgname=usermin +pkgname=usermin-parabola +pkgver=1.590 +pkgrel=1 +pkgdesc="a web interface that can be used to easily perform tasks like reading mail, setting up SSH or configuring mail forwarding (Parabola rebranded)" +arch=(i686 x86_64 mips64el) +license=('custom:usermin') +url="http://www.webmin.com/" +depends=('perl' 'webmin') +makedepends=('perl-net-ssleay') +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +backup=('etc/usermin/miniserv.conf' 'etc/usermin/miniserv.users' 'etc/usermin/config' 'etc/usermin/usermin.cats' \ +'etc/usermin/at/config' \ +'etc/usermin/man/config' \ +'etc/usermin/ssh/config' \ +'etc/usermin/chfn/config' \ +'etc/usermin/cron/config' \ +'etc/usermin/file/config' \ +'etc/usermin/plan/config' \ +'etc/usermin/proc/config' \ +'etc/usermin/spam/config' \ +'etc/usermin/htaccess/config' \ +'etc/usermin/cshrc/config' \ +'etc/usermin/gnupg/config' \ +'etc/usermin/mysql/config' \ +'etc/usermin/quota/config' \ +'etc/usermin/shell/config' \ +'etc/usermin/theme/config' \ +'etc/usermin/mailbox/config' \ +'etc/usermin/schedule/config' \ +'etc/usermin/config' \ +'etc/usermin/commands/config' \ +'etc/usermin/htaccess-htpasswd/config' \ +'etc/usermin/forward/config' \ +'etc/usermin/telnet/config' \ +'etc/usermin/tunnel/config' \ +'etc/usermin/updown/config' \ +'etc/usermin/procmail/config' \ +'etc/usermin/fetchmail/config' \ +'etc/usermin/changepass/config' \ +'etc/usermin/language/config' \ +'etc/usermin/postgresql/config' \ +'etc/usermin/usermount/config' \ +) +install=usermin.install +source=(http://downloads.sourceforge.net/sourceforge/webadmin/$_pkgname-$pkgver.tar.gz + usermin.service + ftp://ftp.archlinux.org/other/usermin/usermin-config.tar.bz2) + +package() { + cd "$srcdir"/$_pkgname-$pkgver + + # remove modules we do not support + + #remove config files from other distros + rm -f $(find . ! -name 'config-generic-linux' ! -name 'config-\*-linux' ! -name 'config-lib.pl' -name 'config-*') + + # remove caldera theme + rm -rf caldera + + # remove init-scripts from other distros + rm usermin-init + rm usermin-daemon + + # setting perl path + (find . -name '*.cgi' ; find . -name '*.pl') | perl perlpath.pl /usr/bin/perl - + + # create dirs + mkdir -p "$pkgdir"/opt/usermin + mkdir -p "$pkgdir"/var/log/usermin + mkdir -p "$pkgdir"/etc/usermin + + # install pam stuff + install -D -m 644 usermin-pam "$pkgdir"/etc/pam.d/usermin + + # remove other distros and add only Parabola GNU/Linux-libre don't change next line else it will not work! + rm os_list.txt + echo 'Parabola GNU/Linux-libre Any version generic-linux * -d "/etc/pacman.d"' >> os_list.txt + + # copy stuff to right dirs + cd "$srcdir"/$_pkgname-$pkgver + cp -rp * "$pkgdir"/opt/usermin + cd "$srcdir"/usermin-config + cp -rfp * "$pkgdir"/opt/usermin + + # define parameters for setup.sh + config_dir="$pkgdir"/etc/usermin + var_dir="$pkgdir"/var/log/usermin + perl=/usr/bin/perl + autoos=1 + port=20000 + login=root + crypt="XXX" + ssl=1 + atboot=0 + nostart=1 + nochown=1 + autothird=1 + nouninstall=1 + noperlpath=1 + atbootyn=n + tempdir="$pkgdir"/tmp + export config_dir var_dir perl autoos port tempdir ssl nochown autothird nouninstall nostart noperlpath atbootyn login crypt + + # Fix setup.sh + sed -i -e 's:read atbootyn::g' -e 's:exit 13::g' "$pkgdir"/opt/usermin/setup.sh + "$pkgdir"/opt/usermin/setup.sh + + # Fixup the config files to use their real locations + sed -i 's:^pidfile=.*$:pidfile=/var/run/usermin.pid:' "$pkgdir"/etc/usermin/miniserv.conf + find "$pkgdir"/etc/usermin -type f -exec sed -i "s:$pkgdir::g" {} \; + + # make it only accessible by localhost + echo 'allow=127.0.0.1' >> "$pkgdir"/etc/usermin/miniserv.conf + + # enable user and password login + sed -i -e '/localauth/d' "$pkgdir"/etc/usermin/miniserv.conf + + #install systemd service file + install -D -m 644 "$srcdir"/usermin.service "$pkgdir"/usr/lib/systemd/system/usermin.service + + # delete temp dir + rm -r "$pkgdir"/tmp + #install license + install -m 644 -D "$srcdir"/$_pkgname-$pkgver/LICENCE "$pkgdir"/usr/share/licenses/usermin/LICENCE +} +md5sums=('e2c8ab2d0269f860f85b562e02e69ca2' + 'a5bd5e5ee779f8a3cf3d776ca77ee36e' + 'ec37a79f948f778224550930d2a7ca07') diff --git a/libre/usermin-parabola/usermin.install b/libre/usermin-parabola/usermin.install new file mode 100644 index 000000000..3ace10ea2 --- /dev/null +++ b/libre/usermin-parabola/usermin.install @@ -0,0 +1,34 @@ +# arg 1: the new package version +post_install() { + local crypt=$(grep "^root:" ${ROOT}/etc/shadow | cut -f 2 -d :) + crypt=${crypt//\\/\\\\} + crypt=${crypt//\//\\\/} + sed -i "s/root:XXX/root:${crypt}/" /etc/usermin/miniserv.users +cat << EOF +Note: +==> It is not allowed to install 3rd party modules, or delete existing modules. +==> Please write your own PKGBUILDS for 3rd party modules and additional themes. +Setup: +==> To make usermin start at boot time, add usermin to rc.conf daemons +==> Point your web browser to http://localhost:20000 to use usermin. +==> To change the modules setup please use webmin. + +==> The access is restricted to localhost, if you want to connect from other locations +==> change /etc/usermin/miniserv.conf to something like that: allow=127.0.0.1 +==> If you want to have ssl encryption please install 'perl-net-ssleay' additional. +EOF +# fix man module + cd /opt/usermin/man + gzip -df $(find . -name '*.gz') +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + post_install $1 +} + +pre_remove() { + # uninstall unzipped files + rm -r /opt/usermin/man +} diff --git a/libre/usermin-parabola/usermin.service b/libre/usermin-parabola/usermin.service new file mode 100644 index 000000000..e91164c63 --- /dev/null +++ b/libre/usermin-parabola/usermin.service @@ -0,0 +1,9 @@ +[Unit] +Description=Usermin + +[Service] +Type=forking +ExecStart=/opt/usermin/miniserv.pl /etc/usermin/miniserv.conf + +[Install] +WantedBy=multi-user.target diff --git a/libre/usermin/PKGBUILD b/libre/usermin/PKGBUILD deleted file mode 100644 index 3eaee9fc1..000000000 --- a/libre/usermin/PKGBUILD +++ /dev/null @@ -1,129 +0,0 @@ -# $Id: PKGBUILD 208134 2014-03-18 07:25:18Z tpowa $ -# Maintainer (Arch): Tobias Powalowski -pkgname=usermin -pkgver=1.590 -pkgrel=1 -pkgdesc="a web interface that can be used to easily perform tasks like reading mail, setting up SSH or configuring mail forwarding (Parabola rebranded)" -arch=(i686 x86_64 mips64el) -license=('custom:usermin') -url="http://www.webmin.com/" -depends=('perl' 'webmin') -makedepends=('perl-net-ssleay') -backup=('etc/usermin/miniserv.conf' 'etc/usermin/miniserv.users' 'etc/usermin/config' 'etc/usermin/usermin.cats' \ -'etc/usermin/at/config' \ -'etc/usermin/man/config' \ -'etc/usermin/ssh/config' \ -'etc/usermin/chfn/config' \ -'etc/usermin/cron/config' \ -'etc/usermin/file/config' \ -'etc/usermin/plan/config' \ -'etc/usermin/proc/config' \ -'etc/usermin/spam/config' \ -'etc/usermin/htaccess/config' \ -'etc/usermin/cshrc/config' \ -'etc/usermin/gnupg/config' \ -'etc/usermin/mysql/config' \ -'etc/usermin/quota/config' \ -'etc/usermin/shell/config' \ -'etc/usermin/theme/config' \ -'etc/usermin/mailbox/config' \ -'etc/usermin/schedule/config' \ -'etc/usermin/config' \ -'etc/usermin/commands/config' \ -'etc/usermin/htaccess-htpasswd/config' \ -'etc/usermin/forward/config' \ -'etc/usermin/telnet/config' \ -'etc/usermin/tunnel/config' \ -'etc/usermin/updown/config' \ -'etc/usermin/procmail/config' \ -'etc/usermin/fetchmail/config' \ -'etc/usermin/changepass/config' \ -'etc/usermin/language/config' \ -'etc/usermin/postgresql/config' \ -'etc/usermin/usermount/config' \ -) -install=usermin.install -source=(http://downloads.sourceforge.net/sourceforge/webadmin/$pkgname-$pkgver.tar.gz - usermin.service - ftp://ftp.archlinux.org/other/usermin/usermin-config.tar.bz2) - -package() { - cd "$srcdir"/$pkgname-$pkgver - - # remove modules we do not support - - #remove config files from other distros - rm -f $(find . ! -name 'config-generic-linux' ! -name 'config-\*-linux' ! -name 'config-lib.pl' -name 'config-*') - - # remove caldera theme - rm -rf caldera - - # remove init-scripts from other distros - rm usermin-init - rm usermin-daemon - - # setting perl path - (find . -name '*.cgi' ; find . -name '*.pl') | perl perlpath.pl /usr/bin/perl - - - # create dirs - mkdir -p "$pkgdir"/opt/usermin - mkdir -p "$pkgdir"/var/log/usermin - mkdir -p "$pkgdir"/etc/usermin - - # install pam stuff - install -D -m 644 usermin-pam "$pkgdir"/etc/pam.d/usermin - - # remove other distros and add only Parabola GNU/Linux-libre don't change next line else it will not work! - rm os_list.txt - echo 'Parabola GNU/Linux-libre Any version generic-linux * -d "/etc/pacman.d"' >> os_list.txt - - # copy stuff to right dirs - cd "$srcdir"/$pkgname-$pkgver - cp -rp * "$pkgdir"/opt/usermin - cd "$srcdir"/usermin-config - cp -rfp * "$pkgdir"/opt/usermin - - # define parameters for setup.sh - config_dir="$pkgdir"/etc/usermin - var_dir="$pkgdir"/var/log/usermin - perl=/usr/bin/perl - autoos=1 - port=20000 - login=root - crypt="XXX" - ssl=1 - atboot=0 - nostart=1 - nochown=1 - autothird=1 - nouninstall=1 - noperlpath=1 - atbootyn=n - tempdir="$pkgdir"/tmp - export config_dir var_dir perl autoos port tempdir ssl nochown autothird nouninstall nostart noperlpath atbootyn login crypt - - # Fix setup.sh - sed -i -e 's:read atbootyn::g' -e 's:exit 13::g' "$pkgdir"/opt/usermin/setup.sh - "$pkgdir"/opt/usermin/setup.sh - - # Fixup the config files to use their real locations - sed -i 's:^pidfile=.*$:pidfile=/var/run/usermin.pid:' "$pkgdir"/etc/usermin/miniserv.conf - find "$pkgdir"/etc/usermin -type f -exec sed -i "s:$pkgdir::g" {} \; - - # make it only accessible by localhost - echo 'allow=127.0.0.1' >> "$pkgdir"/etc/usermin/miniserv.conf - - # enable user and password login - sed -i -e '/localauth/d' "$pkgdir"/etc/usermin/miniserv.conf - - #install systemd service file - install -D -m 644 "$srcdir"/usermin.service "$pkgdir"/usr/lib/systemd/system/usermin.service - - # delete temp dir - rm -r "$pkgdir"/tmp - #install license - install -m 644 -D "$srcdir"/$pkgname-$pkgver/LICENCE "$pkgdir"/usr/share/licenses/usermin/LICENCE -} -md5sums=('e2c8ab2d0269f860f85b562e02e69ca2' - 'a5bd5e5ee779f8a3cf3d776ca77ee36e' - 'ec37a79f948f778224550930d2a7ca07') diff --git a/libre/usermin/usermin.install b/libre/usermin/usermin.install deleted file mode 100644 index 3ace10ea2..000000000 --- a/libre/usermin/usermin.install +++ /dev/null @@ -1,34 +0,0 @@ -# arg 1: the new package version -post_install() { - local crypt=$(grep "^root:" ${ROOT}/etc/shadow | cut -f 2 -d :) - crypt=${crypt//\\/\\\\} - crypt=${crypt//\//\\\/} - sed -i "s/root:XXX/root:${crypt}/" /etc/usermin/miniserv.users -cat << EOF -Note: -==> It is not allowed to install 3rd party modules, or delete existing modules. -==> Please write your own PKGBUILDS for 3rd party modules and additional themes. -Setup: -==> To make usermin start at boot time, add usermin to rc.conf daemons -==> Point your web browser to http://localhost:20000 to use usermin. -==> To change the modules setup please use webmin. - -==> The access is restricted to localhost, if you want to connect from other locations -==> change /etc/usermin/miniserv.conf to something like that: allow=127.0.0.1 -==> If you want to have ssl encryption please install 'perl-net-ssleay' additional. -EOF -# fix man module - cd /opt/usermin/man - gzip -df $(find . -name '*.gz') -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -pre_remove() { - # uninstall unzipped files - rm -r /opt/usermin/man -} diff --git a/libre/usermin/usermin.service b/libre/usermin/usermin.service deleted file mode 100644 index e91164c63..000000000 --- a/libre/usermin/usermin.service +++ /dev/null @@ -1,9 +0,0 @@ -[Unit] -Description=Usermin - -[Service] -Type=forking -ExecStart=/opt/usermin/miniserv.pl /etc/usermin/miniserv.conf - -[Install] -WantedBy=multi-user.target diff --git a/libre/vim-runtime-parabola/PKGBUILD b/libre/vim-runtime-parabola/PKGBUILD new file mode 100644 index 000000000..a3a410e6f --- /dev/null +++ b/libre/vim-runtime-parabola/PKGBUILD @@ -0,0 +1,107 @@ +# Maintainer (Arch): Thomas Dziedzic +# Contributor (Arch): Jan "heftig" Steffens +# Contributor (Arch): tobias [ tobias at archlinux org ] +# Contributor (Arch): Daniel J Griffiths +# Maintainer: André Silva +# Contributor: Márcio Silva + +pkgbase=vim +_pkgname=vim-runtime +pkgname=vim-runtime-parabola +_topver=7.4 +_patchlevel=410 +__hgrev=7af530381fec +_versiondir="vim${_topver//./}" +pkgver=${_topver}.${_patchlevel} +pkgrel=1 +arch=('i686' 'x86_64' 'mips64el') +license=('custom:vim') +url="http://www.vim.org" +makedepends=('gpm' 'python2' 'ruby' 'libxt' 'desktop-file-utils' 'gtk2' 'lua') +source=("ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz" + "ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz.sig" + 'vimrc' + 'parabola.vim') +md5sums=('8e9722fbd9ddc3c05d21210939c23f23' + 'SKIP' + '27820c2bdc34624674c561ae6476bc6a' + '41c9a52bbd972f009437450a003ad3cd') + +build() { + # define the place for the global (g)vimrc file (set to /etc/vimrc) + sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' \ + ${pkgbase}-${pkgver}/src/feature.h + sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' \ + ${pkgbase}-${pkgver}/src/feature.h + + cp -a ${pkgbase}-${pkgver} ${pkgbase}-build + + cd "${srcdir}"/vim-build + + ./configure \ + --prefix=/usr \ + --localstatedir=/var/lib/vim \ + --with-features=huge \ + --with-compiledby='Parabola GNU/Linux-libre' \ + --enable-gpm \ + --enable-acl \ + --with-x=yes \ + --enable-gui=gtk2 \ + --enable-multibyte \ + --enable-cscope \ + --enable-netbeans \ + --enable-perlinterp \ + --enable-pythoninterp \ + --disable-python3interp \ + --enable-rubyinterp \ + --enable-luainterp + + make +} + +package_vim-runtime-parabola() { + pkgdesc='Runtime for vim and gvim (Parabola rebranded)' + depends=('perl' 'gawk') + backup=('etc/vimrc') + replaces=($_pkgname) + conflicts=($_pkgname) + provides=($_pkgname=$pkgver) + + cd "${srcdir}"/vim-build + + make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install + + # delete binaries and manual files + rm -vr "${pkgdir}"/usr/bin + rm -vr "${pkgdir}"/usr/share/man + + # Don't forget logtalk.dict + install -Dm644 "${srcdir}"/vim-build/runtime/ftplugin/logtalk.dict \ + "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/logtalk.dict + + # fix FS#17216 + sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \ + "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim + + # patch filetype.vim for better handling of pacman related files + sed -i "s/rpmsave/pacsave/;s/rpmnew/pacnew/;s/,\*\.ebuild/\0,PKGBUILD*,*.install/" \ + "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim + sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" \ + "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/changelog.vim + + # rc files + install -Dm644 "${srcdir}"/vimrc "${pkgdir}"/etc/vimrc + install -Dm644 "${srcdir}"/parabola.vim \ + "${pkgdir}"/usr/share/vim/vimfiles/parabola.vim + + # rgb.txt file + install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/rgb.txt \ + "${pkgdir}"/usr/share/vim/${_versiondir}/rgb.txt + + # license + install -dm755 "${pkgdir}"/usr/share/licenses/vim-runtime + ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \ + "${pkgdir}"/usr/share/licenses/vim-runtime/license.txt +} + +# vim:set sw=2 sts=2 et: diff --git a/libre/vim-runtime-parabola/parabola.vim b/libre/vim-runtime-parabola/parabola.vim new file mode 100644 index 000000000..3db882946 --- /dev/null +++ b/libre/vim-runtime-parabola/parabola.vim @@ -0,0 +1,26 @@ +" The Parabola GNU/Linux-libre global vimrc - setting only a few sane defaults +" +" Maintainer: Thomas Dziedzic [gostrc@gmail.com] +" Maintainer for Parabola rebranding: André Silva [emulatorman@parabola.nu] +" +" NEVER EDIT THIS FILE, IT'S OVERWRITTEN UPON UPGRADES, GLOBAL CONFIGURATION +" SHALL BE DONE IN /etc/vimrc, USER SPECIFIC CONFIGURATION IN ~/.vimrc + +" Normally we use vim-extensions. If you want true vi-compatibility +" remove change the following statements +set nocompatible " Use Vim defaults instead of 100% vi compatibility +set backspace=indent,eol,start " more powerful backspacing + +" Now we set some defaults for the editor +set history=50 " keep 50 lines of command line history +set ruler " show the cursor position all the time + +" Suffixes that get lower priority when doing tab completion for filenames. +" These are files we are not likely to want to edit or read. +set suffixes=.bak,~,.swp,.o,.info,.aux,.log,.dvi,.bbl,.blg,.brf,.cb,.ind,.idx,.ilg,.inx,.out,.toc,.png,.jpg + +if has('gui_running') + " Make shift-insert work like in Xterm + map + map! +endif diff --git a/libre/vim-runtime-parabola/vimrc b/libre/vim-runtime-parabola/vimrc new file mode 100644 index 000000000..fc67e7eb0 --- /dev/null +++ b/libre/vim-runtime-parabola/vimrc @@ -0,0 +1,16 @@ +" All system-wide defaults are set in $VIMRUNTIME/parabola.vim (usually just +" /usr/share/vim/vimfiles/parabola.vim) and sourced by the call to :runtime +" you can find below. If you wish to change any of those settings, you should +" do it in this file (/etc/vimrc), since parabola.vim will be overwritten +" everytime an upgrade of the vim packages is performed. It is recommended to +" make changes after sourcing parabola.vim since it alters the value of the +" 'compatible' option. + +" This line should not be removed as it ensures that various options are +" properly set to work with the Vim-related packages. +runtime! parabola.vim + +" If you prefer the old-style vim functionalty, add 'runtime! vimrc_example.vim' +" Or better yet, read /usr/share/vim/vim74/vimrc_example.vim or the vim manual +" and configure vim to your own liking! + diff --git a/libre/vim-runtime/PKGBUILD b/libre/vim-runtime/PKGBUILD deleted file mode 100644 index d7c055ff7..000000000 --- a/libre/vim-runtime/PKGBUILD +++ /dev/null @@ -1,103 +0,0 @@ -# Maintainer (Arch): Thomas Dziedzic -# Contributor (Arch): Jan "heftig" Steffens -# Contributor (Arch): tobias [ tobias at archlinux org ] -# Contributor (Arch): Daniel J Griffiths -# Maintainer: André Silva -# Contributor: Márcio Silva - -pkgbase=vim -pkgname=vim-runtime -_topver=7.4 -_patchlevel=410 -__hgrev=7af530381fec -_versiondir="vim${_topver//./}" -pkgver=${_topver}.${_patchlevel} -pkgrel=1 -arch=('i686' 'x86_64' 'mips64el') -license=('custom:vim') -url="http://www.vim.org" -makedepends=('gpm' 'python2' 'ruby' 'libxt' 'desktop-file-utils' 'gtk2' 'lua') -source=("ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz" - "ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz.sig" - 'vimrc' - 'parabola.vim') -md5sums=('8e9722fbd9ddc3c05d21210939c23f23' - 'SKIP' - '27820c2bdc34624674c561ae6476bc6a' - '41c9a52bbd972f009437450a003ad3cd') - -build() { - # define the place for the global (g)vimrc file (set to /etc/vimrc) - sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' \ - ${pkgbase}-${pkgver}/src/feature.h - sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' \ - ${pkgbase}-${pkgver}/src/feature.h - - cp -a ${pkgbase}-${pkgver} ${pkgbase}-build - - cd "${srcdir}"/vim-build - - ./configure \ - --prefix=/usr \ - --localstatedir=/var/lib/vim \ - --with-features=huge \ - --with-compiledby='Parabola GNU/Linux-libre' \ - --enable-gpm \ - --enable-acl \ - --with-x=yes \ - --enable-gui=gtk2 \ - --enable-multibyte \ - --enable-cscope \ - --enable-netbeans \ - --enable-perlinterp \ - --enable-pythoninterp \ - --disable-python3interp \ - --enable-rubyinterp \ - --enable-luainterp - - make -} - -package_vim-runtime() { - pkgdesc='Runtime for vim and gvim (Parabola rebranded)' - depends=('perl' 'gawk') - backup=('etc/vimrc') - - cd "${srcdir}"/vim-build - - make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install - - # delete binaries and manual files - rm -vr "${pkgdir}"/usr/bin - rm -vr "${pkgdir}"/usr/share/man - - # Don't forget logtalk.dict - install -Dm644 "${srcdir}"/vim-build/runtime/ftplugin/logtalk.dict \ - "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/logtalk.dict - - # fix FS#17216 - sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \ - "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim - - # patch filetype.vim for better handling of pacman related files - sed -i "s/rpmsave/pacsave/;s/rpmnew/pacnew/;s/,\*\.ebuild/\0,PKGBUILD*,*.install/" \ - "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim - sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" \ - "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/changelog.vim - - # rc files - install -Dm644 "${srcdir}"/vimrc "${pkgdir}"/etc/vimrc - install -Dm644 "${srcdir}"/parabola.vim \ - "${pkgdir}"/usr/share/vim/vimfiles/parabola.vim - - # rgb.txt file - install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/rgb.txt \ - "${pkgdir}"/usr/share/vim/${_versiondir}/rgb.txt - - # license - install -dm755 "${pkgdir}"/usr/share/licenses/vim-runtime - ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \ - "${pkgdir}"/usr/share/licenses/vim-runtime/license.txt -} - -# vim:set sw=2 sts=2 et: diff --git a/libre/vim-runtime/parabola.vim b/libre/vim-runtime/parabola.vim deleted file mode 100644 index 3db882946..000000000 --- a/libre/vim-runtime/parabola.vim +++ /dev/null @@ -1,26 +0,0 @@ -" The Parabola GNU/Linux-libre global vimrc - setting only a few sane defaults -" -" Maintainer: Thomas Dziedzic [gostrc@gmail.com] -" Maintainer for Parabola rebranding: André Silva [emulatorman@parabola.nu] -" -" NEVER EDIT THIS FILE, IT'S OVERWRITTEN UPON UPGRADES, GLOBAL CONFIGURATION -" SHALL BE DONE IN /etc/vimrc, USER SPECIFIC CONFIGURATION IN ~/.vimrc - -" Normally we use vim-extensions. If you want true vi-compatibility -" remove change the following statements -set nocompatible " Use Vim defaults instead of 100% vi compatibility -set backspace=indent,eol,start " more powerful backspacing - -" Now we set some defaults for the editor -set history=50 " keep 50 lines of command line history -set ruler " show the cursor position all the time - -" Suffixes that get lower priority when doing tab completion for filenames. -" These are files we are not likely to want to edit or read. -set suffixes=.bak,~,.swp,.o,.info,.aux,.log,.dvi,.bbl,.blg,.brf,.cb,.ind,.idx,.ilg,.inx,.out,.toc,.png,.jpg - -if has('gui_running') - " Make shift-insert work like in Xterm - map - map! -endif diff --git a/libre/vim-runtime/vimrc b/libre/vim-runtime/vimrc deleted file mode 100644 index fc67e7eb0..000000000 --- a/libre/vim-runtime/vimrc +++ /dev/null @@ -1,16 +0,0 @@ -" All system-wide defaults are set in $VIMRUNTIME/parabola.vim (usually just -" /usr/share/vim/vimfiles/parabola.vim) and sourced by the call to :runtime -" you can find below. If you wish to change any of those settings, you should -" do it in this file (/etc/vimrc), since parabola.vim will be overwritten -" everytime an upgrade of the vim packages is performed. It is recommended to -" make changes after sourcing parabola.vim since it alters the value of the -" 'compatible' option. - -" This line should not be removed as it ensures that various options are -" properly set to work with the Vim-related packages. -runtime! parabola.vim - -" If you prefer the old-style vim functionalty, add 'runtime! vimrc_example.vim' -" Or better yet, read /usr/share/vim/vim74/vimrc_example.vim or the vim manual -" and configure vim to your own liking! - diff --git a/libre/webmin-parabola/PKGBUILD b/libre/webmin-parabola/PKGBUILD new file mode 100644 index 000000000..2a1c01db5 --- /dev/null +++ b/libre/webmin-parabola/PKGBUILD @@ -0,0 +1,220 @@ +# $Id: PKGBUILD 208132 2014-03-18 07:22:29Z tpowa $ +# Maintainer (Arch): Tobias Powalowski +_pkgname=webmin +pkgname=webmin-parabola +pkgver=1.680 +pkgrel=1 +pkgdesc="a web-based interface for system administration (Parabola rebranded)" +arch=(i686 x86_64 mips64el) +license=('custom:webmin') +url="http://www.webmin.com/" +depends=('perl' 'perl-perl4-corelibs') +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +makedepends=('perl-net-ssleay') +backup=('etc/webmin/miniserv.conf' 'etc/webmin/miniserv.users' 'etc/webmin/config' 'etc/webmin/webmin.cats' \ +'etc/webmin/pacman/config' \ +'etc/webmin/at/config' \ +'etc/webmin/acl/config' \ +'etc/webmin/lvm/config' \ +'etc/webmin/net/config' \ +'etc/webmin/nis/config' \ +'etc/webmin/pam/config' \ +'etc/webmin/cron/config' \ +'etc/webmin/file/config' \ +'etc/webmin/grub/config' \ +'etc/webmin/init/config' \ +'etc/webmin/ipfw/config' \ +'etc/webmin/lilo/config' \ +'etc/webmin/proc/config' \ +'etc/webmin/raid/config' \ +'etc/webmin/spam/config' \ +'etc/webmin/sshd/config' \ +'etc/webmin/time/config' \ +'etc/webmin/cluster-passwd/config' \ +'etc/webmin/software/config' \ +'etc/webmin/webminlog/config' \ +'etc/webmin/cluster-webmin/config' \ +'etc/webmin/bind8/config' \ +'etc/webmin/dhcpd/config' \ +'etc/webmin/fdisk/config' \ +'etc/webmin/mount/config' \ +'etc/webmin/mysql/config' \ +'etc/webmin/quota/config' \ +'etc/webmin/samba/config' \ +'etc/webmin/shell/config' \ +'etc/webmin/squid/config' \ +'etc/webmin/adsl-client/config' \ +'etc/webmin/servers/config' \ +'etc/webmin/cluster-shell/config' \ +'etc/webmin/bandwidth/config' \ +'etc/webmin/ppp-client/config' \ +'etc/webmin/lpadmin/config' \ +'etc/webmin/apache/config' \ +'etc/webmin/firewall/config' \ +'etc/webmin/stunnel/config' \ +'etc/webmin/burner/config' \ +'etc/webmin/exports/config' \ +'etc/webmin/backup-config/config' \ +'etc/webmin/custom/config' \ +'etc/webmin/htaccess-htpasswd/config' \ +'etc/webmin/logrotate/config' \ +'etc/webmin/format/config' \ +'etc/webmin/fsdump/config' \ +'etc/webmin/passwd/config' \ +'etc/webmin/cluster-useradmin/config' \ +'etc/webmin/cluster-software/config' \ +'etc/webmin/cluster-copy/config' \ +'etc/webmin/cluster-cron/config' \ +'etc/webmin/telnet/config' \ +'etc/webmin/status/config' \ +'etc/webmin/syslog/config' \ +'etc/webmin/updown/config' \ +'etc/webmin/usermin/config' \ +'etc/webmin/webmin/config' \ +'etc/webmin/xinetd/config' \ +'etc/webmin/openslp/config' \ +'etc/webmin/procmail/config' \ +'etc/webmin/fetchmail/config' \ +'etc/webmin/postgresql/config' \ +'etc/webmin/useradmin/config' \ +'etc/webmin/mailboxes/config' \ +'etc/webmin/inittab/config' \ +'etc/webmin/change-user/config' \ +'etc/webmin/postfix/config' \ +'etc/webmin/proftpd/config' \ +'etc/webmin/pserver/config' \ +'etc/webmin/dnsadmin/config' ) +install=webmin.install +source=(http://downloads.sourceforge.net/sourceforge/webadmin/$_pkgname-$pkgver.tar.gz + ftp://ftp.archlinux.org/other/webmin/webmin-config.tar.bz2 + ftp://ftp.archlinux.org/other/webmin/webmin-pacman.tar.bz2 + webmin.service) +options=(!strip) + +package() { + # NOTE: USE --asroot build option to avoid fakeroot error! + cd "$srcdir"/$_pkgname-$pkgver + # add patches from webmin.com + #for i in ../*.wbm + #do tar xvf $i + #done + #for i in ../*.wbt + #do tar xvf $i + #done + # delete stuff that's not needed + rm -f mount/freebsd-mounts* + rm -f mount/openbsd-mounts* + rm -f mount/macos-mounts* + + # remove modules we do not support + rm -rf {bacula-backup,ldap-useradmin,mon,sentry,frox,jabber,majordomo,qmail,sendmail,sarg,wuftpd,webalizer,inetd,ipsec,pap,pptp-client,pptp-server,shorewall,smart-status,vgetty,heartbeat,cfengine,cpan,sgiexports,hpuxexports,qmailadmin,bsdexports,dfsadmin} + + #remove config files from other distros + rm -f $(find . ! -name 'config-generic-linux' ! -name 'config-\*-linux' ! -name 'config-lib.pl' -name 'config-*') + + # remove caldera theme + rm -rf caldera + + # remove init-scripts from other distros + rm webmin-gentoo-init + rm webmin-init + rm webmin-caldera-init + rm webmin-daemon + + # remove update stuff to avoid problems with updating webmin,modules and themes without pacman + rm -f webmin/{update.cgi,update.pl,update_sched.cgi,upgrade.cgi,edit_upgrade.cgi,install_mod.cgi,delete_mod.cgi,install_theme.cgi} + rm -f usermin/{upgrade.cgi,update.cgi,update.pl,edit_upgrade.cgi,install_mod.cgi,delete_mod.cgi,install_theme.cgi} + + # remove modules add because we don't want files installed without pacman control + rm -f webmin/{install_mod.cgi,delete_mod.cgi} + + # setting perl path + (find . -name '*.cgi' ; find . -name '*.pl') | perl perlpath.pl /usr/bin/perl - + + # create dirs + mkdir -p "$pkgdir"/opt/webmin + mkdir -p "$pkgdir"/var/log/webmin + mkdir -p "$pkgdir"/etc/webmin + + # install pam stuff + install -D -m 644 webmin-pam "$pkgdir"/etc/pam.d/webmin + + # remove other distros and add only Parabola GNU/Linux-libre don't change next line else it will not work! + rm os_list.txt + echo 'Parabola GNU/linux-libre Any version generic-linux * -d "/etc/pacman.d"' >> os_list.txt + + # Add rc.conf support to boot and shutdown menu and lock editing of this module + cd init/ + sed -i -e 's:^local_down=.*:local_down=Parabola GNU/Linux-libre RC.CONF,3,None:g' $(find . ! -name 'config.info.pl' -name 'config.info*') + sed -i -e 's:^local_script=.*:local_script=Parabola GNU/Linux-libre RC.LOCAL,3,None:g' $(find . ! -name 'config.info.pl' -name 'config.info*') + sed -i -e 's:^index_downscript=.*:index_downscript=Parabola GNU/Linux-libre RC.CONF:g' lang/* + sed -i -e 's:^index_script=.*:index_script=Parabola GNU/Linux-libre RC.LOCAL:g' lang/* + sed -i -e 's:^noconfig=0:noconfig=1:g' defaultacl + + # Add pacman menu + cd "$srcdir"/$_pkgname-$pkgver + cp -rf custom/ pacman + cp -rf mscstyle3/custom mscstyle3/pacman + sed -i -e 's:^noconfig=0:noconfig=1:g' -e 's:^edit=1:edit=0:g' pacman/defaultacl + sed -i -e '/desc/d' -e '/longdesc/d' pacman/module.info + sed -i -e 's:^name=Custom:name=Pacman:g' pacman/module.info + echo 'category=system' >> pacman/module.info + echo 'desc=Pacman' >> pacman/module.info + sed -i -e 's:^index_title=.*:index_title=Pacman:g' pacman/lang/* + + # copy stuff to right dirs + cd "$srcdir"/$_pkgname-$pkgver + cp -rp * "$pkgdir"/opt/webmin + cd "$srcdir"/webmin-config + cp -rfp * "$pkgdir"/opt/webmin + + # define parameters for setup.sh + config_dir="$pkgdir"/etc/webmin + var_dir="$pkgdir"/var/log/webmin + perl=/usr/bin/perl + autoos=1 + port=10000 + login=root + crypt="XXX" + ssl=1 + atboot=0 + nostart=1 + nochown=1 + autothird=1 + nouninstall=1 + noperlpath=1 + atbootyn=n + tempdir="$pkgdir"/tmp + export config_dir var_dir perl autoos port tempdir login crypt ssl nochown autothird nouninstall nostart noperlpath atbootyn + + # Fix setup.sh + sed -i -e 's:read atbootyn::g' -e 's:exit 13::g' "$pkgdir"/opt/webmin/setup.sh + "$pkgdir"/opt/webmin/setup.sh + + # Fixup the config files to use their real locations + sed -i 's:^pidfile=.*$:pidfile=/var/run/webmin.pid:' "$pkgdir"/etc/webmin/miniserv.conf + find "$pkgdir"/etc/webmin -type f -exec sed -i "s:$pkgdir::g" {} \; + + # make it only accessible by localhost + echo 'allow=127.0.0.1' >> "$pkgdir"/etc/webmin/miniserv.conf + + # install pacman menu + cd "$srcdir"/webmin-pacman/config + cp -rfp * "$pkgdir"/etc/webmin/pacman + + # install systemd files + install -D -m 644 $srcdir/webmin.service $pkgdir/usr/lib/systemd/system/webmin.service + + # delete temp dir + rm -r "$pkgdir"/tmp + # change sticky bit + chmod 0644 $pkgdir/opt/webmin/man/config-generic-linux + # install license + install -m 644 -D "$srcdir"/$_pkgname-$pkgver/LICENCE "$pkgdir"/usr/share/licenses/webmin/LICENCE +} +md5sums=('52654bd0fe36e9cace00fa74e49d41d8' + 'b0b3e3fb231a12e60165b6b4d604dcfa' + 'c86518037449e0fc0c60fc24537ea038' + 'fc29ecb6a5cd8c278abe054e60381095') diff --git a/libre/webmin-parabola/webmin.install b/libre/webmin-parabola/webmin.install new file mode 100644 index 000000000..efdd9291d --- /dev/null +++ b/libre/webmin-parabola/webmin.install @@ -0,0 +1,35 @@ +# arg 1: the new package version +post_install() { + local crypt=$(grep "^root:" ${ROOT}/etc/shadow | cut -f 2 -d :) + crypt=${crypt//\\/\\\\} + crypt=${crypt//\//\\\/} + sed -i "s/root:XXX/root:${crypt}/" /etc/webmin/miniserv.users + +cat << EOF +Note: +==> It is not allowed to install 3rd party modules, or delete existing modules. +==> Please write your own PKGBUILDS for 3rd party modules and additional themes. +Setup: +==> To make webmin start at boot time, add webmin to rc.conf daemons +==> Point your web browser to http://localhost:10000 to use webmin. +==> The access is restricted to localhost, if you want to connect from other locations +==> change /etc/webmin/miniserv.conf to something like that: allow=127.0.0.1 +==> If you want to have ssl encryption please install 'perl-net-ssleay' additional. +EOF +# fix man module + cd /opt/webmin/man + for i in $(find . -name '*.gz'); do + gzip -df $i + done +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + post_install $1 +} + +pre_remove() { + # uninstall unzipped files + rm -r /opt/webmin/man +} diff --git a/libre/webmin-parabola/webmin.service b/libre/webmin-parabola/webmin.service new file mode 100644 index 000000000..a8a384a8c --- /dev/null +++ b/libre/webmin-parabola/webmin.service @@ -0,0 +1,11 @@ +[Unit] +Description=Webmin + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/etc/webmin/start +ExecStop=/etc/webmin/stop + +[Install] +WantedBy=multi-user.target diff --git a/libre/webmin/PKGBUILD b/libre/webmin/PKGBUILD deleted file mode 100644 index bc9307bcc..000000000 --- a/libre/webmin/PKGBUILD +++ /dev/null @@ -1,216 +0,0 @@ -# $Id: PKGBUILD 208132 2014-03-18 07:22:29Z tpowa $ -# Maintainer (Arch): Tobias Powalowski -pkgname=webmin -pkgver=1.680 -pkgrel=1 -pkgdesc="a web-based interface for system administration (Parabola rebranded)" -arch=(i686 x86_64 mips64el) -license=('custom:webmin') -url="http://www.webmin.com/" -depends=('perl' 'perl-perl4-corelibs') -makedepends=('perl-net-ssleay') -backup=('etc/webmin/miniserv.conf' 'etc/webmin/miniserv.users' 'etc/webmin/config' 'etc/webmin/webmin.cats' \ -'etc/webmin/pacman/config' \ -'etc/webmin/at/config' \ -'etc/webmin/acl/config' \ -'etc/webmin/lvm/config' \ -'etc/webmin/net/config' \ -'etc/webmin/nis/config' \ -'etc/webmin/pam/config' \ -'etc/webmin/cron/config' \ -'etc/webmin/file/config' \ -'etc/webmin/grub/config' \ -'etc/webmin/init/config' \ -'etc/webmin/ipfw/config' \ -'etc/webmin/lilo/config' \ -'etc/webmin/proc/config' \ -'etc/webmin/raid/config' \ -'etc/webmin/spam/config' \ -'etc/webmin/sshd/config' \ -'etc/webmin/time/config' \ -'etc/webmin/cluster-passwd/config' \ -'etc/webmin/software/config' \ -'etc/webmin/webminlog/config' \ -'etc/webmin/cluster-webmin/config' \ -'etc/webmin/bind8/config' \ -'etc/webmin/dhcpd/config' \ -'etc/webmin/fdisk/config' \ -'etc/webmin/mount/config' \ -'etc/webmin/mysql/config' \ -'etc/webmin/quota/config' \ -'etc/webmin/samba/config' \ -'etc/webmin/shell/config' \ -'etc/webmin/squid/config' \ -'etc/webmin/adsl-client/config' \ -'etc/webmin/servers/config' \ -'etc/webmin/cluster-shell/config' \ -'etc/webmin/bandwidth/config' \ -'etc/webmin/ppp-client/config' \ -'etc/webmin/lpadmin/config' \ -'etc/webmin/apache/config' \ -'etc/webmin/firewall/config' \ -'etc/webmin/stunnel/config' \ -'etc/webmin/burner/config' \ -'etc/webmin/exports/config' \ -'etc/webmin/backup-config/config' \ -'etc/webmin/custom/config' \ -'etc/webmin/htaccess-htpasswd/config' \ -'etc/webmin/logrotate/config' \ -'etc/webmin/format/config' \ -'etc/webmin/fsdump/config' \ -'etc/webmin/passwd/config' \ -'etc/webmin/cluster-useradmin/config' \ -'etc/webmin/cluster-software/config' \ -'etc/webmin/cluster-copy/config' \ -'etc/webmin/cluster-cron/config' \ -'etc/webmin/telnet/config' \ -'etc/webmin/status/config' \ -'etc/webmin/syslog/config' \ -'etc/webmin/updown/config' \ -'etc/webmin/usermin/config' \ -'etc/webmin/webmin/config' \ -'etc/webmin/xinetd/config' \ -'etc/webmin/openslp/config' \ -'etc/webmin/procmail/config' \ -'etc/webmin/fetchmail/config' \ -'etc/webmin/postgresql/config' \ -'etc/webmin/useradmin/config' \ -'etc/webmin/mailboxes/config' \ -'etc/webmin/inittab/config' \ -'etc/webmin/change-user/config' \ -'etc/webmin/postfix/config' \ -'etc/webmin/proftpd/config' \ -'etc/webmin/pserver/config' \ -'etc/webmin/dnsadmin/config' ) -install=webmin.install -source=(http://downloads.sourceforge.net/sourceforge/webadmin/$pkgname-$pkgver.tar.gz - ftp://ftp.archlinux.org/other/webmin/webmin-config.tar.bz2 - ftp://ftp.archlinux.org/other/webmin/webmin-pacman.tar.bz2 - webmin.service) -options=(!strip) - -package() { - # NOTE: USE --asroot build option to avoid fakeroot error! - cd "$srcdir"/$pkgname-$pkgver - # add patches from webmin.com - #for i in ../*.wbm - #do tar xvf $i - #done - #for i in ../*.wbt - #do tar xvf $i - #done - # delete stuff that's not needed - rm -f mount/freebsd-mounts* - rm -f mount/openbsd-mounts* - rm -f mount/macos-mounts* - - # remove modules we do not support - rm -rf {bacula-backup,ldap-useradmin,mon,sentry,frox,jabber,majordomo,qmail,sendmail,sarg,wuftpd,webalizer,inetd,ipsec,pap,pptp-client,pptp-server,shorewall,smart-status,vgetty,heartbeat,cfengine,cpan,sgiexports,hpuxexports,qmailadmin,bsdexports,dfsadmin} - - #remove config files from other distros - rm -f $(find . ! -name 'config-generic-linux' ! -name 'config-\*-linux' ! -name 'config-lib.pl' -name 'config-*') - - # remove caldera theme - rm -rf caldera - - # remove init-scripts from other distros - rm webmin-gentoo-init - rm webmin-init - rm webmin-caldera-init - rm webmin-daemon - - # remove update stuff to avoid problems with updating webmin,modules and themes without pacman - rm -f webmin/{update.cgi,update.pl,update_sched.cgi,upgrade.cgi,edit_upgrade.cgi,install_mod.cgi,delete_mod.cgi,install_theme.cgi} - rm -f usermin/{upgrade.cgi,update.cgi,update.pl,edit_upgrade.cgi,install_mod.cgi,delete_mod.cgi,install_theme.cgi} - - # remove modules add because we don't want files installed without pacman control - rm -f webmin/{install_mod.cgi,delete_mod.cgi} - - # setting perl path - (find . -name '*.cgi' ; find . -name '*.pl') | perl perlpath.pl /usr/bin/perl - - - # create dirs - mkdir -p "$pkgdir"/opt/webmin - mkdir -p "$pkgdir"/var/log/webmin - mkdir -p "$pkgdir"/etc/webmin - - # install pam stuff - install -D -m 644 webmin-pam "$pkgdir"/etc/pam.d/webmin - - # remove other distros and add only Parabola GNU/Linux-libre don't change next line else it will not work! - rm os_list.txt - echo 'Parabola GNU/linux-libre Any version generic-linux * -d "/etc/pacman.d"' >> os_list.txt - - # Add rc.conf support to boot and shutdown menu and lock editing of this module - cd init/ - sed -i -e 's:^local_down=.*:local_down=Parabola GNU/Linux-libre RC.CONF,3,None:g' $(find . ! -name 'config.info.pl' -name 'config.info*') - sed -i -e 's:^local_script=.*:local_script=Parabola GNU/Linux-libre RC.LOCAL,3,None:g' $(find . ! -name 'config.info.pl' -name 'config.info*') - sed -i -e 's:^index_downscript=.*:index_downscript=Parabola GNU/Linux-libre RC.CONF:g' lang/* - sed -i -e 's:^index_script=.*:index_script=Parabola GNU/Linux-libre RC.LOCAL:g' lang/* - sed -i -e 's:^noconfig=0:noconfig=1:g' defaultacl - - # Add pacman menu - cd "$srcdir"/$pkgname-$pkgver - cp -rf custom/ pacman - cp -rf mscstyle3/custom mscstyle3/pacman - sed -i -e 's:^noconfig=0:noconfig=1:g' -e 's:^edit=1:edit=0:g' pacman/defaultacl - sed -i -e '/desc/d' -e '/longdesc/d' pacman/module.info - sed -i -e 's:^name=Custom:name=Pacman:g' pacman/module.info - echo 'category=system' >> pacman/module.info - echo 'desc=Pacman' >> pacman/module.info - sed -i -e 's:^index_title=.*:index_title=Pacman:g' pacman/lang/* - - # copy stuff to right dirs - cd "$srcdir"/$pkgname-$pkgver - cp -rp * "$pkgdir"/opt/webmin - cd "$srcdir"/webmin-config - cp -rfp * "$pkgdir"/opt/webmin - - # define parameters for setup.sh - config_dir="$pkgdir"/etc/webmin - var_dir="$pkgdir"/var/log/webmin - perl=/usr/bin/perl - autoos=1 - port=10000 - login=root - crypt="XXX" - ssl=1 - atboot=0 - nostart=1 - nochown=1 - autothird=1 - nouninstall=1 - noperlpath=1 - atbootyn=n - tempdir="$pkgdir"/tmp - export config_dir var_dir perl autoos port tempdir login crypt ssl nochown autothird nouninstall nostart noperlpath atbootyn - - # Fix setup.sh - sed -i -e 's:read atbootyn::g' -e 's:exit 13::g' "$pkgdir"/opt/webmin/setup.sh - "$pkgdir"/opt/webmin/setup.sh - - # Fixup the config files to use their real locations - sed -i 's:^pidfile=.*$:pidfile=/var/run/webmin.pid:' "$pkgdir"/etc/webmin/miniserv.conf - find "$pkgdir"/etc/webmin -type f -exec sed -i "s:$pkgdir::g" {} \; - - # make it only accessible by localhost - echo 'allow=127.0.0.1' >> "$pkgdir"/etc/webmin/miniserv.conf - - # install pacman menu - cd "$srcdir"/webmin-pacman/config - cp -rfp * "$pkgdir"/etc/webmin/pacman - - # install systemd files - install -D -m 644 $srcdir/webmin.service $pkgdir/usr/lib/systemd/system/webmin.service - - # delete temp dir - rm -r "$pkgdir"/tmp - # change sticky bit - chmod 0644 $pkgdir/opt/webmin/man/config-generic-linux - # install license - install -m 644 -D "$srcdir"/$pkgname-$pkgver/LICENCE "$pkgdir"/usr/share/licenses/webmin/LICENCE -} -md5sums=('52654bd0fe36e9cace00fa74e49d41d8' - 'b0b3e3fb231a12e60165b6b4d604dcfa' - 'c86518037449e0fc0c60fc24537ea038' - 'fc29ecb6a5cd8c278abe054e60381095') diff --git a/libre/webmin/webmin.install b/libre/webmin/webmin.install deleted file mode 100644 index efdd9291d..000000000 --- a/libre/webmin/webmin.install +++ /dev/null @@ -1,35 +0,0 @@ -# arg 1: the new package version -post_install() { - local crypt=$(grep "^root:" ${ROOT}/etc/shadow | cut -f 2 -d :) - crypt=${crypt//\\/\\\\} - crypt=${crypt//\//\\\/} - sed -i "s/root:XXX/root:${crypt}/" /etc/webmin/miniserv.users - -cat << EOF -Note: -==> It is not allowed to install 3rd party modules, or delete existing modules. -==> Please write your own PKGBUILDS for 3rd party modules and additional themes. -Setup: -==> To make webmin start at boot time, add webmin to rc.conf daemons -==> Point your web browser to http://localhost:10000 to use webmin. -==> The access is restricted to localhost, if you want to connect from other locations -==> change /etc/webmin/miniserv.conf to something like that: allow=127.0.0.1 -==> If you want to have ssl encryption please install 'perl-net-ssleay' additional. -EOF -# fix man module - cd /opt/webmin/man - for i in $(find . -name '*.gz'); do - gzip -df $i - done -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -pre_remove() { - # uninstall unzipped files - rm -r /opt/webmin/man -} diff --git a/libre/webmin/webmin.service b/libre/webmin/webmin.service deleted file mode 100644 index a8a384a8c..000000000 --- a/libre/webmin/webmin.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Webmin - -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/etc/webmin/start -ExecStop=/etc/webmin/stop - -[Install] -WantedBy=multi-user.target diff --git a/libre/xorg-server-libre/PKGBUILD b/libre/xorg-server-libre/PKGBUILD deleted file mode 100644 index cd84a2066..000000000 --- a/libre/xorg-server-libre/PKGBUILD +++ /dev/null @@ -1,145 +0,0 @@ -# $Id: PKGBUILD 218446 2014-07-31 12:02:24Z lcarlier $ -# Maintainer (Parabola): Márcio Silva -# Maintainer: AndyRTR -# Maintainer: Jan de Groot - -pkgbase=xorg-server -pkgname=('xorg-server-libre') -pkgver=1.16.0 -pkgrel=6 # build first with 0.1 and then rebuild it after xf86-input-evdev rebuild -arch=('i686' 'x86_64') -license=('custom') -url="http://xorg.freedesktop.org" -makedepends=('pixman' 'libx11' 'mesa' 'mesa-libgl' 'xf86driproto' 'xcmiscproto' 'xtrans' 'bigreqsproto' 'randrproto' - 'inputproto' 'fontsproto' 'videoproto' 'presentproto' 'compositeproto' 'recordproto' 'scrnsaverproto' - 'resourceproto' 'xineramaproto' 'libxkbfile' 'libxfont' 'renderproto' 'libpciaccess' 'libxv' - 'xf86dgaproto' 'libxmu' 'libxrender' 'libxi' 'dmxproto' 'libxaw' 'libdmx' 'libxtst' 'libxres' - 'xorg-xkbcomp' 'xorg-util-macros' 'xorg-font-util' 'glproto' 'dri2proto' 'libgcrypt' 'libepoxy' - 'xcb-util' 'xcb-util-image' 'xcb-util-wm' 'xcb-util-keysyms' 'dri3proto' 'libxshmfence') -source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2{,.sig} - autoconfig-nvidia-libre.patch - autoconfig-sis.patch - glamor-upstream-fix.patch - xvfb-run - xvfb-run.1) -sha256sums=('38330a03c5f7a38745a3f9816cf069db5b8844eebb358fd39dbabf61f32cd06b' - 'SKIP' - 'eca387a72345ac9cce866a8ca3b31e6ef696f298be4863196da75009c6673363' - 'd027776fac1f7675b0a9ee817502290b1c45f9c09b0f0a6bb058c35f92361e84' - 'fbd898f0e867c77c9bf918fd2e7956c7776ecb3cc3634c61290fb03513b47987' - 'ff0156309470fc1d378fd2e104338020a884295e285972cc88e250e031cc35b9' - '2460adccd3362fefd4cdc5f1c70f332d7b578091fb9167bf88b5f91265bbd776') - -prepare() { - cd "${pkgbase}-${pkgver}" - # Use unofficial imedia SiS driver for supported SiS devices - patch -Np0 -i ../autoconfig-sis.patch - # NV01 (Diamond Edge 3D) and NV03 (Riva 128) is not supported by nouveau: - # http://nouveau.freedesktop.org/wiki/CodeNames/#Ancient - # Use nouveau/nv/vesa drivers for nvidia devices - # Note: nonfree "nvidia" driver support was removed on our patch version - patch -Np1 -i ../autoconfig-nvidia-libre.patch - # merged upstream (1.16 branch) - patch -Np1 -i ../glamor-upstream-fix.patch - - # fix os name: - #Build Operating System = OSNAME="--kernel-name --kernel-release --machine" OSVENDOR="" - #Current Operating System = --kernel-name --nodename --kernel-release --kernel-version --machine - # to: - #Build Operating System = OSNAME="--operating-system" OSVENDOR="--machine - kernel --kernel-release" - #Current Operating System = OSNAME="--operating-system" --nodename --machine - kernel --kernel-release --kernel-version - # see: man uname - - sed -i '\|Current Operating System| s|%s %s %s %s %s|%s %s %s - kernel %s %s| - s|name.sysname, name.nodename, name.release|OSNAME, name.nodename, name.machine| - s|name.version, name.machine|name.release, name.version| - ' hw/xfree86/common/xf86Init.c - sed -i 's|Linux|GNU/Linux| - s|GNU Hurd|GNU/Hurd| - ' hw/xfree86/man/{Xorg,xorg.conf}.man - sed -i 's|uname -srm|uname -o| - s|uname -s|uname -o| - ' ChangeLog config.guess configure.ac configure compile -} - -build() { - cd "${pkgbase}-${pkgver}" - autoreconf -fi - ./configure --prefix=/usr \ - --enable-ipv6 \ - --enable-dri \ - --enable-dmx \ - --enable-xvfb \ - --enable-xnest \ - --enable-composite \ - --enable-xcsecurity \ - --enable-xorg \ - --enable-xephyr \ - --enable-glamor \ - --enable-xwayland \ - --enable-glx-tls \ - --enable-kdrive \ - --enable-kdrive-evdev \ - --enable-kdrive-kbd \ - --enable-kdrive-mouse \ - --enable-config-udev \ - --enable-systemd-logind \ - --enable-suid-wrapper \ - --disable-install-setuid \ - --enable-record \ - --disable-xfbdev \ - --disable-xfake \ - --disable-static \ - --libexecdir=/usr/bin \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --with-xkb-path=/usr/share/X11/xkb \ - --with-xkb-output=/var/lib/xkb \ - --with-fontrootdir=/usr/share/fonts \ - --with-os-name="$(uname -o)" \ - --with-os-vendor="$(uname -m) - kernel $(uname -r)" - -# --without-dtrace \ -# --disable-linux-acpi --disable-linux-apm \ - - make - - # Disable subdirs for make install rule to make splitting easier - sed -e 's/^DMX_SUBDIRS =.*/DMX_SUBDIRS =/' \ - -e 's/^XVFB_SUBDIRS =.*/XVFB_SUBDIRS =/' \ - -e 's/^XNEST_SUBDIRS =.*/XNEST_SUBDIRS = /' \ - -e 's/^KDRIVE_SUBDIRS =.*/KDRIVE_SUBDIRS =/' \ - -e 's/^XWAYLAND_SUBDIRS =.*/XWAYLAND_SUBDIRS =/' \ - -i hw/Makefile -} - -package_xorg-server-libre() { - pkgdesc="Xorg X server, without nonfree nvidia driver support" - depends=(libepoxy libxdmcp libxfont libpciaccess libdrm pixman libgcrypt libxau xorg-server-common xf86-input-evdev libxshmfence) - # see xorg-server-*/hw/xfree86/common/xf86Module.h for ABI versions - we provide major numbers that drivers can depend on - # and /usr/lib/pkgconfig/xorg-server.pc in xorg-server-devel pkg - provides=('X-ABI-VIDEODRV_VERSION=18' 'X-ABI-XINPUT_VERSION=21' 'X-ABI-EXTENSION_VERSION=8.0' 'x-server' "$pkgbase=$pkgver") - groups=('xorg') - conflicts=('nvidia-utils' 'glamor-egl' "$pkgbase") - replaces=('nvidia-utils' 'glamor-egl' "$pkgbase") - install=xorg-server.install - - cd "${pkgbase}-${pkgver}" - make DESTDIR="${pkgdir}" install - - # Needed for non-mesa drivers, libgl will restore it - mv "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" \ - "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.xorg" - - rm -rf "${pkgdir}/var" - - rm -f "${pkgdir}/usr/share/man/man1/Xserver.1" - rm -f "${pkgdir}/usr/lib/xorg/protocol.txt" - - install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server" - ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server/COPYING" - - rm -rf "${pkgdir}/usr/lib/pkgconfig" - rm -rf "${pkgdir}/usr/include" - rm -rf "${pkgdir}/usr/share/aclocal" -} diff --git a/libre/xorg-server-libre/autoconfig-nvidia-libre.patch b/libre/xorg-server-libre/autoconfig-nvidia-libre.patch deleted file mode 100644 index 688b495e1..000000000 --- a/libre/xorg-server-libre/autoconfig-nvidia-libre.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff -Nur xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c ---- xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c 2012-02-10 10:10:37.583014924 +0000 -+++ xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c 2012-02-10 11:16:07.148971317 +0000 -@@ -1144,7 +1144,21 @@ - int idx = 0; - - #ifdef __linux__ -- driverList[idx++] = "nouveau"; -+ switch (dev->device_id) -+ { -+ /* NV1 - Diamond Edge 3D */ -+ case 0x0008: -+ case 0x0009: -+ driverList[idx++] = "vesa"; -+ break; -+ /* NV3 - Riva 128 */ -+ case 0x0018: -+ driverList[idx++] = "nv"; -+ break; -+ default: -+ driverList[idx++] = "nouveau"; -+ break; -+ } - #endif - driverList[idx++] = "nv"; - break; diff --git a/libre/xorg-server-libre/autoconfig-sis.patch b/libre/xorg-server-libre/autoconfig-sis.patch deleted file mode 100644 index 0b50049db..000000000 --- a/libre/xorg-server-libre/autoconfig-sis.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- hw/xfree86/common/xf86pciBus.c.orig 2011-09-24 10:53:45.421697668 +0000 -+++ hw/xfree86/common/xf86pciBus.c 2011-09-24 10:55:56.416250708 +0000 -@@ -1200,9 +1200,15 @@ - break; - } - break; -- case 0x1039: -- driverList[0] = "sis"; -- break; -+ case 0x1039: -+ switch (dev->device_id) -+ { -+ case 0x6350: case 0x6351: -+ driverList[0] = "sisimedia"; driverList[1] = "sis"; break; -+ default: -+ driverList[0] = "sis"; break; -+ } -+ break; - case 0x126f: - driverList[0] = "siliconmotion"; - break; diff --git a/libre/xorg-server-libre/glamor-upstream-fix.patch b/libre/xorg-server-libre/glamor-upstream-fix.patch deleted file mode 100644 index 89dd4d017..000000000 --- a/libre/xorg-server-libre/glamor-upstream-fix.patch +++ /dev/null @@ -1,178 +0,0 @@ -From 3c0431b8911241552a15a43e4279c50658b50a18 Mon Sep 17 00:00:00 2001 -From: Keith Packard -Date: Wed, 16 Jul 2014 23:03:23 +0000 -Subject: glamor: Fix temp picture coordinates in glamor_composite_clipped_region - -To understand this patch, let's start at the protocol interface where -the relationship between the coordinate spaces is documented: - - static Bool - _glamor_composite(CARD8 op, - PicturePtr source, - PicturePtr mask, - PicturePtr dest, - INT16 x_source, - INT16 y_source, - INT16 x_mask, - INT16 y_mask, - INT16 x_dest, INT16 y_dest, - CARD16 width, CARD16 height, Bool fallback) - -The coordinates are passed to this function directly off the wire and -are all relative to their respective drawables. For Windows, this means -that they are relative to the upper left corner of the window, in -whatever pixmap that window is getting drawn to. - -_glamor_composite calls miComputeCompositeRegion to construct a clipped -region to actually render to. In reality, miComputeCompositeRegion clips -only to the destination these days; source clip region based clipping -would have to respect the transform, which isn't really possible. The -returned region is relative to the screen in which dest lives; offset by -dest->drawable.x and dest->drawable.y. - -What is important to realize here is that, because of clipping, the -composite region may not have the same position within the destination -drawable as x_dest, y_dest. The protocol coordinates now exist solely to -'pin' the three objects together. - - extents->x1,y1 Screen origin of clipped operation - width,height Extents of the clipped operation - x_dest,y_dest Unclipped destination-relative operation coordinate - x_source,y_source Unclipped source-relative operation coordinate - x_mask,y_mask Unclipped mask-relative operation coordinate - -One thing we want to know is what the offset is from the original -operation origin to the clipped origin - - Destination drawable relative coordinates of the clipped operation: - - x_dest_clipped = extents->x1 - dest->drawable.x - y_dest_clipped = extents->y1 - dest->drawable.y - - Offset from the original operation origin: - - x_off_clipped = x_dest_clipped - x_dest - y_off_clipped = y_dest_clipped - y_dest - - Source drawable relative coordinates of the clipped operation: - - x_source_clipped = x_source + x_off_clipped; - y_source_clipped = y_source + y_off_clipped; - - Mask drawable relative coordinates of the clipped operation: - - x_mask_clipped = x_source + x_off_clipped; - y_mask_clipped = y_source + y_off_clipped; - -This is where the original code fails -- it doesn't subtract the -destination drawable location when computing the distance that the -operation has been moved by clipping. Here's what it does when -constructing a temporary source picture: - - temp_src = - glamor_convert_gradient_picture(screen, source, - extent->x1 + x_source - x_dest, - extent->y1 + y_source - y_dest, - width, height); - ... - x_temp_src = -extent->x1 + x_dest; - y_temp_src = -extent->y1 + y_dest; - -glamor_convert_gradient_picture needs source drawable relative -coordinates, but that is not what it's getting; it's getting -screen-relative coordinates for the destination, adjusted by the -distance between the provided source and destination operation -coordinates. We want x_source_clipped and y_source_clipped: - - x_source_clipped = x_source + x_off_clipped - = x_source + x_dest_clipped - x_dest - = x_source + extents->x1 - dest->drawable.x - x_dest - -x_temp_src/y_temp_src are supposed to be the coordinates of the original -operation translated to the temporary picture: - - x_temp_src = x_source - x_source_clipped; - y_temp_src = y_source - y_source_clipped; - -Note that x_source_clipped/y_source_clipped will never be less than -x_source/y_source because all we're doing is clipping. This means that -x_temp_src/y_temp_src will always be non-positive; the original source -coordinate can never be strictly *inside* the temporary image or we -could have made the temporary image smaller. - - x_temp_src = x_source - x_source_clipped - = x_source - (x_source + x_off_clipped) - = -x_off_clipped - = x_dest - x_dest_clipped - = x_dest - (extents->x1 - dest->drawable.x) - -Again, this is off by the destination origin within the screen -coordinate space. - -The code should look like: - - temp_src = - glamor_convert_gradient_picture(screen, source, - extent->x1 + x_source - x_dest - dest->pDrawable->x, - extent->y1 + y_source - y_dest - dest->pDrawable->y, - width, height); - - x_temp_src = -extent->x1 + x_dest + dest->pDrawable->x; - y_temp_src = -extent->y1 + y_dest + dest->pDrawable->y; - -Signed-off-by: Keith Packard -Reviewed-by: Markus Wick -(cherry picked from commit 55f5bfb578e934319d1308cbb56c900c5ac7cfa7) -Signed-off-by: Julien Cristau ---- -diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c -index 14ab738..e5d5d2c 100644 ---- a/glamor/glamor_render.c -+++ b/glamor/glamor_render.c -@@ -1450,8 +1450,8 @@ glamor_composite_clipped_region(CARD8 op, - || source_pixmap->drawable.height != height)))) { - temp_src = - glamor_convert_gradient_picture(screen, source, -- extent->x1 + x_source - x_dest, -- extent->y1 + y_source - y_dest, -+ extent->x1 + x_source - x_dest - dest->pDrawable->x, -+ extent->y1 + y_source - y_dest - dest->pDrawable->y, - width, height); - if (!temp_src) { - temp_src = source; -@@ -1459,8 +1459,8 @@ glamor_composite_clipped_region(CARD8 op, - } - temp_src_priv = - glamor_get_pixmap_private((PixmapPtr) (temp_src->pDrawable)); -- x_temp_src = -extent->x1 + x_dest; -- y_temp_src = -extent->y1 + y_dest; -+ x_temp_src = -extent->x1 + x_dest + dest->pDrawable->x; -+ y_temp_src = -extent->y1 + y_dest + dest->pDrawable->y; - } - - if (mask -@@ -1474,8 +1474,8 @@ glamor_composite_clipped_region(CARD8 op, - * to do reduce one convertion. */ - temp_mask = - glamor_convert_gradient_picture(screen, mask, -- extent->x1 + x_mask - x_dest, -- extent->y1 + y_mask - y_dest, -+ extent->x1 + x_mask - x_dest - dest->pDrawable->x, -+ extent->y1 + y_mask - y_dest - dest->pDrawable->y, - width, height); - if (!temp_mask) { - temp_mask = mask; -@@ -1483,8 +1483,8 @@ glamor_composite_clipped_region(CARD8 op, - } - temp_mask_priv = - glamor_get_pixmap_private((PixmapPtr) (temp_mask->pDrawable)); -- x_temp_mask = -extent->x1 + x_dest; -- y_temp_mask = -extent->y1 + y_dest; -+ x_temp_mask = -extent->x1 + x_dest + dest->pDrawable->x; -+ y_temp_mask = -extent->y1 + y_dest + dest->pDrawable->y; - } - /* Do two-pass PictOpOver componentAlpha, until we enable - * dual source color blending. --- -cgit v0.9.0.2-2-gbebe - diff --git a/libre/xorg-server-libre/xorg-server.install b/libre/xorg-server-libre/xorg-server.install deleted file mode 100644 index 46bf5a90a..000000000 --- a/libre/xorg-server-libre/xorg-server.install +++ /dev/null @@ -1,18 +0,0 @@ -post_upgrade() { - if (( $(vercmp $2 1.16.0-3) < 0 )); then - post_install - fi -} - -post_install() { - cat <>> xorg-server has now the ability to run without root rights with - the help of systemd-logind. xserver will fail to run if not launched - from the same virtual terminal as was used to log in. - Without root rights, log files will be in ~/.local/share/xorg/ directory. - - Old behavior can be restored through Xorg.wrap config file. - See Xorg.wrap man page (man xorg.wrap). -MSG -} - diff --git a/libre/xorg-server-libre/xvfb-run b/libre/xorg-server-libre/xvfb-run deleted file mode 100644 index 4c2f4e0d3..000000000 --- a/libre/xorg-server-libre/xvfb-run +++ /dev/null @@ -1,180 +0,0 @@ -#!/bin/sh - -# $Id: xvfb-run 2027 2004-11-16 14:54:16Z branden $ - -# This script starts an instance of Xvfb, the "fake" X server, runs a command -# with that server available, and kills the X server when done. The return -# value of the command becomes the return value of this script. -# -# If anyone is using this to build a Debian package, make sure the package -# Build-Depends on xvfb, xbase-clients, and xfonts-base. - -set -e - -PROGNAME=xvfb-run -SERVERNUM=99 -AUTHFILE= -ERRORFILE=/dev/null -STARTWAIT=3 -XVFBARGS="-screen 0 640x480x8" -LISTENTCP="-nolisten tcp" -XAUTHPROTO=. - -# Query the terminal to establish a default number of columns to use for -# displaying messages to the user. This is used only as a fallback in the event -# the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the -# script is running, and this cannot, only being calculated once.) -DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true -if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" >/dev/null 2>&1; then - DEFCOLUMNS=80 -fi - -# Display a message, wrapping lines at the terminal width. -message () { - echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} -} - -# Display an error message. -error () { - message "error: $*" >&2 -} - -# Display a usage message. -usage () { - if [ -n "$*" ]; then - message "usage error: $*" - fi - cat <>"$ERRORFILE" 2>&1 - fi - if [ -n "$XVFB_RUN_TMPDIR" ]; then - if ! rm -r "$XVFB_RUN_TMPDIR"; then - error "problem while cleaning up temporary directory" - exit 5 - fi - fi -} - -# Parse the command line. -ARGS=$(getopt --options +ae:f:hn:lp:s:w: \ - --long auto-servernum,error-file:,auth-file:,help,server-num:,listen-tcp,xauth-protocol:,server-args:,wait: \ - --name "$PROGNAME" -- "$@") -GETOPT_STATUS=$? - -if [ $GETOPT_STATUS -ne 0 ]; then - error "internal error; getopt exited with status $GETOPT_STATUS" - exit 6 -fi - -eval set -- "$ARGS" - -while :; do - case "$1" in - -a|--auto-servernum) SERVERNUM=$(find_free_servernum) ;; - -e|--error-file) ERRORFILE="$2"; shift ;; - -f|--auth-file) AUTHFILE="$2"; shift ;; - -h|--help) SHOWHELP="yes" ;; - -n|--server-num) SERVERNUM="$2"; shift ;; - -l|--listen-tcp) LISTENTCP="" ;; - -p|--xauth-protocol) XAUTHPROTO="$2"; shift ;; - -s|--server-args) XVFBARGS="$2"; shift ;; - -w|--wait) STARTWAIT="$2"; shift ;; - --) shift; break ;; - *) error "internal error; getopt permitted \"$1\" unexpectedly" - exit 6 - ;; - esac - shift -done - -if [ "$SHOWHELP" ]; then - usage - exit 0 -fi - -if [ -z "$*" ]; then - usage "need a command to run" >&2 - exit 2 -fi - -if ! which xauth >/dev/null; then - error "xauth command not found" - exit 3 -fi - -# tidy up after ourselves -trap clean_up EXIT - -# If the user did not specify an X authorization file to use, set up a temporary -# directory to house one. -if [ -z "$AUTHFILE" ]; then - XVFB_RUN_TMPDIR="$(mktemp -d -t $PROGNAME.XXXXXX)" - AUTHFILE="$XVFB_RUN_TMPDIR/Xauthority" -fi - -# Start Xvfb. -MCOOKIE=$(mcookie) -XAUTHORITY=$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1 -add :$SERVERNUM $XAUTHPROTO $MCOOKIE -EOF -XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP >>"$ERRORFILE" \ - 2>&1 & -XVFBPID=$! -sleep "$STARTWAIT" -if ! kill -0 $XVFBPID 2>/dev/null; then - echo "Xvfb failed to start" >&2 - exit 1 -fi - -# Start the command and save its exit status. -set +e -DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" 2>&1 -RETVAL=$? -set -e - -# Kill Xvfb now that the command has exited. -kill $XVFBPID - -# Return the executed command's exit status. -exit $RETVAL - -# vim:set ai et sts=4 sw=4 tw=80: diff --git a/libre/xorg-server-libre/xvfb-run.1 b/libre/xorg-server-libre/xvfb-run.1 deleted file mode 100644 index 137d3a196..000000000 --- a/libre/xorg-server-libre/xvfb-run.1 +++ /dev/null @@ -1,282 +0,0 @@ -.\" $Id: xvfb-run.1 2138 2005-01-17 23:40:27Z branden $ -.\" -.\" Copyright 1998-2004 Branden Robinson . -.\" -.\" This is free software; you may redistribute it and/or modify -.\" it under the terms of the GNU General Public License as -.\" published by the Free Software Foundation; either version 2, -.\" or (at your option) any later version. -.\" -.\" This is distributed in the hope that it will be useful, but -.\" WITHOUT ANY WARRANTY; without even the implied warranty of -.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -.\" GNU General Public License for more details. -.\" -.\" You should have received a copy of the GNU General Public License with -.\" the Debian operating system, in /usr/share/common-licenses/GPL; if -.\" not, write to the Free Software Foundation, Inc., 59 Temple Place, -.\" Suite 330, Boston, MA 02111-1307 USA -.\" -.\" We need the URL macro from groff's www macro package, but also want -.\" things to work all right for people who don't have it. So we define -.\" our own URL macro and let the www macro package override it if it's -.\" available. -.de URL -\\$2 \(laURL: \\$1 \(ra\\$3 -.. -.if \n[.g] .mso www.tmac -.TH xvfb\-run 1 "2004\-11\-12" "Debian Project" -.SH NAME -xvfb\-run \- run specified X client or command in a virtual X server environment -.SH SYNOPSIS -.B xvfb\-run -[ -.I options -] -.I command -.SH DESCRIPTION -.B xvfb\-run -is a wrapper for the -.BR Xvfb (1x) -command which simplifies the task of running commands (typically an X -client, or a script containing a list of clients to be run) within a virtual -X server environment. -.PP -.B xvfb\-run -sets up an X authority file (or uses an existing user\-specified one), -writes a cookie to it (see -.BR xauth (1x)) -and then starts the -.B Xvfb -X server as a background process. -The process ID of -.B Xvfb -is stored for later use. -The specified -.I command -is then run using the X display corresponding to the -.B Xvfb -server -just started and the X authority file created earlier. -.PP -When the -.I command -exits, its status is saved, the -.B Xvfb -server is killed (using the process ID stored earlier), the X authority -cookie removed, and the authority file deleted (if the user did not specify -one to use). -.B xvfb\-run -then exits with the exit status of -.IR command . -.PP -.B xvfb\-run -requires the -.B xauth -command to function. -.SH OPTIONS -.TP -.B \-a\fR,\fB \-\-auto\-servernum -Try to get a free server number, starting at 99, or the argument to -.BR \-\-server\-num . -.TP -.BI \-e\ file \fR,\fB\ \-\-error\-file= file -Store output from -.B xauth -and -.B Xvfb -in -.IR file . -The default is -.IR /dev/null . -.TP -.BI \-f\ file \fR,\fB\ \-\-auth\-file= file -Store X authentication data in -.IR file . -By default, a temporary directory called -.IR xvfb\-run. PID -(where PID is the process ID of -.B xvfb\-run -itself) is created in the directory specified by the environment variable -.B TMPDIR -(or -.I /tmp -if that variable is null or unset), and the -.BR tempfile (1) -command is used to create a file in that temporary directory called -.IR Xauthority . -.TP -.B \-h\fR,\fB \-\-help -Display a usage message and exit. -.TP -.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber -Use -.I servernumber -as the server number (but see the -.B \-a\fR,\fB \-\-auto\-servernum -option above). -The default is 99. -.TP -.B \-l\fR,\fB \-\-listen\-tcp -Enable TCP port listening in the X server. -For security reasons (to avoid denial\-of\-service attacks or exploits), -TCP port listening is disabled by default. -.TP -.BI \-p\ protocolname \fR,\fB\ \-\-xauth\-protocol= protocolname -Use -.I protocolname -as the X authority protocol to use. -The default is \(oq.\(cq, which -.B xauth -interprets as its own default protocol, which is MIT\-MAGIC\-COOKIE\-1. -.TP -.BI \-s\ arguments \fR,\fB\ \-\-server\-args= arguments -Pass -.I arguments -to the -.B Xvfb -server. -Be careful to quote any whitespace characters that may occur within -.I arguments -to prevent them from regarded as separators for -.BR xvfb\-run 's -own arguments. -Also, note that specification of \(oq\-nolisten tcp\(cq in -.I arguments -may override the function of -.BR xvfb\-run 's -own -.B \-l\fR,\fB \-\-listen\-tcp -option, and that specification of the server number (e.g., \(oq:1\(cq) may -be ignored because of the way the X server parses its argument list. -Use the -.B xvfb\-run -option -.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber -to achieve the latter function. -The default is \(oq\-screen 0 640x480x8\(cq. -.TP -.BI \-w\ delay \fR,\fB\ \-\-wait= delay -Wait -.I delay -seconds after launching -.B Xvfb -before attempting to start the specified command. -The default is 3. -.SH ENVIRONMENT -.TP -.B COLUMNS -indicates the width of the terminal device in character cells. -This value is used for formatting diagnostic messages. -If not set, the terminal is queried using -.BR stty (1) -to determine its width. -If that fails, a value of \(oq80\(cq is assumed. -.TP -.B TMPDIR -specifies the directory in which to place -.BR xvfb\-run 's -temporary directory for storage of the X authority file; only used if the -.B \-f -or -.B \-\-auth\-file -options are not specified. -.SH "OUTPUT FILES" -.PP -Unless the -.B \-f -or -.B \-\-auth\-file -options are specified, a temporary -directory and file within it are created (and deleted) to store the X -authority cookies used by the -.B Xvfb -server and client(s) run under it. -See -.BR tempfile (1). -If \-f or \-\-auth\-file are used, then the specified X authority file is -only written to, not created or deleted (though -.B xauth -creates an authority file itself if told to use use that does not already -exist). -.PP -An error file with a user\-specified name is also created if the -.B \-e -or -.B \-\-error\-file -options are specifed; see above. -.SH "EXIT STATUS" -.B xvfb\-run -uses its exit status as well as output to standard error to communicate -diagnostics. -The exit status of \(oq1\(cq is not used, and should be interpreted as failure -of the specified command. -.TP -0 -.B xvfb\-run -only uses this exit status if the -.B \-h\fR,\fB \-\-help -option is given. -In all other situations, this may be interpreted as success of the specified -command. -.TP -2 -No command to run was specified. -.TP -3 -The -.B xauth -command is not available. -.TP -4 -The temporary directory that was going to be used already exists; since -.B xvfb\-run -produces a uniquely named directory, this may indicate an attempt by another -process on the system to exploit a temporary file race condition. -.TP -5 -A problem was encountered while cleaning up the temporary directory. -.TP -6 -A problem was encountered while using -.BR getopt (1) -to parse the command\-line arguments. -.SH EXAMPLES -.TP -.B xvfb\-run \-\-auto\-servernum \-\-server\-num=1 xlogo -runs the -.BR xlogo (1x) -demonstration client inside the -.B Xvfb -X server on the first available server number greater than or equal to 1. -.TP -.B xvfb\-run \-\-server\-args="\-screen 0 1024x768x24" ico \-faces -runs the -.BR ico (1x) -demonstration client (and passes it the -.B \-faces -argument) inside the -.B Xvfb -X server, configured with a root window of 1024 by 768 pixels and a color -depth of 24 bits. -.PP -Note that the demo X clients used in the above examples will not exit on -their own, so they will have to be killed before -.B xvfb\-run -will exit. -.SH BUGS -See -.URL "http://bugs.debian.org/xvfb" "the Debian Bug Tracking System" . -If you wish to report a bug in -.BR xvfb\-run , -please use the -.BR reportbug (1) -command. -.SH AUTHOR -.B xfvb\-run -was written by Branden Robinson and Jeff Licquia with sponsorship from -Progeny Linux Systems. -.SH "SEE ALSO" -.BR Xvfb (1x), -.BR xauth (1x) -.\" vim:set et tw=80: diff --git a/libre/xorg-server-parabola/PKGBUILD b/libre/xorg-server-parabola/PKGBUILD new file mode 100644 index 000000000..9803a2f83 --- /dev/null +++ b/libre/xorg-server-parabola/PKGBUILD @@ -0,0 +1,145 @@ +# $Id: PKGBUILD 218446 2014-07-31 12:02:24Z lcarlier $ +# Maintainer (Parabola): Márcio Silva +# Maintainer: AndyRTR +# Maintainer: Jan de Groot + +pkgbase=xorg-server +pkgname=('xorg-server-parabola') +pkgver=1.16.0 +pkgrel=6 # build first with 0.1 and then rebuild it after xf86-input-evdev rebuild +arch=('i686' 'x86_64') +license=('custom') +url="http://xorg.freedesktop.org" +makedepends=('pixman' 'libx11' 'mesa' 'mesa-libgl' 'xf86driproto' 'xcmiscproto' 'xtrans' 'bigreqsproto' 'randrproto' + 'inputproto' 'fontsproto' 'videoproto' 'presentproto' 'compositeproto' 'recordproto' 'scrnsaverproto' + 'resourceproto' 'xineramaproto' 'libxkbfile' 'libxfont' 'renderproto' 'libpciaccess' 'libxv' + 'xf86dgaproto' 'libxmu' 'libxrender' 'libxi' 'dmxproto' 'libxaw' 'libdmx' 'libxtst' 'libxres' + 'xorg-xkbcomp' 'xorg-util-macros' 'xorg-font-util' 'glproto' 'dri2proto' 'libgcrypt' 'libepoxy' + 'xcb-util' 'xcb-util-image' 'xcb-util-wm' 'xcb-util-keysyms' 'dri3proto' 'libxshmfence') +source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2{,.sig} + autoconfig-nvidia-libre.patch + autoconfig-sis.patch + glamor-upstream-fix.patch + xvfb-run + xvfb-run.1) +sha256sums=('38330a03c5f7a38745a3f9816cf069db5b8844eebb358fd39dbabf61f32cd06b' + 'SKIP' + 'eca387a72345ac9cce866a8ca3b31e6ef696f298be4863196da75009c6673363' + 'd027776fac1f7675b0a9ee817502290b1c45f9c09b0f0a6bb058c35f92361e84' + 'fbd898f0e867c77c9bf918fd2e7956c7776ecb3cc3634c61290fb03513b47987' + 'ff0156309470fc1d378fd2e104338020a884295e285972cc88e250e031cc35b9' + '2460adccd3362fefd4cdc5f1c70f332d7b578091fb9167bf88b5f91265bbd776') + +prepare() { + cd "${pkgbase}-${pkgver}" + # Use unofficial imedia SiS driver for supported SiS devices + patch -Np0 -i ../autoconfig-sis.patch + # NV01 (Diamond Edge 3D) and NV03 (Riva 128) is not supported by nouveau: + # http://nouveau.freedesktop.org/wiki/CodeNames/#Ancient + # Use nouveau/nv/vesa drivers for nvidia devices + # Note: nonfree "nvidia" driver support was removed on our patch version + patch -Np1 -i ../autoconfig-nvidia-libre.patch + # merged upstream (1.16 branch) + patch -Np1 -i ../glamor-upstream-fix.patch + + # fix os name: + #Build Operating System = OSNAME="--kernel-name --kernel-release --machine" OSVENDOR="" + #Current Operating System = --kernel-name --nodename --kernel-release --kernel-version --machine + # to: + #Build Operating System = OSNAME="--operating-system" OSVENDOR="--machine - kernel --kernel-release" + #Current Operating System = OSNAME="--operating-system" --nodename --machine - kernel --kernel-release --kernel-version + # see: man uname + + sed -i '\|Current Operating System| s|%s %s %s %s %s|%s %s %s - kernel %s %s| + s|name.sysname, name.nodename, name.release|OSNAME, name.nodename, name.machine| + s|name.version, name.machine|name.release, name.version| + ' hw/xfree86/common/xf86Init.c + sed -i 's|Linux|GNU/Linux| + s|GNU Hurd|GNU/Hurd| + ' hw/xfree86/man/{Xorg,xorg.conf}.man + sed -i 's|uname -srm|uname -o| + s|uname -s|uname -o| + ' ChangeLog config.guess configure.ac configure compile +} + +build() { + cd "${pkgbase}-${pkgver}" + autoreconf -fi + ./configure --prefix=/usr \ + --enable-ipv6 \ + --enable-dri \ + --enable-dmx \ + --enable-xvfb \ + --enable-xnest \ + --enable-composite \ + --enable-xcsecurity \ + --enable-xorg \ + --enable-xephyr \ + --enable-glamor \ + --enable-xwayland \ + --enable-glx-tls \ + --enable-kdrive \ + --enable-kdrive-evdev \ + --enable-kdrive-kbd \ + --enable-kdrive-mouse \ + --enable-config-udev \ + --enable-systemd-logind \ + --enable-suid-wrapper \ + --disable-install-setuid \ + --enable-record \ + --disable-xfbdev \ + --disable-xfake \ + --disable-static \ + --libexecdir=/usr/bin \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-xkb-path=/usr/share/X11/xkb \ + --with-xkb-output=/var/lib/xkb \ + --with-fontrootdir=/usr/share/fonts \ + --with-os-name="$(uname -o)" \ + --with-os-vendor="$(uname -m) - kernel $(uname -r)" + +# --without-dtrace \ +# --disable-linux-acpi --disable-linux-apm \ + + make + + # Disable subdirs for make install rule to make splitting easier + sed -e 's/^DMX_SUBDIRS =.*/DMX_SUBDIRS =/' \ + -e 's/^XVFB_SUBDIRS =.*/XVFB_SUBDIRS =/' \ + -e 's/^XNEST_SUBDIRS =.*/XNEST_SUBDIRS = /' \ + -e 's/^KDRIVE_SUBDIRS =.*/KDRIVE_SUBDIRS =/' \ + -e 's/^XWAYLAND_SUBDIRS =.*/XWAYLAND_SUBDIRS =/' \ + -i hw/Makefile +} + +package_xorg-server-parabola() { + pkgdesc="Xorg X server, without nonfree nvidia driver support" + depends=(libepoxy libxdmcp libxfont libpciaccess libdrm pixman libgcrypt libxau xorg-server-common xf86-input-evdev libxshmfence) + # see xorg-server-*/hw/xfree86/common/xf86Module.h for ABI versions - we provide major numbers that drivers can depend on + # and /usr/lib/pkgconfig/xorg-server.pc in xorg-server-devel pkg + provides=('X-ABI-VIDEODRV_VERSION=18' 'X-ABI-XINPUT_VERSION=21' 'X-ABI-EXTENSION_VERSION=8.0' 'x-server' "$pkgbase=$pkgver") + groups=('xorg') + conflicts=('nvidia-utils' 'glamor-egl' "$pkgbase" "${pkgbase}-libre") + replaces=('nvidia-utils' 'glamor-egl' "$pkgbase" "${pkgbase}-libre") + install=xorg-server.install + + cd "${pkgbase}-${pkgver}" + make DESTDIR="${pkgdir}" install + + # Needed for non-mesa drivers, libgl will restore it + mv "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" \ + "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.xorg" + + rm -rf "${pkgdir}/var" + + rm -f "${pkgdir}/usr/share/man/man1/Xserver.1" + rm -f "${pkgdir}/usr/lib/xorg/protocol.txt" + + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server" + ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server/COPYING" + + rm -rf "${pkgdir}/usr/lib/pkgconfig" + rm -rf "${pkgdir}/usr/include" + rm -rf "${pkgdir}/usr/share/aclocal" +} diff --git a/libre/xorg-server-parabola/autoconfig-nvidia-libre.patch b/libre/xorg-server-parabola/autoconfig-nvidia-libre.patch new file mode 100644 index 000000000..688b495e1 --- /dev/null +++ b/libre/xorg-server-parabola/autoconfig-nvidia-libre.patch @@ -0,0 +1,26 @@ +diff -Nur xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c +--- xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c 2012-02-10 10:10:37.583014924 +0000 ++++ xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c 2012-02-10 11:16:07.148971317 +0000 +@@ -1144,7 +1144,21 @@ + int idx = 0; + + #ifdef __linux__ +- driverList[idx++] = "nouveau"; ++ switch (dev->device_id) ++ { ++ /* NV1 - Diamond Edge 3D */ ++ case 0x0008: ++ case 0x0009: ++ driverList[idx++] = "vesa"; ++ break; ++ /* NV3 - Riva 128 */ ++ case 0x0018: ++ driverList[idx++] = "nv"; ++ break; ++ default: ++ driverList[idx++] = "nouveau"; ++ break; ++ } + #endif + driverList[idx++] = "nv"; + break; diff --git a/libre/xorg-server-parabola/autoconfig-sis.patch b/libre/xorg-server-parabola/autoconfig-sis.patch new file mode 100644 index 000000000..0b50049db --- /dev/null +++ b/libre/xorg-server-parabola/autoconfig-sis.patch @@ -0,0 +1,21 @@ +--- hw/xfree86/common/xf86pciBus.c.orig 2011-09-24 10:53:45.421697668 +0000 ++++ hw/xfree86/common/xf86pciBus.c 2011-09-24 10:55:56.416250708 +0000 +@@ -1200,9 +1200,15 @@ + break; + } + break; +- case 0x1039: +- driverList[0] = "sis"; +- break; ++ case 0x1039: ++ switch (dev->device_id) ++ { ++ case 0x6350: case 0x6351: ++ driverList[0] = "sisimedia"; driverList[1] = "sis"; break; ++ default: ++ driverList[0] = "sis"; break; ++ } ++ break; + case 0x126f: + driverList[0] = "siliconmotion"; + break; diff --git a/libre/xorg-server-parabola/glamor-upstream-fix.patch b/libre/xorg-server-parabola/glamor-upstream-fix.patch new file mode 100644 index 000000000..89dd4d017 --- /dev/null +++ b/libre/xorg-server-parabola/glamor-upstream-fix.patch @@ -0,0 +1,178 @@ +From 3c0431b8911241552a15a43e4279c50658b50a18 Mon Sep 17 00:00:00 2001 +From: Keith Packard +Date: Wed, 16 Jul 2014 23:03:23 +0000 +Subject: glamor: Fix temp picture coordinates in glamor_composite_clipped_region + +To understand this patch, let's start at the protocol interface where +the relationship between the coordinate spaces is documented: + + static Bool + _glamor_composite(CARD8 op, + PicturePtr source, + PicturePtr mask, + PicturePtr dest, + INT16 x_source, + INT16 y_source, + INT16 x_mask, + INT16 y_mask, + INT16 x_dest, INT16 y_dest, + CARD16 width, CARD16 height, Bool fallback) + +The coordinates are passed to this function directly off the wire and +are all relative to their respective drawables. For Windows, this means +that they are relative to the upper left corner of the window, in +whatever pixmap that window is getting drawn to. + +_glamor_composite calls miComputeCompositeRegion to construct a clipped +region to actually render to. In reality, miComputeCompositeRegion clips +only to the destination these days; source clip region based clipping +would have to respect the transform, which isn't really possible. The +returned region is relative to the screen in which dest lives; offset by +dest->drawable.x and dest->drawable.y. + +What is important to realize here is that, because of clipping, the +composite region may not have the same position within the destination +drawable as x_dest, y_dest. The protocol coordinates now exist solely to +'pin' the three objects together. + + extents->x1,y1 Screen origin of clipped operation + width,height Extents of the clipped operation + x_dest,y_dest Unclipped destination-relative operation coordinate + x_source,y_source Unclipped source-relative operation coordinate + x_mask,y_mask Unclipped mask-relative operation coordinate + +One thing we want to know is what the offset is from the original +operation origin to the clipped origin + + Destination drawable relative coordinates of the clipped operation: + + x_dest_clipped = extents->x1 - dest->drawable.x + y_dest_clipped = extents->y1 - dest->drawable.y + + Offset from the original operation origin: + + x_off_clipped = x_dest_clipped - x_dest + y_off_clipped = y_dest_clipped - y_dest + + Source drawable relative coordinates of the clipped operation: + + x_source_clipped = x_source + x_off_clipped; + y_source_clipped = y_source + y_off_clipped; + + Mask drawable relative coordinates of the clipped operation: + + x_mask_clipped = x_source + x_off_clipped; + y_mask_clipped = y_source + y_off_clipped; + +This is where the original code fails -- it doesn't subtract the +destination drawable location when computing the distance that the +operation has been moved by clipping. Here's what it does when +constructing a temporary source picture: + + temp_src = + glamor_convert_gradient_picture(screen, source, + extent->x1 + x_source - x_dest, + extent->y1 + y_source - y_dest, + width, height); + ... + x_temp_src = -extent->x1 + x_dest; + y_temp_src = -extent->y1 + y_dest; + +glamor_convert_gradient_picture needs source drawable relative +coordinates, but that is not what it's getting; it's getting +screen-relative coordinates for the destination, adjusted by the +distance between the provided source and destination operation +coordinates. We want x_source_clipped and y_source_clipped: + + x_source_clipped = x_source + x_off_clipped + = x_source + x_dest_clipped - x_dest + = x_source + extents->x1 - dest->drawable.x - x_dest + +x_temp_src/y_temp_src are supposed to be the coordinates of the original +operation translated to the temporary picture: + + x_temp_src = x_source - x_source_clipped; + y_temp_src = y_source - y_source_clipped; + +Note that x_source_clipped/y_source_clipped will never be less than +x_source/y_source because all we're doing is clipping. This means that +x_temp_src/y_temp_src will always be non-positive; the original source +coordinate can never be strictly *inside* the temporary image or we +could have made the temporary image smaller. + + x_temp_src = x_source - x_source_clipped + = x_source - (x_source + x_off_clipped) + = -x_off_clipped + = x_dest - x_dest_clipped + = x_dest - (extents->x1 - dest->drawable.x) + +Again, this is off by the destination origin within the screen +coordinate space. + +The code should look like: + + temp_src = + glamor_convert_gradient_picture(screen, source, + extent->x1 + x_source - x_dest - dest->pDrawable->x, + extent->y1 + y_source - y_dest - dest->pDrawable->y, + width, height); + + x_temp_src = -extent->x1 + x_dest + dest->pDrawable->x; + y_temp_src = -extent->y1 + y_dest + dest->pDrawable->y; + +Signed-off-by: Keith Packard +Reviewed-by: Markus Wick +(cherry picked from commit 55f5bfb578e934319d1308cbb56c900c5ac7cfa7) +Signed-off-by: Julien Cristau +--- +diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c +index 14ab738..e5d5d2c 100644 +--- a/glamor/glamor_render.c ++++ b/glamor/glamor_render.c +@@ -1450,8 +1450,8 @@ glamor_composite_clipped_region(CARD8 op, + || source_pixmap->drawable.height != height)))) { + temp_src = + glamor_convert_gradient_picture(screen, source, +- extent->x1 + x_source - x_dest, +- extent->y1 + y_source - y_dest, ++ extent->x1 + x_source - x_dest - dest->pDrawable->x, ++ extent->y1 + y_source - y_dest - dest->pDrawable->y, + width, height); + if (!temp_src) { + temp_src = source; +@@ -1459,8 +1459,8 @@ glamor_composite_clipped_region(CARD8 op, + } + temp_src_priv = + glamor_get_pixmap_private((PixmapPtr) (temp_src->pDrawable)); +- x_temp_src = -extent->x1 + x_dest; +- y_temp_src = -extent->y1 + y_dest; ++ x_temp_src = -extent->x1 + x_dest + dest->pDrawable->x; ++ y_temp_src = -extent->y1 + y_dest + dest->pDrawable->y; + } + + if (mask +@@ -1474,8 +1474,8 @@ glamor_composite_clipped_region(CARD8 op, + * to do reduce one convertion. */ + temp_mask = + glamor_convert_gradient_picture(screen, mask, +- extent->x1 + x_mask - x_dest, +- extent->y1 + y_mask - y_dest, ++ extent->x1 + x_mask - x_dest - dest->pDrawable->x, ++ extent->y1 + y_mask - y_dest - dest->pDrawable->y, + width, height); + if (!temp_mask) { + temp_mask = mask; +@@ -1483,8 +1483,8 @@ glamor_composite_clipped_region(CARD8 op, + } + temp_mask_priv = + glamor_get_pixmap_private((PixmapPtr) (temp_mask->pDrawable)); +- x_temp_mask = -extent->x1 + x_dest; +- y_temp_mask = -extent->y1 + y_dest; ++ x_temp_mask = -extent->x1 + x_dest + dest->pDrawable->x; ++ y_temp_mask = -extent->y1 + y_dest + dest->pDrawable->y; + } + /* Do two-pass PictOpOver componentAlpha, until we enable + * dual source color blending. +-- +cgit v0.9.0.2-2-gbebe + diff --git a/libre/xorg-server-parabola/xorg-server.install b/libre/xorg-server-parabola/xorg-server.install new file mode 100644 index 000000000..46bf5a90a --- /dev/null +++ b/libre/xorg-server-parabola/xorg-server.install @@ -0,0 +1,18 @@ +post_upgrade() { + if (( $(vercmp $2 1.16.0-3) < 0 )); then + post_install + fi +} + +post_install() { + cat <>> xorg-server has now the ability to run without root rights with + the help of systemd-logind. xserver will fail to run if not launched + from the same virtual terminal as was used to log in. + Without root rights, log files will be in ~/.local/share/xorg/ directory. + + Old behavior can be restored through Xorg.wrap config file. + See Xorg.wrap man page (man xorg.wrap). +MSG +} + diff --git a/libre/xorg-server-parabola/xvfb-run b/libre/xorg-server-parabola/xvfb-run new file mode 100644 index 000000000..4c2f4e0d3 --- /dev/null +++ b/libre/xorg-server-parabola/xvfb-run @@ -0,0 +1,180 @@ +#!/bin/sh + +# $Id: xvfb-run 2027 2004-11-16 14:54:16Z branden $ + +# This script starts an instance of Xvfb, the "fake" X server, runs a command +# with that server available, and kills the X server when done. The return +# value of the command becomes the return value of this script. +# +# If anyone is using this to build a Debian package, make sure the package +# Build-Depends on xvfb, xbase-clients, and xfonts-base. + +set -e + +PROGNAME=xvfb-run +SERVERNUM=99 +AUTHFILE= +ERRORFILE=/dev/null +STARTWAIT=3 +XVFBARGS="-screen 0 640x480x8" +LISTENTCP="-nolisten tcp" +XAUTHPROTO=. + +# Query the terminal to establish a default number of columns to use for +# displaying messages to the user. This is used only as a fallback in the event +# the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the +# script is running, and this cannot, only being calculated once.) +DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true +if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" >/dev/null 2>&1; then + DEFCOLUMNS=80 +fi + +# Display a message, wrapping lines at the terminal width. +message () { + echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} +} + +# Display an error message. +error () { + message "error: $*" >&2 +} + +# Display a usage message. +usage () { + if [ -n "$*" ]; then + message "usage error: $*" + fi + cat <>"$ERRORFILE" 2>&1 + fi + if [ -n "$XVFB_RUN_TMPDIR" ]; then + if ! rm -r "$XVFB_RUN_TMPDIR"; then + error "problem while cleaning up temporary directory" + exit 5 + fi + fi +} + +# Parse the command line. +ARGS=$(getopt --options +ae:f:hn:lp:s:w: \ + --long auto-servernum,error-file:,auth-file:,help,server-num:,listen-tcp,xauth-protocol:,server-args:,wait: \ + --name "$PROGNAME" -- "$@") +GETOPT_STATUS=$? + +if [ $GETOPT_STATUS -ne 0 ]; then + error "internal error; getopt exited with status $GETOPT_STATUS" + exit 6 +fi + +eval set -- "$ARGS" + +while :; do + case "$1" in + -a|--auto-servernum) SERVERNUM=$(find_free_servernum) ;; + -e|--error-file) ERRORFILE="$2"; shift ;; + -f|--auth-file) AUTHFILE="$2"; shift ;; + -h|--help) SHOWHELP="yes" ;; + -n|--server-num) SERVERNUM="$2"; shift ;; + -l|--listen-tcp) LISTENTCP="" ;; + -p|--xauth-protocol) XAUTHPROTO="$2"; shift ;; + -s|--server-args) XVFBARGS="$2"; shift ;; + -w|--wait) STARTWAIT="$2"; shift ;; + --) shift; break ;; + *) error "internal error; getopt permitted \"$1\" unexpectedly" + exit 6 + ;; + esac + shift +done + +if [ "$SHOWHELP" ]; then + usage + exit 0 +fi + +if [ -z "$*" ]; then + usage "need a command to run" >&2 + exit 2 +fi + +if ! which xauth >/dev/null; then + error "xauth command not found" + exit 3 +fi + +# tidy up after ourselves +trap clean_up EXIT + +# If the user did not specify an X authorization file to use, set up a temporary +# directory to house one. +if [ -z "$AUTHFILE" ]; then + XVFB_RUN_TMPDIR="$(mktemp -d -t $PROGNAME.XXXXXX)" + AUTHFILE="$XVFB_RUN_TMPDIR/Xauthority" +fi + +# Start Xvfb. +MCOOKIE=$(mcookie) +XAUTHORITY=$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1 +add :$SERVERNUM $XAUTHPROTO $MCOOKIE +EOF +XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP >>"$ERRORFILE" \ + 2>&1 & +XVFBPID=$! +sleep "$STARTWAIT" +if ! kill -0 $XVFBPID 2>/dev/null; then + echo "Xvfb failed to start" >&2 + exit 1 +fi + +# Start the command and save its exit status. +set +e +DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" 2>&1 +RETVAL=$? +set -e + +# Kill Xvfb now that the command has exited. +kill $XVFBPID + +# Return the executed command's exit status. +exit $RETVAL + +# vim:set ai et sts=4 sw=4 tw=80: diff --git a/libre/xorg-server-parabola/xvfb-run.1 b/libre/xorg-server-parabola/xvfb-run.1 new file mode 100644 index 000000000..137d3a196 --- /dev/null +++ b/libre/xorg-server-parabola/xvfb-run.1 @@ -0,0 +1,282 @@ +.\" $Id: xvfb-run.1 2138 2005-01-17 23:40:27Z branden $ +.\" +.\" Copyright 1998-2004 Branden Robinson . +.\" +.\" This is free software; you may redistribute it and/or modify +.\" it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 2, +.\" or (at your option) any later version. +.\" +.\" This is distributed in the hope that it will be useful, but +.\" WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public License with +.\" the Debian operating system, in /usr/share/common-licenses/GPL; if +.\" not, write to the Free Software Foundation, Inc., 59 Temple Place, +.\" Suite 330, Boston, MA 02111-1307 USA +.\" +.\" We need the URL macro from groff's www macro package, but also want +.\" things to work all right for people who don't have it. So we define +.\" our own URL macro and let the www macro package override it if it's +.\" available. +.de URL +\\$2 \(laURL: \\$1 \(ra\\$3 +.. +.if \n[.g] .mso www.tmac +.TH xvfb\-run 1 "2004\-11\-12" "Debian Project" +.SH NAME +xvfb\-run \- run specified X client or command in a virtual X server environment +.SH SYNOPSIS +.B xvfb\-run +[ +.I options +] +.I command +.SH DESCRIPTION +.B xvfb\-run +is a wrapper for the +.BR Xvfb (1x) +command which simplifies the task of running commands (typically an X +client, or a script containing a list of clients to be run) within a virtual +X server environment. +.PP +.B xvfb\-run +sets up an X authority file (or uses an existing user\-specified one), +writes a cookie to it (see +.BR xauth (1x)) +and then starts the +.B Xvfb +X server as a background process. +The process ID of +.B Xvfb +is stored for later use. +The specified +.I command +is then run using the X display corresponding to the +.B Xvfb +server +just started and the X authority file created earlier. +.PP +When the +.I command +exits, its status is saved, the +.B Xvfb +server is killed (using the process ID stored earlier), the X authority +cookie removed, and the authority file deleted (if the user did not specify +one to use). +.B xvfb\-run +then exits with the exit status of +.IR command . +.PP +.B xvfb\-run +requires the +.B xauth +command to function. +.SH OPTIONS +.TP +.B \-a\fR,\fB \-\-auto\-servernum +Try to get a free server number, starting at 99, or the argument to +.BR \-\-server\-num . +.TP +.BI \-e\ file \fR,\fB\ \-\-error\-file= file +Store output from +.B xauth +and +.B Xvfb +in +.IR file . +The default is +.IR /dev/null . +.TP +.BI \-f\ file \fR,\fB\ \-\-auth\-file= file +Store X authentication data in +.IR file . +By default, a temporary directory called +.IR xvfb\-run. PID +(where PID is the process ID of +.B xvfb\-run +itself) is created in the directory specified by the environment variable +.B TMPDIR +(or +.I /tmp +if that variable is null or unset), and the +.BR tempfile (1) +command is used to create a file in that temporary directory called +.IR Xauthority . +.TP +.B \-h\fR,\fB \-\-help +Display a usage message and exit. +.TP +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber +Use +.I servernumber +as the server number (but see the +.B \-a\fR,\fB \-\-auto\-servernum +option above). +The default is 99. +.TP +.B \-l\fR,\fB \-\-listen\-tcp +Enable TCP port listening in the X server. +For security reasons (to avoid denial\-of\-service attacks or exploits), +TCP port listening is disabled by default. +.TP +.BI \-p\ protocolname \fR,\fB\ \-\-xauth\-protocol= protocolname +Use +.I protocolname +as the X authority protocol to use. +The default is \(oq.\(cq, which +.B xauth +interprets as its own default protocol, which is MIT\-MAGIC\-COOKIE\-1. +.TP +.BI \-s\ arguments \fR,\fB\ \-\-server\-args= arguments +Pass +.I arguments +to the +.B Xvfb +server. +Be careful to quote any whitespace characters that may occur within +.I arguments +to prevent them from regarded as separators for +.BR xvfb\-run 's +own arguments. +Also, note that specification of \(oq\-nolisten tcp\(cq in +.I arguments +may override the function of +.BR xvfb\-run 's +own +.B \-l\fR,\fB \-\-listen\-tcp +option, and that specification of the server number (e.g., \(oq:1\(cq) may +be ignored because of the way the X server parses its argument list. +Use the +.B xvfb\-run +option +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber +to achieve the latter function. +The default is \(oq\-screen 0 640x480x8\(cq. +.TP +.BI \-w\ delay \fR,\fB\ \-\-wait= delay +Wait +.I delay +seconds after launching +.B Xvfb +before attempting to start the specified command. +The default is 3. +.SH ENVIRONMENT +.TP +.B COLUMNS +indicates the width of the terminal device in character cells. +This value is used for formatting diagnostic messages. +If not set, the terminal is queried using +.BR stty (1) +to determine its width. +If that fails, a value of \(oq80\(cq is assumed. +.TP +.B TMPDIR +specifies the directory in which to place +.BR xvfb\-run 's +temporary directory for storage of the X authority file; only used if the +.B \-f +or +.B \-\-auth\-file +options are not specified. +.SH "OUTPUT FILES" +.PP +Unless the +.B \-f +or +.B \-\-auth\-file +options are specified, a temporary +directory and file within it are created (and deleted) to store the X +authority cookies used by the +.B Xvfb +server and client(s) run under it. +See +.BR tempfile (1). +If \-f or \-\-auth\-file are used, then the specified X authority file is +only written to, not created or deleted (though +.B xauth +creates an authority file itself if told to use use that does not already +exist). +.PP +An error file with a user\-specified name is also created if the +.B \-e +or +.B \-\-error\-file +options are specifed; see above. +.SH "EXIT STATUS" +.B xvfb\-run +uses its exit status as well as output to standard error to communicate +diagnostics. +The exit status of \(oq1\(cq is not used, and should be interpreted as failure +of the specified command. +.TP +0 +.B xvfb\-run +only uses this exit status if the +.B \-h\fR,\fB \-\-help +option is given. +In all other situations, this may be interpreted as success of the specified +command. +.TP +2 +No command to run was specified. +.TP +3 +The +.B xauth +command is not available. +.TP +4 +The temporary directory that was going to be used already exists; since +.B xvfb\-run +produces a uniquely named directory, this may indicate an attempt by another +process on the system to exploit a temporary file race condition. +.TP +5 +A problem was encountered while cleaning up the temporary directory. +.TP +6 +A problem was encountered while using +.BR getopt (1) +to parse the command\-line arguments. +.SH EXAMPLES +.TP +.B xvfb\-run \-\-auto\-servernum \-\-server\-num=1 xlogo +runs the +.BR xlogo (1x) +demonstration client inside the +.B Xvfb +X server on the first available server number greater than or equal to 1. +.TP +.B xvfb\-run \-\-server\-args="\-screen 0 1024x768x24" ico \-faces +runs the +.BR ico (1x) +demonstration client (and passes it the +.B \-faces +argument) inside the +.B Xvfb +X server, configured with a root window of 1024 by 768 pixels and a color +depth of 24 bits. +.PP +Note that the demo X clients used in the above examples will not exit on +their own, so they will have to be killed before +.B xvfb\-run +will exit. +.SH BUGS +See +.URL "http://bugs.debian.org/xvfb" "the Debian Bug Tracking System" . +If you wish to report a bug in +.BR xvfb\-run , +please use the +.BR reportbug (1) +command. +.SH AUTHOR +.B xfvb\-run +was written by Branden Robinson and Jeff Licquia with sponsorship from +Progeny Linux Systems. +.SH "SEE ALSO" +.BR Xvfb (1x), +.BR xauth (1x) +.\" vim:set et tw=80: diff --git a/libre/xsp-parabola/PKGBUILD b/libre/xsp-parabola/PKGBUILD new file mode 100644 index 000000000..d497bec70 --- /dev/null +++ b/libre/xsp-parabola/PKGBUILD @@ -0,0 +1,62 @@ +# $Id: PKGBUILD 188153 2013-06-10 16:36:32Z daniel $ +# Maintainer (Arch): Daniel Isenmann +# Contributor (Arch): Tobias Kieslich + +_pkgname=xsp +pkgname=xsp-parabola +pkgver=3.0.11 +pkgrel=1 +pkgdesc="A simple webserver based on mono - provides ASP.NET support (Parabola rebranded)" +arch=('i686' 'x86_64' 'mips64el') +license=('custom') +url="http://www.go-mono.com" +depends=('mono' 'sqlite') +options=(!makeflags) +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +install=${_pkgname}.install +source=(https://github.com/mono/xsp/archive/${pkgver}.tar.gz + ${_pkgname}.webapp + ${_pkgname}.service) +md5sums=('6a694d5e87ebe57e532ec80a16b6966d' + 'c917c07f68b945691506c29750db482f' + '9d83bd36d209f8d36a11dfbc4fa50819') + +build() { + # get rid of that .wapi errors; thanks to brice + export MONO_SHARED_DIR=${srcdir}/src/weird + mkdir -p "${MONO_SHARED_DIR}" + # import pathes + # build + cd ${srcdir}/${_pkgname}-${pkgver} + #sed -i 's|/bin/sh|\0\nexport MONO_PATH=${MONO_PATH}:/opt/mono/lib/mono/1.0|' scripts/script.in + ./autogen.sh + ./configure --prefix=/usr --sysconfdir=/etc + make + # tweak the xsp shellscript to grab system dll's + for script in scripts/*2; do + sed -i 's|/usr/lib/mono/1.0|/usr/lib/mono/2.0|' $script + done + #destdir related bugfixes + sed -i 's|mkdir \$(datadir)|mkdir $(DESTDIR)$(datadir)|' test/2.0/treeview/Makefile + sed -i 's|gif \$(datadir)|gif $(DESTDIR)$(datadir)|' test/2.0/treeview/Makefile +} + +package(){ + cd ${srcdir}/${_pkgname}-${pkgver} + make DESTDIR=${pkgdir}/ install + # move test files from share to arch' default html home + mkdir -p ${pkgdir}/srv/http/html + mv ${pkgdir}/usr/lib/xsp/test ${pkgdir}/srv/http/html/xsp + rm -rf ${pkgdir}/usr/share + chown -R http:http ${pkgdir}/srv/http/html/${_pkgname} + + # install a xsp configuration home + install -D -m644 ${srcdir}/${_pkgname}.webapp \ + ${pkgdir}/etc/${_pkgname}/${_pkgname}.webapp + install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${_pkgname}/COPYING + # install systemd service file + install -D -m644 ${srcdir}/${_pkgname}.service \ + ${pkgdir}/usr/lib/systemd/system/xsp.service +} diff --git a/libre/xsp-parabola/xsp.conf.d b/libre/xsp-parabola/xsp.conf.d new file mode 100644 index 000000000..b100baef1 --- /dev/null +++ b/libre/xsp-parabola/xsp.conf.d @@ -0,0 +1,10 @@ +# xsp options + + +# note that is just the helping app for mod_mono if you like production like +# quality +# xsp is for ASP testing mainly -- read the manpage for xsp to know what +# options are available. Parabola will provide xsp configured by a .webapp +# configuration file which rests in /etc/xsp + +XSP_PARAMS="--appconfigdir /etc/xsp" diff --git a/libre/xsp-parabola/xsp.install b/libre/xsp-parabola/xsp.install new file mode 100644 index 000000000..d2cc5955a --- /dev/null +++ b/libre/xsp-parabola/xsp.install @@ -0,0 +1,37 @@ +# arg 1: the new package version +post_install() { + cat << EOM + +--> xsp is just the helping app for mod_mono if you like a production like +--> server. xsp itself is for ASP testing mainly -- read the manpage for xsp +--> to know which options are available. +--> Parabola will provide xsp configured by a .webapp configuration file +--> which rests in /etc/xsp. Just put your other webapp files there to let +--> xsp pick them up. +--> xsp is commandline based configuration is done in /etc/conf.d/xsp. Set all +--> your arguments there. Don't forget that you can run xsp from the console +--> as oridinary user, which is safer and for testing absolutely sufficient!! + +--> You can run the testpages simply by starting the server and calling + http://localhost:8080 +--> from your browser's location bar + + +EOM +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + post_install $1 +} + +# arg 1: the old package version +pre_remove() { + /bin/true +} + +# arg 1: the old package version +post_remove() { + /bin/true +} diff --git a/libre/xsp-parabola/xsp.rc.d b/libre/xsp-parabola/xsp.rc.d new file mode 100644 index 000000000..b4fcda15c --- /dev/null +++ b/libre/xsp-parabola/xsp.rc.d @@ -0,0 +1,40 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +# source application-specific settings +[ -f /etc/conf.d/xsp ] && . /etc/conf.d/xsp + +PID=`pidof -o %PPID /usr/bin/mono` +case "$1" in + start) + stat_busy "Starting Xsp Daemon" + if [ -z "$PID" ]; then + /usr/bin/xsp $XSP_PARAMS --nonstop &> /dev/null & + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon xsp + stat_done + fi + ;; + stop) + stat_busy "Stopping Xsp Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon xsp + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/libre/xsp-parabola/xsp.service b/libre/xsp-parabola/xsp.service new file mode 100644 index 000000000..36b802e21 --- /dev/null +++ b/libre/xsp-parabola/xsp.service @@ -0,0 +1,8 @@ +[Unit] +Description=XSP Web Server + +[Service] +ExecStart=/usr/bin/xsp --appconfigdir /etc/xsp --nonstop + +[Install] +WantedBy=multi-user.target diff --git a/libre/xsp-parabola/xsp.webapp b/libre/xsp-parabola/xsp.webapp new file mode 100644 index 000000000..a685dd171 --- /dev/null +++ b/libre/xsp-parabola/xsp.webapp @@ -0,0 +1,8 @@ + + + Root + / + /srv/http/html/xsp + localhost + + diff --git a/libre/xsp/PKGBUILD b/libre/xsp/PKGBUILD deleted file mode 100644 index 93867938d..000000000 --- a/libre/xsp/PKGBUILD +++ /dev/null @@ -1,58 +0,0 @@ -# $Id: PKGBUILD 188153 2013-06-10 16:36:32Z daniel $ -# Maintainer (Arch): Daniel Isenmann -# Contributor (Arch): Tobias Kieslich - -pkgname=xsp -pkgver=3.0.11 -pkgrel=1.1 -pkgdesc="A simple webserver based on mono - provides ASP.NET support (Parabola rebranded)" -arch=('i686' 'x86_64' 'mips64el') -license=('custom') -url="http://www.go-mono.com" -depends=('mono' 'sqlite') -options=(!makeflags) -install=${pkgname}.install -source=(https://github.com/mono/xsp/archive/${pkgver}.tar.gz - ${pkgname}.webapp - ${pkgname}.service) -md5sums=('6a694d5e87ebe57e532ec80a16b6966d' - 'c917c07f68b945691506c29750db482f' - '9d83bd36d209f8d36a11dfbc4fa50819') - -build() { - # get rid of that .wapi errors; thanks to brice - export MONO_SHARED_DIR=${srcdir}/src/weird - mkdir -p "${MONO_SHARED_DIR}" - # import pathes - # build - cd ${srcdir}/${pkgname}-${pkgver} - #sed -i 's|/bin/sh|\0\nexport MONO_PATH=${MONO_PATH}:/opt/mono/lib/mono/1.0|' scripts/script.in - ./autogen.sh - ./configure --prefix=/usr --sysconfdir=/etc - make - # tweak the xsp shellscript to grab system dll's - for script in scripts/*2; do - sed -i 's|/usr/lib/mono/1.0|/usr/lib/mono/2.0|' $script - done - #destdir related bugfixes - sed -i 's|mkdir \$(datadir)|mkdir $(DESTDIR)$(datadir)|' test/2.0/treeview/Makefile - sed -i 's|gif \$(datadir)|gif $(DESTDIR)$(datadir)|' test/2.0/treeview/Makefile -} - -package(){ - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir}/ install - # move test files from share to arch' default html home - mkdir -p ${pkgdir}/srv/http/html - mv ${pkgdir}/usr/lib/xsp/test ${pkgdir}/srv/http/html/xsp - rm -rf ${pkgdir}/usr/share - chown -R http:http ${pkgdir}/srv/http/html/${pkgname} - - # install a xsp configuration home - install -D -m644 ${srcdir}/${pkgname}.webapp \ - ${pkgdir}/etc/${pkgname}/${pkgname}.webapp - install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING - # install systemd service file - install -D -m644 ${srcdir}/${pkgname}.service \ - ${pkgdir}/usr/lib/systemd/system/xsp.service -} diff --git a/libre/xsp/xsp.conf.d b/libre/xsp/xsp.conf.d deleted file mode 100644 index b100baef1..000000000 --- a/libre/xsp/xsp.conf.d +++ /dev/null @@ -1,10 +0,0 @@ -# xsp options - - -# note that is just the helping app for mod_mono if you like production like -# quality -# xsp is for ASP testing mainly -- read the manpage for xsp to know what -# options are available. Parabola will provide xsp configured by a .webapp -# configuration file which rests in /etc/xsp - -XSP_PARAMS="--appconfigdir /etc/xsp" diff --git a/libre/xsp/xsp.install b/libre/xsp/xsp.install deleted file mode 100644 index d2cc5955a..000000000 --- a/libre/xsp/xsp.install +++ /dev/null @@ -1,37 +0,0 @@ -# arg 1: the new package version -post_install() { - cat << EOM - ---> xsp is just the helping app for mod_mono if you like a production like ---> server. xsp itself is for ASP testing mainly -- read the manpage for xsp ---> to know which options are available. ---> Parabola will provide xsp configured by a .webapp configuration file ---> which rests in /etc/xsp. Just put your other webapp files there to let ---> xsp pick them up. ---> xsp is commandline based configuration is done in /etc/conf.d/xsp. Set all ---> your arguments there. Don't forget that you can run xsp from the console ---> as oridinary user, which is safer and for testing absolutely sufficient!! - ---> You can run the testpages simply by starting the server and calling - http://localhost:8080 ---> from your browser's location bar - - -EOM -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -# arg 1: the old package version -pre_remove() { - /bin/true -} - -# arg 1: the old package version -post_remove() { - /bin/true -} diff --git a/libre/xsp/xsp.rc.d b/libre/xsp/xsp.rc.d deleted file mode 100644 index b4fcda15c..000000000 --- a/libre/xsp/xsp.rc.d +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -# source application-specific settings -[ -f /etc/conf.d/xsp ] && . /etc/conf.d/xsp - -PID=`pidof -o %PPID /usr/bin/mono` -case "$1" in - start) - stat_busy "Starting Xsp Daemon" - if [ -z "$PID" ]; then - /usr/bin/xsp $XSP_PARAMS --nonstop &> /dev/null & - fi - if [ ! -z "$PID" -o $? -gt 0 ]; then - stat_fail - else - add_daemon xsp - stat_done - fi - ;; - stop) - stat_busy "Stopping Xsp Daemon" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon xsp - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/libre/xsp/xsp.service b/libre/xsp/xsp.service deleted file mode 100644 index 36b802e21..000000000 --- a/libre/xsp/xsp.service +++ /dev/null @@ -1,8 +0,0 @@ -[Unit] -Description=XSP Web Server - -[Service] -ExecStart=/usr/bin/xsp --appconfigdir /etc/xsp --nonstop - -[Install] -WantedBy=multi-user.target diff --git a/libre/xsp/xsp.webapp b/libre/xsp/xsp.webapp deleted file mode 100644 index a685dd171..000000000 --- a/libre/xsp/xsp.webapp +++ /dev/null @@ -1,8 +0,0 @@ - - - Root - / - /srv/http/html/xsp - localhost - - -- cgit v1.2.3