Compare commits

...

22 Commits

Author SHA1 Message Date
Jeremy Soller 5e39ab0609
Install parted in gitlab CI 2020-12-24 15:47:10 -07:00
Jeremy Soller d32d94c796
Fix EFI variable, update CI to use 20.04 2020-12-24 15:30:01 -07:00
Jeremy Soller ecb4c97966
Update bootloader-efi 2020-12-24 15:28:43 -07:00
Jeremy Soller 8d81df2e3f
Update bootloader-efi 2020-12-24 13:42:38 -07:00
Jeremy Soller bc0925e499
Do not build coreboot image, it is broken 2020-12-24 12:44:26 -07:00
Jeremy Soller 92a522d088
Add ramfs to ci.toml 2020-12-24 12:10:12 -07:00
Jeremy Soller 1099ff1ce3
gears is compiling again 2020-12-24 11:44:11 -07:00
Jeremy Soller 8d024eb405
Improvements for rust dependencies in bootstrap 2020-12-24 11:33:16 -07:00
Jeremy Soller a5e352ec28
Disable gears recipe 2020-12-24 11:22:07 -07:00
Jeremy Soller 46282ed9ed
Install correct version of cargo-config and xargo 2020-12-24 11:20:32 -07:00
Jeremy Soller ce44ede67e
Add po4a for arch and fedora 2020-12-24 11:16:26 -07:00
Jeremy Soller 60ff234d1b
Update cookbook and relibc 2020-12-24 11:08:50 -07:00
Jeremy Soller f20f95ca0a
Update cookbook 2020-12-23 15:13:36 -07:00
Jeremy Soller 28d09dff49
Update cookbook and relibc 2020-12-23 13:46:11 -07:00
Jeremy Soller f3e2fd20e2
Update cookbook 2020-12-23 13:32:01 -07:00
Jeremy Soller d2be17ad22
Update cookbook 2020-12-23 12:57:10 -07:00
Jeremy Soller f6d4e0d257
Update kernel and relibc 2020-12-23 12:20:34 -07:00
Jeremy Soller 16ef1ebb3a
Add ramfs to all initfs recipes 2020-12-23 10:11:59 -07:00
Jeremy Soller 1d01a7bd01
Also remove unused initfs bins from coreboot and live initfs 2020-12-23 10:00:36 -07:00
Jeremy Soller 290fc5bbaf
Update kernel 2020-12-23 09:55:33 -07:00
Jeremy Soller b2d2929510
Update relibc 2020-12-23 09:24:03 -07:00
Jeremy Soller 2ecd6ac473
Hack for smaller initfs 2020-12-22 10:47:00 -07:00
13 changed files with 41 additions and 35 deletions

View File

@ -1,4 +1,4 @@
image: "ubuntu:18.04" image: "ubuntu:20.04"
variables: variables:
GIT_STRATEGY: "pull" GIT_STRATEGY: "pull"
@ -7,6 +7,7 @@ variables:
before_script: before_script:
- | - |
export DEBIAN_FRONTEND=noninteractive
apt-get update -qq && apt-get update -qq &&
apt-get install -qq \ apt-get install -qq \
bison \ bison \
@ -20,6 +21,7 @@ before_script:
gnupg \ gnupg \
libfuse-dev \ libfuse-dev \
nasm \ nasm \
parted \
pkg-config \ pkg-config \
software-properties-common \ software-properties-common \
syslinux \ syslinux \

View File

@ -67,14 +67,12 @@ include mk/virtualbox.mk
# CI image target # CI image target
ci-img: FORCE ci-img: FORCE
$(MAKE) INSTALLER_FLAGS= \ $(MAKE) INSTALLER_FLAGS= \
build/coreboot.elf.gz \
build/harddrive.bin.gz \ build/harddrive.bin.gz \
build/livedisk.iso.gz \ build/livedisk.iso.gz \
build/harddrive-efi.bin.gz \ build/harddrive-efi.bin.gz \
build/livedisk-efi.iso.gz build/livedisk-efi.iso.gz
rm -rf build/img rm -rf build/img
mkdir -p build/img mkdir -p build/img
cp "build/coreboot.elf.gz" "build/img/redox_$(IMG_TAG)_coreboot.elf.gz"
cp "build/harddrive.bin.gz" "build/img/redox_$(IMG_TAG)_harddrive.bin.gz" cp "build/harddrive.bin.gz" "build/img/redox_$(IMG_TAG)_harddrive.bin.gz"
cp "build/livedisk.iso.gz" "build/img/redox_$(IMG_TAG)_livedisk.iso.gz" cp "build/livedisk.iso.gz" "build/img/redox_$(IMG_TAG)_livedisk.iso.gz"
cp "build/harddrive-efi.bin.gz" "build/img/redox_$(IMG_TAG)_harddrive-efi.bin.gz" cp "build/harddrive-efi.bin.gz" "build/img/redox_$(IMG_TAG)_harddrive-efi.bin.gz"

@ -1 +1 @@
Subproject commit 97bd2f68464b5a266e50cadfc30405ce3802127f Subproject commit e147b413eeb9eb7d01c85cfe1b6b6eea39c47a57

View File

@ -187,7 +187,7 @@ freebsd()
archLinux() archLinux()
{ {
echo "Detected Arch Linux" echo "Detected Arch Linux"
packages="cmake fuse git gperf perl-html-parser nasm wget texinfo bison flex" packages="cmake fuse git gperf perl-html-parser nasm wget texinfo bison flex po4a"
if [ "$1" == "qemu" ]; then if [ "$1" == "qemu" ]; then
packages="$packages qemu" packages="$packages qemu"
elif [ "$1" == "virtualbox" ]; then elif [ "$1" == "virtualbox" ]; then
@ -286,7 +286,7 @@ fedora()
fi fi
fi fi
# Use rpm -q <package> to check if it's already installed # Use rpm -q <package> to check if it's already installed
PKGS=$(for pkg in gcc gcc-c++ glibc-devel.i686 nasm make fuse-devel cmake texinfo gettext-devel bison flex perl-HTML-Parser; do rpm -q $pkg > /dev/null || echo $pkg; done) PKGS=$(for pkg in gcc gcc-c++ glibc-devel.i686 nasm make fuse-devel cmake texinfo gettext-devel bison flex perl-HTML-Parser po4a; do rpm -q $pkg > /dev/null || echo $pkg; done)
# If the list of packages is not empty, install missing # If the list of packages is not empty, install missing
COUNT=$(echo $PKGS | wc -w) COUNT=$(echo $PKGS | wc -w)
if [ $COUNT -ne 0 ]; then if [ $COUNT -ne 0 ]; then
@ -422,10 +422,10 @@ usage()
# Looks for and installs a cargo-managed binary or subcommand # Looks for and installs a cargo-managed binary or subcommand
############################################################# #############################################################
cargoInstall() { cargoInstall() {
if [[ "`cargo install --list`" != *"$1"* ]]; then if [[ "`cargo install --list`" != *"$1 v$2"* ]]; then
cargo install $1 cargo install --force --version "$2" "$1"
else else
echo "You have $1 installed already!" echo "You have $1 version $2 installed already!"
fi fi
} }
@ -449,8 +449,6 @@ rustInstall() {
echo "Please manually uninstall multirust and any other versions of rust, then re-run bootstrap." echo "Please manually uninstall multirust and any other versions of rust, then re-run bootstrap."
exit exit
fi fi
else
echo "Old multirust not installed, you are good to go."
fi fi
# If rustup is not installed we should offer to install it for them # If rustup is not installed we should offer to install it for them
if [ -z "$(which rustup)" ]; then if [ -z "$(which rustup)" ]; then
@ -467,7 +465,6 @@ rustInstall() {
echo "export PATH=\"\$HOME/.cargo/bin:\$PATH\"" >> ~/.bashrc echo "export PATH=\"\$HOME/.cargo/bin:\$PATH\"" >> ~/.bashrc
# source the variables so that we can execute rustup commands in the current shell # source the variables so that we can execute rustup commands in the current shell
source ~/.cargo/env source ~/.cargo/env
rustup default nightly
else else
echo "Rustup will not be installed!" echo "Rustup will not be installed!"
fi fi
@ -479,22 +476,8 @@ rustInstall() {
echo "or install rustc nightly manually (not recommended) via:" echo "or install rustc nightly manually (not recommended) via:"
echo "\#curl -sSf https://static.rust-lang.org/rustup.sh | sh -s -- --channel=nightly" echo "\#curl -sSf https://static.rust-lang.org/rustup.sh | sh -s -- --channel=nightly"
exit exit
fi
# If the system has rustup installed then update rustc to the latest nightly
if hash 2>/dev/null rustup; then
rustup update nightly
rustup default nightly
fi
# Check to make sure that the default rustc is the nightly
if echo "$(rustc --version)" | grep -viq "nightly" ;then
echo "It appears that you have rust installed, but it"
echo "is not the nightly version, please either install"
echo "the nightly manually (not recommended) or run this"
echo "script again, accepting the rustup install"
echo
else else
echo "Your rust install looks good!" echo "Your rust install looks good!"
echo
fi fi
} }
@ -538,9 +521,6 @@ boot()
{ {
echo "Cloning gitlab repo..." echo "Cloning gitlab repo..."
git clone https://gitlab.redox-os.org/redox-os/redox.git --origin upstream --recursive git clone https://gitlab.redox-os.org/redox-os/redox.git --origin upstream --recursive
rustInstall
cargoInstall cargo-config
cargoInstall xargo
echo "Cleaning up..." echo "Cleaning up..."
rm bootstrap.sh rm bootstrap.sh
echo echo
@ -592,6 +572,12 @@ do
esac esac
done done
banner
rustInstall
cargoInstall cargo-config 0.1.1
cargoInstall xargo 0.3.20
if [ "$update" == "true" ]; then if [ "$update" == "true" ]; then
git pull upstream master git pull upstream master
git submodule update --recursive --init git submodule update --recursive --init
@ -599,7 +585,6 @@ if [ "$update" == "true" ]; then
exit exit
fi fi
banner
if [ "Darwin" == "$(uname -s)" ]; then if [ "Darwin" == "$(uname -s)" ]; then
osx "$emulator" osx "$emulator"
else else
@ -635,3 +620,5 @@ fi
if [ "$dependenciesonly" = false ]; then if [ "$dependenciesonly" = false ]; then
boot boot
fi fi
echo "Redox bootstrap complete!"

View File

@ -137,6 +137,7 @@ ptyd = {}
#python = {} # getaddrinfo #python = {} # getaddrinfo
#qemu = {} #qemu = {}
randd = {} randd = {}
ramfs = {}
readline = {} readline = {}
redoxerd = {} redoxerd = {}
redoxfs = {} redoxfs = {}

@ -1 +1 @@
Subproject commit d553dbc09dafa31579741608642dd2156c933934 Subproject commit 84535c9062c8f977e0d7c76ade8a3c751982b4d6

View File

@ -9,8 +9,8 @@ prompt = false
[packages] [packages]
drivers = {} drivers = {}
init = {} init = {}
#pciids = {}
nulld = {} nulld = {}
#pciids = {}
ramfs = {} ramfs = {}
randd = {} randd = {}
redoxfs = {} redoxfs = {}

View File

@ -11,6 +11,7 @@ drivers = {}
init = {} init = {}
nulld = {} nulld = {}
#pciids = {} #pciids = {}
ramfs = {}
randd = {} randd = {}
redoxfs = {} redoxfs = {}
zerod = {} zerod = {}
@ -26,6 +27,7 @@ randd
vesad T T G vesad T T G
stdio display:1 stdio display:1
ps2d us ps2d us
ramfs logging
pcid /etc/pcid/initfs.toml pcid /etc/pcid/initfs.toml
redoxfs disk/live: file redoxfs disk/live: file
cd file: cd file:

View File

@ -11,6 +11,7 @@ drivers = {}
init = {} init = {}
nulld = {} nulld = {}
#pciids = {} #pciids = {}
ramfs = {}
randd = {} randd = {}
redoxfs = {} redoxfs = {}
zerod = {} zerod = {}
@ -26,6 +27,7 @@ randd
vesad T T G vesad T T G
stdio display:1 stdio display:1
ps2d us ps2d us
ramfs logging
pcid /etc/pcid/initfs.toml pcid /etc/pcid/initfs.toml
redoxfs disk/live: file redoxfs disk/live: file
cd file: cd file:

2
kernel

@ -1 +1 @@
Subproject commit cff858b45560b529d95c5e0ec93c2accb5a7876a Subproject commit 903390283066a988b74e86e3630106b12b4df806

View File

@ -53,7 +53,7 @@ INSTALLER=\
installer/target/release/redox_installer $(INSTALLER_FLAGS) installer/target/release/redox_installer $(INSTALLER_FLAGS)
## Bootloader variables ## Bootloader variables
EFI_TARGET=$(ARCH)-efi-pe EFI_TARGET=$(ARCH)-unknown-uefi
## Cross compiler variables ## Cross compiler variables
AR=$(TARGET)-gcc-ar AR=$(TARGET)-gcc-ar

View File

@ -1,3 +1,5 @@
INITFS_RM_BINS=alxd e1000d ihdad ixgbed pcspkrd redoxfs-ar redoxfs-mkfs rtl8168d usbctl usbhidd usbscsid xhcid
build/initfs.tag: initfs.toml prefix build/initfs.tag: initfs.toml prefix
cargo build --manifest-path cookbook/Cargo.toml --release cargo build --manifest-path cookbook/Cargo.toml --release
cargo build --manifest-path installer/Cargo.toml --release cargo build --manifest-path installer/Cargo.toml --release
@ -5,6 +7,10 @@ build/initfs.tag: initfs.toml prefix
rm -rf build/initfs rm -rf build/initfs
mkdir -p build/initfs mkdir -p build/initfs
$(INSTALLER) -c $< build/initfs/ $(INSTALLER) -c $< build/initfs/
#TODO: HACK FOR SMALLER INITFS, FIX IN PACKAGING
for bin in $(INITFS_RM_BINS); do \
rm -f build/initfs/bin/$$bin; \
done
touch $@ touch $@
build/initfs_coreboot.tag: initfs_coreboot.toml prefix build/initfs_coreboot.tag: initfs_coreboot.toml prefix
@ -14,6 +20,10 @@ build/initfs_coreboot.tag: initfs_coreboot.toml prefix
rm -rf build/initfs_coreboot rm -rf build/initfs_coreboot
mkdir -p build/initfs_coreboot mkdir -p build/initfs_coreboot
$(INSTALLER) -c $< build/initfs_coreboot/ $(INSTALLER) -c $< build/initfs_coreboot/
#TODO: HACK FOR SMALLER INITFS, FIX IN PACKAGING
for bin in $(INITFS_RM_BINS); do \
rm -f build/initfs_coreboot/bin/$$bin; \
done
touch $@ touch $@
build/initfs_live.tag: initfs_live.toml prefix build/initfs_live.tag: initfs_live.toml prefix
@ -23,4 +33,8 @@ build/initfs_live.tag: initfs_live.toml prefix
rm -rf build/initfs_live rm -rf build/initfs_live
mkdir -p build/initfs_live mkdir -p build/initfs_live
$(INSTALLER) -c $< build/initfs_live/ $(INSTALLER) -c $< build/initfs_live/
#TODO: HACK FOR SMALLER INITFS, FIX IN PACKAGING
for bin in $(INITFS_RM_BINS); do \
rm -f build/initfs_live/bin/$$bin; \
done
touch $@ touch $@

2
relibc

@ -1 +1 @@
Subproject commit 07ec3b6591878f23f3c4be80c26cbfc584abfe43 Subproject commit 1a0edd8eeb2e3aae407a91795696461f475b445e