remove obsoleted 30_other_linux script after fixing os-prober (since 1.62-2mamba) [release 2.00.bzr20130610-4mamba;Mon Aug 05 2013]

This commit is contained in:
Silvan Calarco 2024-01-05 23:28:52 +01:00
parent 419c32bff6
commit 861b89510a
14 changed files with 885 additions and 0 deletions

View File

@ -1,2 +1,5 @@
# grub # grub
GNU GRUB is a Multiboot boot loader. It was derived from GRUB, GRand Unified Bootloader, which was originally designed and implemented by Erich Stefan Boleyn.
Briefly, boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control to the operating system kernel software (such as the Hurd or the Linux). The kernel, in turn, initializes the rest of the operating system (e.g. GNU).

View File

@ -0,0 +1,12 @@
--- grub-core/script/yylex.l 2012-06-08 20:54:21 +0000
+++ grub-core/script/yylex.l 2012-09-05 06:51:31 +0000
@@ -29,6 +29,8 @@
#pragma GCC diagnostic ignored "-Wmissing-prototypes"
#pragma GCC diagnostic ignored "-Wmissing-declarations"
#pragma GCC diagnostic ignored "-Wunsafe-loop-optimizations"
+#pragma GCC diagnostic ignored "-Wunused-function"
+#pragma GCC diagnostic ignored "-Wsign-compare"
#define yyfree grub_lexer_yyfree
#define yyalloc grub_lexer_yyalloc

11
grub-2.00-gcc-4.5.patch Normal file
View File

@ -0,0 +1,11 @@
--- grub-2.00/grub-core/kern/emu/hostdisk.c.orig 2013-06-09 12:48:55.969139451 +0200
+++ grub-2.00/grub-core/kern/emu/hostdisk.c 2013-06-09 12:45:35.250105585 +0200
@@ -431,7 +431,7 @@
uint64_t length, start;
char *target, *params;
char *ptr;
- int major, minor;
+ int major = 0, minor = 0;
int first = 1;
grub_disk_addr_t partstart = 0;

View File

@ -0,0 +1,32 @@
#! /bin/sh -e
# grub-mkconfig helper script
# Copyright (c) 2008-2013 by Silvan Calarco
prefix=/usr
exec_prefix=/usr
datarootdir="${prefix}/share"
. "${datarootdir}/grub/grub-mkconfig_lib"
if [ ! -e /etc/sysconfig/grub ]; then
[ -e /root/.installer.conf ] && . /root/.installer.conf
cat > /etc/sysconfig/grub << _EOF
GRUB_OTHER_DEVICES=(${INSTALL_BOOTLOADER_CHAINLOAD[*]})
_EOF
fi
. /etc/sysconfig/grub
for d in `seq 1 ${#GRUB_OTHER_DEVICES[*]}`; do
TITLE=${GRUB_OTHER_TITLES[$d-1]}
[ "$TITLE" ] || TITLE="Windows"
echo "Adding other O.S. entry: $TITLE on ${GRUB_OTHER_DEVICES[$d-1]}" >&2
cat << _EOF
menuentry "$TITLE" {
_EOF
save_default_entry | sed -e "s/^/\t/"
cat << _EOF
set root='`grub-probe --device ${GRUB_OTHER_DEVICES[$d-1]} --target drive`'
chainloader +1
}
_EOF
done

View File

@ -0,0 +1,54 @@
#!/bin/bash
# grub-mkconfig helper script
#
# Copyright (c) 2009-2013 by Silvan Calarco <silvan.calarco@mambasoft.it>
# Released under the terms of the GNU/GPL v.3 license
#
prefix=/usr
exec_prefix=/usr
datarootdir="${prefix}/share"
. "${datarootdir}/grub/grub-mkconfig_lib"
mountpoints=`cat /proc/mounts |grep " /mnt/" | awk '{ print $2; }'`
for mountpoint in $mountpoints; do
[ "$mountpoint" != "/" -a -e $mountpoint/boot/ ] && {
grubdrive=`/usr/sbin/grub-probe -t drive $mountpoint`
for f in $mountpoint/boot/grub/menu.lst $mountpoint/boot/grub/grub.conf $mountpoint/boot/grub/grub.cfg; do
if [ -r $f ]; then
kernel=`grep -m1 -i vmlinuz $f | awk '{ print $2 }' | sed "s|(.*)||"`
kernel_opts=`grep -m1 -i vmlinuz $f | awk '{ print $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16, $17, $18, $19, $20, $21, $22 }'`
initramfs=`grep -m1 -i initramfs $f | awk '{ print $2 }' | sed "s|(.*)||"`
[ $initramfs ] || initramfs=`grep -m1 -i initrd $f | awk '{ print $2 }' | sed "s|(.*)||"`
title=`grep -m1 -i title $f | sed "s|title[[:space:]]*||"` || \
title=`grep -m1 -i menuentry $f | awk '{ print $2 }' | sed "s|(.*)||"`
title=`echo $title | sed "s|^_||" | sed "s|_$||"`
# skip other recovery entries
echo "$title" | grep -i recover >/dev/null && continue
[ "$title" ] || title="Linux ${kernel/*\//} on $grubdrive"
[ $kernel ] && {
echo "Found other linux image: $kernel" >&2
cat << EOF
menuentry "${title}" {
EOF
save_default_entry | sed -e "s/^/\t/"
cat << EOF
linux ${grubdrive}${kernel} ${kernel_opts}
EOF
if test -n "${initramfs}" ; then
echo "Found other linux initrd image: ${initramfs}" >&2
cat << EOF
initrd ${grubdrive}${initramfs}
EOF
cat << EOF
}
EOF
fi
break
}
fi
done
}
done
exit 0

View File

@ -0,0 +1,37 @@
diff -Nru grub-2.00.orig/util/grub.d/10_linux.in grub-2.00/util/grub.d/10_linux.in
--- grub-2.00.orig/util/grub.d/10_linux.in 2012-04-18 23:24:38.000000000 +0200
+++ grub-2.00/util/grub.d/10_linux.in 2013-03-04 22:05:47.004877805 +0100
@@ -241,11 +241,33 @@
linux_entry "${OS}" "${version}" advanced \
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
+
+ linux_entry "${OS} (no modeset video driver)" "${version}" advanced \
+ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT} nomodeset"
+
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
linux_entry "${OS}" "${version}" recovery \
"single ${GRUB_CMDLINE_LINUX}"
fi
+ initrd=
+ for i in "initramfs-${version}-failsafe.img.gz" "initramfs-${alt_version}-failsafe.img.gz" \
+ "initramfs-${version}-failsafe.img" "initramfs-${alt_version}-failsafe.img" \
+ "initramfs-${version}-failsafe.cpio.gz" "initramfs-${alt_version}-failsafe.cpio.gz"; do
+ if test -e "${dirname}/${i}" ; then
+ initrd="$i"
+ break
+ fi
+ done
+ if test -n "${initrd}" ; then
+ gettext_printf "Found initrd image: %s\n" "${dirname}/${initrd}" >&2
+ linux_entry "${OS} (failsafe)" "${version}" advanced \
+ "rddebug splash selinux=0 ${GRUB_CMDLINE_LINUX_DEFAULT}"
+ fi
+ echo -e "\tmenuentry ' ' {"
+ echo -e "\t\ttrue"
+ echo -e "\t}"
+
list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
is_first_entry=false
done

11
grub-2.00-stdio.patch Normal file
View File

@ -0,0 +1,11 @@
diff -Nru grub-2.00.orig/grub-core/gnulib/stdio.in.h grub-2.00/grub-core/gnulib/stdio.in.h
--- grub-2.00.orig/grub-core/gnulib/stdio.in.h 2010-12-01 15:45:43.000000000 +0100
+++ grub-2.00/grub-core/gnulib/stdio.in.h 2013-03-04 22:11:15.763270577 +0100
@@ -141,7 +141,6 @@
so any use of gets warrants an unconditional warning. Assume it is
always declared, since it is required by C89. */
#undef gets
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#if @GNULIB_FOPEN@
# if @REPLACE_FOPEN@

518
grub.spec Normal file
View File

@ -0,0 +1,518 @@
%define majver %(echo %version| cut -d. -f1-2)
#%define betaver %(echo %version| cut -d. -f3)
Name: grub
Epoch: 1
Version: 2.00.bzr20130610
Release: 4mamba
Summary: A Multiboot boot loader derived from GRUB, the GRand Unified Bootloader
Group: System/Kernel and Hardware
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://www.gnu.org/software/grub/
# Get from bazaar repository with:
# bzr branch http://bzr.savannah.gnu.org/r/grub/trunk/grub
# cd grub; ./autogen.sh; ./configure; make dist
#Source: ftp://ftp.gnu.org/gnu/grub/grub-%{version}.tar.xz
Source: ftp://ftp.gnu.org/gnu/grub/grub-%{version}.tar.gz
Source1: http://unifoundry.com/unifont-5.1.20080820.bdf.gz
Source2: %{name}2-default
Source3: grub-2.00-openmamba-conf-other
Source4: %{name}2-sysconfig
Source5: grub-2.00-openmamba-conf-other-linux
Source6: %{name}2-conf-failsafe
Patch1: grub-2.00-openmamba_boot_choices.patch
Patch2: grub-2.00-stdio.patch
Patch3: %{name}2-1.97-sysconfig.patch
Patch9: %{name}2-1.99-fix_saved_entry_default.patch
Patch10: grub-2.00-flex-2.5.37.patch
Patch11: grub-2.00-gcc-4.5.patch
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libbzip2-devel
BuildRequires: libdevmapper-devel
BuildRequires: libfreetype-devel
%ifnarch x86_64
# TODO: needs 32bit libfuse on x86_64
BuildRequires: libfuse-devel
%endif
BuildRequires: liblzma-devel
BuildRequires: libz-devel
## AUTOBUILDREQ-END
BuildRequires: gettext-devel
BuildRequires: libncurses-devel
BuildRequires: ruby
BuildRequires: bison
BuildRequires: help2man
BuildRequires: flex
BuildRequires: dejavu-fonts-ttf
Requires: gettext
%ifnarch x86_64
Requires: vbetest
%endif
Requires(post):%{__install_info}
Requires: os-prober >= 1.62-2mamba
Provides: bootloader
Provides: grub2
Obsoletes: grub2
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
GNU GRUB is a Multiboot boot loader. It was derived from GRUB, GRand Unified Bootloader, which was originally designed and implemented by Erich Stefan Boleyn.
Briefly, boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control to the operating system kernel software (such as the Hurd or the Linux). The kernel, in turn, initializes the rest of the operating system (e.g. GNU).
%package efi
Summary: GRUB Multiboot boot loader build for EFI
Group: System/Kernel and Hardware
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
Requires: efibootmgr
Provides: grub2-efi
Obsoletes: grub2-efi
%description efi
GNU GRUB is a Multiboot boot loader. It was derived from GRUB, GRand Unified Bootloader, which was originally designed and implemented by Erich Stefan Boleyn.
Briefly, boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control to the operating system kernel software (such as the Hurd or the Linux). The kernel, in turn, initializes the rest of the operating system (e.g. GNU).
This package contains the efi boot files needed to boot according to EFI standard.
%package efi-x86_64
Summary: GRUB Multiboot boot loader build for EFI (64bit)
Group: System/Kernel and Hardware
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
Requires: efibootmgr
%description efi-x86_64
GNU GRUB is a Multiboot boot loader. It was derived from GRUB, GRand Unified Bootloader, which was originally designed and implemented by Erich Stefan Boleyn.
Briefly, boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control to the operating system kernel software (such as the Hurd or the Linux). The kernel, in turn, initializes the rest of the operating system (e.g. GNU).
This package contains the efi boot files needed to boot according to EFI standard.
%prep
%setup -q -n grub-%{majver}
%patch1 -p1
#%patch2 -p1
%patch3 -p1
%patch9 -p1
#%patch10 -p0
#%patch11 -p1
gunzip -c %{SOURCE1} > unifont.bdf
# ld.gold has problems with -Wl-Ttext=xxx and produces not working binaries
ld -v | grep "gold" && {
echo "Error: ld GOLD detected, which is incompatible with grub. Aborting."
exit 1
}
%build
# WARNING: build requires ld.bfd; ld.gold produces not working binary
%configure \
%ifarch x86_64
CFLAGS="-Os -m32" \
%else
CFLAGS="%{optflags} -Os" \
%endif
--libdir=%{_prefix}/lib
%make \
%ifarch x86_64
CFLAGS="-Os -m32" \
%endif
# Generate Latin-1, Latin Extended A+B, Arrows, Box and Block characters:
./grub-mkfont --output=unifont.pf2 --range=0x0000-0x0241,0x2190-0x21FF,0x2500-0x259f unifont.bdf
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall
# Build EFI grub (x86_64 build disabled for now because it requires lib32-libdevmapper)
%ifarch %{ix86}
# i386-efi
make clean
rm -f *.d
export EFI_ARCH=i586-openmamba-linux-gnu
./configure --prefix=%{_prefix} --sysconfdir=%{_sysconfdir} --libdir=%{_prefix}/lib \
--with-platform=efi --target=${EFI_ARCH}
#--host=%{_host_arch} TARGET_CC="%{_host}-gcc"
make -j1 CFLAGS="%{optflags} -Os -m32" LDFLAGS_PLATFORM="-m32"
ARCHOUT=i386-efi
install -d %{buildroot}%{_prefix}/lib/grub/${ARCHOUT}
cp grub-core/{*.mod,*.lst,*.img,*.sh,*.lst} %{buildroot}%{_libdir}/grub/${ARCHOUT}/
#./grub-mkimage -o bootia32.efi -O ${ARCHOUT} -p /efi/boot -d ./grub-core part_gpt part_msdos ntfs ntfscomp hfsplus fat ext2 normal chain boot linux echo help gfxterm gettext png efi_gop efi_uga
#`find . -name *.mod | xargs | sed -e 's/.mod//g'`
#% makeinstall
#cp bootia32.efi %{buildroot}%{_prefix}/lib/grub/
# x86_64-efi
make clean
rm -f *.d
export EFI_ARCH=x86_64-openmamba-linux-gnu
./configure --prefix=%{_prefix} --sysconfdir=%{_sysconfdir} --libdir=%{_prefix}/lib \
--with-platform=efi --target=${EFI_ARCH}
make -j1 CFLAGS=
ARCHOUT=x86_64-efi
install -d %{buildroot}%{_prefix}/lib/grub/${ARCHOUT}
cp grub-core/{*.mod,*.lst,*.img,*.sh,*.lst} %{buildroot}%{_prefix}/lib/grub/${ARCHOUT}/
#./grub-mkimage -o bootx64.efi -O ${ARCHOUT} -p /efi/boot -d ./grub-core part_gpt part_msdos ntfs ntfscomp hfsplus fat ext2 normal chain boot linux echo help gfxterm gettext png efi_gop efi_uga
#`find . -name *.mod | xargs | sed -e 's/.mod//g'`
#% makeinstall
#cp bootx64.efi %{buildroot}%{_prefix}/lib/grub/
%endif
%ifarch x86_64
make clean
rm -f *.d
export EFI_ARCH=x86_64-openmamba-linux-gnu
./configure --prefix=%{_prefix} --sysconfdir=%{_sysconfdir} --libdir=%{_prefix}/lib \
--with-platform=efi
make -j1 CFLAGS=
ARCHOUT=x86_64-efi
install -d %{buildroot}%{_prefix}/lib/grub/${ARCHOUT}
cp grub-core/{*.mod,*.lst,*.img,*.sh,*.lst} %{buildroot}%{_prefix}/lib/grub/${ARCHOUT}/
#./grub-mkimage -o bootx64.efi -O ${ARCHOUT} -p /efi/boot -d ./grub-core part_gpt part_msdos ntfs ntfscomp hfsplus fat ext2 normal chain boot linux echo help gfxterm gettext png efi_gop efi_uga
#`find . -name *.mod | xargs | sed -e 's/.mod//g'`
#% makeinstall
#cp bootx64.efi %{buildroot}%{_prefix}/lib/grub/
%endif
install -D -m0644 unifont.pf2 %{buildroot}/boot/grub/unifont.pf2
install -D -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/default/grub
#install -D -m0755 %{SOURCE3} %{buildroot}%{_sysconfdir}/grub.d/20_other
#install -D -m0755 %{SOURCE5} %{buildroot}%{_sysconfdir}/grub.d/30_other_linux
#install -D -m0755 %{SOURCE6} %{buildroot}%{_sysconfdir}/grub.d/90_linux_failsafe
install -D -m0755 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/grub
cat > %{buildroot}%{_sbindir}/update-grub << _EOF
#!/bin/bash
cp -f /boot/grub/grub.cfg /boot/grub/grub.cfg.old
%{_sbindir}/grub-mkconfig $@ > /boot/grub/grub.cfg
exit $?
_EOF
chmod +x %{buildroot}%{_sbindir}/update-grub
install -d -m0755 %{buildroot}/boot/efi
%find_lang grub
#rm -f %{buildroot}%{_sysconfdir}/grub.d/30_os-prober
%post
%install_info %{name}.info
:
%preun
%uninstall_info %{name}.info
:
%posttrans
if [ $1 -ge 1 ]; then
if [ -e /etc/sysconfig/grub ]; then
. /etc/sysconfig/grub
fi
update-grub &>/dev/null || true
if [ "$GRUB_INSTALL_DEVICE" ]; then
grub-install `readlink -f $GRUB_INSTALL_DEVICE`
fi
fi
:
%posttrans efi
if [ $1 -ge 1 ]; then
if [ -e /etc/sysconfig/grub ]; then
. /etc/sysconfig/grub
fi
if [ "$GRUB_INSTALL_DEVICE_EFI" -a -e /sys/firmware/efi ]; then
mount $GRUB_INSTALL_DEVICE_EFI /boot/efi && {
grub-install --target=i386-efi --efi-directory=/boot/efi \
--bootloader-id="openmamba Boot Manager" --recheck
umount $GRUB_INSTALL_DEVICE_EFI
}
fi
fi
:
%posttrans efi-x86_64
if [ $1 -ge 1 ]; then
if [ -e /etc/sysconfig/grub ]; then
. /etc/sysconfig/grub
fi
if [ "$GRUB_INSTALL_DEVICE_EFI" -a -e /sys/firmware/efi ]; then
mount $GRUB_INSTALL_DEVICE_EFI /boot/efi && {
grub-install --target=x86_64-efi --efi-directory=/boot/efi \
--bootloader-id="openmamba Boot Manager" --recheck
umount $GRUB_INSTALL_DEVICE_EFI
}
fi
fi
:
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files -f grub.lang
%defattr(-,root,root)
%config %{_sysconfdir}/default/grub
%config(noreplace) %{_sysconfdir}/sysconfig/grub
%dir %{_sysconfdir}/grub.d
%{_sysconfdir}/grub.d/00_header
%{_sysconfdir}/grub.d/10_linux
%{_sysconfdir}/grub.d/20_linux_xen
#%{_sysconfdir}/grub.d/20_other
#%{_sysconfdir}/grub.d/30_other_linux
%{_sysconfdir}/grub.d/30_os-prober
%{_sysconfdir}/grub.d/40_custom
%{_sysconfdir}/grub.d/41_custom
#%{_sysconfdir}/grub.d/90_linux_failsafe
%{_sysconfdir}/bash_completion.d/grub
%{_sysconfdir}/grub.d/README
%{_bindir}/grub-glue-efi
%{_bindir}/grub-kbdcomp
%{_bindir}/grub-menulst2cfg
%{_bindir}/grub-mklayout
%{_bindir}/grub-editenv
%{_bindir}/grub-fstest
%{_bindir}/grub-mkfont
%{_bindir}/grub-mkimage
%{_bindir}/grub-mkpasswd-pbkdf2
%{_bindir}/grub-mkrelpath
%{_bindir}/grub-mknetdir
%{_bindir}/grub-mkrescue
%{_bindir}/grub-mkstandalone
%{_bindir}/grub-render-label
%ifnarch x86_64
%{_bindir}/grub-mount
%endif
%{_bindir}/grub-script-check
%{_sbindir}/grub-bios-setup
%{_sbindir}/grub-install
%{_sbindir}/grub-mkconfig
%{_sbindir}/grub-ofpathname
%{_sbindir}/grub-reboot
%{_sbindir}/grub-set-default
%{_sbindir}/grub-sparc64-setup
%{_sbindir}/grub-probe
%{_sbindir}/update-grub
%dir /boot/grub
/boot/grub/unifont.pf2
%dir %{_datadir}/grub
%{_datadir}/grub/ascii.h
%{_datadir}/grub/ascii.pf2
%{_datadir}/grub/euro.pf2
%{_datadir}/grub/grub-mkconfig_lib
%{_datadir}/grub/unicode.pf2
%{_datadir}/grub/widthspec.h
%dir %{_datadir}/grub/themes
%dir %{_datadir}/grub/themes/starfield
%{_datadir}/grub/themes/starfield/*
%{_infodir}/grub-dev.info.gz
%dir %{_prefix}/lib/grub
%dir %{_prefix}/lib/grub/i386-pc
%{_prefix}/lib/grub/i386-pc/config.h
%{_prefix}/lib/grub/i386-pc/gdb_grub
%{_prefix}/lib/grub/i386-pc/gmodule.pl
%{_prefix}/lib/grub/i386-pc/kernel.exec
%{_prefix}/lib/grub/i386-pc/modinfo.sh
%{_prefix}/lib/grub/i386-pc/*.image
%{_prefix}/lib/grub/i386-pc/*.img
%{_prefix}/lib/grub/i386-pc/*.lst
%{_prefix}/lib/grub/i386-pc/*.mod
%{_prefix}/lib/grub/i386-pc/*.module
%ifarch x86_64
%{_prefix}/lib/grub/i386-pc/efiemu32.o
%{_prefix}/lib/grub/i386-pc/efiemu64.o
%endif
%{_mandir}/man1/grub*.1.gz
%{_mandir}/man8/grub*.8.gz
%{_datadir}/info/grub.info.gz
%doc AUTHORS COPYING
#% doc ChangeLog NEWS README THANKS TODO
%ifarch %{ix86}
%files efi
%defattr(-,root,root)
%dir /boot/efi
%dir %{_prefix}/lib/grub/i386-efi
%{_prefix}/lib/grub/i386-efi/*
%endif
%files efi-x86_64
%defattr(-,root,root)
%dir /boot/efi
%dir %{_prefix}/lib/grub/x86_64-efi
%{_prefix}/lib/grub/x86_64-efi/*
%changelog
* Mon Aug 05 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00.bzr20130610-4mamba
- remove obsoleted 30_other_linux script after fixing os-prober (since 1.62-2mamba)
* Wed Jul 03 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00.bzr20130610-3mamba
- EFI: don't precreate 32 and 64 bit boot images; let external tools call grub-mkimage to create them
* Tue Jun 11 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00.bzr20130610-2mamba
- remove openmamba customized script to detect other O.S. and rely on os-prober script
- detect EFI bootloader installation and update grub if /sys/firmware/efi exists
* Mon Jun 10 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00.bzr20130610-1mamba
- update to 2.00.bzr20130610
* Sun Jun 09 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00-6mamba
- efi: also install *.img and *.sh from grub-core to efi targets direcotries
- efi: also provide precreated bootia32.efi and bootx86.efi for convenience
* Sat Jun 08 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00-5mamba
- added 64bit EFI grub
* Fri Mar 22 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00-4mamba
- make update-grub silent and not failing if grub is not installed (e.g. run from makedist)
* Tue Mar 05 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00-3mamba
- move update-grub and grub-install commands in posttrans
- fix 20_other openmamba script
- require os-prober and install upstream 30_os-prober (not working yet)
- port openmamba 30_other_linux from grub 1.99
* Mon Mar 04 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00-2mamba
- added configuration patch for openmamba nomodeset and failsafe choices
* Tue Sep 11 2012 Automatic Build System <autodist@mambasoft.it> 2.00-1mamba
- update to 2.00
* Thu May 17 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 2.00.beta5-1mamba
- update to 2.00.beta5
* Fri Sep 09 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 1.99-5mamba
- 20_other: print information on added entries for update-grub
* Fri Jul 22 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 1.99-4mamba
- grub.d/20_other: use grub-probe to find root drive name and remove old devfs2gdev function
* Mon May 09 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 1.99-3mamba
- rebuilt with -Os (see https://bugs.archlinux.org/task/24103)
* Mon May 09 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 1.99-2mamba
- updated from today bazaar repository version
- renamed to grub
* Mon May 02 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 1.99-1mamba
- update to 1.99
* Wed Nov 17 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-13mamba
- enable UUID mode now that it should in new boot system and with new PATA drivers
* Wed Oct 27 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-12mamba
- added support for boot using last used entry
* Wed Oct 27 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-11mamba
- /etc/default/grub: use vbetest from lrmi to set vga mode
- added support for boot using last used entry
* Wed Sep 29 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-10mamba
- added requirement for gettext
- improved other-linux detection script
* Mon Sep 20 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-9mamba
- /etc/default/grub: support a failsafe VESA vga mode when no framebuffer is configured
* Sat Sep 18 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-8mamba
- added configuration for failsafe entry
* Tue Sep 14 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-7mamba
- gfxmode patch: fixed the cause of multiple syntax errors at grub startup (added quotes to GRUB_GFXMODE definition)
* Mon Sep 06 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-6mamba
- /etc/defaults/grub: remove option console=tty1 to work with plymouth
* Sat Sep 04 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-5mamba
- disable recover mode by default (replaced by kernel failsafe package)
* Thu Aug 26 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-4mamba
- /etc/default/grub: added check for uvesafb module before testing mode and adding video= options
* Tue Jun 08 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-3mamba
- resolve GRUB_INSTALL_DEVICE link for grub-install to fix error with uuid's device naming
* Fri Jun 04 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.98-2mamba
- launch update-grub event if grub-update cannot be launched to work as fallback with new kernel version
- removed fix_gfx_mode patch
* Sat May 08 2010 Automatic Build System <autodist@mambasoft.it> 1.98-1mamba
- automatic update to 1.98 by autodist
* Wed Apr 21 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 1.97.2-2mamba
- fixed post warning message about setting GRUB_INSTALL_DEVICE and manually install grub
- updated requirements for cross x86_64 environment
* Wed Jan 27 2010 Automatic Build System <autodist@mambasoft.it> 1.97.2-1mamba
- automatic update to 1.97.2 by autodist
* Sun Dec 06 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.97.1-2mamba
- added build of 32 bit grub EFI
* Tue Nov 10 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.97.1-1mamba
- update to 1.97.1
* Sat Oct 31 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.97-3mamba
- added fix_gfxmode patch to make graphic mode work
* Thu Oct 29 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.97-2mamba
- added legacy update-grub script
* Mon Oct 26 2009 Automatic Build System <autodist@mambasoft.it> 1.97-1mamba
- automatic update to 1.97 by autodist
- fixme: grub-efi disabled
* Tue Aug 04 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96.cvs20090521-2mamba
- use GRUB_INSTALL_DEVICE to reinstall grub, or display a warning
* Thu May 21 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96.cvs20090521-1mamba
- update to 1.96.cvs20090521
* Tue May 05 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96-5mamba
- 30_other-linux script: fix kernel image name match regexp with grub 2
* Sun Mar 08 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96-4mamba
- fix an error in 30_other_linux script
* Sat Mar 07 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96-3mamba
- added script for automatic configuration of other linux systems
* Sun Feb 17 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96-2mamba
- added chainloader patch
* Sun Feb 03 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.96-1mamba
- update to 1.96
* Tue Jan 29 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-10mamba
- update-grub: drop default 1280x1024 splash resolution, use 1024x768 or 800x600
* Thu Jan 24 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-9mamba
- grub.d: change 'other' so it is run after 'linux'
* Tue Jan 15 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-8mamba
- /etc/default/grub: configure uvesafb for best available vbe mode
* Mon Jan 14 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-7mamba
- added /etc/sysconfig/grub support in update-grub
- added default /etc/sysconfig/grub
- added build requirement for bison
* Sat Jan 12 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-6mamba
- added /etc/default/grub and /etc/grub.d/05_other for update-grub
- patches to properly configure grub.cfg with update-grub for openmamba
* Sat Dec 01 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-5mamba
- update to cvs 20071201
* Wed Oct 17 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-4mamba
- grub-install: preload configfile module by default
* Fri Sep 21 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-3mamba
- update to cvs 20070921
- enabled build of grub-emu
* Wed Aug 15 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-2mamba
- update to cvs 20070815
- added default font for graphical menu
* Tue Jun 05 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 1.95-1mamba
- package created by autospec

View File

@ -0,0 +1,14 @@
diff -Nru grub-1.97.orig/util/grub-mkconfig.in grub-1.97/util/grub-mkconfig.in
--- grub-1.97.orig/util/grub-mkconfig.in 2009-09-10 21:04:43.000000000 +0200
+++ grub-1.97/util/grub-mkconfig.in 2009-10-26 05:10:55.000000000 +0100
@@ -134,6 +134,10 @@
. ${sysconfdir}/default/grub
fi
+if test -f ${sysconfdir}/sysconfig/grub ; then
+ . ${sysconfdir}/sysconfig/grub
+fi
+
# XXX: should this be deprecated at some point?
if [ "x${GRUB_TERMINAL}" != "x" ] ; then
GRUB_TERMINAL_INPUT="${GRUB_TERMINAL}"

View File

@ -0,0 +1,11 @@
diff -Nru grub-1.99~rc2.orig//util/grub.d/00_header.in grub-1.99~rc2/util/grub.d/00_header.in
--- grub-1.99~rc2.orig//util/grub.d/00_header.in 2011-05-03 23:43:12.003250821 +0200
+++ grub-1.99~rc2/util/grub.d/00_header.in 2011-05-03 23:44:55.470345472 +0200
@@ -43,6 +43,7 @@
if [ "x${GRUB_TIMEOUT_BUTTON}" = "x" ] ; then GRUB_TIMEOUT_BUTTON="$GRUB_TIMEOUT" ; fi
cat << EOF
+saved_entry=0
if [ -s \$prefix/grubenv ]; then
load_env
fi

140
grub2-conf-failsafe Normal file
View File

@ -0,0 +1,140 @@
#! /bin/sh
set -e
# grub-mkconfig helper script.
# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc.
#
# GRUB 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 3 of the License, or
# (at your option) any later version.
#
# GRUB 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 GRUB. If not, see <http://www.gnu.org/licenses/>.
prefix=/usr
exec_prefix=/usr
bindir=/usr/bin
libdir=/usr/lib
. ${libdir}/grub/grub-mkconfig_lib
export TEXTDOMAIN=grub
export TEXTDOMAINDIR=${prefix}/share/locale
CLASS="--class gnu-linux --class gnu --class os"
if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
OS=GNU/Linux
else
OS="${GRUB_DISTRIBUTOR} GNU/Linux"
CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) ${CLASS}"
fi
# loop-AES arranges things so that /dev/loop/X can be our root device, but
# the initrds that Linux uses don't like that.
case ${GRUB_DEVICE} in
/dev/loop/*|/dev/loop[0-9])
GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"`
;;
esac
if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \
|| ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" \
|| uses_abstraction "${GRUB_DEVICE}" lvm; then
LINUX_ROOT_DEVICE=${GRUB_DEVICE}
else
LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
fi
linux_entry ()
{
os="$1"
version="$2"
recovery="$3"
args="$4"
if ${recovery} ; then
title="$(gettext_quoted "%s, with Linux %s (recovery mode)")"
else
title="$(gettext_quoted "%s, with Linux %s")"
fi
printf "menuentry \"${title}\" ${CLASS} {\n" "${os}" "${version}"
save_default_entry | sed -e "s/^/\t/"
# Use ELILO's generic "efifb" when it's known to be available.
# FIXME: We need an interface to select vesafb in case efifb can't be used.
if [ "x$GRUB_GFXPAYLOAD_LINUX" = x ]; then
if grep -qx "CONFIG_FB_EFI=y" /boot/config-${version} 2> /dev/null \
&& grep -qx "CONFIG_VT_HW_CONSOLE_BINDING=y" /boot/config-${version} 2> /dev/null; then
cat << EOF
set gfxpayload=keep
EOF
fi
else
cat << EOF
set gfxpayload=$GRUB_GFXPAYLOAD_LINUX
EOF
fi
if [ -z "${prepare_boot_cache}" ]; then
prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/")"
fi
printf '%s\n' "${prepare_boot_cache}"
cat << EOF
echo $(printf "$(gettext "Loading Linux %s ...")" ${version})
linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
EOF
if test -n "${initrd}" ; then
cat << EOF
echo $(gettext "Loading initial ramdisk ...")
initrd ${rel_dirname}/${initrd}
EOF
fi
cat << EOF
}
EOF
}
list=`for i in /boot/vmlinu[xz]-* /vmlinu[xz]-* ; do
if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
done`
prepare_boot_cache=
cat << EOF
menuentry "" {
set root=
}
EOF
while [ "x$list" != "x" ] ; do
linux=`version_find_latest $list`
echo "Found linux image: $linux" >&2
basename=`basename $linux`
dirname=`dirname $linux`
rel_dirname=`make_system_path_relative_to_its_root $dirname`
version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
alt_version=`echo $version | sed -e "s,\.old$,,g"`
linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
initrd=
for i in "initramfs-${version}-failsafe.img.gz" "initramfs-${alt_version}-failsafe.img.gz" \
"initramfs-${version}-failsafe.img" "initramfs-${alt_version}-failsafe.img" \
"initramfs-${version}-failsafe.cpio.gz" "initramfs-${alt_version}-failsafe.cpio.gz"; do
if test -e "${dirname}/${i}" ; then
initrd="$i"
break
fi
done
if test -n "${initrd}" ; then
echo "Found failsafe initrd image: ${dirname}/${initrd}" >&2
linux_entry "${OS}" "${version}" true \
"rddebug splash selinux=0 ${GRUB_CMDLINE_LINUX_DEFAULT}"
fi
list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
done

11
grub2-default Normal file
View File

@ -0,0 +1,11 @@
GRUB_DISTRIBUTOR="openmamba"
GRUB_CMDLINE_LINUX="quiet splash"
#GRUB_DISABLE_LINUX_UUID=true
GRUB_DISABLE_LINUX_RECOVERY=true
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
#GRUB_TIMEOUT=5
#GRUB_TERMINAL=
#GRUB_SERIAL_COMMAND=
GRUB_GFXPAYLOAD_LINUX=keep
GRUB_DISABLE_RECOVERY=true

31
grub2-sysconfig Normal file
View File

@ -0,0 +1,31 @@
#
# grub2 configuration file
#
#
# Uncomment the following lines to configure other systems (chainloaded)
# to appear in grub2 boot menu.
#
#GRUB_OTHER_TITLES=("Windows 98")
#GRUB_OTHER_DEVICES=(/dev/hda3)
# Define an alternative command line for linux entries
#
#GRUB_CMDLINE_LINUX="resume2= video=uvesafb:1024x768-32,ywrap,mtrr:3 quiet splash=silent,fadein console=tty1"
# Define default menu entry
#
#GRUB_DEFAULT=0
#GRUB_SAVEDDEFAULT=false
# Define boot menu timeout before loading default menu entry
#
#GRUB_TIMEOUT=5
# Definitions for serial console
#
#GRUB_TERMINAL=
#GRUB_SERIAL_COMMAND=
#Apply changes with:
#
# update-grub

BIN
unifont-5.1.20080820.bdf.gz Normal file

Binary file not shown.