Adding -r, --repositories option to select preconfigured third-party repositories more easily.
This commit is contained in:
parent
af374e3c00
commit
78a85f9b83
2
Makefile
2
Makefile
|
@ -27,7 +27,7 @@ build:
|
|||
install:
|
||||
# Installing shared data
|
||||
mkdir -p $(DESTDIR)/usr/share/live-helper
|
||||
cp -r cgi data examples live-helper.sh functions helpers hooks includes lists templates $(DESTDIR)/usr/share/live-helper
|
||||
cp -r cgi data examples live-helper.sh functions helpers hooks includes lists repositories templates $(DESTDIR)/usr/share/live-helper
|
||||
|
||||
# Installing executables
|
||||
mkdir -p $(DESTDIR)/usr/bin
|
||||
|
|
|
@ -120,6 +120,50 @@ case "${1}" in
|
|||
done
|
||||
fi
|
||||
|
||||
# Configure third-party repositories
|
||||
if [ -n "${LH_REPOSITORIES}" ]
|
||||
then
|
||||
for REPOSITORY in ${LH_REPOSITORIES}
|
||||
do
|
||||
for PLACE in config/repositories "${LH_BASE}/repositories"
|
||||
do
|
||||
# Prefer repositories from the config tree
|
||||
# over the global ones.
|
||||
if ! ls "${PLACE}/${REPOSITORY}"* > /dev/null 2>&1
|
||||
then
|
||||
continue
|
||||
fi
|
||||
|
||||
# Adding sources.list entries (chroot)
|
||||
if [ -e "${PLACE}/${REPOSITORY}.chroot" ]
|
||||
then
|
||||
sed -e "s|@DISTRIBUTION@|${LH_DISTRIBUTION}|g" \
|
||||
-e "s|@ARCHIVE_AREAS@|${LH_ARCHIVE_AREAS}|g" \
|
||||
"${PLACE}/${REPOSITORY}.chroot" > \
|
||||
"chroot/etc/apt/sources.list.d/${REPOSITORY}.list"
|
||||
elif [ -e "${PLACE}/${REPOSITORY}" ]
|
||||
then
|
||||
sed -e "s|@DISTRIBUTION@|${LH_DISTRIBUTION}|g" \
|
||||
-e "s|@ARCHIVE_AREAS@|${LH_ARCHIVE_AREAS}|g" \
|
||||
"${PLACE}/${REPOSITORY}" > \
|
||||
"chroot/etc/apt/sources.list.d/${REPOSITORY}.list"
|
||||
fi
|
||||
|
||||
if [ "${LH_APT_SECURE}" != false ]
|
||||
then
|
||||
# Adding archive signing keys (chroot)
|
||||
if [ -e "${PLACE}/${REPOSITORY}.chroot.gpg" ]
|
||||
then
|
||||
cat "${PLACE}/${REPOSITORY}.chroot.gpg" | Chroot chroot "apt-key add -"
|
||||
elif [ -e "${PLACE}/${REPOSITORY}.gpg" ]
|
||||
then
|
||||
cat "${PLACE}/${REPOSITORY}.gpg" | Chroot chroot "apt-key add -"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Configure local package repository
|
||||
if Find_files config/chroot_local-packages/*.deb
|
||||
then
|
||||
|
@ -453,6 +497,53 @@ case "${1}" in
|
|||
esac
|
||||
fi
|
||||
|
||||
# Configure third-party repositories
|
||||
if [ -n "${LH_REPOSITORIES}" ]
|
||||
then
|
||||
for REPOSITORY in ${LH_REPOSITORIES}
|
||||
do
|
||||
# Removing sources.list entries (chroot)
|
||||
rm -f "chroot/etc/apt/sources.list.d/${REPOSITORY}.list"
|
||||
|
||||
for PLACE in config/repositories "${LH_BASE}/repositories"
|
||||
do
|
||||
# Prefer repositories from the config tree
|
||||
# over the global ones.
|
||||
if ! ls "${PLACE}/${REPOSITORY}"* > /dev/null 2>&1
|
||||
then
|
||||
continue
|
||||
fi
|
||||
|
||||
# Adding sources.list entries (binary)
|
||||
if [ -e "${PLACE}/${REPOSITORY}.binary" ]
|
||||
then
|
||||
sed -e "s|@DISTRIBUTION@|${LH_DISTRIBUTION}|g" \
|
||||
-e "s|@ARCHIVE_AREAS@|${LH_ARCHIVE_AREAS}|g" \
|
||||
"${PLACE}/${REPOSITORY}.binary" > \
|
||||
"chroot/etc/apt/sources.list.d/${REPOSITORY}.list"
|
||||
elif [ -e "${PLACE}/${REPOSITORY}" ]
|
||||
then
|
||||
sed -e "s|@DISTRIBUTION@|${LH_DISTRIBUTION}|g" \
|
||||
-e "s|@ARCHIVE_AREAS@|${LH_ARCHIVE_AREAS}|g" \
|
||||
"${PLACE}/${REPOSITORY}" > \
|
||||
"chroot/etc/apt/sources.list.d/${REPOSITORY}.list"
|
||||
fi
|
||||
|
||||
if [ "${LH_APT_SECURE}" != false ]
|
||||
then
|
||||
# Adding archive signing keys (binary)
|
||||
if [ -e "${PLACE}/${REPOSITORY}.binary.gpg" ]
|
||||
then
|
||||
cat "${PLACE}/${REPOSITORY}.binary.gpg" | Chroot chroot "apt-key add -"
|
||||
elif [ -e "${PLACE}/${REPOSITORY}.gpg" ]
|
||||
then
|
||||
cat "${PLACE}/${REPOSITORY}.gpg" | Chroot chroot "apt-key add -"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Check local sources.list
|
||||
if Find_files config/chroot_sources/*.binary
|
||||
then
|
||||
|
|
|
@ -109,6 +109,7 @@ USAGE="${PROGRAM} [--apt apt|aptitude]\n\
|
|||
\t [-p|--packages-lists FILE]\n\
|
||||
\t [--packages PACKAGE|\"PACKAGES\"]\n\
|
||||
\t [--quiet]\n\
|
||||
\t [-r|--repositories REPOSITORY|\"REPOSITORIES\"]\n\
|
||||
\t [--root-command sudo]\n\
|
||||
\t [--use-fakeroot true|false]\n\
|
||||
\t [--archive-areas ARCHIVE_AREA|\"ARCHIVE_AREAS\"]\n\
|
||||
|
@ -135,7 +136,7 @@ Local_arguments ()
|
|||
LONG_OPTIONS="apt:,apt-ftp-proxy:,apt-http-proxy:,apt-pdiffs:,apt-options:,aptitute-options:,
|
||||
apt-pipeline:,apt-recommends:,apt-secure:,bootstrap:,cache:,cache-indices:,cache-packages:,
|
||||
cache-stages:,debconf-frontend:,debconf-nowarnings:,debconf-priority:,dump,
|
||||
initramfs:,fdisk:,losetup:,mode:,root-command:,use-fakeroot:,tasksel:,includes:,
|
||||
initramfs:,fdisk:,losetup:,mode:,repositories:,root-command:,use-fakeroot:,tasksel:,includes:,
|
||||
templates:,architecture:,bootstrap-config:,bootstrap-flavour:,bootstrap-keyring:,clean,
|
||||
distribution:,mirror-bootstrap:,mirror-chroot:,mirror-chroot-security:,mirror-chroot-volatile:,mirror-binary:,
|
||||
mirror-binary-security:,mirror-binary-volatile:,mirror-debian-installer:,archive-areas:,chroot-filesystem:,exposed-root:,virtual-root-size:,
|
||||
|
@ -151,7 +152,7 @@ Local_arguments ()
|
|||
help,ignore-system-defaults,quiet,usage,verbose,version"
|
||||
# Remove spaces added by indentation
|
||||
LONG_OPTIONS="$(echo ${LONG_OPTIONS} | tr -d ' ')"
|
||||
ARGUMENTS="$(getopt --longoptions ${LONG_OPTIONS} --name=${PROGRAM} --options a:f:d:m:l:k:p:b:e:s:c:huv --shell sh -- "${@}")"
|
||||
ARGUMENTS="$(getopt --longoptions ${LONG_OPTIONS} --name=${PROGRAM} --options a:f:d:m:l:k:p:b:e:r:s:c:huv --shell sh -- "${@}")"
|
||||
|
||||
if [ "${?}" != "0" ]
|
||||
then
|
||||
|
@ -330,6 +331,11 @@ Local_arguments ()
|
|||
shift 2
|
||||
;;
|
||||
|
||||
-r|--repositories)
|
||||
LH_REPOSITORIES="${2}"
|
||||
shift 2
|
||||
;;
|
||||
|
||||
--root-command)
|
||||
LH_ROOT_COMMAND="${2}"
|
||||
shift 2
|
||||
|
@ -1072,6 +1078,10 @@ LH_LINUX_FLAVOURS="${LH_LINUX_FLAVOURS}"
|
|||
# (Default: autodetected)
|
||||
LH_LINUX_PACKAGES="${LH_LINUX_PACKAGES}"
|
||||
|
||||
# \$LH_REPOSITORIES: enable available third-party repositories
|
||||
# (Default: empty)
|
||||
LH_REPOSITORIES="${LH_REPOSITORIES}"
|
||||
|
||||
# \$LH_PACKAGES: set packages to install
|
||||
# (Default: empty)
|
||||
LH_PACKAGES="${LH_PACKAGES}"
|
||||
|
|
|
@ -159,6 +159,8 @@ lh_config \- create configuration for live\-helper
|
|||
[\-p|\fB\-\-packages\-lists\fR \fIFILE\fR]
|
||||
.br
|
||||
[\fB\-\-packages\fR \fIPACKAGE\fR|\fI"PACKAGES"\fR]
|
||||
.br
|
||||
[\fB\-r, \-\-repositories \fIREPOSITORY\fR|\fI"REPOSITORIES"\fR]
|
||||
.br
|
||||
[\fB\-\-root-command\fR sudo]
|
||||
.br
|
||||
|
@ -369,6 +371,8 @@ defines the format of the netboot image. Choosing tar results in a not compresse
|
|||
defines which lists available in /usr/share/live-helper/lists should be used. By default, this is set to standard. Note that in case you have local packages lists, you don't need to list them here. Putting them into config/chroot_local-packageslists is enough (the filename needs to have the .list suffix though).
|
||||
.IP "\fB\-\-packages\fR \fIPACKAGE\fR|\fI""PACKAGES""\fR" 4
|
||||
defines one or more packages to be installed in the live system. This is a quick and convenient place to add a few packages when building an image (limited by the max length of shell). Packages that should be permanently installed should be put into a local packages list.
|
||||
.IP "\fB\-r, \-\-repositories\fR \fIREPOSITORY\fR|\fI""REPOSITORIES""\fR" 4
|
||||
enables one of available third-party repository configurations in /usr/share/live-helper/repositories.
|
||||
.IP "\fB\-\-root-command\fR sudo" 4
|
||||
controls if live-helper should use sudo internally to build the live image. Note that this is not well tested and that you should, when relying on sudo, call the individual live\-helper command with sudo itself.
|
||||
.IP "\fB\-\-use-fakeroot\fR true|false" 4
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
# Backports Maintainers
|
||||
deb http://backports.debian-maintainers.org/ @DISTRIBUTION@/backports @ARCHIVE_AREAS@
|
||||
deb-src http://backports.debian-maintainers.org/ @DISTRIBUTION@/backports @ARCHIVE_AREAS@
|
|
@ -0,0 +1,20 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.9 (GNU/Linux)
|
||||
|
||||
mQENBEtljiMBCADSIplButAWL0OuM4uvDtZYjBcPlQNjwQDZ/Dpg5QuRAgNSUdx7
|
||||
wBQOQXqC4LCi9ykpvYi8FEtz0bl60M9uJdc4n+130It8gSZs7Cn0WoFk7uo0S4IS
|
||||
79EQdP+yfZNv/vY11cv6TwOb7JEqB5BI7T642Y+UgQZnpT/Diykks986CYeZSfpm
|
||||
6gnASAEe0jJg79Zpzpc3kBECCwN6fIFZ4MOxkaXgvfhWsOS42s6zxtQXJ65njibR
|
||||
W47Klu75sxPS+5EKaS10C5+Tmv0XpV7S7s8VtRtKemMjYfLdsPmubmGcI+t/uEF7
|
||||
qT2zJLINSIIL01kpVBFpqxCmnO51XURgRqOFABEBAAG0Z2RlYmlhbi1tYWludGFp
|
||||
bmVycy5vcmcgQXJjaGl2ZSBBdXRvbWF0aWMgU2lnbmluZyBLZXkgKDIwMTAwMTAx
|
||||
KSA8c3lzYWRtaW5AbGlzdHMuZGViaWFuLW1haW50YWluZXJzLm9yZz6JAT4EEwEC
|
||||
ACgFAktljiMCGwMFCQHihQAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEJ7r
|
||||
yNubnDy2BeUH/1SWIbqzIh2LkF1XK4iXyXGrzGlqtef5JX/tjaY7RC5gPVyZBP1V
|
||||
jHcozn7Sum09KxaijsgP/lIVZ2tnu9niT2Waz5GPgUv79bqjGc238gEhH5zpbun/
|
||||
WF6UapiINHNYLFx0f18ImQ1gU13hLn0PYvuyN/QKmxaPlcUQtNJc3/ZtyFA0nPpB
|
||||
ejiMEBxgw0H80FWSpawLKUFEStT1Y+khK0fZYVoWl0OwhJbsY/L6nBcfv27zH+5d
|
||||
g7VuNpRte7AyxZEufescwWILTjIq3K2v9XHAy7sJmstfycrHQFy/33hE4yRQcOyu
|
||||
bAMnNqLUp7mwqRw+KYPkAQo/DUlO//SsUKY=
|
||||
=+IFy
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
@ -0,0 +1,3 @@
|
|||
# Debian Live Project
|
||||
deb http://live.debian.net/ @DISTRIBUTION@-snapshots @ARCHIVE_AREAS@
|
||||
deb-src http://live.debian.net/ @DISTRIBUTION@-snapshots @ARCHIVE_AREAS@
|
|
@ -0,0 +1,20 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.9 (GNU/Linux)
|
||||
|
||||
mQENBEtljiMBCADSIplButAWL0OuM4uvDtZYjBcPlQNjwQDZ/Dpg5QuRAgNSUdx7
|
||||
wBQOQXqC4LCi9ykpvYi8FEtz0bl60M9uJdc4n+130It8gSZs7Cn0WoFk7uo0S4IS
|
||||
79EQdP+yfZNv/vY11cv6TwOb7JEqB5BI7T642Y+UgQZnpT/Diykks986CYeZSfpm
|
||||
6gnASAEe0jJg79Zpzpc3kBECCwN6fIFZ4MOxkaXgvfhWsOS42s6zxtQXJ65njibR
|
||||
W47Klu75sxPS+5EKaS10C5+Tmv0XpV7S7s8VtRtKemMjYfLdsPmubmGcI+t/uEF7
|
||||
qT2zJLINSIIL01kpVBFpqxCmnO51XURgRqOFABEBAAG0Z2RlYmlhbi1tYWludGFp
|
||||
bmVycy5vcmcgQXJjaGl2ZSBBdXRvbWF0aWMgU2lnbmluZyBLZXkgKDIwMTAwMTAx
|
||||
KSA8c3lzYWRtaW5AbGlzdHMuZGViaWFuLW1haW50YWluZXJzLm9yZz6JAT4EEwEC
|
||||
ACgFAktljiMCGwMFCQHihQAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEJ7r
|
||||
yNubnDy2BeUH/1SWIbqzIh2LkF1XK4iXyXGrzGlqtef5JX/tjaY7RC5gPVyZBP1V
|
||||
jHcozn7Sum09KxaijsgP/lIVZ2tnu9niT2Waz5GPgUv79bqjGc238gEhH5zpbun/
|
||||
WF6UapiINHNYLFx0f18ImQ1gU13hLn0PYvuyN/QKmxaPlcUQtNJc3/ZtyFA0nPpB
|
||||
ejiMEBxgw0H80FWSpawLKUFEStT1Y+khK0fZYVoWl0OwhJbsY/L6nBcfv27zH+5d
|
||||
g7VuNpRte7AyxZEufescwWILTjIq3K2v9XHAy7sJmstfycrHQFy/33hE4yRQcOyu
|
||||
bAMnNqLUp7mwqRw+KYPkAQo/DUlO//SsUKY=
|
||||
=+IFy
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
@ -0,0 +1,3 @@
|
|||
# Unofficial Maintainers
|
||||
deb http://unofficial.debian-maintainers.org/ @DISTRIBUTION@ @ARCHIVE_AREAS@ restricted
|
||||
deb-src http://unofficial.debian-maintainers.org/ @DISTRIBUTION@ @ARCHIVE_AREAS@ restricted
|
|
@ -0,0 +1,20 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.9 (GNU/Linux)
|
||||
|
||||
mQENBEtljiMBCADSIplButAWL0OuM4uvDtZYjBcPlQNjwQDZ/Dpg5QuRAgNSUdx7
|
||||
wBQOQXqC4LCi9ykpvYi8FEtz0bl60M9uJdc4n+130It8gSZs7Cn0WoFk7uo0S4IS
|
||||
79EQdP+yfZNv/vY11cv6TwOb7JEqB5BI7T642Y+UgQZnpT/Diykks986CYeZSfpm
|
||||
6gnASAEe0jJg79Zpzpc3kBECCwN6fIFZ4MOxkaXgvfhWsOS42s6zxtQXJ65njibR
|
||||
W47Klu75sxPS+5EKaS10C5+Tmv0XpV7S7s8VtRtKemMjYfLdsPmubmGcI+t/uEF7
|
||||
qT2zJLINSIIL01kpVBFpqxCmnO51XURgRqOFABEBAAG0Z2RlYmlhbi1tYWludGFp
|
||||
bmVycy5vcmcgQXJjaGl2ZSBBdXRvbWF0aWMgU2lnbmluZyBLZXkgKDIwMTAwMTAx
|
||||
KSA8c3lzYWRtaW5AbGlzdHMuZGViaWFuLW1haW50YWluZXJzLm9yZz6JAT4EEwEC
|
||||
ACgFAktljiMCGwMFCQHihQAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEJ7r
|
||||
yNubnDy2BeUH/1SWIbqzIh2LkF1XK4iXyXGrzGlqtef5JX/tjaY7RC5gPVyZBP1V
|
||||
jHcozn7Sum09KxaijsgP/lIVZ2tnu9niT2Waz5GPgUv79bqjGc238gEhH5zpbun/
|
||||
WF6UapiINHNYLFx0f18ImQ1gU13hLn0PYvuyN/QKmxaPlcUQtNJc3/ZtyFA0nPpB
|
||||
ejiMEBxgw0H80FWSpawLKUFEStT1Y+khK0fZYVoWl0OwhJbsY/L6nBcfv27zH+5d
|
||||
g7VuNpRte7AyxZEufescwWILTjIq3K2v9XHAy7sJmstfycrHQFy/33hE4yRQcOyu
|
||||
bAMnNqLUp7mwqRw+KYPkAQo/DUlO//SsUKY=
|
||||
=+IFy
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
Loading…
Reference in New Issue