Stop using pkexec for grub2-set-bootflag, it does not work under gdm instead
make it suid root (it was written with this in mind)
Signed-off-by: Peter Jones <pjones@redhat.com>
Add 2 conditions to boot-success timer and service:
Don't run it for system users
Resolves: rhbz#1592201
Don't run it when pkexec isn't available
Resolves: rhbz#1619445
Use -Wsign-compare -Wconversion -Wextra in the build.
Related: rhbz#1624532
Related: rhbz#1626844
Signed-off-by: Peter Jones <pjones@redhat.com>
- Limit grub_malloc() on x86_64 to < 31bit addresses, as some devices seem to
have a colossally broken storage controller (or UEFI driver) that can't do
DMA to higher memory addresses, but fails silently.
Resolves: rhbz#1626844 (possibly really resolving it this time.)
- Also integrate Hans's attempt to fix the related error from -54, but do it
the other way around: try the low addresses first and *then* the high one if
the allocation fails. This way we'll get low regions by default, and if
kernel/initramfs don't fit anywhere, it'll try the higher addresses.
Related: rhbz#1624532
- Coalesce all the intermediate debugging junk from -54/-55/-56.
Signed-off-by: Peter Jones <pjones@redhat.com>
Don't mangle fw_path even harder.
Resolves: rhbz#1626844
Fix reboot being missing on some platforms, and make it alias to
"reset" as well.
More dprintf().
Signed-off-by: Peter Jones <pjones@redhat.com>
Fix UEFI memory problem in a different way.
Related: rhbz#1624532
Don't mangle fw_path with a / unless we're on http
Resolves: rhbz#1626844
Signed-off-by: Peter Jones <pjones@redhat.com>
Fix AArch64 machines with no RAM latched lower than 1GB
Resolves: rhbz#1615969
Set http_path and http_url when HTTP booting
Hopefully slightly better error reporting in some cases
Better allocation of kernel+initramfs on x86_64 and aarch64
Resolves: rhbz#1572126
Signed-off-by: Peter Jones <pjones@redhat.com>
We need to move these to /boot/efi/EFI/BOOT/ and change the perms at the same
time, but that means changing this, comps, and lorax (at least) at the same
time. Right this minute isn't a good time to do that.
Signed-off-by: Peter Jones <pjones@redhat.com>
autogen.sh was running autoreconf, which *ran* configure but didn't actually
re-make it if it was there. This means we effectively can't change our
configure invocation (for newer configure options), so that's bad.
Signed-off-by: Peter Jones <pjones@redhat.com>
Apparently working on two identical trees at once is not good for doing things
right.
Resolves: rhbz#1601578
Signed-off-by: Peter Jones <pjones@redhat.com>
Add support for making the user session automatically set the boot_success
flag and make offline-updates increment the boot_indeterminate grubenv var.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Fixups to work with gcc 8
Experimental https boot support on UEFI
XFS fixes for sparse inode support
Resolves: rhbz#1575797
Signed-off-by: Peter Jones <pjones@redhat.com>
- Use version field to sort BLS entries if id field isn't defined
- Add version field to BLS fragments generated by 20-grub.install
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
If MAKEDEBUG=yes in /etc/sysconfig/kernel, then a debug menu entry should
be created. So for BLS, a debug configuration file has to be created that
contains debug kernel command line parameters.
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
Install a 20-grubby.install and 90-loaderentry.install kernel-install
scripts in /etc/kernel/install.d so these have higher precedence than
the ones installed in /usr/lib/kernel/install.d by the systemd pkg.
If GRUB 2 pkg isn't installed, then the systemd scripts are executed
on kernel installation and removal.
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
- Try to fix things for new compiler madness.
I really don't know why gcc decided __attribute__((packed)) on a "typedef
struct" should imply __attribute__((align (1))) and that it should have a
warning that it does so. The obvious behavior would be to keep the alignment
of the first element unless it's used in another object or type that /also/
hask the packed attribute. Why should it change the default alignment at
all?
- Merge in the BLS patches Javier and I wrote.
- Attempt to fix pmtimer initialization failures to not be super duper slow.
Signed-off-by: Peter Jones <pjones@redhat.com>
None of currently supported distributions need that.
Last one was EL5 which is EOL for a while.
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
Fix a merge error from 2.02-21 that affected kernel loading on Aarch64.
Related: rhbz#1519311
Related: rhbz#1506704
Related: rhbz#1502312
Signed-off-by: Peter Jones <pjones@redhat.com>
- Only nerf annobin, not -fstack-crash-protection.
- Fix a conflict on /boot/efi directory permissions between -cdboot and the
normal bootloader.
Signed-off-by: Peter Jones <pjones@redhat.com>
For now, completely nerf annobin and -fstack-clash-protection; at least
one of those things makes grubx64.efi crash on start.
Signed-off-by: Peter Jones <pjones@redhat.com>
You'll still need to actually install grub2-${efiarch}-modules and then
use grub2-install to install the xen modules in /boot/grub2/,
but this should handle actually loading them from the grub config file.
Resolves: rhbz#1486002
Signed-off-by: Peter Jones <pjones@redhat.com>
I'm not sure this is 100% the right place to do this - maybe it should
go in anaconda - but it seems most expedient :/
Resolves: rhbz#1491045
Signed-off-by: Peter Jones <pjones@redhat.com>
Revert the /usr/lib/.build-id/ change:
https://fedoraproject.org/wiki/Changes/ParallelInstallableDebuginfo
says (without any particularly convincing reasoning):
The main build-id file should not be in the debuginfo file, but in the
main package (this was always a problem since the package and debuginfo
package installed might not match). If we want to make usr/lib/debug/ a
network resource then we will need to move the symlink to another
location (maybe /usr/lib/.build-id).
So do it that way. Of course it doesn't matter, because exclude gets
ignored due to implementation details.
Signed-off-by: Peter Jones <pjones@redhat.com>
Add some unconditional Provides:
grub2-efi on grub2-efi-${arch}
grub2-efi-cdboot on grub2-efi-${arch}-cdboot
grub2 on all grub2-${arch} pacakges
Something is somehow adding /usr/lib/.build-id/... to all the -tools
subpackages, so exclude all that.
Signed-off-by: Peter Jones <pjones@redhat.com>
- Put grub2-mkimage in -tools, not -tools-extra.
- Fix i686 building
- Fix ppc HFS+ usage due to /boot/efi's presence.
Signed-off-by: Peter Jones <pjones@redhat.com>
autoqa is seeing a failure that looks like:
13:50:17,909 INF program: grub2-install: error: cannot open `/usr/lib/grub/i386-pc/lzma_decompress.img': No such file or directory.
And it's because the .img files are currently excluded. So put them
back.
Signed-off-by: Peter Jones <pjones@redhat.com>
Somehow the wrong version is getting built, and I'm quite confused as to
why:
trillian:~/devel/fedora/grub2/master$ fedpkg build
/usr/lib/python2.7/site-packages/fedora/client/bodhi.py:48: DeprecationWarning: fedora.client.bodhi has been deprecated. Please use bodhi.client.bindings instead.
DeprecationWarning)
Building grub2-2.02-3.fc27 for rawhide
^^^^^^^^^^^^^^^^^ looks correct
Created task: 21022413
Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=21022413
Watching tasks (this may be safely interrupted)...
21022413 build (rawhide, /rpms/grub2:bf8e18bc1df80b77e218e3e673f9e3f8f2116542): free
21022413 build (rawhide, /rpms/grub2:bf8e18bc1df80b77e218e3e673f9e3f8f2116542): free -> open (buildvm-aarch64-01.arm.fedoraproject.org)
21022414 buildSRPMFromSCM (/rpms/grub2:bf8e18bc1df80b77e218e3e673f9e3f8f2116542): free
21022414 buildSRPMFromSCM (/rpms/grub2:bf8e18bc1df80b77e218e3e673f9e3f8f2116542): free -> open (buildvm-aarch64-01.arm.fedoraproject.org)
21022414 buildSRPMFromSCM (/rpms/grub2:bf8e18bc1df80b77e218e3e673f9e3f8f2116542): open (buildvm-aarch64-01.arm.fedoraproject.org) -> closed
0 free 1 open 1 done 0 failed
21022475 buildArch (grub2-2.02-0.25.fc27.src.rpm, i686): free
^^^^^^^^^^^^^^^^^^^^ does not look correct
So I'm trying from a fresh checkout instead.
Signed-off-by: Peter Jones <pjones@redhat.com>
This reverts commit 44da1e072b.
Reverting for now as there's some unresolved questions that
make me unwilling to go through with this change - like why
ppc64 build fails on Rawhide, and whether the changes from
the f24 branch that aren't on master or f25 should be brought
forward. So reverting to the status quo until I can talk to
Peter.
- Fix security issue when reading username and password
Related: CVE-2015-8370
- Do a better job of handling GRUB2_PASSWORD
Related: rhbz#1284370
Signed-off-by: Peter Jones <pjones@redhat.com>
RPM sort was returning kernels sorted from oldest to newest
instead of newest to oldest. Flipped the sign on the return
value to switch the order.
Related: rhbz#1124074
Signed-off-by: Peter Jones <pjones@redhat.com>
Upstream's f8451af8 changed finalize_params to finalize_params_linux on
aarch64, and so we got a build failure because one of our patches also
referenced it.
This rectifies the two patches.
Signed-off-by: Peter Jones <pjones@redhat.com>
- Make backtrace and usb conditional on !arm
- Make sure gcdaa64.efi is packaged.
Resolves: rhbz#1163481
Signed-off-by: Peter Jones <pjones@redhat.com>
- Try to emit linux16/initrd16 and linuxefi/initrdefi when appropriate
in 30_os-prober.
Resolves: rhbz#1108296
- If $fw_path doesn't work to find the config file, try $prefix as well
Resolves: rhbz#1148652
Signed-off-by: Peter Jones <pjones@redhat.com>
- Clean up the build a bit to make it faster
- Make grubenv work right on UEFI machines
Related: rhbz#1119943
- Sort debug and rescue kernels later than normal ones
Related: rhbz#1065360
- Allow "fallback" to include entries by title as well as number.
Related: rhbz#1026084
- Fix a segfault on aarch64.
- Load arm with SB enabled if available.
- Add some serial port options to GRUB_MODULES.
Signed-off-by: Peter Jones <pjones@redhat.com>
- Fix PPC build error (#967862)
- Fix crash on net_bootp command (#960624)
- Reset colors on ppc when appropriate (#908519)
- Left align "Loading..." messages (#908492)
- Fix probing of SAS disks on PPC (#953954)
- Add support for UEFI OSes returned by os-prober
- Disable "video" mode on PPC for now (#973205)
- Make grub fit better into the boot sequence, visually (#966719)
starfield takes up >3M on disk without being used, and we're oversize for
the live image. It also contains some copies of dejavu fonts...
Signed-off-by: Peter Jones <pjones@redhat.com>
One of these includes an invalid date, which rpm now complains about,
because hey, what's life without some additional meaningless and purposeless
suffering?
Signed-off-by: Peter Jones <pjones@redhat.com>
The patch do longer apply cleanly and is non-trivial to update.
Upstreams comment on Bug 815318:
Actually this whole thread results from a simple misconception as to how to
install GRUB on HFS(+) in the first place. Usual way is to mount it on
/boot/grub and use grub-install *without* disk argument
revno: 4334
committer: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
branch nick: grub
timestamp: Sun 2012-05-13 20:29:23 +0200
message:
* grub-core/disk/ieee1275/ofdisk.c (scan): Don't scan device tree if
GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS is set.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS on IBM hardware.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS.
revno: 4325
committer: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
branch nick: grub
timestamp: Fri 2012-05-11 21:07:39 +0200
message:
Use grub-probe and not cmp to check that disk is empty.
* util/grub-install.in: Use grub-probe for zero-check.
* util/grub-probe.c (PRINT_ZERO_CHECK): New enum value.
(probe): Handle PRINT_ZERO_CHECK.
(argp_parser): Handle -t zero_check.
revno: 4377
author: Peter Jones <pjones@redhat.com>
committer: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
branch nick: grub
timestamp: Sun 2012-05-27 14:26:18 +0200
message:
The old code gives arguments to a printf function which can't work
correctly, and the compiler complains.
* grub-core/tests/example_functional_test.c (example_test): Add
missing text.
* grub-core/tests/lib/test.c (add_failure): Rewrite.
* include/grub/test.h (grub_test_assert_helper): New declaration.
(grub_test_assert): Use grub_test_assert_helper.
All tools and support files are now the same for bios and efi - only the actual
bootloader is different. There is thus no reason to build any tools for efi,
but there is no way to avoid it. We just build and install them and overwrite
with bios files.
By using the same transformation we avoid the problems with the transformation
being included in some un-transformed files.
The old grub2-efi specific are kept as symlinks for backward compatibility.
grub2-efi is still very much work-in-progress and the grub2-efi could probably
be dropped very soon. It would also make sense to move all shared files to a
sub-package.
It is undocumented.
It haven't been upstreamed.
Upstream has 40_custom and 41_custom for the same purpose.
It violates layering and code structure by guessing which (optional!) output
file has been specified for grub2-mkconfig ... and makes the wrong guess for
grub2-efi.
It is undocumented.
It haven't been upstreamed.
Upstream has 40_custom and 41_custom for the same purpose.
It violates layering and code structure by guessing which (optional!) output
file has been specified for grub2-mkconfig ... and makes the wrong guess for
grub2-efi.