GNU GRUB is a multiboot boot loader. It was derived from GRUB, the GRand
Unified Bootloader, which was originally designed and implemented by Erich
Stefan Boleyn.
This port builds the grub-bhyve binary, allowing booting of non-FreeBSD
operating systems in bhyve.
sysutils/grub2-bhyve: Add support for additional EXT4 incompatible features
Handle the following EXT4 incompatible features:
EXT4_FEATURE_INCOMPAT_MMP (Multi-Mount Protection)
Prevents multiple read-write mounts of the same filesystem.
Since grub2-bhyve mounts filesystems read-only, it is safe to ignore.
EXT4_FEATURE_INCOMPAT_CSUM_SEED
Allows tools such as tune2fs to change the UUID on a mounted
metadata-checksummed filesystem. Safe to ignore because the
driver does not perform checksum verification.
EXT4_FEATURE_INCOMPAT_LARGEDIR
Enables directories larger than 2GB and 3-level htrees.
Safe to ignore because the GRUB ext2 driver does not implement
DIR_INDEX.
This patch mirrors upstream behavior. It unblocks booting from
distributions such as Alpine Linux.
PR: 286702
Approved-by: lwhsu
Differential Revision: https://reviews.freebsd.org/D55633
sysutils/grub2-bhyve: unbreack build on recent -current (+)
Backport 2 patches from upstream:
* make bhyve memory map less odd
* update for changes in libvmmapi version 2.0 to add struct vcpu
Sponsored by: Serenity Cybersecurity, LLC
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
sysutils: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <jsmith@resonatingmedia.com>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Landwehr <aaron@snaphat.com>
* Adam Weinberger <adamw@FreeBSD.org>
* Adrian Chadd
* Adrian Chadd <adrian@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alan Eldridge <alane@FreeBSD.org>
* Alan Eldridge <alane@geeksrus.net>
* Aldis Berjoza <aldis@bsdroot.lv>
* Alex Deiter <alex.deiter@gmail.com>
(Only the first 15 lines of the commit message are shown above )
Convert sysutils/grub2-bhyve to use the new "build" argument to USE_GCC,
replacing direct manipulation of RUN_DEPENDS by the more declarative and
simpler USE_GCC=yes:build.
PR: 211154
sysutils/grub2-bhyve: Neutralize privileged guest commands
GRUB was designed to run in a trusted environment, where anyone with access
to grub2.cfg could also modify grub itself. In grub2-bhyve, we have
modified it to run in host context, but interpret the commands of guest
grub2.cfg. This means we have to worry about malicious guests.
This patch addresses two escalation vectors: font-loading, and the direct
'read', 'write', 'in', and 'out' commands (which read/write arbitrary
addresses). Both reported by Reno Robert.
Disable font-loading by neutering the command. It is believed to be non-
essential and there is at least one buffer overflow in the font loading
code.
Disable reading and writing host memory and IO ports. It is believed to be
non-essential.
admbugs: 948
Reported by: Reno Robert <renorobert AT gmail.com>
Approved by: bapt
MFH: 2010Q1 (bapt)
Security: yes
sysutils/grub2-bhyve: fix build on 13-CURRENT
Build error: ./stdio.h:456:1: error: 'gets' undeclared here (not in a
function); did you mean 'getw'?
grub2 doesn't use gets() at all so it's just an error in the glib header
file as a result of gets being excised from FreeBSD. Commenting out the
_GL_WARN_ON_USE macro for that is fine.
PR: 241168
Submitted by: Robert James Hernandez <rob@sarcasticadmin.com>
Approved by: grehan (maintainer)
MFH: 2019Q4
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
Bump PORTREVISION for ports depending on the canonical version of GCC
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
c++14-lang, c++0x, c11, or gcc-c++11-lib.
PR: 219275
Bump PORTREVISIONs for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using using Mk/bsd.octave.mk which in turn has USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
c++11-lang, c++0x, c11, or gcc-c++11-lib.
PR: 216707
Bump PORTREVISIONS for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.8.5 to GCC 4.9.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
In particular that is ports with USE_GCC=yes, USE_GCC=any, or one of
gcc-c++11-lib, openmp, nestedfct, c++11-lib as well as c++14-lang,
c++11-lang, c++0x, c11 requested via USES=compiler.
- Update to v0.30
Add -c, --cons-dev option to choose terminal.
This allows nmdm devices to be used by grub for output.
Submitted by Conrad Meyer.
Set Linux boot_params video rows/columns to 80x25. This can
be disabled with the "-e|--evga" switch.
Move the 32-bit flat-mode GDT to the first page in memory to
avoid being stomped on by the decompressor in older Linux kernels.
These two fixes allow Centos 4/5 ISOs to boot without
triple-faulting or panic'ing with divide-by-zero errors.
Clean up command-line help, and be more FreeBSD-specific in
the display, including printing the grub-bhyve version.
Reduce runtime dependencies to the minimum
- Add a hack to prevent USE_GCC to add a useless runtime dependency
- Remove gettext dependency and teach the configure script that --disable-nls
really means I do not want nls at all
- Teach the Makefiles that if I do not want nls then it is really not need to
try to link anyway to libintl
Requested by: gehan
Approved by: kmoore (maintainer)
- Update to 0.22
Fixed a bug with OpenBSD 5.5 not seeing the serial console boot metadata,
and eliminates some (harmless) warnings when booting Ubuntu that
triggered a 10-second delay.
Update the default version of GCC used in the Ports Collection from
GCC 4.6.4 to GCC 4.7.3. This entails updating the lang/gcc port as
well as changing the default in Mk/bsd.default-versions.mk.
Part II, Bump PORTREVISIONs.
PR: 182136
Supported by: Christoph Moench-Tegeder <cmt@burggraben.net> (fixing many ports)
Tested by: bdrewery (two -exp runs)
- Add sysutils/grub2-bhyve 0.2
GNU GRUB is a multiboot boot loader. It was derived from GRUB, the GRand
Unified Bootloader, which was originally designed and implemented by Erich
Stefan Boleyn.
This port builds the grub-bhyve binary, allowing booting of non-FreeBSD
operating systems in bhyve.
WWW: https://github.com/grehan-freebsd/grub2-bhyve