forked from artix/artools
Compare commits
19 Commits
Author | SHA1 | Date | |
---|---|---|---|
ede2ac11e2 | |||
e8913b07c3 | |||
f5f9a2acb8 | |||
c6f7df51d2 | |||
b105207138 | |||
55e98abdc1 | |||
896c031ea9 | |||
8f16db45e8 | |||
47ee03e1a4 | |||
17f49857e2 | |||
68e23f7e47 | |||
c5228a8b43 | |||
84151f360f | |||
a6ca83be7e | |||
0a07a1f1dd | |||
9dedb2e4cb | |||
dcf6ec1d7b | |||
62022faad7 | |||
dea81dd9f9 |
2
Makefile
2
Makefile
@@ -1,4 +1,4 @@
|
|||||||
VERSION=0.14
|
VERSION=0.15
|
||||||
|
|
||||||
CHROOT_VERSION=0.10
|
CHROOT_VERSION=0.10
|
||||||
|
|
||||||
|
@@ -112,10 +112,10 @@ chroot_extra_mount() {
|
|||||||
chroot_add_resolv_conf "$1"
|
chroot_add_resolv_conf "$1"
|
||||||
chroot_mount "/etc/hosts" "$1/etc/hosts" -B
|
chroot_mount "/etc/hosts" "$1/etc/hosts" -B
|
||||||
chroot_mount "${cache_dirs[0]}" "$1${cache_dirs[0]}" -B
|
chroot_mount "${cache_dirs[0]}" "$1${cache_dirs[0]}" -B
|
||||||
if [[ -e /etc/localtime ]];then
|
# if [[ -e /etc/localtime ]];then
|
||||||
[[ -e $1/etc/localtime ]] || touch $1/etc/localtime
|
# [[ -e $1/etc/localtime ]] || touch $1/etc/localtime
|
||||||
chroot_mount "/etc/localtime" "$1/etc/localtime" -B
|
# chroot_mount "/etc/localtime" "$1/etc/localtime" -B
|
||||||
fi
|
# fi
|
||||||
|
|
||||||
for cache_dir in ${cache_dirs[@]:1}; do
|
for cache_dir in ${cache_dirs[@]:1}; do
|
||||||
chroot_mount "$cache_dir" "$1${cache_dir}" -Br
|
chroot_mount "$cache_dir" "$1${cache_dir}" -Br
|
||||||
|
@@ -33,7 +33,7 @@ gen_iso_fn(){
|
|||||||
prepare_build(){
|
prepare_build(){
|
||||||
timer_start=$(get_timer)
|
timer_start=$(get_timer)
|
||||||
|
|
||||||
load_profile "${PROFILE}"
|
load_profile
|
||||||
|
|
||||||
local pacman_conf pac_file="pacman-default.conf"
|
local pacman_conf pac_file="pacman-default.conf"
|
||||||
|
|
||||||
|
@@ -73,6 +73,25 @@ show_deps(){
|
|||||||
[[ -n ${optdepends[@]} ]] && msg2 "optdepends: %s" "${optdepends[@]}"
|
[[ -n ${optdepends[@]} ]] && msg2 "optdepends: %s" "${optdepends[@]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
subrepo_new(){
|
||||||
|
local group="${1:-$GROUP}" team="${2:-$TEAM}"
|
||||||
|
local dest=${TREE_DIR_ARTIX}/$group/${PACKAGE}/trunk
|
||||||
|
|
||||||
|
cd ${TREE_DIR_ARTIX}/$group
|
||||||
|
|
||||||
|
local org=$(get_pkg_org "${PACKAGE}")
|
||||||
|
|
||||||
|
create_repo "${PACKAGE}" "$org"
|
||||||
|
|
||||||
|
add_repo_to_team "${PACKAGE}" "$org" "$team"
|
||||||
|
|
||||||
|
subrepo_clone "${PACKAGE}" "$org"
|
||||||
|
|
||||||
|
prepare_dir "$dest"
|
||||||
|
|
||||||
|
commit_jenkins_files "${PACKAGE}"
|
||||||
|
}
|
||||||
|
|
||||||
from_arch(){
|
from_arch(){
|
||||||
local src= dest=
|
local src= dest=
|
||||||
|
|
||||||
@@ -103,7 +122,7 @@ from_arch(){
|
|||||||
|
|
||||||
msg2 "Artix Version: %s" "$artixver"
|
msg2 "Artix Version: %s" "$artixver"
|
||||||
else
|
else
|
||||||
subrepo_new "${PACKAGE}" "$tree_dir" "$git_tree_arch"
|
subrepo_new "$tree_dir" "$git_tree_arch"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg "Sync (%s) from [%s] to [%s]" "${PACKAGE}" "$git_tree_arch" "$tree_dir"
|
msg "Sync (%s) from [%s] to [%s]" "${PACKAGE}" "$git_tree_arch" "$tree_dir"
|
||||||
@@ -146,25 +165,6 @@ sync_repos(){
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
subrepo_new(){
|
|
||||||
local dest=${TREE_DIR_ARTIX}/${GROUP}/${PACKAGE}/trunk
|
|
||||||
|
|
||||||
cd ${TREE_DIR_ARTIX}/${GROUP}
|
|
||||||
|
|
||||||
local org=$(get_pkg_org "${PACKAGE}")
|
|
||||||
|
|
||||||
create_repo "${PACKAGE}" "$org"
|
|
||||||
|
|
||||||
add_repo_to_team "${PACKAGE}" "$org" "${TEAM:-$GROUP}"
|
|
||||||
|
|
||||||
subrepo_clone "${PACKAGE}" "$org"
|
|
||||||
|
|
||||||
prepare_dir "$dest"
|
|
||||||
|
|
||||||
commit_jenkins_files "${PACKAGE}"
|
|
||||||
}
|
|
||||||
|
|
||||||
load_user_info
|
load_user_info
|
||||||
|
|
||||||
load_config "${USERCONFDIR}/artools/artools.conf" || load_config "${SYSCONFDIR}/artools.conf"
|
load_config "${USERCONFDIR}/artools/artools.conf" || load_config "${SYSCONFDIR}/artools.conf"
|
||||||
|
@@ -28,6 +28,53 @@ load_user_info
|
|||||||
load_vars "${USERCONFDIR}/pacman/makepkg.conf" || load_vars "$USER_HOME/.makepkg.conf"
|
load_vars "${USERCONFDIR}/pacman/makepkg.conf" || load_vars "$USER_HOME/.makepkg.conf"
|
||||||
load_vars /etc/makepkg.conf
|
load_vars /etc/makepkg.conf
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
cat <<- _EOF_
|
||||||
|
Usage: ${BASH_SOURCE[0]##*/} [OPTIONS]
|
||||||
|
|
||||||
|
Searches for a locally built package corresponding to the PKGBUILD, and
|
||||||
|
downloads the last version of that package from the Pacman repositories.
|
||||||
|
It then compares the list of .so files provided by each version of the
|
||||||
|
package and outputs if there are soname differences for the new package.
|
||||||
|
A directory is also created using mktemp with files containing a file
|
||||||
|
list for both packages and a library list for both packages.
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
-r, --rmdir Remove the temporary directory
|
||||||
|
-w, --warn Print a warning in case of differences
|
||||||
|
-h, --help Show this help text
|
||||||
|
_EOF_
|
||||||
|
}
|
||||||
|
|
||||||
|
RMDIR=0
|
||||||
|
WARN=0
|
||||||
|
|
||||||
|
OPT_SHORT='rwh'
|
||||||
|
OPT_LONG=('rmdir' 'warn' 'help')
|
||||||
|
if ! parseopts "$OPT_SHORT" "${OPT_LONG[@]}" -- "$@"; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
set -- "${OPTRET[@]}"
|
||||||
|
|
||||||
|
while :; do
|
||||||
|
case $1 in
|
||||||
|
-r|--rmdir)
|
||||||
|
RMDIR=1
|
||||||
|
;;
|
||||||
|
-w|--warn)
|
||||||
|
WARN=1
|
||||||
|
;;
|
||||||
|
-h|--help)
|
||||||
|
usage
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
--)
|
||||||
|
shift; break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
if [[ ! -f PKGBUILD ]]; then
|
if [[ ! -f PKGBUILD ]]; then
|
||||||
die 'This must be run in the directory of a built package.'
|
die 'This must be run in the directory of a built package.'
|
||||||
fi
|
fi
|
||||||
@@ -38,6 +85,7 @@ if [[ $arch == 'any' ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
STARTDIR=$(pwd)
|
STARTDIR=$(pwd)
|
||||||
|
(( RMDIR )) && trap 'rm -rf $TEMPDIR' EXIT INT TERM QUIT
|
||||||
TEMPDIR=$(mktemp -d --tmpdir checkpkg-script.XXXX)
|
TEMPDIR=$(mktemp -d --tmpdir checkpkg-script.XXXX)
|
||||||
|
|
||||||
for _pkgname in "${pkgname[@]}"; do
|
for _pkgname in "${pkgname[@]}"; do
|
||||||
@@ -90,9 +138,12 @@ for _pkgname in "${pkgname[@]}"; do
|
|||||||
find-libprovides "$TEMPDIR/$oldpkg" 2>/dev/null | sort > "$TEMPDIR/libraries-$_pkgname-old"
|
find-libprovides "$TEMPDIR/$oldpkg" 2>/dev/null | sort > "$TEMPDIR/libraries-$_pkgname-old"
|
||||||
find-libprovides "$pkgfile" 2>/dev/null | sort > "$TEMPDIR/libraries-$_pkgname"
|
find-libprovides "$pkgfile" 2>/dev/null | sort > "$TEMPDIR/libraries-$_pkgname"
|
||||||
if ! diff_output="$(sdiff -s "$TEMPDIR/libraries-$_pkgname-old" "$TEMPDIR/libraries-$_pkgname")"; then
|
if ! diff_output="$(sdiff -s "$TEMPDIR/libraries-$_pkgname-old" "$TEMPDIR/libraries-$_pkgname")"; then
|
||||||
msg "Sonames differ in %s!" "$_pkgname"
|
message="Sonames differ in $_pkgname!"
|
||||||
|
(( WARN )) && warning "$message" || msg "$message"
|
||||||
echo "$diff_output"
|
echo "$diff_output"
|
||||||
else
|
else
|
||||||
msg "No soname differences for %s" "$_pkgname."
|
msg "No soname differences for %s" "$_pkgname."
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
(( RMDIR )) || msg "Files saved to %s" "$TEMPDIR"
|
||||||
|
@@ -225,14 +225,8 @@ _chrootbuild() {
|
|||||||
sudo --preserve-env=SOURCE_DATE_EPOCH -iu builduser bash -c 'cd /startdir; makepkg "$@"' -bash "$@"
|
sudo --preserve-env=SOURCE_DATE_EPOCH -iu builduser bash -c 'cd /startdir; makepkg "$@"' -bash "$@"
|
||||||
ret=$?
|
ret=$?
|
||||||
case $ret in
|
case $ret in
|
||||||
0)
|
0|14)
|
||||||
return 0;;
|
return 0;;
|
||||||
14)
|
|
||||||
# whitelist "The package failed to install." but only if there are multiple split packages
|
|
||||||
# in which case they might be conflicting
|
|
||||||
local pkgfiles=(/pkgdest/*.pkg.tar.xz)
|
|
||||||
(( ${#pkgfiles[@]} > 1))
|
|
||||||
return $?;;
|
|
||||||
*)
|
*)
|
||||||
return $ret;;
|
return $ret;;
|
||||||
esac
|
esac
|
||||||
|
@@ -19,16 +19,19 @@
|
|||||||
|
|
||||||
# TREE_DIR_ARTIX=${WORKSPACE_DIR}/artixlinux
|
# TREE_DIR_ARTIX=${WORKSPACE_DIR}/artixlinux
|
||||||
|
|
||||||
|
# customize buildtree, packages and community should be enabled
|
||||||
# TREE_NAMES_ARTIX=(
|
# TREE_NAMES_ARTIX=(
|
||||||
# packages
|
# packages
|
||||||
# community
|
# community
|
||||||
# packages-kernel
|
# packages-kernel
|
||||||
# packages-openrc
|
# packages-openrc
|
||||||
# packages-runit
|
# packages-runit
|
||||||
|
# packages-s6
|
||||||
# packages-media
|
# packages-media
|
||||||
# packages-xorg
|
# packages-xorg
|
||||||
# packages-python
|
# packages-python
|
||||||
# packages-perl
|
# packages-perl
|
||||||
|
# packages-java
|
||||||
# packages-qt5
|
# packages-qt5
|
||||||
# packages-devel
|
# packages-devel
|
||||||
# packages-ruby
|
# packages-ruby
|
||||||
@@ -61,7 +64,7 @@
|
|||||||
# the dist release; default: auto
|
# the dist release; default: auto
|
||||||
# ISO_VERSION=$(date +%Y%m%d)
|
# ISO_VERSION=$(date +%Y%m%d)
|
||||||
|
|
||||||
# possible values: openrc, runit (s6 not yet supported)
|
# possible values: openrc, runit, s6
|
||||||
# INITSYS="openrc"
|
# INITSYS="openrc"
|
||||||
|
|
||||||
# gpg key; leave empty or commented to skip sfs signing
|
# gpg key; leave empty or commented to skip sfs signing
|
||||||
|
@@ -84,6 +84,7 @@ init_artools_pkg(){
|
|||||||
packages-xorg
|
packages-xorg
|
||||||
packages-python
|
packages-python
|
||||||
packages-perl
|
packages-perl
|
||||||
|
packages-java
|
||||||
packages-qt5
|
packages-qt5
|
||||||
packages-devel
|
packages-devel
|
||||||
packages-ruby
|
packages-ruby
|
||||||
@@ -94,6 +95,7 @@ init_artools_pkg(){
|
|||||||
packages-mate
|
packages-mate
|
||||||
packages-kde
|
packages-kde
|
||||||
packages-xfce
|
packages-xfce
|
||||||
|
# packages-haskell
|
||||||
)
|
)
|
||||||
|
|
||||||
HOST_TREE_ARTIX=${HOST_TREE_ARTIX:-"gitea@${GIT_DOMAIN}:artixlinux"}
|
HOST_TREE_ARTIX=${HOST_TREE_ARTIX:-"gitea@${GIT_DOMAIN}:artixlinux"}
|
||||||
|
@@ -28,6 +28,15 @@ add_svc_runit(){
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
add_svc_s6(){
|
||||||
|
local mnt="$1" name="$2"
|
||||||
|
if [[ -d $mnt/etc/s6/sv/$name ]]; then
|
||||||
|
msg2 "Setting %s ..." "$name"
|
||||||
|
# chroot $mnt s6-rc-bundle $name default &>/dev/null
|
||||||
|
# chroot $mnt s6-rc -u change default &>/dev/null
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
set_xdm(){
|
set_xdm(){
|
||||||
if [[ -f $1/etc/conf.d/xdm ]];then
|
if [[ -f $1/etc/conf.d/xdm ]];then
|
||||||
local conf='DISPLAYMANAGER="'${DISPLAYMANAGER}'"'
|
local conf='DISPLAYMANAGER="'${DISPLAYMANAGER}'"'
|
||||||
@@ -70,6 +79,14 @@ configure_services(){
|
|||||||
add_svc_runit "$mnt" "$svc"
|
add_svc_runit "$mnt" "$svc"
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
's6')
|
||||||
|
for svc in ${SERVICES[@]}; do
|
||||||
|
add_svc_s6 "$mnt" "$svc"
|
||||||
|
done
|
||||||
|
for svc in ${SERVICES_LIVE[@]}; do
|
||||||
|
add_svc_s6 "$mnt" "$svc"
|
||||||
|
done
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
info "Done configuring [%s]" "${INITSYS}"
|
info "Done configuring [%s]" "${INITSYS}"
|
||||||
}
|
}
|
||||||
@@ -77,7 +94,7 @@ configure_services(){
|
|||||||
configure_system(){
|
configure_system(){
|
||||||
local mnt="$1"
|
local mnt="$1"
|
||||||
case ${INITSYS} in
|
case ${INITSYS} in
|
||||||
'openrc' | 'runit')
|
'openrc' | 'runit'|'s6')
|
||||||
configure_logind "$mnt" "elogind"
|
configure_logind "$mnt" "elogind"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -131,6 +148,15 @@ write_servicescfg_conf(){
|
|||||||
yaml+=$(write_yaml_map 4 'runlevel' 'default')
|
yaml+=$(write_yaml_map 4 'runlevel' 'default')
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
's6')
|
||||||
|
yaml+=$(write_yaml_map 0 'svDir' '/etc/s6/sv')
|
||||||
|
yaml+=$(write_yaml_map 0 'rcDir' '/etc/s6-rc')
|
||||||
|
yaml+=$(write_yaml_map 0 'services')
|
||||||
|
for svc in ${SERVICES[@]};do
|
||||||
|
yaml+=$(write_yaml_seq_map 2 'name' "$svc")
|
||||||
|
yaml+=$(write_yaml_map 4 'bundle' 'default')
|
||||||
|
done
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
yaml+=$(write_empty_line)
|
yaml+=$(write_empty_line)
|
||||||
printf '%s' "${yaml}"
|
printf '%s' "${yaml}"
|
||||||
@@ -142,7 +168,7 @@ write_unpackfs_conf(){
|
|||||||
yaml+=$(write_yaml_map 0 'unpack')
|
yaml+=$(write_yaml_map 0 'unpack')
|
||||||
yaml+=$(write_yaml_seq_map 2 'source' "/run/artix/bootmnt/artix/x86_64/rootfs.sfs")
|
yaml+=$(write_yaml_seq_map 2 'source' "/run/artix/bootmnt/artix/x86_64/rootfs.sfs")
|
||||||
yaml+=$(write_yaml_map 4 'sourcefs' 'squashfs')
|
yaml+=$(write_yaml_map 4 'sourcefs' 'squashfs')
|
||||||
yaml+=$(write_yaml_map 4 'destination' '')
|
yaml+=$(write_yaml_map 4 'destination' '""')
|
||||||
yaml+=$(write_empty_line)
|
yaml+=$(write_empty_line)
|
||||||
printf '%s' "${yaml}"
|
printf '%s' "${yaml}"
|
||||||
}
|
}
|
||||||
@@ -159,14 +185,14 @@ configure_calamares(){
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
configure_live_image(){
|
configure_image(){
|
||||||
local fs="$1"
|
local fs="$1"
|
||||||
msg "Configuring [livefs]"
|
msg "Configuring [%s]" "${fs##*/}"
|
||||||
configure_hosts "$fs"
|
configure_hosts "$fs"
|
||||||
configure_system "$fs"
|
configure_system "$fs"
|
||||||
configure_services "$fs"
|
configure_services "$fs"
|
||||||
configure_calamares "$fs"
|
configure_calamares "$fs"
|
||||||
[[ ! -d "$fs/etc/artools" ]] && mkdir -p "$fs/etc/artools"
|
[[ ! -d "$fs/etc/artools" ]] && mkdir -p "$fs/etc/artools"
|
||||||
write_live_session_conf > "$fs/etc/artools/live.conf"
|
write_live_session_conf > "$fs/etc/artools/live.conf"
|
||||||
msg "Done configuring [livefs]"
|
msg "Done configuring [%s]" "${fs##*/}"
|
||||||
}
|
}
|
||||||
|
@@ -32,7 +32,7 @@ prepare_initramfs(){
|
|||||||
su ${OWNER} -c "gpg --export ${GPG_KEY} >/tmp/GPG_KEY"
|
su ${OWNER} -c "gpg --export ${GPG_KEY} >/tmp/GPG_KEY"
|
||||||
exec 17<>/tmp/GPG_KEY
|
exec 17<>/tmp/GPG_KEY
|
||||||
fi
|
fi
|
||||||
local _kernel=$(cat $mnt/usr/lib/modules/*/version)
|
local _kernel=$(<$mnt/usr/src/linux/version)
|
||||||
ARTIX_GNUPG_FD=${GPG_KEY:+17} artools-chroot $mnt \
|
ARTIX_GNUPG_FD=${GPG_KEY:+17} artools-chroot $mnt \
|
||||||
/usr/bin/mkinitcpio -k ${_kernel} \
|
/usr/bin/mkinitcpio -k ${_kernel} \
|
||||||
-c /etc/mkinitcpio-artix.conf \
|
-c /etc/mkinitcpio-artix.conf \
|
||||||
@@ -59,14 +59,13 @@ prepare_boot_extras(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
configure_grub(){
|
configure_grub(){
|
||||||
local conf="$1/boot/grub/kernels.cfg"
|
sed -e "s|@iso_label@|${iso_label}|" -i ${iso_root}/boot/grub/kernels.cfg
|
||||||
sed -e "s|@iso_label@|${iso_label}|" -i $conf
|
|
||||||
}
|
}
|
||||||
|
|
||||||
prepare_grub(){
|
prepare_grub(){
|
||||||
local platform=i386-pc img='core.img' prefix=/boot/grub
|
local platform=i386-pc img='core.img' prefix=/boot/grub
|
||||||
local lib=$1/usr/lib/grub theme=$2/usr/share/grub
|
local lib=$1/usr/lib/grub theme=$2/usr/share/grub
|
||||||
local grub=$3/boot/grub efi=$3/efi/boot
|
local grub=${iso_root}/boot/grub efi=${iso_root}/efi/boot
|
||||||
|
|
||||||
prepare_dir ${grub}/${platform}
|
prepare_dir ${grub}/${platform}
|
||||||
|
|
||||||
@@ -104,7 +103,7 @@ prepare_grub(){
|
|||||||
grub-mkfont -o ${grub}/unicode.pf2 /usr/share/fonts/misc/unifont.bdf
|
grub-mkfont -o ${grub}/unicode.pf2 /usr/share/fonts/misc/unifont.bdf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local size=4M mnt="${mnt_dir}/efiboot" efi_img="$3/efi.img"
|
local size=4M mnt="${mnt_dir}/efiboot" efi_img="${iso_root}/efi.img"
|
||||||
msg2 "Creating fat image of %s ..." "${size}"
|
msg2 "Creating fat image of %s ..." "${size}"
|
||||||
truncate -s ${size} "${efi_img}"
|
truncate -s ${size} "${efi_img}"
|
||||||
mkfs.fat -n ARTIX_EFI "${efi_img}" &>/dev/null
|
mkfs.fat -n ARTIX_EFI "${efi_img}" &>/dev/null
|
||||||
|
@@ -44,7 +44,10 @@ mount_overlay(){
|
|||||||
mkdir -p "$upper"
|
mkdir -p "$upper"
|
||||||
case $upper in
|
case $upper in
|
||||||
*/livefs) lower="$work/rootfs" ;;
|
*/livefs) lower="$work/rootfs" ;;
|
||||||
*/bootfs) lower="$work/livefs":"$work/rootfs" ;;
|
*/bootfs)
|
||||||
|
lower="$work/rootfs"
|
||||||
|
[[ -d "$work/livefs" ]] && lower="$work/livefs":"$work/rootfs"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
track_fs -t overlay overlay -olowerdir="$lower",upperdir="$upper",workdir="${mnt_dir}/work" "$upper"
|
track_fs -t overlay overlay -olowerdir="$lower",upperdir="$upper",workdir="${mnt_dir}/work" "$upper"
|
||||||
}
|
}
|
||||||
|
@@ -12,21 +12,6 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
init_profile(){
|
|
||||||
local profdir="$1" prof="$2"
|
|
||||||
|
|
||||||
ROOT_LIST="$profdir/base/Packages-Root"
|
|
||||||
ROOT_OVERLAY="$profdir/base/root-overlay"
|
|
||||||
LIVE_LIST="$profdir/base/Packages-Live"
|
|
||||||
LIVE_OVERLAY="$profdir/base/live-overlay"
|
|
||||||
|
|
||||||
[[ -f "$profdir/$prof/Packages-Root" ]] && ROOT_LIST="$profdir/$prof/Packages-Root"
|
|
||||||
[[ -d "$profdir/$prof/root-overlay" ]] && ROOT_OVERLAY="$profdir/$prof/root-overlay"
|
|
||||||
|
|
||||||
[[ -f "$profdir/$prof/Packages-Live" ]] && LIVE_LIST="$profdir/$prof/Packages-Live"
|
|
||||||
[[ -d "$profdir/$prof/live-overlay" ]] && LIVE_OVERLAY="$profdir/$prof/live-overlay"
|
|
||||||
}
|
|
||||||
|
|
||||||
show_profile(){
|
show_profile(){
|
||||||
msg2 "iso_file: %s" "${iso_file}"
|
msg2 "iso_file: %s" "${iso_file}"
|
||||||
msg2 "AUTOLOGIN: %s" "${AUTOLOGIN}"
|
msg2 "AUTOLOGIN: %s" "${AUTOLOGIN}"
|
||||||
@@ -39,15 +24,18 @@ show_profile(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
load_profile(){
|
load_profile(){
|
||||||
local prof="$1"
|
local profile_dir="${DATADIR}/iso-profiles"
|
||||||
local profdir="${DATADIR}/iso-profiles"
|
[[ -d ${WORKSPACE_DIR}/iso-profiles ]] && profile_dir=${WORKSPACE_DIR}/iso-profiles
|
||||||
[[ -d ${WORKSPACE_DIR}/iso-profiles ]] && profdir=${WORKSPACE_DIR}/iso-profiles
|
|
||||||
|
|
||||||
init_profile "$profdir" "$prof"
|
ROOT_LIST="$profile_dir/${PROFILE}/Packages-Root"
|
||||||
|
ROOT_OVERLAY="$profile_dir/${PROFILE}/root-overlay"
|
||||||
|
|
||||||
[[ -f $profdir/$prof/profile.conf ]] || return 1
|
[[ -f "$profile_dir/${PROFILE}/Packages-Live" ]] && LIVE_LIST="$profile_dir/${PROFILE}/Packages-Live"
|
||||||
|
[[ -d "$profile_dir/${PROFILE}/live-overlay" ]] && LIVE_OVERLAY="$profile_dir/${PROFILE}/live-overlay"
|
||||||
|
|
||||||
[[ -r $profdir/$prof/profile.conf ]] && . $profdir/$prof/profile.conf
|
[[ -f $profile_dir/${PROFILE}/profile.conf ]] || return 1
|
||||||
|
|
||||||
|
[[ -r $profile_dir/${PROFILE}/profile.conf ]] && . $profile_dir/${PROFILE}/profile.conf
|
||||||
|
|
||||||
DISPLAYMANAGER=${DISPLAYMANAGER:-'none'}
|
DISPLAYMANAGER=${DISPLAYMANAGER:-'none'}
|
||||||
|
|
||||||
@@ -63,13 +51,13 @@ load_profile(){
|
|||||||
ADDGROUPS=${ADDGROUPS:-"video,power,optical,network,lp,scanner,wheel,users,log"}
|
ADDGROUPS=${ADDGROUPS:-"video,power,optical,network,lp,scanner,wheel,users,log"}
|
||||||
|
|
||||||
if [[ -z ${SERVICES[@]} ]];then
|
if [[ -z ${SERVICES[@]} ]];then
|
||||||
SERVICES=('acpid' 'bluetooth' 'cronie' 'cupsd' 'syslog-ng' 'NetworkManager')
|
SERVICES=('acpid' 'bluetooth' 'cronie' 'cupsd' 'syslog-ng' 'connman')
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ ${DISPLAYMANAGER} != "none" ]];then
|
if [[ ${DISPLAYMANAGER} != "none" ]];then
|
||||||
case "${INITSYS}" in
|
case "${INITSYS}" in
|
||||||
'openrc') SERVICES+=('xdm') ;;
|
'openrc') SERVICES+=('xdm') ;;
|
||||||
'runit') SERVICES+=("${DISPLAYMANAGER}") ;;
|
'runit'|'s6') SERVICES+=("${DISPLAYMANAGER}") ;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -97,7 +85,7 @@ load_pkgs(){
|
|||||||
|
|
||||||
local _init="s|@$init||g"
|
local _init="s|@$init||g"
|
||||||
case "$init" in
|
case "$init" in
|
||||||
'openrc') _init_rm1="s|@runit.*||g"; _init_rm2="s|@s6*||g" ;;
|
'openrc') _init_rm1="s|@runit.*||g"; _init_rm2="s|@s6.*||g" ;;
|
||||||
's6') _init_rm1="s|@runit.*||g"; _init_rm2="s|@openrc.*||g" ;;
|
's6') _init_rm1="s|@runit.*||g"; _init_rm2="s|@openrc.*||g" ;;
|
||||||
'runit') _init_rm1="s|@s6.*||g"; _init_rm2="s|@openrc.*||g" ;;
|
'runit') _init_rm1="s|@s6.*||g"; _init_rm2="s|@openrc.*||g" ;;
|
||||||
esac
|
esac
|
||||||
|
@@ -13,9 +13,6 @@
|
|||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
error_function() {
|
error_function() {
|
||||||
if [[ -p $logpipe ]]; then
|
|
||||||
rm "$logpipe"
|
|
||||||
fi
|
|
||||||
local func="$1"
|
local func="$1"
|
||||||
# first exit all subshells, then print the error
|
# first exit all subshells, then print the error
|
||||||
if (( ! BASH_SUBSHELL )); then
|
if (( ! BASH_SUBSHELL )); then
|
||||||
@@ -134,6 +131,8 @@ make_rootfs() {
|
|||||||
|
|
||||||
copy_overlay "${ROOT_OVERLAY}" "${rootfs}"
|
copy_overlay "${ROOT_OVERLAY}" "${rootfs}"
|
||||||
|
|
||||||
|
[[ -z ${LIVE_LIST} ]] && configure_image "${rootfs}"
|
||||||
|
|
||||||
clean_up_image "${rootfs}"
|
clean_up_image "${rootfs}"
|
||||||
|
|
||||||
: > ${work_dir}/rootfs.lock
|
: > ${work_dir}/rootfs.lock
|
||||||
@@ -155,7 +154,7 @@ make_livefs() {
|
|||||||
|
|
||||||
copy_overlay "${LIVE_OVERLAY}" "${livefs}"
|
copy_overlay "${LIVE_OVERLAY}" "${livefs}"
|
||||||
|
|
||||||
configure_live_image "${livefs}"
|
configure_image "${livefs}"
|
||||||
|
|
||||||
umount_overlay
|
umount_overlay
|
||||||
|
|
||||||
@@ -198,9 +197,12 @@ make_grub(){
|
|||||||
if [[ ! -e ${work_dir}/grub.lock ]]; then
|
if [[ ! -e ${work_dir}/grub.lock ]]; then
|
||||||
msg "Prepare [/iso/boot/grub]"
|
msg "Prepare [/iso/boot/grub]"
|
||||||
|
|
||||||
prepare_grub "${work_dir}/rootfs" "${work_dir}/livefs" "${iso_root}"
|
local layer=${work_dir}/rootfs
|
||||||
|
[[ -n ${LIVE_LIST} ]] && layer=${work_dir}/livefs
|
||||||
|
|
||||||
configure_grub "${iso_root}"
|
prepare_grub "${work_dir}/rootfs" "$layer"
|
||||||
|
|
||||||
|
configure_grub
|
||||||
|
|
||||||
: > ${work_dir}/grub.lock
|
: > ${work_dir}/grub.lock
|
||||||
msg "Done [/iso/boot/grub]"
|
msg "Done [/iso/boot/grub]"
|
||||||
@@ -218,7 +220,7 @@ prepare_images(){
|
|||||||
local timer=$(get_timer)
|
local timer=$(get_timer)
|
||||||
load_pkgs "${ROOT_LIST}" "${INITSYS}"
|
load_pkgs "${ROOT_LIST}" "${INITSYS}"
|
||||||
run_safe "make_rootfs"
|
run_safe "make_rootfs"
|
||||||
if [[ -f ${LIVE_LIST} ]]; then
|
if [[ -n ${LIVE_LIST} ]]; then
|
||||||
load_pkgs "${LIVE_LIST}" "${INITSYS}"
|
load_pkgs "${LIVE_LIST}" "${INITSYS}"
|
||||||
run_safe "make_livefs"
|
run_safe "make_livefs"
|
||||||
fi
|
fi
|
||||||
|
@@ -54,9 +54,10 @@ load_team_id(){
|
|||||||
add_repo_to_team(){
|
add_repo_to_team(){
|
||||||
local pkg="$1" org="$2" team="$3"
|
local pkg="$1" org="$2" team="$3"
|
||||||
local id=$(load_team_id "$org" "$team")
|
local id=$(load_team_id "$org" "$team")
|
||||||
|
local gitname=$(get_compliant_name "$pkg")
|
||||||
|
|
||||||
msg2 "Adding package repo [%s] to team (%s)" "$pkg" "$team"
|
msg2 "Adding package repo [%s] to team (%s)" "$gitname" "$team"
|
||||||
|
|
||||||
curl -s -X PUT "${GIT_URL}/api/v1/teams/$id/repos/$org/$pkg?access_token=${GIT_TOKEN}" \
|
curl -s -X PUT "${GIT_URL}/api/v1/teams/$id/repos/$org/$gitname?access_token=${GIT_TOKEN}" \
|
||||||
-H "accept: application/json"
|
-H "accept: application/json"
|
||||||
}
|
}
|
||||||
|
@@ -81,7 +81,7 @@ pull_tree(){
|
|||||||
local remote_head=$(get_remote_head)
|
local remote_head=$(get_remote_head)
|
||||||
|
|
||||||
msg "Checking %s (%s)" "${tree}" "$os"
|
msg "Checking %s (%s)" "${tree}" "$os"
|
||||||
if $(has_changes "${local_head}" "${remote_head}");then
|
if has_changes "${local_head}" "${remote_head}";then
|
||||||
git pull origin master
|
git pull origin master
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@@ -149,10 +149,13 @@ get_artix_tree(){
|
|||||||
$(get_cases ruby)) tree=packages-ruby ;;
|
$(get_cases ruby)) tree=packages-ruby ;;
|
||||||
$(get_cases openrc)) tree=packages-openrc ;;
|
$(get_cases openrc)) tree=packages-openrc ;;
|
||||||
$(get_cases runit)) tree=packages-runit ;;
|
$(get_cases runit)) tree=packages-runit ;;
|
||||||
|
$(get_cases s6)) tree=packages-s6 ;;
|
||||||
$(get_cases media)) tree=packages-media ;;
|
$(get_cases media)) tree=packages-media ;;
|
||||||
$(get_cases xorg)) tree=packages-xorg ;;
|
$(get_cases xorg)) tree=packages-xorg ;;
|
||||||
$(get_cases qt5)) tree=packages-qt5 ;;
|
$(get_cases qt5)) tree=packages-qt5 ;;
|
||||||
$(get_cases gtk)) tree=packages-gtk ;;
|
$(get_cases gtk)) tree=packages-gtk ;;
|
||||||
|
$(get_cases java)) tree=packages-java ;;
|
||||||
|
$(get_cases haskell)) tree=packages-haskell ;;
|
||||||
$(get_cases devel)) tree=packages-devel ;;
|
$(get_cases devel)) tree=packages-devel ;;
|
||||||
$(get_cases lxqt)) tree=packages-lxqt ;;
|
$(get_cases lxqt)) tree=packages-lxqt ;;
|
||||||
$(get_cases cinnamon)) tree=packages-cinnamon ;;
|
$(get_cases cinnamon)) tree=packages-cinnamon ;;
|
||||||
|
Reference in New Issue
Block a user