Major refactoring
This commit is contained in:
parent
5692fbe881
commit
1fa7d1329d
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
||||
output/
|
||||
chroots/
|
||||
|
93
make-os
93
make-os
@ -1,54 +1,71 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
if
|
||||
if [ "$1" = "" ]; then
|
||||
echo "Define i386/amd64 as the first argument."
|
||||
exit 1
|
||||
fi
|
||||
cd "$(dirname "$(realpath -s "$BASH_SOURCE")")"
|
||||
source shell
|
||||
source "env-$1"
|
||||
#export OPUS_IMAGEDIR="/media/zram/$1"
|
||||
export OPUS_IMAGEDIR="$OPUS_OUTPUT/$1"
|
||||
make-base "$OPUS_IMAGEDIR" # Base image
|
||||
cd "$(dirname "$(realpath -s "$BASH_SOURCE")")"
|
||||
source shell
|
||||
source "env-$1"
|
||||
|
||||
(
|
||||
set -e
|
||||
# export OPUS_OUTPUT="/media/zram"
|
||||
export OPUS_IMAGEDIR_BASE="$OPUS_OUTPUT/$1/base"
|
||||
export OPUS_IMAGEDIR_FINAL="$OPUS_OUTPUT/$1/final"
|
||||
export OPUS_PACKAGES=""
|
||||
export OPUS_PACKAGES_INTERACTIVE=""
|
||||
export OPUS_PACKAGES_DL=""
|
||||
export OPUS_PACKAGES_REMOVE=""
|
||||
|
||||
# Base
|
||||
source apply-mod "$OPUS_HOME/input/sources" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/oobe" "$OPUS_IMAGEDIR"
|
||||
if [ -d "$OPUS_IMAGEDIR_BASE-tmp" ]; then
|
||||
rm -f -r "$OPUS_IMAGEDIR_BASE-tmp"
|
||||
fi
|
||||
|
||||
# Base - Hardware
|
||||
source apply-mod "$OPUS_HOME/input/kernel" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/firmware-free" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/grub" "$OPUS_IMAGEDIR"
|
||||
if ! [ -d "$OPUS_IMAGEDIR_BASE" ]; then
|
||||
mkdir -p "$OPUS_IMAGEDIR_BASE-tmp"
|
||||
make-base "$OPUS_IMAGEDIR_BASE-tmp" # Base image
|
||||
source apply-mod "$OPUS_HOME/input/sources" "$OPUS_IMAGEDIR_BASE-tmp"
|
||||
mv "$OPUS_IMAGEDIR_BASE-tmp" "$OPUS_IMAGEDIR_BASE"
|
||||
fi
|
||||
|
||||
# Graphical
|
||||
source apply-mod "$OPUS_HOME/input/packages-graphical" "$OPUS_IMAGEDIR"
|
||||
if [ -d "$OPUS_IMAGEDIR_FINAL-tmp" ]; then
|
||||
rm -f -r "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
fi
|
||||
|
||||
# Overrides
|
||||
source apply-mod "$OPUS_HOME/input/hostname" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/user-config" "$OPUS_IMAGEDIR"
|
||||
if ! [ -d "$OPUS_IMAGEDIR_FINAL" ]; then
|
||||
echo "Copying base image ..."
|
||||
cp -a "$OPUS_IMAGEDIR_BASE" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
# Hardware
|
||||
source apply-mod "$OPUS_HOME/mods/kernel" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/firmware-free" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/grub" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Raw image
|
||||
source apply-mod "$OPUS_HOME/input/image-raw" "$OPUS_IMAGEDIR"
|
||||
# Graphical
|
||||
source apply-mod "$OPUS_HOME/mods/packages-graphical" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Packages
|
||||
source apply-mod "$OPUS_HOME/input/fast-dpkg" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/packages-apply" "$OPUS_IMAGEDIR"
|
||||
# Overrides
|
||||
source apply-mod "$OPUS_HOME/mods/hostname" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/user-config" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Extra
|
||||
source apply-mod "$OPUS_HOME/input/clean-logs" "$OPUS_IMAGEDIR"
|
||||
# Raw image
|
||||
# source apply-mod "$OPUS_HOME/input/image-raw" "$OPUS_IMAGEDIR"
|
||||
|
||||
make-image "$OPUS_IMAGEDIR" "$OPUS_OUTPUT/${OPUS_NAME}-${OPUS_DIST}-${OPUS_ARCH}_$(date "+%Y.%m.%d-%H.%M.%S").img" # Disk image
|
||||
then
|
||||
# Packages
|
||||
source apply-mod "$OPUS_HOME/mods/fast-dpkg" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/packages-apply" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Extra
|
||||
source apply-mod "$OPUS_HOME/mods/oobe" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/clean-logs" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
mv "$OPUS_IMAGEDIR_FINAL-tmp" "$OPUS_IMAGEDIR_FINAL"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Done."
|
||||
#make-image-gz "$OPUS_IMAGEDIR" "$OPUS_OUTPUT/${OPUS_NAME}-${OPUS_DIST}-${OPUS_ARCH}_$(date "+%Y.%m.%d-%H.%M.%S").tar.gz" # tar.gz image
|
||||
)
|
||||
if [ $? != 0 ]; then
|
||||
set +e
|
||||
else
|
||||
set +e
|
||||
echo
|
||||
echo Script execution ended due to error. Cleaning up...
|
||||
echo "Script execution ended due to error. Cleaning up..."
|
||||
fchroot-end "$OPUS_IMAGEDIR"
|
||||
rm -r "$OPUS_IMAGEDIR"
|
||||
echo Script execution ended due to error.
|
||||
echo "Script execution ended due to error."
|
||||
exit 1
|
||||
fi
|
@ -1,56 +1,72 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
if
|
||||
if [ "$1" = "" ]; then
|
||||
echo "Define i386/amd64 as the first argument."
|
||||
exit 1
|
||||
fi
|
||||
cd "$(dirname "$(realpath -s "$BASH_SOURCE")")"
|
||||
source shell
|
||||
source "env-$1"
|
||||
source "env-proprietary"
|
||||
#export OPUS_IMAGEDIR="/media/zram/$1"
|
||||
export OPUS_IMAGEDIR="$OPUS_OUTPUT/$1"
|
||||
make-base "$OPUS_IMAGEDIR" # Base image
|
||||
cd "$(dirname "$(realpath -s "$BASH_SOURCE")")"
|
||||
source shell
|
||||
source "env-$1"
|
||||
|
||||
(
|
||||
set -e
|
||||
# export OPUS_OUTPUT="/media/zram"
|
||||
export OPUS_IMAGEDIR_BASE="$OPUS_OUTPUT/$1/base"
|
||||
export OPUS_IMAGEDIR_FINAL="$OPUS_OUTPUT/$1/final"
|
||||
export OPUS_PACKAGES=""
|
||||
export OPUS_PACKAGES_INTERACTIVE=""
|
||||
export OPUS_PACKAGES_DL=""
|
||||
export OPUS_PACKAGES_REMOVE=""
|
||||
|
||||
# Base
|
||||
source apply-mod "$OPUS_HOME/input/sources" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/oobe" "$OPUS_IMAGEDIR"
|
||||
if [ -d "$OPUS_IMAGEDIR_BASE-tmp" ]; then
|
||||
rm -f -r "$OPUS_IMAGEDIR_BASE-tmp"
|
||||
fi
|
||||
|
||||
# Base - Hardware
|
||||
source apply-mod "$OPUS_HOME/input/kernel" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/firmware-free" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/firmware-proprietary" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/grub" "$OPUS_IMAGEDIR"
|
||||
if ! [ -d "$OPUS_IMAGEDIR_BASE" ]; then
|
||||
mkdir -p "$OPUS_IMAGEDIR_BASE-tmp"
|
||||
make-base "$OPUS_IMAGEDIR_BASE-tmp" # Base image
|
||||
source apply-mod "$OPUS_HOME/input/sources" "$OPUS_IMAGEDIR_BASE-tmp"
|
||||
mv "$OPUS_IMAGEDIR_BASE-tmp" "$OPUS_IMAGEDIR_BASE"
|
||||
fi
|
||||
|
||||
# Graphical
|
||||
source apply-mod "$OPUS_HOME/input/packages-graphical" "$OPUS_IMAGEDIR"
|
||||
if [ -d "$OPUS_IMAGEDIR_FINAL-tmp" ]; then
|
||||
rm -f -r "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
fi
|
||||
|
||||
# Overrides
|
||||
source apply-mod "$OPUS_HOME/input/hostname" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/user-config" "$OPUS_IMAGEDIR"
|
||||
if ! [ -d "$OPUS_IMAGEDIR_FINAL" ]; then
|
||||
echo "Copying base image ..."
|
||||
cp -a "$OPUS_IMAGEDIR_BASE" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
# Hardware
|
||||
source apply-mod "$OPUS_HOME/mods/kernel" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/firmware-free" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/firmware-proprietary" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/grub" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Raw image
|
||||
source apply-mod "$OPUS_HOME/input/image-raw" "$OPUS_IMAGEDIR"
|
||||
# Graphical
|
||||
source apply-mod "$OPUS_HOME/mods/packages-graphical" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Packages
|
||||
source apply-mod "$OPUS_HOME/input/fast-dpkg" "$OPUS_IMAGEDIR"
|
||||
source apply-mod "$OPUS_HOME/input/packages-apply" "$OPUS_IMAGEDIR"
|
||||
# Overrides
|
||||
source apply-mod "$OPUS_HOME/mods/hostname" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/user-config" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Extra
|
||||
source apply-mod "$OPUS_HOME/input/clean-logs" "$OPUS_IMAGEDIR"
|
||||
# Raw image
|
||||
# source apply-mod "$OPUS_HOME/input/image-raw" "$OPUS_IMAGEDIR"
|
||||
|
||||
make-image "$OPUS_IMAGEDIR" "$OPUS_OUTPUT/${OPUS_NAME}-${OPUS_DIST}-${OPUS_ARCH}_$(date "+%Y.%m.%d-%H.%M.%S").img" # Disk image
|
||||
then
|
||||
# Packages
|
||||
source apply-mod "$OPUS_HOME/mods/fast-dpkg" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/packages-apply" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
|
||||
# Extra
|
||||
source apply-mod "$OPUS_HOME/mods/oobe" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
source apply-mod "$OPUS_HOME/mods/clean-logs" "$OPUS_IMAGEDIR_FINAL-tmp"
|
||||
mv "$OPUS_IMAGEDIR_FINAL-tmp" "$OPUS_IMAGEDIR_FINAL"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Done."
|
||||
#make-image-gz "$OPUS_IMAGEDIR" "$OPUS_OUTPUT/${OPUS_NAME}-${OPUS_DIST}-${OPUS_ARCH}_$(date "+%Y.%m.%d-%H.%M.%S").tar.gz" # tar.gz image
|
||||
)
|
||||
if [ $? != 0 ]; then
|
||||
set +e
|
||||
else
|
||||
set +e
|
||||
echo
|
||||
echo Script execution ended due to error. Cleaning up...
|
||||
echo "Script execution ended due to error. Cleaning up..."
|
||||
fchroot-end "$OPUS_IMAGEDIR"
|
||||
rm -r "$OPUS_IMAGEDIR"
|
||||
echo Script execution ended due to error.
|
||||
echo "Script execution ended due to error."
|
||||
exit 1
|
||||
fi
|
@ -1,2 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
find "$1/var/log" -type f -delete
|
@ -1,2 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
export OPUS_PACKAGES="$OPUS_PACKAGES firmware-linux-free firmware-ath9k-htc"
|
@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
function sfp {
|
||||
packages=""
|
||||
while read p; do
|
||||
@ -7,6 +7,7 @@ function sfp {
|
||||
packages="$packages ${packageinfo[0]}"
|
||||
fi
|
||||
done <<<$(apt-cache search "$1")
|
||||
echo $packages
|
||||
echo "${packages//"firmware-ipw2x00"/""}"
|
||||
}
|
||||
export OPUS_PACKAGES="$OPUS_PACKAGES firmware-linux firmware-misc-nonfree $(sfp wireless) $(sfp wifi) $(sfp net)"
|
||||
export OPUS_PACKAGES_INTERACTIVE="$OPUS_PACKAGES_INTERACTIVE firmware-ipw2x00"
|
@ -1,2 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
export OPUS_PACKAGES="$OPUS_PACKAGES grub2"
|
@ -1,2 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
echo $(head -c4 </dev/urandom|xxd -p -u) >"$1/etc/hostname"
|
@ -1,3 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
#!/bin/bash
|
||||
export OPUS_PACKAGES="$OPUS_PACKAGES cloud-utils"
|
@ -1,3 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
export OPUS_PACKAGES="$OPUS_PACKAGES sudo keyboard-configuration network-manager python3 cloud-utils ecryptfs-utils rsync lsof"
|
||||
export OPUS_PACKAGES_DL="$OPUS_PACKAGES console-setup locales tzdata"
|
@ -1,7 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
apt -y update
|
||||
apt -y upgrade
|
||||
DEBIAN_FRONTEND="noninteractive"
|
||||
apt -y install $OPUS_PACKAGES
|
||||
apt -y install --download-only $OPUS_PACKAGES_DL
|
||||
unset DEBIAN_FRONTEND
|
||||
apt -y install $OPUS_PACKAGES_INTERACTIVE
|
||||
apt -y remove $OPUS_PACKAGES_REMOVE
|
||||
apt -y autoclean
|
@ -1,3 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
export OPUS_PACKAGES="$OPUS_PACKAGES xorg xfce4 xfce4-*-plugin xfce4-power-manager gvfs gvfs-backends gvfs-fuse network-manager-gnome xfce4-terminal xfce4-screenshooter mousepad netsurf-gtk xautolock xsecurelock qt5-style-plugins alsa-utils synaptic epiphany-browser"
|
||||
export OPUS_PACKAGES_REMOVE="$OPUS_PACKAGES_REMOVE xscreensaver"
|
@ -1,2 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
echo "$OPUS_SOURCES" >"$1/etc/apt/sources.list"
|
4
path/make-image-gz
Executable file
4
path/make-image-gz
Executable file
@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
cd "$OPUS_IMAGEDIR"
|
||||
tar -czvf "$2"
|
7
shell
7
shell
@ -1,9 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
set -e
|
||||
alias cp="cp --reflink=auto"
|
||||
export OPUS_NAME="opus-dvn"
|
||||
export OPUS_HOME="$(dirname "$(realpath -s "$BASH_SOURCE")")"
|
||||
export PATH="$OPUS_HOME/path:$PATH"
|
||||
export OPUS_PID="$BASHPID"
|
||||
export OPUS_OUTPUT="$OPUS_HOME/output"
|
||||
export OPUS_OUTPUT="$OPUS_HOME/chroots"
|
||||
export OPUS_URL="http://deb.devuan.org/merged"
|
||||
export OPUS_DIST="chimaera"
|
||||
export OPUS_SOURCES="deb http://deb.devuan.org/merged $OPUS_DIST main
|
||||
@ -17,7 +19,6 @@ deb http://pkgmaster.devuan.org/merged $OPUS_DIST-security main
|
||||
# deb http://deb.devuan.org/merged $OPUS_DIST-updates main
|
||||
# deb-src http://deb.devuan.org/merged $OPUS_DIST-updates main
|
||||
"
|
||||
#export DEBIAN_FRONTEND="noninteractive"
|
||||
export PS1="\[\033[0;35m\]\$OPUS_NAME \$OPUS_ARCH \[\033[0m\]- \[\033[0;37m\]\$PWD\[\033[0m\]: "
|
||||
env
|
||||
echo ""
|
||||
|
Loading…
Reference in New Issue
Block a user