Skip to content

Commit 729cf3e

Browse files
committed
Clean up ISO scripts for new src tree
1 parent 1cda551 commit 729cf3e

File tree

5 files changed

+23
-196
lines changed

5 files changed

+23
-196
lines changed

ISO/build.sh

+10-41
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
set -e
55

66
# BSD ABI
7-
VER="14.0"
8-
MAJOR="14"
7+
VER="15.0"
8+
MAJOR="15"
99

1010
if [ -x /usr/sbin/pkg ]; then
1111
PKG=/usr/sbin/pkg
@@ -59,15 +59,6 @@ if [ "$(id -u)" != "0" ]; then
5959
exit 1
6060
fi
6161

62-
# Make sure git is installed
63-
# We only need this in case we decide to pull in ingredients from
64-
# other git repositories; this is currently not the case
65-
# if [ ! -f "/usr/local/bin/git" ] ; then
66-
# echo "Git is required"
67-
# echo "Please install it with pkg install git or pkg install git-lite first"
68-
# exit 1
69-
# fi
70-
7162
if [ -z "${desktop}" ] ; then
7263
export desktop=xfce
7364
fi
@@ -102,31 +93,11 @@ else
10293
isopath="${iso}/${desktop}-${vol}-${arch}.iso"
10394
fi
10495

105-
# For helloSystem, we are using a different naming scheme for the ISOS
106-
if [ "${desktop}" = "hello" ] ; then
107-
if [ -f overlays/uzip/hello/manifest ] ; then
108-
HELLO_VERSION=$(grep "^version:" overlays/uzip/hello/manifest | xargs | cut -d " " -f 2 | cut -d "_" -f 1)
109-
# If we are building hello, then set version number of the 'hello' transient package
110-
# based on environment variable set e.g., by Cirrus CI
111-
if [ ! -z $BUILDNUMBER ] ; then
112-
echo "Injecting $BUILDNUMBER" into manifest
113-
sed -i -e 's|\(^version: .*_\).*$|\1'$BUILDNUMBER'|g' "${cwd}/overlays/uzip/hello/manifest"
114-
rm "${cwd}/overlays/uzip/hello/manifest-e"
115-
cat "${cwd}/overlays/uzip/hello/manifest"
116-
isopath="${iso}/${tag}-F${VER}_h${HELLO_VERSION}_${BUILDNUMBER}-${arch}.iso"
117-
else
118-
isopath="${iso}/${tag}-F${VER}_h${HELLO_VERSION}_git${SHA}-${arch}.iso"
119-
fi
120-
fi
121-
fi
122-
123-
if [ "${desktop}" = "ravynOS" ]; then
124-
MAJLABEL="f${MAJOR}"
125-
if [ ! -z "${CIRRUS_BUILD_ID}" ]; then
126-
MAJLABEL="${MAJLABEL}_${CIRRUS_BUILD_ID}"
127-
fi
128-
isopath="${iso}/${tag}_${MAJLABEL}_${arch}.iso"
96+
MAJLABEL="f${MAJOR}"
97+
if [ ! -z "${CIRRUS_BUILD_ID}" ]; then
98+
MAJLABEL="${MAJLABEL}_${CIRRUS_BUILD_ID}"
12999
fi
100+
isopath="${iso}/${tag}_${MAJLABEL}_${arch}.iso"
130101

131102
cleanup()
132103
{
@@ -222,8 +193,7 @@ packages()
222193
# Install packages beginning with 'https:'
223194
mkdir -p ${uzip}${pkg_cachedir}/furybsd-https
224195
for url in $(grep -e '^https' "${cwd}/settings/packages.$p"); do
225-
# ABI=freebsd:12:$arch in an attempt to use package built on 12 for 13
226-
pkg_add_from_url "$url" furybsd-https "freebsd:14:$arch"
196+
pkg_add_from_url "$url" furybsd-https "freebsd:15:$arch"
227197
done
228198
done
229199
# Install the packages we have generated in pkg() that are listed in transient-packages-list
@@ -306,8 +276,6 @@ pkg()
306276
mkdir -p "${packages}/transient"
307277
cd "${packages}/transient"
308278
rm -f *.pkg # Make sure there are no leftover transient packages from earlier runs
309-
splashqml="${cwd}/overlays/uzip/ravynos/files/usr/share/plasma/look-and-feel/ravynOS/contents/splash/Splash.qml"
310-
sed -e "s@__CODENAME__@${RAVYNOS_CODENAME}@" -e "s@__VERSION__@${RAVYNOS_VERSION}@" < "${splashqml}.in" > "${splashqml}"
311279
while read -r p; do
312280
sh -ex "${cwd}/scripts/build-pkg.sh" -m "${cwd}/overlays/uzip/${p}"/manifest -d "${cwd}/overlays/uzip/${p}/files"
313281
done <"${cwd}"/settings/overlays.common
@@ -323,7 +291,7 @@ pkg()
323291
initgfx()
324292
{
325293
if [ "${arch}" != "i386" ] ; then
326-
if [ $MAJOR -lt 14 ] ; then
294+
if [ $MAJOR -lt 15 ] ; then
327295
PKGS="quarterly"
328296
else
329297
PKGS="latest"
@@ -367,10 +335,11 @@ uzip()
367335
ramdisk()
368336
{
369337
cp -R "${cwd}/overlays/ramdisk/" "${ramdisk_root}"
370-
cc -static -o "${ramdisk_root}/raminit" "${cwd}/raminit.c" -lutil
371338
sync ### Needed?
372339
cd ${cwd} && zpool import furybsd && zfs set mountpoint=${workdir}/furybsd/uzip furybsd
373340
sync ### Needed?
341+
cc --sysroot=${uzip} -static -o "${ramdisk_root}/raminit" \
342+
"${cwd}/raminit.c" -lutil
374343
cd "${uzip}" && tar -cf - rescue | tar -xf - -C "${ramdisk_root}"
375344
mkdir -p "${ramdisk_root}/etc"
376345
touch "${ramdisk_root}/etc/fstab"

ISO/overlays/uzip/ravynos/files/usr/share/plasma/look-and-feel/ravynOS/contents/splash/Splash.qml

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ Image {
6464
Text {
6565
id: verstext
6666
color: "#eff0f1"
67-
text: "Pygmy Marmoset v0.4.0pre5"
67+
text: "Sneaky Snek v0.5.0"
6868
font.pointSize: 20
6969
font { family: "Nimbus Sans"; weight: Font.Regular }
7070
x: (PlasmaCore.Units.gridUnit * 2)

ISO/settings/packages.ravynOS

-76
Original file line numberDiff line numberDiff line change
@@ -1,76 +0,0 @@
1-
#ImageMagick7
2-
avahi-app
3-
bash-completion
4-
ca_root_nss
5-
cairo
6-
cpdup
7-
dbus
8-
dmidecode
9-
#drm-devel-kmod
10-
fcft
11-
foot
12-
glib
13-
gpu-firmware-kmod
14-
#libdbusmenu
15-
#libdbusmenu-qt5
16-
libexif
17-
libinput
18-
libqtxdg
19-
#libXres
20-
libudev-devd
21-
libva-intel-driver
22-
libxcb
23-
libxshmfence
24-
mesa-libs
25-
mesa-gallium-xa
26-
mesa-dri
27-
nss_mdns
28-
#qt5-l10n
29-
#qt5-graphicaleffects
30-
#qt5-quickcontrols2
31-
#qt5-x11extras
32-
#menu-cache
33-
#py38-psutil
34-
#py38-dateutil
35-
#py38-pytz
36-
#py38-qt5-network
37-
#py38-xmltodict
38-
#py38-beautifulsoup
39-
#py38-sqlite3
40-
#py38-qt5-dbus
41-
#py38-qt5-widgets
42-
#py38-qt5-qml
43-
#py38-qt5-multimedia
44-
#py38-qt5-webengine
45-
#openssl
46-
pango
47-
pixman
48-
pkg
49-
python3
50-
pv
51-
qt5-core
52-
qt5-dbus
53-
qt5-gui
54-
qt5-svg
55-
qt5-widgets
56-
qt5-xml
57-
seatd
58-
sqlite3
59-
sudo
60-
tiff
61-
#font-awesome
62-
#sourcecodepro-ttf
63-
#wqy-fonts
64-
git-tiny
65-
cmake
66-
pkgconf
67-
#qt5-qmake
68-
#qt5-buildtools
69-
#lxqt-build-tools
70-
usbids
71-
utf8proc
72-
vulkan-loader
73-
xcb-util-errors
74-
xdg-user-dirs
75-
xdg-utils
76-
zsh

ISO/settings/script.ravynOS

+10-78
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,18 @@
1-
#!/usr/bin/bash
1+
#!/bin/sh
22

33
set -e
44
set -x
55

66
mkdir -p /tmp/system-overlay
77
cd /tmp/system-overlay
88

9-
# Use blue folder icons instead of the ones packaged in FreeBSD which have yellow folder icons
10-
# Don't extract directly in /tmp, as tar will modify its permissions
11-
icons_temp=$(mktemp -d /tmp/icons.XXXXX)
12-
cd $icons_temp
13-
fetch http://archive.ubuntu.com/ubuntu/pool/universe/x/xubuntu-artwork/xubuntu-icon-theme_16.04.2_all.deb
14-
tar xf xubuntu-icon-theme_16.04.2_all.deb
15-
tar xf data.tar.xz
16-
mkdir -p "${uzip}"/usr/share/icons/
17-
mv ./usr/share/icons/elementary-xfce "${uzip}"/usr/share/icons/elementary
18-
ln -sf "elementary" "${uzip}/usr/share/icons/elementary-xfce"
19-
mv ./usr/share/doc/xubuntu-icon-theme/copyright "${uzip}"/usr/share/icons/elementary/
20-
cd -
21-
rm -r $icons_temp
22-
23-
#curl -Lo - https://dl.cloudsmith.io/public/airyx/13_0/raw/files/gnome-icon-theme-3.12.0_1.pkg | tar xvf - -C "${uzip}"
24-
#curl -Lo - https://dl.cloudsmith.io/public/airyx/13_0/raw/files/gnome-icon-theme-symbolic-3.12.0.pkg | tar xvf - -C "${uzip}"
25-
#( cd "${uzip}/usr/share/icons/" ; ln -s Adwaita adwaita )
26-
27-
# Cursor theme with HiDPi Support, sizes: 22 24 28 32 40 48 56 64 72 80 88 96
28-
fetch https://github.com/ful1e5/apple_cursor/releases/download/v1.0.6/macOSBigSur.tar.gz
29-
tar xvf macOSBigSur.tar.gz
30-
mv macOSBigSur "${uzip}/usr/share/icons/"
31-
chown -R root:wheel "${uzip}/usr/share/icons"
32-
find "${uzip}/usr/share/icons/macOSBigSur" -type d -exec chmod 755 {} \;
33-
find "${uzip}/usr/share/icons/macOSBigSur" -type f -exec chmod 644 {} \;
34-
( cd "${uzip}/usr/share/icons/" ; ln -s macOSBigSur default )
35-
rm -f macOSBigSur.tar.gz
36-
37-
# Pull in the default JDK
38-
mkdir -p "${uzip}/Library/Java/JavaVirtualMachines/"
39-
curl -Lo - https://github.com/mszoek/airyx/releases/download/jdk-17.0.1/openjdk-17.0.1.jdk.txz | \
40-
tar -xf - -C "${uzip}/Library/Java/JavaVirtualMachines/"
41-
429
# Install our standard app bundles
4310
mkdir -p "${uzip}/Applications/Utilities"
4411

45-
declare -A apps utils
12+
# This syntax below needs bash or zsh. Rewrite it or add them to build server
13+
#declare -A apps utils
4614
#apps=(Kate 21.08.1 Firefox 97.0)
47-
utils=(Terminal 0.9.0)
15+
#utils=(Terminal 0.9.0)
4816

4917
#for app in ${!apps[@]}; do
5018
# tag="v${apps[$app]}"
@@ -53,12 +21,12 @@ utils=(Terminal 0.9.0)
5321
# curl -Lo - https://github.com/airyxos/${app}_app/releases/download/${tag}/${app}.txz | \
5422
# tar -xf - -C "${uzip}/Applications/"
5523
#done
56-
for app in ${!utils[@]}; do
57-
tag="v${utils[$app]}"
58-
echo Fetching $app $tag
59-
curl -Lo - https://github.com/ravynsoft/${app}_app/releases/download/${tag}/${app}.txz | \
60-
tar -xf - -C "${uzip}/Applications/Utilities/"
61-
done
24+
#for app in ${!utils[@]}; do
25+
# tag="v${utils[$app]}"
26+
# echo Fetching $app $tag
27+
# curl -Lo - https://github.com/ravynsoft/${app}_app/releases/download/${tag}/${app}.txz | \
28+
# tar -xf - -C "${uzip}/Applications/Utilities/"
29+
#done
6230

6331
# Fonts
6432
fetch https://github.com/ArtifexSoftware/urw-base35-fonts/archive/20200910.zip
@@ -71,8 +39,6 @@ rm -rf urw-base35-fonts-20200910/ 20200910.zip
7139
cat > /tmp/rc <<\EOF
7240
#!/bin/sh
7341
74-
# The following block was added by helloSystem
75-
# FIXME: Let us know how to do this properly
7642
# Silence messages if boot_mute="YES" is set
7743
if [ "$(kenv boot_mute)" = "YES" ] ; then
7844
conscontrol delete ttyv0 >/dev/null 2>&1
@@ -87,8 +53,6 @@ mv /tmp/rc "${uzip}/etc/rc"
8753
cat > /tmp/rc.shutdown <<\EOF
8854
#!/bin/sh
8955
90-
# The following block was added by helloSystem
91-
# FIXME: Let us know how to do this properly
9256
# Silence messages if boot_mute="YES" is set
9357
if [ "$(kenv boot_mute)" = "YES" ] ; then
9458
exec 1>>/dev/null 2>&1
@@ -122,35 +86,3 @@ rm "${uzip}/etc/syslog.conf-e"
12286
# Workaround to allow unmounting as normal user
12387
# setuid root
12488
chmod +s "${uzip}/sbin/umount"
125-
126-
# Brute force method to make FAT media fully accessible and executable by everyone
127-
# https://github.com/vermaden/automount/issues/21#issuecomment-808753031
128-
# https://github.com/vermaden/automount/issues/27
129-
# https://github.com/vermaden/automount/commit/f50118920208e49890067d00ecd6bb1a97b47ce3
130-
# FIXME: Use better solution
131-
sed -i -e 's|longnames -m 644|longnames -m 777|g' "${uzip}/usr/sbin/automount"
132-
sed -i -e 's|longnames -m 755|longnames -m 777|g' "${uzip}/usr/sbin/automount"
133-
rm "${uzip}/usr/sbin/automount-e"
134-
135-
# Required for runappimage
136-
fetch "https://github.com/helloSystem/elfsize/releases/download/0/elfsize"
137-
chmod +x elfsize
138-
mv elfsize "${uzip}/usr/bin/"
139-
140-
# Improve compatibility with many scripts from the Linux world,
141-
# including those in many AppImages
142-
chroot ${uzip} ln -s /usr/bin/bash /bin/bash
143-
144-
# Make sure zsh exists in /bin too
145-
chroot ${uzip} ln -s /usr/bin/zsh /bin/zsh
146-
147-
# Remove unwanted UDisks2VolumeMonitor D-Bus service
148-
# TODO: Find a proper way to do this. The correct thing to do would probably to split up the FreeBSD package
149-
# FIXME: This is guaranteed to break as soon as the user updates/upgrades the package
150-
if [ -f "${uzip}/usr/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service" ] ; then
151-
rm -rf "${uzip}/usr/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service"
152-
touch "${uzip}/usr/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service"
153-
# Make the file immutable so that even root cannot overwrite it
154-
chflags schg "${uzip}/usr/share/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service"
155-
fi
156-

tools/ravynOS/build.sh

+2
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,9 @@ drm_build() {
5656

5757
system_build() {
5858
cd ${CIRRUS_WORKING_DIR}
59+
echo "CIRRUS_CI=${CIRRUS_CI}"
5960
if [ "x${CIRRUS_CI}" = "xtrue" ]; then
61+
echo "Symlinking OBJTOP/usr/include/machine for CI"
6062
ln -sf ${CIRRUS_WORKING_DIR}/sys/$(uname -m)/include \
6163
/usr/obj/${CIRRUS_WORKING_DIR}/${PLATFORM}/tmp/usr/include/machine
6264
fi

0 commit comments

Comments
 (0)