public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/guru:master commit in: sys-boot/customrescuecd-x86-grub/files/, sys-boot/customrescuecd-x86-grub/
@ 2020-08-15 18:15 Andrew Ammerlaan
  0 siblings, 0 replies; only message in thread
From: Andrew Ammerlaan @ 2020-08-15 18:15 UTC (permalink / raw
  To: gentoo-commits

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

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

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

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

diff --git a/sys-boot/customrescuecd-x86-grub/customrescuecd-x86-grub-0.1.ebuild b/sys-boot/customrescuecd-x86-grub/customrescuecd-x86-grub-0.1.ebuild
new file mode 100644
index 0000000..7c07616
--- /dev/null
+++ b/sys-boot/customrescuecd-x86-grub/customrescuecd-x86-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="~x86"
+
+S=${WORKDIR}
+
+RDEPEND="app-admin/customrescuecd-x86
+	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-grub/files/customrescuecd.default b/sys-boot/customrescuecd-x86-grub/files/customrescuecd.default
new file mode 100644
index 0000000..ce093e3
--- /dev/null
+++ b/sys-boot/customrescuecd-x86-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.5G of memory to cache everything
+#
+CRCD_BOOTOPTIONS=""

diff --git a/sys-boot/customrescuecd-x86-grub/files/customrescuecd.grub b/sys-boot/customrescuecd-x86-grub/files/customrescuecd.grub
new file mode 100644
index 0000000..7c5965d
--- /dev/null
+++ b/sys-boot/customrescuecd-x86-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
+
+# srcd = path of newest link to iso of customrescuecd, created by the ebuild
+#        of customrescuecd-x86
+
+crcd="/usr/share/systemrescuecd/systemrescuecd-x86-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} (32bit standard${bootops}" --class rescue {
+${grub_string}
+		set isofile=${path}
+		loopback loop \${isofile}
+		linux (loop)/boot/x86/customrescue32 ${CRCD_BOOTOPTIONS} customisobasedir=customresccd customisolabel=CRC32 vga=791 net.ifnames=0
+	}
+}
+EOF
+
+fi

diff --git a/sys-boot/customrescuecd-x86-grub/metadata.xml b/sys-boot/customrescuecd-x86-grub/metadata.xml
new file mode 100644
index 0000000..2e146c3
--- /dev/null
+++ b/sys-boot/customrescuecd-x86-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>gentoobugs@milaw.biz</email>
+		<name>Michael Lange</name>
+		<description>Accepts only mails from Gentoo's Bugzilla</description>
+	</maintainer>
+	<maintainer type="person">
+		<email>mgorny@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>


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2020-08-15 18:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-15 18:15 [gentoo-commits] repo/proj/guru:master commit in: sys-boot/customrescuecd-x86-grub/files/, sys-boot/customrescuecd-x86-grub/ Andrew Ammerlaan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox