Compare commits
22 Commits
4cf9db4e12
...
5e39ab0609
Author | SHA1 | Date |
---|---|---|
Jeremy Soller | 5e39ab0609 | |
Jeremy Soller | d32d94c796 | |
Jeremy Soller | ecb4c97966 | |
Jeremy Soller | 8d81df2e3f | |
Jeremy Soller | bc0925e499 | |
Jeremy Soller | 92a522d088 | |
Jeremy Soller | 1099ff1ce3 | |
Jeremy Soller | 8d024eb405 | |
Jeremy Soller | a5e352ec28 | |
Jeremy Soller | 46282ed9ed | |
Jeremy Soller | ce44ede67e | |
Jeremy Soller | 60ff234d1b | |
Jeremy Soller | f20f95ca0a | |
Jeremy Soller | 28d09dff49 | |
Jeremy Soller | f3e2fd20e2 | |
Jeremy Soller | d2be17ad22 | |
Jeremy Soller | f6d4e0d257 | |
Jeremy Soller | 16ef1ebb3a | |
Jeremy Soller | 1d01a7bd01 | |
Jeremy Soller | 290fc5bbaf | |
Jeremy Soller | b2d2929510 | |
Jeremy Soller | 2ecd6ac473 |
|
@ -1,4 +1,4 @@
|
|||
image: "ubuntu:18.04"
|
||||
image: "ubuntu:20.04"
|
||||
|
||||
variables:
|
||||
GIT_STRATEGY: "pull"
|
||||
|
@ -7,6 +7,7 @@ variables:
|
|||
|
||||
before_script:
|
||||
- |
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
apt-get update -qq &&
|
||||
apt-get install -qq \
|
||||
bison \
|
||||
|
@ -20,6 +21,7 @@ before_script:
|
|||
gnupg \
|
||||
libfuse-dev \
|
||||
nasm \
|
||||
parted \
|
||||
pkg-config \
|
||||
software-properties-common \
|
||||
syslinux \
|
||||
|
|
2
Makefile
2
Makefile
|
@ -67,14 +67,12 @@ include mk/virtualbox.mk
|
|||
# CI image target
|
||||
ci-img: FORCE
|
||||
$(MAKE) INSTALLER_FLAGS= \
|
||||
build/coreboot.elf.gz \
|
||||
build/harddrive.bin.gz \
|
||||
build/livedisk.iso.gz \
|
||||
build/harddrive-efi.bin.gz \
|
||||
build/livedisk-efi.iso.gz
|
||||
rm -rf 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/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"
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 97bd2f68464b5a266e50cadfc30405ce3802127f
|
||||
Subproject commit e147b413eeb9eb7d01c85cfe1b6b6eea39c47a57
|
39
bootstrap.sh
39
bootstrap.sh
|
@ -187,7 +187,7 @@ freebsd()
|
|||
archLinux()
|
||||
{
|
||||
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
|
||||
packages="$packages qemu"
|
||||
elif [ "$1" == "virtualbox" ]; then
|
||||
|
@ -286,7 +286,7 @@ fedora()
|
|||
fi
|
||||
fi
|
||||
# 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
|
||||
COUNT=$(echo $PKGS | wc -w)
|
||||
if [ $COUNT -ne 0 ]; then
|
||||
|
@ -422,10 +422,10 @@ usage()
|
|||
# Looks for and installs a cargo-managed binary or subcommand
|
||||
#############################################################
|
||||
cargoInstall() {
|
||||
if [[ "`cargo install --list`" != *"$1"* ]]; then
|
||||
cargo install $1
|
||||
if [[ "`cargo install --list`" != *"$1 v$2"* ]]; then
|
||||
cargo install --force --version "$2" "$1"
|
||||
else
|
||||
echo "You have $1 installed already!"
|
||||
echo "You have $1 version $2 installed already!"
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -449,8 +449,6 @@ rustInstall() {
|
|||
echo "Please manually uninstall multirust and any other versions of rust, then re-run bootstrap."
|
||||
exit
|
||||
fi
|
||||
else
|
||||
echo "Old multirust not installed, you are good to go."
|
||||
fi
|
||||
# If rustup is not installed we should offer to install it for them
|
||||
if [ -z "$(which rustup)" ]; then
|
||||
|
@ -467,7 +465,6 @@ rustInstall() {
|
|||
echo "export PATH=\"\$HOME/.cargo/bin:\$PATH\"" >> ~/.bashrc
|
||||
# source the variables so that we can execute rustup commands in the current shell
|
||||
source ~/.cargo/env
|
||||
rustup default nightly
|
||||
else
|
||||
echo "Rustup will not be installed!"
|
||||
fi
|
||||
|
@ -479,22 +476,8 @@ rustInstall() {
|
|||
echo "or install rustc nightly manually (not recommended) via:"
|
||||
echo "\#curl -sSf https://static.rust-lang.org/rustup.sh | sh -s -- --channel=nightly"
|
||||
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
|
||||
echo "Your rust install looks good!"
|
||||
echo
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -538,9 +521,6 @@ boot()
|
|||
{
|
||||
echo "Cloning gitlab repo..."
|
||||
git clone https://gitlab.redox-os.org/redox-os/redox.git --origin upstream --recursive
|
||||
rustInstall
|
||||
cargoInstall cargo-config
|
||||
cargoInstall xargo
|
||||
echo "Cleaning up..."
|
||||
rm bootstrap.sh
|
||||
echo
|
||||
|
@ -592,6 +572,12 @@ do
|
|||
esac
|
||||
done
|
||||
|
||||
banner
|
||||
|
||||
rustInstall
|
||||
cargoInstall cargo-config 0.1.1
|
||||
cargoInstall xargo 0.3.20
|
||||
|
||||
if [ "$update" == "true" ]; then
|
||||
git pull upstream master
|
||||
git submodule update --recursive --init
|
||||
|
@ -599,7 +585,6 @@ if [ "$update" == "true" ]; then
|
|||
exit
|
||||
fi
|
||||
|
||||
banner
|
||||
if [ "Darwin" == "$(uname -s)" ]; then
|
||||
osx "$emulator"
|
||||
else
|
||||
|
@ -635,3 +620,5 @@ fi
|
|||
if [ "$dependenciesonly" = false ]; then
|
||||
boot
|
||||
fi
|
||||
|
||||
echo "Redox bootstrap complete!"
|
||||
|
|
1
ci.toml
1
ci.toml
|
@ -137,6 +137,7 @@ ptyd = {}
|
|||
#python = {} # getaddrinfo
|
||||
#qemu = {}
|
||||
randd = {}
|
||||
ramfs = {}
|
||||
readline = {}
|
||||
redoxerd = {}
|
||||
redoxfs = {}
|
||||
|
|
2
cookbook
2
cookbook
|
@ -1 +1 @@
|
|||
Subproject commit d553dbc09dafa31579741608642dd2156c933934
|
||||
Subproject commit 84535c9062c8f977e0d7c76ade8a3c751982b4d6
|
|
@ -9,8 +9,8 @@ prompt = false
|
|||
[packages]
|
||||
drivers = {}
|
||||
init = {}
|
||||
#pciids = {}
|
||||
nulld = {}
|
||||
#pciids = {}
|
||||
ramfs = {}
|
||||
randd = {}
|
||||
redoxfs = {}
|
||||
|
|
|
@ -11,6 +11,7 @@ drivers = {}
|
|||
init = {}
|
||||
nulld = {}
|
||||
#pciids = {}
|
||||
ramfs = {}
|
||||
randd = {}
|
||||
redoxfs = {}
|
||||
zerod = {}
|
||||
|
@ -26,6 +27,7 @@ randd
|
|||
vesad T T G
|
||||
stdio display:1
|
||||
ps2d us
|
||||
ramfs logging
|
||||
pcid /etc/pcid/initfs.toml
|
||||
redoxfs disk/live: file
|
||||
cd file:
|
||||
|
|
|
@ -11,6 +11,7 @@ drivers = {}
|
|||
init = {}
|
||||
nulld = {}
|
||||
#pciids = {}
|
||||
ramfs = {}
|
||||
randd = {}
|
||||
redoxfs = {}
|
||||
zerod = {}
|
||||
|
@ -26,6 +27,7 @@ randd
|
|||
vesad T T G
|
||||
stdio display:1
|
||||
ps2d us
|
||||
ramfs logging
|
||||
pcid /etc/pcid/initfs.toml
|
||||
redoxfs disk/live: file
|
||||
cd file:
|
||||
|
|
2
kernel
2
kernel
|
@ -1 +1 @@
|
|||
Subproject commit cff858b45560b529d95c5e0ec93c2accb5a7876a
|
||||
Subproject commit 903390283066a988b74e86e3630106b12b4df806
|
|
@ -53,7 +53,7 @@ INSTALLER=\
|
|||
installer/target/release/redox_installer $(INSTALLER_FLAGS)
|
||||
|
||||
## Bootloader variables
|
||||
EFI_TARGET=$(ARCH)-efi-pe
|
||||
EFI_TARGET=$(ARCH)-unknown-uefi
|
||||
|
||||
## Cross compiler variables
|
||||
AR=$(TARGET)-gcc-ar
|
||||
|
|
14
mk/initfs.mk
14
mk/initfs.mk
|
@ -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
|
||||
cargo build --manifest-path cookbook/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
|
||||
mkdir -p 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 $@
|
||||
|
||||
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
|
||||
mkdir -p 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 $@
|
||||
|
||||
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
|
||||
mkdir -p 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 $@
|
||||
|
|
2
relibc
2
relibc
|
@ -1 +1 @@
|
|||
Subproject commit 07ec3b6591878f23f3c4be80c26cbfc584abfe43
|
||||
Subproject commit 1a0edd8eeb2e3aae407a91795696461f475b445e
|
Reference in New Issue