summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNicolás Reynolds <fauno@kiwwwi.com.ar>2011-05-22 20:39:30 -0300
committerNicolás Reynolds <fauno@kiwwwi.com.ar>2011-05-22 20:39:30 -0300
commit24df19be6faa641aced0127de471a26d7f582db1 (patch)
tree23ae17aad5b29d3c8764e180c4b0c7bb61347e26 /src
parent1dc28733f9853a51878403275c3b9e5f5edb74f1 (diff)
Removed mentions to [core] that assumed all required packages were there. Changed to base and base-devel.2011.05.22
Diffstat (limited to 'src')
-rw-r--r--src/core/libs/lib-pacman.sh13
-rw-r--r--src/core/libs/lib-ui-interactive.sh22
2 files changed, 22 insertions, 13 deletions
diff --git a/src/core/libs/lib-pacman.sh b/src/core/libs/lib-pacman.sh
index 495c545..7049735 100644
--- a/src/core/libs/lib-pacman.sh
+++ b/src/core/libs/lib-pacman.sh
@@ -97,20 +97,21 @@ EOF
# not sorted
list_package_groups ()
{
- $PACMAN_TARGET -Sg
+ echo -e "base\nbase-devel"
}
# List the packages in one or more repos or groups. output is one or more lines, each line being like this:
# <repo/group name> packagename [version, if $1=repo]
# lines are sorted by packagename
-# $1 repo or group
-# $2 one or more repo or group names
+# $action repo or group
+# $@ one or more repo or group names
list_packages ()
{
- [ "$1" = repo -o "$1" = group ] || die_error "list_packages \$1 must be repo or group. not $1!"
- [ "$1" = repo ] && $PACMAN_TARGET -Sl $2
- [ "$1" = group ] && $PACMAN_TARGET -Sg $2
+ action=$1; shift
+ [ "$action" = repo -o "$action" = group ] || die_error "list_packages \$action must be repo or group. not $action!"
+ [ "$action" = repo ] && $PACMAN_TARGET -Sql $@
+ [ "$action" = group ] && $PACMAN_TARGET -Sqg $@
}
# find out the group to which one or more packages belong
diff --git a/src/core/libs/lib-ui-interactive.sh b/src/core/libs/lib-ui-interactive.sh
index 19ddd10..fa366e4 100644
--- a/src/core/libs/lib-ui-interactive.sh
+++ b/src/core/libs/lib-ui-interactive.sh
@@ -725,10 +725,17 @@ interactive_select_packages() {
# set up our install location if necessary and sync up so we can get package lists
target_prepare_pacman || { show_warning 'Pacman preparation failure' "Pacman preparation failed! Check $LOG for errors."; return 1; }
- repos=`list_pacman_repos target`
- notify "Package selection is split into three stages. First, you will select a bootloader. Then, you will select package groups that contain packages that you may be interested in. Lastly, you will be presented with a full list of packages for each group, allowing you to fine-tune.\n\n
-Note that right now the packages (and groups) selection is limited to the repos available at this time ($repos). Once you have your Arch system up and running, you have access to more repositories and packages.\n\n
-If any previous configuration you've done until now (like fancy filesystems) require extra packages, we've already preselected them for your convenience"
+ repos=`list_pacman_repos target` notify "Package selection is split
+into three stages. First, you will select a bootloader. Then, you will
+select package groups that contain packages that you may be interested
+in. Lastly, you will be presented with a full list of packages for
+each group, allowing you to fine-tune.\n\n Note that right now the
+packages (and groups) selection is limited to the repos available
+at this time ($repos). Once you have your Parabola system up and
+running, you have access to more repositories and packages.\n\n If
+any previous configuration you've done until now (like fancy
+filesystems) require extra packages, we've already preselected
+them for your convenience"
# show group listing for group selection, base is ON by default, all others are OFF
local grouplist=(base ^ ON)
@@ -747,8 +754,9 @@ If any previous configuration you've done until now (like fancy filesystems) req
ask_checklist "Select Package groups\nDo not deselect base unless you know what you're doing!" 0 "${grouplist[@]}" || return 1
grouplist=("${ANSWER_CHECKLIST[@]}")
- # get sorted array of available packages, with their groups. TODO: we should use $repos here
- local pkgall=($(list_packages repo core | cut -d ' ' -f2))
+ # get sorted array of available packages, with their groups.
+ # show all packages from base and base-devel
+ local pkgall=($(list_packages group base base-devel | sort -u))
pkginfo "${pkgall[@]}"
# build the list of options, sorted primarily by group, then by packagename (this is already). marking where appropriate
@@ -760,7 +768,7 @@ If any previous configuration you've done until now (like fancy filesystems) req
mark=ON
fi
pkglist+=("$pkgname" "$pkggroup" $mark "$pkgname $pkgver: $pkgdesc")
- done < <(echo "$PACKAGE_INFO" | sort -f -k 3)
+ done < <(echo "$PACKAGE_INFO" | sort -u -f -k 3)
[ ${#pkglist[@]} -eq 0 ] && show_warning "No packages found" "Sorry. I could not find any packages. maybe your network is not setup correctly, you lost connection, no mirror setup, bad group, ..." && return 1