From 40900cfbc2a0ee3530736ef246654a1bf9f61b12 Mon Sep 17 00:00:00 2001 From: Iru Cai Date: Sun, 21 Aug 2016 15:45:54 +0800 Subject: buildlive: add -L option to list available distro isos --- buildlive | 4 ++++ listisos.sh | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100755 listisos.sh diff --git a/buildlive b/buildlive index 9327f43..4d5d52c 100755 --- a/buildlive +++ b/buildlive @@ -23,11 +23,15 @@ fatalerror() { usage() { msg "$0 --root= --dev= [--no-grub] [distro 1] [distro 2] ..." + msg "use $0 -L to list available distros" } while [[ -n "$1" ]] do case "$1" in + -L) + exec ./listisos.sh + ;; --root=*) ROOTPATH=${1/--root=} UUID="$(findmnt -o UUID --raw --noheadings $ROOTPATH \ diff --git a/listisos.sh b/listisos.sh new file mode 100755 index 0000000..1aef8f9 --- /dev/null +++ b/listisos.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +ISOINFOS=($(find distro -name isoinfo)) +for _isoinfo in "${ISOINFOS[@]}" +do + _distrobase="$(cut -d'/' -f1-2 <<< "$_isoinfo")" + _distroisodir="$(dirname $_isoinfo | cut -d'/' -f2-)" + if [ -f "$_distrobase/distroinfo" ]; then + source "$_distrobase/distroinfo" + else + continue + fi + source "$_isoinfo" + if [ -n "$ISONAME" ]; then + echo "$_distroisodir: $ISONAME" + fi +done + -- cgit v1.2.3