commit:     319314e50aaf8308b1a5ad878bac888dcdf95b6b
Author:     Andrea Postiglione <andrea.postiglione <AT> gmail <DOT> com>
AuthorDate: Sat Aug 15 11:09:40 2020 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Sat Aug 15 11:09:40 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=319314e5

sys-boot/customrescuecd-x86_64-grub : initial ebuild

Signed-off-by: Andrea Postiglione <andrea.postiglione <AT> gmail.com>

 .../customrescuecd-x86_64-grub-0.1.ebuild          | 31 ++++++++++++++++
 .../files/customrescuecd.default                   |  7 ++++
 .../files/customrescuecd.grub                      | 43 ++++++++++++++++++++++
 sys-boot/customrescuecd-x86_64-grub/metadata.xml   | 17 +++++++++
 4 files changed, 98 insertions(+)

diff --git 
a/sys-boot/customrescuecd-x86_64-grub/customrescuecd-x86_64-grub-0.1.ebuild 
b/sys-boot/customrescuecd-x86_64-grub/customrescuecd-x86_64-grub-0.1.ebuild
new file mode 100644
index 0000000..2cbc487
--- /dev/null
+++ b/sys-boot/customrescuecd-x86_64-grub/customrescuecd-x86_64-grub-0.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Grub menu entries for the .iso image of customrescuecd"
+HOMEPAGE="https://sourceforge.net/projects/customrescuecd/";
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT=0
+KEYWORDS="~amd64"
+
+S=${WORKDIR}
+
+RDEPEND="app-admin/customrescuecd-x86_64
+       sys-boot/grub"
+
+src_install() {
+       exeinto /etc/grub.d
+       newexe "${FILESDIR}"/customrescuecd.grub 39_customrescuecd
+
+       insinto /etc/default
+       newins "${FILESDIR}"/customrescuecd.default customrescuecd
+}
+
+pkg_postinst() {
+       elog "To add the menu entries for customrescuecd to grub, you should 
now run"
+       elog "  grub-mkconfig -o /boot/grub/grub.cfg"
+       elog "You can set custom bootoptions in /etc/default/customrescuecd"
+}

diff --git a/sys-boot/customrescuecd-x86_64-grub/files/customrescuecd.default 
b/sys-boot/customrescuecd-x86_64-grub/files/customrescuecd.default
new file mode 100644
index 0000000..4392c33
--- /dev/null
+++ b/sys-boot/customrescuecd-x86_64-grub/files/customrescuecd.default
@@ -0,0 +1,7 @@
+Here you can set custom bootoptions for the CustomRescueCD
+#
+# You can add for example in a space separated list:
+#  copytoram: causes the iso file to be fully loaded into memory
+#           this requires 1.5GB of memory to cache everything
+
+CRCD_BOOTOPTIONS=""

diff --git a/sys-boot/customrescuecd-x86_64-grub/files/customrescuecd.grub 
b/sys-boot/customrescuecd-x86_64-grub/files/customrescuecd.grub
new file mode 100644
index 0000000..5087ebd
--- /dev/null
+++ b/sys-boot/customrescuecd-x86_64-grub/files/customrescuecd.grub
@@ -0,0 +1,43 @@
+#!/bin/sh
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+. /usr/share/grub/grub-mkconfig_lib
+
+if [ -r /etc/default/customrescuecd ] ; then
+  . /etc/default/customrescuecd
+fi
+
+# crcd = path of newest link to iso of customrescuecd, created by the ebuild
+#        of customrescuecd-x86_64
+
+crcd="/usr/share/systemrescuecd/systemrescuecd-x86_64-newest.iso"
+
+longname="CustomRescueCD"
+bootops=")"
+
+if [ ! -z "${CRCD_BOOTOPTIONS}" ]; then
+       bootops=" with bootoptions)"
+fi
+
+if [ -f "${crcd}" ]; then
+
+       device=$(${grub_probe} --target=device "${crcd}")
+       path=$(make_system_path_relative_to_its_root "${crcd}")
+       grub_string=$(prepare_grub_to_access_device "${device}" | grub_add_tab 
| grub_add_tab)
+
+       gettext_printf "Found %s on %s\n" "${longname}" "${device}" >&2
+       onstr=$(gettext_printf "(on %s)" "${device}")
+
+       cat << EOF
+submenu "${longname}" --class submenu {
+       menuentry "${longname} (64bit ${bootops}" --class rescue {
+${grub_string}
+               set isofile=${path}
+               loopback loop \${isofile}
+               linux (loop)/boot/x86_64/customrescue64 ${CRCD_BOOTOPTIONS} 
customisobasedir=customresccd customisolabel=CRC64 vga=791 net.ifnames=0
+       }
+}
+EOF
+
+fi

diff --git a/sys-boot/customrescuecd-x86_64-grub/metadata.xml 
b/sys-boot/customrescuecd-x86_64-grub/metadata.xml
new file mode 100644
index 0000000..2e146c3
--- /dev/null
+++ b/sys-boot/customrescuecd-x86_64-grub/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>gentoob...@milaw.biz</email>
+               <name>Michael Lange</name>
+               <description>Accepts only mails from Gentoo's 
Bugzilla</description>
+       </maintainer>
+       <maintainer type="person">
+               <email>mgo...@gentoo.org</email>
+               <name>Michał Górny</name>
+       </maintainer>
+       <longdescription>
+               This package adds menu entries in GRUB for the SystemRescueCD. 
You can
+               add custom bootoptions for SystemRescueCD in a special config 
file.
+       </longdescription>
+</pkgmetadata>

Reply via email to