summaryrefslogtreecommitdiff
path: root/Kernel/build-image-qemu.sh
AgeCommit message (Collapse)Author
2020-05-14Build: Switch to CMake :^)Sergey Bugaev
Closes https://github.com/SerenityOS/serenity/issues/2080
2020-05-13Revert "Build: Use fakeroot if non-root build is possible"Andreas Kling
This reverts commit 3d342f72a76b70fcee8872da081a19f7ea229eec. This is causing trouble for macOS users. Also it's painfully slow compared to using the sudo method. This should definitely not be the default since it punishes people who have genext2fs installed.
2020-05-12Build: Use fakeroot if non-root build is possibleNikolay Kochulin
If genext2fs and fakeroot are installed, the build will no longer require superuser privileges.
2020-05-07Build: Support building in DockerYonatan Goldschmidt
Add missing installations to instructions, and use genext2fs instead of mounting.
2020-03-21Build: Add FreeBSD support (#1492)BenJilks
2020-02-10Meta: Fix shellcheck warnings in various scriptsShannon Booth
Warnings fixed: * SC2086: Double quote to prevent globbing and word splitting. * SC2006: Use $(...) notation instead of legacy backticked `...` * SC2039: In POSIX sh, echo flags are undefined * SC2209: Use var=$(command) to assign output (or quote to assign string) * SC2164: Use 'cd ... || exit' or 'cd ... || return' in case cd fails * SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. * SC2034: i appears unused. Verify use (or export if used externally) * SC2046: Quote this to prevent word splitting. * SC2236: Use -z instead of ! -n. There are still a lot of warnings in Kernel/run about: - SC2086: Double quote to prevent globbing and word splitting. However, splitting on space is intentional in this case, and not trivial to change. Therefore ignore the warning for now - but we should fix this in the future.
2020-01-22Build: use absolute path for /sbin/mke2fsOliver Kraitschy
Distros like Debian and Ubuntu don't have /sbin in PATH, thus mke2fs is not found.
2020-01-15Build: use $SUDO_[UG]ID in build-image-* instead of relying on makealljoshua stein
2020-01-02Build: add support for building on OpenBSDjoshua stein
This requires gcc8 from ports to build the Toolchain.
2019-12-27Build: Allow building serenityOS ext2 root filesystem on macOS hostStefano Cristiano
2019-11-26Build: Bump the default disk image size from 500MB to 600MBAndreas Kling
This gives us a little more leeway for installing ports, etc.
2019-11-03POSIX compliance: (most) shell scripts converted to generic shellGeorge Pickering
Ports/.port_include.sh, Toolchain/BuildIt.sh, Toolchain/UseIt.sh have been left largely untouched due to use of Bash-exclusive functions and variables such as $BASH_SOURCE, pushd and popd.
2019-07-03Build: Fix incorrect user and group settings for disk image (#280)Dan MacDonald
Build: Fix incorrect user and group settings for disk image. Fixes #261.
2019-06-04Build: Remove grub from default build processConrad Pankoff
This removes grub and all the loopback device business from the default build process. Running grub takes about a second, and it turns out it's inconsistently packaged in different distributions, which has led to at least one confusing issue so far (grub-install vs grub2-install). Removing it from the basic path will make it easier for people to try Serenity out. There are now two scripts that can be used to build a disk image: 1. `build-image-grub.sh` - this will build an image suitable for writing to the IDE hard drive of a physical machine, complete with a partition table and bootloader. This can be run in qemu with the `qgrub` target for the `run` script. 2. `build-image-qemu.sh` - this is a simpler script which creates a bare filesystem image rather than a full MBR disk. Both of these call out to `build-root-filesystem.sh` to do most of the work setting up... the root filesystem. For completeness' sake, I've retained the `sync.sh` script as a simple forwarding to `build-image-qemu.sh`. This relies on the functionality from #194 and #195. #195 allows us to use `/dev/hda` as the root device when nothing else is specified, and #194 works around a strange feature of qemu that appends a space to the kernel command line.