From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 25CF2138202 for ; Thu, 29 Aug 2013 15:34:08 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 9210FE0E5A; Thu, 29 Aug 2013 15:34:06 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 1E390E0E5A for ; Thu, 29 Aug 2013 15:34:06 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 142AB33ED04 for ; Thu, 29 Aug 2013 15:34:05 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id B751FE468F for ; Thu, 29 Aug 2013 15:34:03 +0000 (UTC) From: "Yuta SATOH" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Yuta SATOH" Message-ID: <1377790423.fe88c29aebe9f2eec4679a34c12e9e0cdfc85300.yuta_satoh@gentoo> Subject: [gentoo-commits] proj/gentoo-bsd:master commit in: dev-util/catalyst/files/, dev-util/catalyst/ X-VCS-Repository: proj/gentoo-bsd X-VCS-Files: dev-util/catalyst/Manifest dev-util/catalyst/catalyst-2.0.14.ebuild dev-util/catalyst/files/catalyst-2.0.14-fbsd.patch X-VCS-Directories: dev-util/catalyst/files/ dev-util/catalyst/ X-VCS-Committer: yuta_satoh X-VCS-Committer-Name: Yuta SATOH X-VCS-Revision: fe88c29aebe9f2eec4679a34c12e9e0cdfc85300 X-VCS-Branch: master Date: Thu, 29 Aug 2013 15:34:03 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 8003ed36-3da7-4e26-ab9f-7d137ed446cc X-Archives-Hash: 88a331919142c1a2157c945ac05d8c8b commit: fe88c29aebe9f2eec4679a34c12e9e0cdfc85300 Author: Yuta SATOH gentoo gr jp> AuthorDate: Thu Aug 29 15:33:43 2013 +0000 Commit: Yuta SATOH 0x100 com> CommitDate: Thu Aug 29 15:33:43 2013 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-bsd.git;a=commit;h=fe88c29a added catalyst-2.0.14.ebuild and catalyst-2.0.14-fbsd.patch --- dev-util/catalyst/Manifest | 3 + dev-util/catalyst/catalyst-2.0.14.ebuild | 100 +++++++++ dev-util/catalyst/files/catalyst-2.0.14-fbsd.patch | 236 +++++++++++++++++++++ 3 files changed, 339 insertions(+) diff --git a/dev-util/catalyst/Manifest b/dev-util/catalyst/Manifest index 30e0708..76dfea7 100644 --- a/dev-util/catalyst/Manifest +++ b/dev-util/catalyst/Manifest @@ -1,3 +1,6 @@ AUX catalyst-2.0.12.1-fbsd.patch 9713 SHA256 c66f856b7f3b0b9988984cf7eac1ab332d6103ac4bbcc855dbfdb0f4de8e6692 SHA512 335b29e7bda61c1875a66694031924a3f04851b056651b6ee8f3572209bf216d5f63520513223ca996f3b9404eeefacf7cfe40d0feddbebd5c3782bf8db36d4d WHIRLPOOL b63adab3d5ead0950a06d9a6490cfbef9d07ca420e45eaee99b9bef87f3b96d93cdaada2212faa368c1473360f917db094f8319f34bdbc1dd673390fb55cc9bf +AUX catalyst-2.0.14-fbsd.patch 10559 SHA256 c4f53aa4a29eceb01a19b76b08b898efab1244b045b7657430c81ac796ebd8f3 SHA512 344193243bea083c8af3c641f69b70362635af7eaec9887cb0a5aa92957f951b53bbc8ea68f62e66395a2efa63b3b69bb2da7aeac489f88df70abf117a6108b7 WHIRLPOOL 3c54e14b0a05e272403ff738c2a5ba25eaa5c034148f35317809c5ccb758f245490ccead2d6554b36ef3f4e6a592faa2988974f901f01096eefe1466de058272 DIST catalyst-2.0.12.2.tar.bz2 907893 SHA256 411d531b6de8c8c1bc9fa9502af3a4882e94e9db8b911bb48e4a0fcfc1efe7e8 SHA512 12349f6249363a94a72a71d05b2fe6ee13593b5ea67e1cb9a054c5ece896ff68f89d1af6341b98238ba6a6510e2737f81dcc2606649c10681235315663ab04ae WHIRLPOOL 1769a78f615c8e0eec2167dd9d6ab873e24801ecb5e4634037898933c6f5a1dbb189d967a628be6f8811f6769eadc91c5003ddbb6bd58eb05efbbd5110f740c7 +DIST catalyst-2.0.14.tar.bz2 873415 SHA256 5a2f506026bde6df5d7ad5d94c3dbea0c151422b2201c347eafbaee135915586 SHA512 75e09be72e124ed4af1489af0688ed3858b36d25d76f331d8bfd1d45256fe068b9eb21c783541863f41786d9c91565695387582fc759bea5ef046ad2fa51eb1a WHIRLPOOL fd8c4660ccf11d6a6d89ebbdf20f69467e32984cd5a721c6d34ad3a0a94bb149e020ceefb7a21863aa30ebbdc27e3b5875b3d22fcb2381f6834ac56112335001 EBUILD catalyst-2.0.12.2.ebuild 3660 SHA256 4b0714dbb8eb96a9588f6b95e5e9021ddb62144c1a2e47f717111d70a84593a2 SHA512 f5ca61ec95864928d27e93ac72c2b441fdc04d30a27ebb3cedff6ec327147cee51a213b06d5f8e82bfda50ebc9e2eff51d77f43d3b699018459a4094b691ff4f WHIRLPOOL 1a558bd6eba2f278e4f6fcc4c846d884cf3fe79961204e6cf04bdb41889c96dd5f0af447eb14a6e8d17eac0622d8874cc6be20ff97e59d9632114495c77c2019 +EBUILD catalyst-2.0.14.ebuild 3166 SHA256 90063f74c89fa79969cfc35c695cadd20aadce8c922dd9d9444d8243b08f974e SHA512 1e0a83a4c65679c0f2c11b3ccbb96695a7f551f97c875bb0d81453db1f6803873a1ef8838eee884a9b34bb69dd97bbdb80344deac103301882d9e95dd61e8b55 WHIRLPOOL 6239a89daa41d5bc983cf020eb2fd6486c3e990ebc5cccd27260ce54ade5fb9a1e20c256d8a6861c728fa9286f54d0f6b7fa7e63949222147f178bcbd2e0a3b7 diff --git a/dev-util/catalyst/catalyst-2.0.14.ebuild b/dev-util/catalyst/catalyst-2.0.14.ebuild new file mode 100644 index 0000000..6c17b60 --- /dev/null +++ b/dev-util/catalyst/catalyst-2.0.14.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=3 +PYTHON_DEPEND="2" + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="git://git.overlays.gentoo.org/proj/catalyst.git" + inherit git-2 + SRC_URI="" + S="${WORKDIR}/${PN}" + KEYWORDS="" +else + SRC_URI="mirror://gentoo/${P}.tar.bz2 + http://dev.gentoo.org/~mattst88/distfiles/${P}.tar.bz2" + KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd" +fi +inherit eutils multilib python + +DESCRIPTION="release metatool used for creating releases based on Gentoo Linux" +HOMEPAGE="http://www.gentoo.org/proj/en/releng/catalyst/" + +LICENSE="GPL-2" +SLOT="0" +RESTRICT="" +IUSE="ccache kernel_linux" + +DEPEND="app-text/asciidoc" +RDEPEND="app-crypt/shash + virtual/cdrtools + x86? ( >=sys-boot/syslinux-3.72 ) + amd64? ( >=sys-boot/syslinux-3.72 ) + ccache? ( dev-util/ccache ) + ia64? ( sys-fs/dosfstools ) + kernel_linux? ( app-arch/lbzip2 app-misc/zisofs-tools >=sys-fs/squashfs-tools-2.1 )" + +pkg_setup() { + if use ccache ; then + einfo "Enabling ccache support for catalyst." + else + ewarn "By default, ccache support for catalyst is disabled." + ewarn "If this is not what you intended," + ewarn "then you should add ccache to your USE." + fi + echo + einfo "The template spec files are now installed by default. You can find" + einfo "them under /usr/share/doc/${PF}/examples" + einfo "and they are considered to be the authorative source of information" + einfo "on catalyst." + echo + if [[ ${PV} == *9999* ]]; then + ewarn "The ${EGIT_BRANCH:-master} branch (what you get with this ${PV} ebuild) contains" + ewarn "work-in-progress code. Be aware that it's likely that it will not" + ewarn "be in a working state at any given point. Please do not file bugs" + ewarn "until you have posted on the gentoo-catalyst mailing list and we" + ewarn "have asked you to do so." + fi + python_set_active_version 2 +} + +src_prepare() { + python_convert_shebangs 2 catalyst modules/catalyst_lock.py + epatch "${FILESDIR}"/${PN}-2.0.14-fbsd.patch +} + +src_install() { + insinto /usr/$(get_libdir)/${PN} + exeinto /usr/$(get_libdir)/${PN} + doexe catalyst || die "copying catalyst" + if [[ ${PV} == 3.9999* ]]; then + doins -r modules files || die "copying files" + else + doins -r arch modules livecd || die "copying files" + fi + for x in targets/*; do + exeinto /usr/$(get_libdir)/${PN}/$x + doexe $x/* || die "copying ${x}" + done + make_wrapper catalyst /usr/$(get_libdir)/${PN}/catalyst + insinto /etc/catalyst + doins files/catalyst.conf files/catalystrc || die "copying configuration" + insinto /usr/share/doc/${PF}/examples + doins examples/* || die + dodoc README AUTHORS + doman files/catalyst.1 files/catalyst-spec.5 + # Here is where we actually enable ccache + use ccache && \ + dosed 's:options="autoresume kern:options="autoresume ccache kern:' \ + /etc/catalyst/catalyst.conf + dosed "s:/usr/lib/catalyst:/usr/$(get_libdir)/catalyst:" \ + /etc/catalyst/catalyst.conf +} + +pkg_postinst() { + einfo "You can find more information about catalyst by checking out the" + einfo "catalyst project page at:" + einfo "http://www.gentoo.org/proj/en/releng/catalyst/index.xml" + echo +} diff --git a/dev-util/catalyst/files/catalyst-2.0.14-fbsd.patch b/dev-util/catalyst/files/catalyst-2.0.14-fbsd.patch new file mode 100644 index 0000000..56c8de6 --- /dev/null +++ b/dev-util/catalyst/files/catalyst-2.0.14-fbsd.patch @@ -0,0 +1,236 @@ +diff --git a/catalyst-2.0.14/arch/x86.py b/catalyst-2.0.14/arch/x86.py +index 0391b79..2b67dba 100644 +--- a/catalyst-2.0.14/arch/x86.py ++++ b/catalyst-2.0.14/arch/x86.py +@@ -7,9 +7,12 @@ class generic_x86(builder.generic): + def __init__(self,myspec): + builder.generic.__init__(self,myspec) + if self.settings["buildarch"]=="amd64": +- if not os.path.exists("/bin/linux32") and not os.path.exists("/usr/bin/linux32"): +- raise CatalystError,"required executable linux32 not found (\"emerge setarch\" to fix.)" +- self.settings["CHROOT"]="linux32 chroot" ++ if os.uname()[0] == "Linux": ++ if not os.path.exists("/bin/linux32") and not os.path.exists("/usr/bin/linux32"): ++ raise CatalystError,"required executable linux32 not found (\"emerge setarch\" to fix.)" ++ self.settings["CHROOT"]="linux32 chroot" ++ else: ++ self.settings["CHROOT"]="chroot" + self.settings["crosscompile"] = False; + else: + self.settings["CHROOT"]="chroot" +diff --git a/catalyst-2.0.14/modules/catalyst_support.py b/catalyst-2.0.14/modules/catalyst_support.py +index 316dfa3..a5ae52f 100644 +--- a/catalyst-2.0.14/modules/catalyst_support.py ++++ b/catalyst-2.0.14/modules/catalyst_support.py +@@ -108,7 +108,7 @@ contents_map={ + #"find" :[calc_contents,"find %(path)s"], + "tar-tv":[calc_contents,"tar tvf %(file)s"], + "tar-tvz":[calc_contents,"tar tvzf %(file)s"], +- "tar-tvj":[calc_contents,"tar -I lbzip2 -tvf %(file)s"], ++ "tar-tvj":[calc_contents,"tar tvjf %(file)s"], + "isoinfo-l":[calc_contents,"isoinfo -l -i %(file)s"], + # isoinfo-f should be a last resort only + "isoinfo-f":[calc_contents,"isoinfo -f -i %(file)s"], +diff --git a/catalyst-2.0.14/modules/generic_stage_target.py b/catalyst-2.0.14/modules/generic_stage_target.py +index 848aca2..b81ccfc 100644 +--- a/catalyst-2.0.14/modules/generic_stage_target.py ++++ b/catalyst-2.0.14/modules/generic_stage_target.py +@@ -98,6 +98,14 @@ class generic_stage_target(generic_target): + self.settings["crosscompile"]=(self.settings["hostarch"]!=\ + self.settings["buildarch"]) + ++ """ FreeBSD's tar doesn't support -I lbzip2 option. """ ++ if os.uname()[0] == "Linux": ++ self.settings["tar-cjpf"]="tar -I lbzip2 -cpf" ++ self.settings["tar-xjpf"]="tar -I lbzip2 -xpf" ++ else: ++ self.settings["tar-cjpf"]="tar cjpf" ++ self.settings["tar-xjpf"]="tar xjpf" ++ + """ Call arch constructor, pass our settings """ + try: + self.arch=self.subarchmap[self.settings["subarch"]](self.settings) +@@ -654,10 +662,10 @@ class generic_stage_target(generic_target): + self.settings["chroot_path"]+\ + " (This may take some time) ...\n" + if "bz2" == self.settings["chroot_path"][-3:]: +- unpack_cmd="tar -I lbzip2 -xpf "+self.settings["source_path"]+" -C "+\ ++ unpack_cmd=self.settings["tar-xjpf"]+" "+self.settings["source_path"]+" -C "+\ + self.settings["chroot_path"] + else: +- unpack_cmd="tar -I lbzip2 -xpf "+self.settings["source_path"]+" -C "+\ ++ unpack_cmd=self.settings["tar-xjpf"]+" "+self.settings["source_path"]+" -C "+\ + self.settings["chroot_path"] + error_msg="Tarball extraction of "+\ + self.settings["source_path"]+" to "+\ +@@ -669,10 +677,10 @@ class generic_stage_target(generic_target): + self.settings["chroot_path"]+\ + " (This may take some time) ...\n" + if "bz2" == self.settings["chroot_path"][-3:]: +- unpack_cmd="tar -I lbzip2 -xpf "+self.settings["source_path"]+" -C "+\ ++ unpack_cmd=self.settings["tar-xjpf"]+" "+self.settings["source_path"]+" -C "+\ + self.settings["chroot_path"] + else: +- unpack_cmd="tar -I lbzip2 -xpf "+self.settings["source_path"]+" -C "+\ ++ unpack_cmd=self.settings["tar-xjpf"]+" "+self.settings["source_path"]+" -C "+\ + self.settings["chroot_path"] + error_msg="Tarball extraction of "+self.settings["source_path"]+\ + " to "+self.settings["chroot_path"]+" failed." +@@ -771,7 +779,7 @@ class generic_stage_target(generic_target): + "catalyst-hash") + destdir=self.settings["snapshot_cache_path"] + if "bz2" == self.settings["chroot_path"][-3:]: +- unpack_cmd="tar -I lbzip2 -xpf "+self.settings["snapshot_path"]+" -C "+destdir ++ unpack_cmd=self.settings["tar-xjpf"]+" "+self.settings["snapshot_path"]+" -C "+destdir + else: + unpack_cmd="tar xpf "+self.settings["snapshot_path"]+" -C "+destdir + unpack_errmsg="Error unpacking snapshot" +@@ -790,7 +798,7 @@ class generic_stage_target(generic_target): + cleanup_msg=\ + "Cleaning up existing portage tree (This can take a long time)..." + if "bz2" == self.settings["chroot_path"][-3:]: +- unpack_cmd="tar -I lbzip2 -xpf "+self.settings["snapshot_path"]+" -C "+\ ++ unpack_cmd=self.settings["tar-xjpf"]+" "+self.settings["snapshot_path"]+" -C "+\ + self.settings["chroot_path"]+"/usr" + else: + unpack_cmd="tar xpf "+self.settings["snapshot_path"]+" -C "+\ +@@ -905,18 +913,18 @@ class generic_stage_target(generic_target): + src=self.mountmap[x] + if "SNAPCACHE" in self.settings and x == "/usr/portage": + self.snapshot_lock_object.read_lock() +- if os.uname()[0] == "FreeBSD": +- if src == "/dev": +- retval=os.system("mount -t devfs none "+\ +- self.settings["chroot_path"]+x) +- else: +- retval=os.system("mount_nullfs "+src+" "+\ ++ if src == "tmpfs": ++ if "var_tmpfs_portage" in self.settings: ++ retval=os.system("mount -t tmpfs -o size="+\ ++ self.settings["var_tmpfs_portage"]+"G "+src+" "+\ + self.settings["chroot_path"]+x) + else: +- if src == "tmpfs": +- if "var_tmpfs_portage" in self.settings: +- retval=os.system("mount -t tmpfs -o size="+\ +- self.settings["var_tmpfs_portage"]+"G "+src+" "+\ ++ if os.uname()[0] == "FreeBSD": ++ if src == "/dev": ++ retval=os.system("mount -t devfs none "+\ ++ self.settings["chroot_path"]+x) ++ else: ++ retval=os.system("mount_nullfs "+src+" "+\ + self.settings["chroot_path"]+x) + else: + retval=os.system("mount --bind "+src+" "+\ +@@ -1119,9 +1127,15 @@ class generic_stage_target(generic_target): + if os.path.exists(self.settings["chroot_path"]+"/usr/local/portage"): + cmd("rm -rf "+self.settings["chroot_path"]+"/usr/local/portage",\ + "Could not remove /usr/local/portage",env=self.env) +- cmd("sed -i '/^PORTDIR_OVERLAY/d' "+self.settings["chroot_path"]+\ +- "/etc/portage/make.conf",\ +- "Could not remove PORTDIR_OVERLAY from make.conf",env=self.env) ++ if os.path.exists(self.settings["chroot_path"]+"/etc/portage/make.conf"): ++ if os.path.exists("/usr/bin/gsed"): ++ cmd("gsed -i '/^PORTDIR_OVERLAY/d' "+self.settings["chroot_path"]+\ ++ "/etc/portage/make.conf",\ ++ "Could not remove PORTDIR_OVERLAY from make.conf",env=self.env) ++ else: ++ cmd("sed -i '/^PORTDIR_OVERLAY/d' "+self.settings["chroot_path"]+\ ++ "/etc/portage/make.conf",\ ++ "Could not remove PORTDIR_OVERLAY from make.conf",env=self.env) + + """ Clean up old and obsoleted files in /etc """ + if os.path.exists(self.settings["stage_path"]+"/etc"): +@@ -1215,7 +1229,7 @@ class generic_stage_target(generic_target): + + print "Creating stage tarball..." + +- cmd("tar -I lbzip2 -cpf "+self.settings["target_path"]+" -C "+\ ++ cmd(self.settings["tar-cjpf"]+" "+self.settings["target_path"]+" -C "+\ + self.settings["stage_path"]+" .",\ + "Couldn't create stage tarball",env=self.env) + +diff --git a/catalyst-2.0.14/modules/snapshot_target.py b/catalyst-2.0.14/modules/snapshot_target.py +index e93a86a..a665b94 100644 +--- a/catalyst-2.0.14/modules/snapshot_target.py ++++ b/catalyst-2.0.14/modules/snapshot_target.py +@@ -50,8 +50,12 @@ class snapshot_target(generic_stage_target): + self.settings["portdir"]+"/ "+mytmp+"/portage/","Snapshot failure",env=self.env) + + print "Compressing Portage snapshot tarball..." +- cmd("tar -I lbzip2 -cf "+self.settings["snapshot_path"]+" -C "+mytmp+" portage",\ +- "Snapshot creation failure",env=self.env) ++ if os.uname()[0] == "Linux": ++ cmd("tar -I lbzip2 -cf "+self.settings["snapshot_path"]+" -C "+mytmp+" portage",\ ++ "Snapshot creation failure",env=self.env) ++ else: ++ cmd("tar cjf "+self.settings["snapshot_path"]+" -C "+mytmp+" portage",\ ++ "Snapshot creation failure",env=self.env) + + self.gen_contents_file(self.settings["snapshot_path"]) + self.gen_digest_file(self.settings["snapshot_path"]) +diff --git a/catalyst-2.0.14/modules/stage1_target.py b/catalyst-2.0.14/modules/stage1_target.py +index aa43926..3675bd5 100644 +--- a/catalyst-2.0.14/modules/stage1_target.py ++++ b/catalyst-2.0.14/modules/stage1_target.py +@@ -86,10 +86,15 @@ class stage1_target(generic_stage_target): + # stage_path/proc probably doesn't exist yet, so create it + if not os.path.exists(self.settings["stage_path"]+"/proc"): + os.makedirs(self.settings["stage_path"]+"/proc") ++ if not os.path.exists(self.settings["stage_path"]+"/dev"): ++ os.makedirs(self.settings["stage_path"]+"/dev") + + # alter the mount mappings to bind mount proc onto it + self.mounts.append("/tmp/stage1root/proc") + self.mountmap["/tmp/stage1root/proc"]="/proc" ++ if os.uname()[0] == "FreeBSD": ++ self.mounts.append("/tmp/stage1root/dev") ++ self.mountmap["/tmp/stage1root/dev"]="/dev" + + def register(foo): + foo.update({"stage1":stage1_target}) +diff --git a/catalyst-2.0.14/targets/stage3/stage3-chroot.sh b/catalyst-2.0.14/targets/stage3/stage3-chroot.sh +index 6cf9106..e96c7fd 100644 +--- a/catalyst-2.0.14/targets/stage3/stage3-chroot.sh ++++ b/catalyst-2.0.14/targets/stage3/stage3-chroot.sh +@@ -5,4 +5,11 @@ source /tmp/chroot-functions.sh + ## START BUILD + setup_pkgmgr + +-run_merge "-e @system" ++if [[ $(uname) == "FreeBSD" ]] ; then ++ # workaround fix bug 425530, 438112, 448256 ++ run_merge "-e @world --exclude=sys-apps/portage" ++ run_merge "sys-apps/portage" ++else ++ run_merge "-e system" ++fi ++ +diff --git a/catalyst-2.0.14/targets/support/chroot-functions.sh b/catalyst-2.0.14/targets/support/chroot-functions.sh +index 5c30537..848be40 100644 +--- a/catalyst-2.0.14/targets/support/chroot-functions.sh ++++ b/catalyst-2.0.14/targets/support/chroot-functions.sh +@@ -414,5 +414,22 @@ Comment=This is a link to the local copy of the Gentoo Linux Handbook. + Icon=text-editor" > /usr/share/applications/gentoo-handbook.desktop + } + ++# GNU sed wrapper ++sed(){ ++ if [ -e /usr/bin/gsed ] ++ then ++ /usr/bin/gsed "$@" ++ elif [ -e /bin/sed ] ++ then ++ /bin/sed "$@" ++ elif [ -e /usr/bin/sed ] ++ then ++ /usr/bin/sed "$@" ++ else ++ echo "ERROR: failed the selection of sed." ++ exit 1 ++ fi ++} ++ + # We do this everywhere, so why not put it in this script + run_default_funcs