minimal blend management and stub for package management
This commit is contained in:
parent
ec1c3080bd
commit
d7abbc1393
|
|
@ -0,0 +1,97 @@
|
||||||
|
#!/usr/bin/env zsh
|
||||||
|
#
|
||||||
|
# Copyright (c) 2016 Dyne.org Foundation
|
||||||
|
# libdevuansdk is written and maintained by
|
||||||
|
# Jaromil <jaromil@dyne.org>
|
||||||
|
# KatolaZ <katolaz@freaknet.org>
|
||||||
|
# parazyd <parazyd@dyne.org>
|
||||||
|
#
|
||||||
|
# This file is part of libdevuansdk
|
||||||
|
#
|
||||||
|
# This source code is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This software is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this source code. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
## blend-related functions
|
||||||
|
|
||||||
|
|
||||||
|
## Apply a blend, i.e. read the "blend" file and source the
|
||||||
|
## corresponding *_init and *_run files
|
||||||
|
##
|
||||||
|
## FIXME!!!! We need a way to check that the source of init and run
|
||||||
|
## files were successful, so that we can popd as necessary upon failure
|
||||||
|
##
|
||||||
|
blend_apply(){
|
||||||
|
fn blend_apply $@
|
||||||
|
|
||||||
|
blenddir=$1
|
||||||
|
req=(blenddir strapdir arch)
|
||||||
|
reqck || return 1
|
||||||
|
|
||||||
|
if [[ ! -d $blenddir || ! -f ${blenddir}/blend ]]; then
|
||||||
|
error "::1 dir:: is not a valid blend" $blenddir
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
pushd $blenddir
|
||||||
|
source blend
|
||||||
|
|
||||||
|
## Check if release is among the supported blend_releases
|
||||||
|
[[ -z ${blend_releases[(r)$release]} ]] && {
|
||||||
|
error "::1 rel:: is not among the releases supported by blend ::2 dir:: " $rel $blenddir;
|
||||||
|
popd;
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
[[ -z ${blend_archs[(r)$arch]} ]] && {
|
||||||
|
error "::1 arch:: is not among the architectures supported by blend ::2 dir:: " $arch $blenddir;
|
||||||
|
popd;
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
notice "Selecting blend architecture ::1 arch:: " $arch
|
||||||
|
pushd ${arch}
|
||||||
|
|
||||||
|
[[ -n ${blend_init} ]] && {
|
||||||
|
notice "Initialising blend ::1 blend:: " $blenddir
|
||||||
|
##
|
||||||
|
[[ ! -f ${blend_init} ]] && {
|
||||||
|
error "Blend initialisation file \"::1 file::\" not found" ${blend_init}
|
||||||
|
popd
|
||||||
|
popd
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
source ${blend_init}
|
||||||
|
act "Initialisation successful"
|
||||||
|
}
|
||||||
|
|
||||||
|
[[ -n ${blend_run} ]] && {
|
||||||
|
|
||||||
|
notice "Applying blend ::1 blend:: " $blenddir
|
||||||
|
##
|
||||||
|
[[ ! -f ${blend_run} ]] && {
|
||||||
|
error "Blend run file \"::1 file::\" not found" ${blend_run}
|
||||||
|
popd
|
||||||
|
popd
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
source ${blend_run}
|
||||||
|
act "Application successful"
|
||||||
|
}
|
||||||
|
# come back to blend main dir
|
||||||
|
popd
|
||||||
|
# come back to working directory before the call to blend_apply
|
||||||
|
popd
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,64 @@
|
||||||
|
#!/usr/bin/env zsh
|
||||||
|
#
|
||||||
|
# Copyright (c) 2016 Dyne.org Foundation
|
||||||
|
# libdevuansdk is written and maintained by
|
||||||
|
# Jaromil <jaromil@dyne.org>
|
||||||
|
# KatolaZ <katolaz@freaknet.org>
|
||||||
|
# parazyd <parazyd@dyne.org>
|
||||||
|
#
|
||||||
|
# This file is part of libdevuansdk
|
||||||
|
#
|
||||||
|
# This source code is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This software is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this source code. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
|
||||||
|
pkg_install_chroot(){
|
||||||
|
fn pkg_install_chroot $@
|
||||||
|
|
||||||
|
pkg_name=$1
|
||||||
|
root=${2:-$strapdir}
|
||||||
|
req=(pkg_name root)
|
||||||
|
reqck || return 1
|
||||||
|
|
||||||
|
mountdevprocsys ${root}
|
||||||
|
|
||||||
|
sudo chroot ${root} apt-get --yes --force-yes install $kernel
|
||||||
|
|
||||||
|
umountdevprocsys ${root}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
pkg_install_ssh(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
pkg_remove_chroot(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
pkg_remove_ssh(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
pkg_set_package_list(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue