* [gentoo-commits] proj/eselect:extern commit in: modules/, /
@ 2014-11-22 6:47 Ben de Groot
0 siblings, 0 replies; 5+ messages in thread
From: Ben de Groot @ 2014-11-22 6:47 UTC (permalink / raw
To: gentoo-commits
commit: 4194fd722b41d916d4db80815c855911b16da583
Author: Ben de Groot <yngwin <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 22 06:47:09 2014 +0000
Commit: Ben de Groot <yngwin <AT> gentoo <DOT> org>
CommitDate: Sat Nov 22 06:47:09 2014 +0000
URL: http://sources.gentoo.org/gitweb/?p=proj/eselect.git;a=commit;h=4194fd72
vi.eselect: add qvim as option (bug #529528)
---
ChangeLog | 1 +
modules/vi.eselect | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index ebab7dc..d8a4855 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
2014-11-22 Ben de Groot <yngwin@gentoo.org>
* modules/vi.eselect: apply patch from 1.1.7-r1
+ * modules/vi.eselect: add qvim as option (bug #529528)
2014-04-23 Christoph Junghans <ottxor@gentoo.org>
diff --git a/modules/vi.eselect b/modules/vi.eselect
index 70ce1c8..573ab11 100644
--- a/modules/vi.eselect
+++ b/modules/vi.eselect
@@ -1,11 +1,10 @@
# -*-eselect-*- vim: ft=eselect
-# Copyright 1999-2010 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
DESCRIPTION="Manage /usr/bin/vi implementations"
MAINTAINER="vim@gentoo.org"
-SVN_DATE='$Date$'
-VERSION=$(svn_date_to_version "${SVN_DATE}" )
+VERSION="1.1.8"
# find a list of vi symlink targets, best first
find_targets() {
@@ -16,6 +15,7 @@ find_targets() {
"${EROOT}"/usr/bin/elvis \
"${EROOT}"/usr/bin/vile \
"${EROOT}"/usr/bin/gvim \
+ "${EROOT}"/usr/bin/qvim \
"${EROOT}"/usr/bin/xvile \
"${EROOT}"/bin/busybox \
; do
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/eselect:extern commit in: modules/, /
@ 2018-03-10 10:22 Ulrich Müller
0 siblings, 0 replies; 5+ messages in thread
From: Ulrich Müller @ 2018-03-10 10:22 UTC (permalink / raw
To: gentoo-commits
commit: 69bb5c568747742622d813d1a6403f7c01dcde20
Author: Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 6 17:22:39 2018 +0000
Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Mar 6 17:22:39 2018 +0000
URL: https://gitweb.gentoo.org/proj/eselect.git/commit/?id=69bb5c56
gnome-shell-extensions.eselect: Do not call eval.
* modules/gnome-shell-extensions.eselect: Inherit tests library.
(has): Remove, it is inherited from tests now.
(gse_read_available, gse_write_config_file): Do not call eval,
fixes bug #643498.
(VERSION): Update. Remove SVN keywords.
ChangeLog | 8 ++++++++
modules/gnome-shell-extensions.eselect | 27 +++++++++------------------
2 files changed, 17 insertions(+), 18 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index d8a4855..6de155b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2018-03-06 Ulrich Müller <ulm@gentoo.org>
+
+ * modules/gnome-shell-extensions.eselect: Inherit tests library.
+ (has): Remove, it is inherited from tests now.
+ (gse_read_available, gse_write_config_file): Do not call eval,
+ fixes bug #643498.
+ (VERSION): Update. Remove SVN keywords.
+
2014-11-22 Ben de Groot <yngwin@gentoo.org>
* modules/vi.eselect: apply patch from 1.1.7-r1
diff --git a/modules/gnome-shell-extensions.eselect b/modules/gnome-shell-extensions.eselect
index 788b459..fe9af12 100644
--- a/modules/gnome-shell-extensions.eselect
+++ b/modules/gnome-shell-extensions.eselect
@@ -1,13 +1,13 @@
# -*-eselect-*- vim: ft=eselect
-# Copyright 2009-2011 Gentoo Foundation
+# Copyright 2009-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 or later
-# $Id: $
+
+inherit tests
DESCRIPTION="Manage default settings for systemwide GNOME Shell extensions"
AUTHOR="tetromino@gentoo.org"
MAINTAINER="gnome@gentoo.org"
-SVN_DATE='$Date: 2012/09/11 15:00:00 -0400 $'
-VERSION=$(svn_date_to_version "${SVN_DATE}")
+VERSION="20180306"
#
# Basic idea: eselect manages a gschema override file located in
@@ -53,18 +53,6 @@ gse_prepare() {
fi
}
-has() {
- # Copied from portage's isolated-functions.sh
- local needle=$1
- shift
-
- local x
- for x in "$@"; do
- [[ "${x}" = "${needle}" ]] && return 0
- done
- return 1
-}
-
gse_print_warnings() {
local n
@@ -113,7 +101,8 @@ gse_read_available() {
done
# Sort $available
if [[ -n "${available[@]}" ]]; then
- eval available=( $(printf '%q\n' "${available[@]}" | sort ) )
+ local IFS=$'\n'
+ available=( $(echo "${available[*]}" | sort ) )
fi
}
@@ -121,7 +110,9 @@ gse_write_config_file() {
local f="${ETCDIR}/${CONFIG_FILE}"
# Sort and uniquefy $enabled
- eval enabled_saved=( $(printf '%q\n' "${enabled[@]}" | sort -u ) )
+ local ifs_save=${IFS} IFS=$'\n'
+ enabled_saved=( $(echo "${enabled[*]}" | sort -u ) )
+ IFS=${ifs_save}
if [[ -e "${f}" ]]; then
[[ -f "${f}" && -w "${f}" ]] || gse_die "${f} is not writable"
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/eselect:extern commit in: modules/, /
@ 2018-08-30 16:45 Ulrich Müller
0 siblings, 0 replies; 5+ messages in thread
From: Ulrich Müller @ 2018-08-30 16:45 UTC (permalink / raw
To: gentoo-commits
commit: 4f487d6cc395f03963f4bb7a68bde985dd73b4a3
Author: Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue May 29 17:10:45 2018 +0000
Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Aug 30 16:44:55 2018 +0000
URL: https://gitweb.gentoo.org/proj/eselect.git/commit/?id=4f487d6c
wxwidgets.eselect: Fix libdir usage.
* modules/wxwidgets.eselect: Inherit multilib library (bug 552500).
(get_confdir): New function, outputs path of wx config dir.
(do_list, do_set, do_update): Use it.
ChangeLog | 6 ++++++
modules/wxwidgets.eselect | 12 +++++++++---
2 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 6de155b..b12c381 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2018-05-29 Ulrich Müller <ulm@gentoo.org>
+
+ * modules/wxwidgets.eselect: Inherit multilib library (bug 552500).
+ (get_confdir): New function, outputs path of wx config dir.
+ (do_list, do_set, do_update): Use it.
+
2018-03-06 Ulrich Müller <ulm@gentoo.org>
* modules/gnome-shell-extensions.eselect: Inherit tests library.
diff --git a/modules/wxwidgets.eselect b/modules/wxwidgets.eselect
index 55d49d2..b1abc1c 100644
--- a/modules/wxwidgets.eselect
+++ b/modules/wxwidgets.eselect
@@ -1,15 +1,18 @@
# -*-eselect-*- vim: ft=eselect
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-inherit config
+inherit config multilib
DESCRIPTION="Manage the system default wxWidgets profile"
MAINTAINER="wxwidgets@gentoo.org"
VERSION="20140423"
WXCONFFILE="${EROOT}"/var/lib/wxwidgets/current
-WXCONFDIR="${EROOT}"/usr/lib/wx/config
+
+get_confdir() {
+ echo "${EROOT}/usr/$(get_libdir)/wx/config"
+}
find_targets() {
local conf
@@ -89,6 +92,7 @@ describe_list() {
}
do_list() {
+ local WXCONFDIR=$(get_confdir)
local i targets currconf
targets=( $(find_targets) )
[[ -e ${WXCONFFILE} ]] && currconf=$(load_config ${WXCONFFILE} WXCONFIG)
@@ -123,6 +127,7 @@ do_set() {
[[ ! -w "${EROOT}"/var/lib/ ]] \
&& die -q "You need write permission to /var/lib to perform this action."
+ local WXCONFDIR=$(get_confdir)
set_config "${1}"
}
@@ -133,6 +138,7 @@ describe_update() {
do_update() {
[[ ! -e ${WXCONFFILE} ]] && do_set none
+ local WXCONFDIR=$(get_confdir)
currconf=$(load_config ${WXCONFFILE} WXCONFIG)
# if current config is valid leave it alone
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/eselect:extern commit in: modules/, /
@ 2020-05-08 4:30 Mike Gilbert
0 siblings, 0 replies; 5+ messages in thread
From: Mike Gilbert @ 2020-05-08 4:30 UTC (permalink / raw
To: gentoo-commits
commit: f473cb298779981b8ec6c522165f41562d67548a
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri May 8 04:28:39 2020 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri May 8 04:30:03 2020 +0000
URL: https://gitweb.gentoo.org/proj/eselect.git/commit/?id=f473cb29
iptables.eselect: new module
Bug: https://bugs.gentoo.org/698746
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
AUTHORS | 3 +
modules/iptables.eselect | 175 +++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 178 insertions(+)
diff --git a/AUTHORS b/AUTHORS
index 77f5bdb..ded9cae 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -36,3 +36,6 @@ Ben de Groot <yngwin@gentoo.org>
Alexandre Rostovtsev <tetromino@gentoo.org>
Modules: gnome-shell-extensions
+
+Chris Pritchard <chris@christopherpritchard.co.uk>
+ Modules: iptables
diff --git a/modules/iptables.eselect b/modules/iptables.eselect
new file mode 100644
index 0000000..f94b25c
--- /dev/null
+++ b/modules/iptables.eselect
@@ -0,0 +1,175 @@
+# -*-eselect-*- vim: ft=eselect
+# Copyright 2005-2020 Gentoo Authors
+# Distributed under the terms of the GNU GPL version 2 or later
+
+DESCRIPTION="Manage the iptables and ip6tables symlink"
+AUTHOR="chris@christopherpritchard.co.uk"
+MAINTAINER="base-system@gentoo.org"
+VERSION="20200319"
+
+IPTABLES_TARGETS=("iptables" "iptables-restore" "iptables-save")
+IP6TABLES_TARGETS=("ip6tables" "ip6tables-restore" "ip6tables-save")
+
+# find a list of xtables symlink targets
+find_targets() {
+ local f
+ for f in "${EROOT}"/sbin/xtables-*-multi; do
+ [[ -f ${f} ]] && basename "${f}"
+ done
+}
+
+# remove the iptables symlink
+remove_symlinks() {
+ local ipt
+ for ipt in "${IPTABLES_TARGETS[@]}"; do
+ rm -f "${EROOT}/sbin/${ipt}" &>/dev/null
+ done
+ if [[ -n ${ipv6} && -n ${ipv6_remove} ]]; then
+ local ip6t
+ for ip6t in "${IP6TABLES_TARGETS[@]}"; do
+ rm -f "${EROOT}/sbin/${ip6t}" &>/dev/null
+ done
+ fi
+}
+
+# set the iptables symlink
+set_symlinks() {
+ local target="${1}"
+
+ if is_number "${target}" && [[ ${target} -ge 1 ]]; then
+ local -a targets
+ readarray -t targets <<< "$(find_targets)"
+ target=${targets[$((target-1))]}
+ fi
+
+ if [[ -z ${target} || ! -f ${EROOT}/sbin/${target} ]]; then
+ die -q "Target \"${target}\" doesn't appear to be valid!"
+ fi
+
+ local ipt
+ for ipt in "${IPTABLES_TARGETS[@]}"; do
+ ln -s "${target}" "${EROOT}/sbin/${ipt}"
+ done
+
+ if [[ -n ${ipv6} ]]; then
+ local ip6t
+ for ip6t in "${IP6TABLES_TARGETS[@]}"; do
+ ln -s "${target}" "${EROOT}/sbin/${ip6t}"
+ done
+ fi
+}
+
+### show action ###
+
+describe_show() {
+ echo "Show the current iptables symlink"
+}
+
+do_show() {
+ local ipv6
+ if [[ -d ${EROOT}/var/lib/ip6tables ]]; then
+ ipv6=1
+ fi
+ write_list_start "Current iptables symlinks:"
+ local ipt all_unset=1
+ for ipt in "${IPTABLES_TARGETS[@]}"; do
+ if [[ -L ${EROOT}/sbin/${ipt} ]]; then
+ local ipta
+ ipta=$(canonicalise "${EROOT}/sbin/${ipt}")
+ write_kv_list_entry "${ipt}" "${ipta%/}"
+ all_unset=0
+ else
+ write_kv_list_entry "${ipt}" "(unset)"
+ fi
+ done
+ if [[ ${ipv6} -eq 1 ]]; then
+ write_list_start "Current ip6tables symlinks:"
+ local ip6t
+ for ip6t in "${IP6TABLES_TARGETS[@]}"; do
+ if [[ -L ${EROOT}/sbin/${ip6t} ]]; then
+ local ipta
+ ipta=$(canonicalise "${EROOT}/sbin/${ip6t}")
+ write_kv_list_entry "${ip6t}" "${ipta%/}"
+ all_unset=0
+ else
+ write_kv_list_entry "${ip6t}" "(unset)"
+ fi
+ done
+ fi
+ return "${all_unset}"
+}
+### list action ###
+
+describe_list() {
+ echo "List available iptables symlink targets"
+}
+
+do_list() {
+ local ipv6
+ local -a targets
+ readarray -t targets <<< "$(find_targets)"
+ if [[ -L ${EROOT}/var/lib/ip6tables ]]; then
+ ipv6=1
+ fi
+ write_list_start "Available iptables symlink targets:"
+ local i
+ for (( i = 0; i < ${#targets[@]}; i++ )); do
+ # highlight the target where the symlink is pointing to
+ [[ ${targets[i]} = \
+ $(basename "$(canonicalise "${EROOT}/sbin/iptables")") ]] \
+ && targets[i]=$(highlight_marker "${targets[i]}")
+ done
+ write_numbered_list -m "(none found)" "${targets[@]}"
+}
+
+### set action ###
+
+describe_set() {
+ echo "Set a new iptables symlink target"
+}
+
+describe_set_parameters() {
+ echo "[--ipv6] <target>"
+}
+
+describe_set_options() {
+ echo "--ipv6: Forces creation of ip6tables symlinks"
+ echo "target : Target name or number (from 'list' action)"
+}
+
+do_set() {
+ local ipv6 ipv6_remove
+ if [[ ${1} == "--ipv6" ]]; then
+ ipv6=1
+ shift
+ fi
+ local target="${1}"
+
+ [[ -z ${target} ]] && die -q "You didn't tell me what to set the symlink to"
+ [[ ${#} -gt 2 ]] && die -q "Too many parameters"
+
+ if [[ -d ${EROOT}/var/lib/ip6tables ]]; then
+ ipv6=1
+ [[ -L ${EROOT}/sbin/ip6tables ]] && ipv6_remove=1
+ fi
+ if [[ -L ${EROOT}/sbin/iptables ]]; then
+ # existing symlink
+ remove_symlinks || die -q "Couldn't remove existing symlink"
+ set_symlinks "${target}" || die -q "Couldn't set a new symlink"
+ elif [[ -e ${EROOT}/sbin/iptables ]]; then
+ # we have something strange
+ die -q "${EROOT}/sbin/iptables exists but is not a symlink"
+ else
+ set_symlinks "${target}" || die -q "Couldn't set a new symlink"
+ fi
+}
+
+### unset action ###
+
+describe_unset() {
+ echo "Unset iptables symlink targets"
+}
+
+do_unset() {
+ remove_symlinks
+}
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] proj/eselect:extern commit in: modules/, /
@ 2025-03-26 16:12 Ulrich Müller
0 siblings, 0 replies; 5+ messages in thread
From: Ulrich Müller @ 2025-03-26 16:12 UTC (permalink / raw
To: gentoo-commits
commit: 5800538d4f12a998177c9c165dea3f4c519817eb
Author: Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 26 15:34:13 2025 +0000
Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Wed Mar 26 15:34:13 2025 +0000
URL: https://gitweb.gentoo.org/proj/eselect.git/commit/?id=5800538d
Remove modules that have been moved to dedicated repositories
* modules/awk.eselect:
* modules/fontconfig.eselect:
* modules/iptables.eselect:
* modules/vi.eselect:
* modules/wxwidgets.eselect: Remove. The sources for these modules
are now maintained in dedicated Git repositories, for example
https://gitweb.gentoo.org/proj/eselect-awk.git/.
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>
ChangeLog | 10 ++
modules/awk.eselect | 159 -------------------------
modules/fontconfig.eselect | 202 --------------------------------
modules/iptables.eselect | 283 ---------------------------------------------
modules/vi.eselect | 189 ------------------------------
modules/wxwidgets.eselect | 259 -----------------------------------------
6 files changed, 10 insertions(+), 1092 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index b12c381..ebecbcf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2025-03-26 Ulrich Müller <ulm@gentoo.org>
+
+ * modules/awk.eselect:
+ * modules/fontconfig.eselect:
+ * modules/iptables.eselect:
+ * modules/vi.eselect:
+ * modules/wxwidgets.eselect: Remove. The sources for these modules
+ are now maintained in dedicated Git repositories, for example
+ https://gitweb.gentoo.org/proj/eselect-awk.git/.
+
2018-05-29 Ulrich Müller <ulm@gentoo.org>
* modules/wxwidgets.eselect: Inherit multilib library (bug 552500).
diff --git a/modules/awk.eselect b/modules/awk.eselect
deleted file mode 100644
index 61650c4..0000000
--- a/modules/awk.eselect
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id: $
-
-DESCRIPTION="Manage {,/usr}/bin/awk implementations"
-MAINTAINER="ottxor@gentoo.org"
-VERSION="0.2"
-
-## Functions ##
-
-# find a list of awk symlink targets, best first
-find_targets() {
- local t
- for t in \
- "${EROOT}/usr/bin/gawk" \
- "${EROOT}/usr/bin/mawk" \
- "${EROOT}/usr/bin/nawk" \
- "${EROOT}/bin/busybox" \
- ; do
- if [[ -x ${t} ]]; then
- echo ${t##*/}
- fi
- done
-}
-
-# set the awk symlink
-set_symlinks() {
- local target=${1} targets extension dir i rel_target
-
- [[ ! -L ${EROOT}/bin/awk && -e ${EROOT}/bin/awk ]] && \
- die -q "/bin/awk is not a symlink!"
-
- [[ ! -L ${EROOT}/usr/bin/awk && -e ${EROOT}/usr/bin/awk ]] && \
- die -q "/usr/bin/awk is not a symlink!"
-
- if is_number "${target}" && [[ ${target} -ge 1 ]]; then
- targets=( $(find_targets) )
- target=${targets[target-1]}
- fi
-
- if [[ ${target} == "busybox" ]]; then
- dir="${EROOT}/bin"
- else
- dir="${EROOT}/usr/bin"
- fi
-
- [[ -x ${dir}/${target} ]] || die -q "Target '${target}' doesn't appear to be valid!"
-
- for i in /bin /usr/bin; do
- rel_target=$(relative_name "${dir}/${target}" "${EROOT}${i}")
- ln -sf "${rel_target}" "${EROOT}${i}/awk" || \
- die -q "Couldn't set ${target} ${i}/awk symlink"
- done
-
- rm -f "${EROOT}"/usr/share/man/man1/awk.1{,.bz2,.gz,lzma}
- for x in ".1" ".1.bz2" ".1.gz" ".1.lzma" ; do
- if [[ -e ${EROOT}/usr/share/man/man1/${target}${x} ]] ; then
- extension="${x}"
- break
- fi
- done
-
- #busybox has no man page
- if [[ -z "${extension}" ]] ; then
- echo "Couldn't find a man page for ${target}; skipping." 1>&2
- return 1
- fi
-
- if ! ln -s "${target}${extension}" "${EROOT}/usr/share/man/man1/awk${extension}"; then
- echo "Couldn't create man page symlink for ${target}; skipping." 1>&2
- return 1
- fi
-}
-
-### show action ###
-
-describe_show() {
- echo "Show the current awk implementation"
-}
-
-do_show() {
- [[ -z ${@} ]] || die -q "Too many parameters"
-
- write_list_start "Current awk implementation:"
- if [[ -L ${EROOT}/usr/bin/awk ]]; then
- write_kv_list_entry "$(basename $(readlink ${ROOT}/usr/bin/awk))" ""
- elif [[ -e ${EROOT}/usr/bin/awk ]]; then
- write_kv_list_entry "(not a symlink)" ""
- else
- write_kv_list_entry "(unset)" ""
- fi
-}
-
-### list action ###
-
-describe_list() {
- echo "List available awk implementations"
-}
-
-do_list() {
- [[ -z ${@} ]] || die -q "Too many parameters"
-
- local i targets
-
- targets=( $(find_targets) )
- for (( i = 0; i < ${#targets[@]}; i++ )) ; do
- [[ ${targets[${i}]} == $(basename $(readlink "${EROOT}"/usr/bin/awk)) ]] && \
- targets[${i}]=$(highlight_marker "${targets[${i}]}")
- done
- write_list_start "Available awk implementations:"
- write_numbered_list -m '(none found)' "${targets[@]}"
-}
-
-### set action ###
-
-describe_set() {
- echo "Set a new awk implementation"
-}
-
-describe_set_options() {
- echo "target : Target name or number (from 'list' action)"
-}
-
-describe_set_parameters() {
- echo "<target>"
-}
-
-do_set() {
- if [[ -z ${1} ]]; then
- die -q "Not enough parameters"
- elif [[ -n ${2} ]]; then
- die -q "Too many parameters"
- else
- set_symlinks "${1}"
- fi
-}
-
-### update action ###
-
-describe_update() {
- echo "Automatically update the awk implementation"
-}
-
-describe_update_options() {
- echo "ifunset : Do not override existing implementation"
-}
-
-do_update() {
- [[ -z ${1} || ( -z ${2} && ( ${1} == ifunset || ${1} == '--if-unset' ) ) ]] || \
- die -q "Usage error"
-
- [[ ( ${1} == ifunset || ${1} == '--if-unset' ) \
- && -L ${EROOT}/usr/bin/awk && -x ${EROOT}/usr/bin/awk ]] && \
- return
-
- set_symlinks 1
-}
-
-# vim: set syn=sh :
diff --git a/modules/fontconfig.eselect b/modules/fontconfig.eselect
deleted file mode 100644
index 367e3aa..0000000
--- a/modules/fontconfig.eselect
+++ /dev/null
@@ -1,202 +0,0 @@
-# -*-eselect-*- vim: ft=eselect
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-DESCRIPTION="Manage fontconfig /etc/fonts/conf.d/ symlinks"
-AUTHOR="cardoe@gentoo.org"
-MAINTAINER="fonts@gentoo.org"
-SVN_DATE='$Date$'
-VERSION=$(svn_date_to_version "${SVN_DATE}")
-
-find_targets() {
- local targets bc x i=0
- bcdirs[i]="${EROOT}/etc/fonts/conf.avail/*.conf"
-
- if [[ -n "${ES_FONTCONFIG_DIRS}" ]] ; then
- for x in ${ES_FONTCONFIG_DIRS} ; do
- bcdirs[$((++i))]="${x}/*"
- done
- fi
-
- for bc in ${bcdirs[@]} ; do
- [[ -e ${bc} && ${bc} != *~ ]] && targets="${targets}\n$(basename ${bc})"
- done
-
- echo -ne ${targets} | sort -u
-}
-
-is_enabled() {
- bcdir="${EROOT}/etc/fonts/conf.d"
-
- [[ -e ${bcdir}/${1} ]] || return 1
- return 0
-}
-
-### list action ###
-
-describe_list() {
- echo "List available fontconfig .conf files"
-}
-
-do_list() {
- local n
- targets=( $(find_targets) )
- write_list_start \
- "Available fontconfig .conf files ($(highlight '*') is enabled):"
-
- for (( n = 0; n < ${#targets[@]}; ++n )); do
- is_enabled ${targets[n]} \
- && targets[n]=$(highlight_marker "${targets[n]}")
- done
- write_numbered_list -m "(none found)" "${targets[@]}"
-
- return 0
-}
-
-### enable action ###
-
-describe_enable() {
- echo "Enable specified fontconfig .conf file(s)"
-}
-
-describe_enable_parameters() {
- echo "<target>"
-}
-
-describe_enable_options() {
- echo "<target> : Target name or number (from 'list' action)"
-}
-
-do_enable() {
- local bc bcdir="${EROOT}/etc/fonts/conf.d"
-
- [[ -z ${1} ]] && die -q "You didn't specify any .conf files to enable"
-
- # create directory if necessary
- if [[ ! -d ${bcdir} && -w $(dirname ${bcdir}) ]] ; then
- mkdir ${bcdir} || die -q "Failed to create ${bcdir}"
- elif [[ ! -d ${bcdir} ]] ; then
- die -q "You don't have permission to create ${bcdir}"
- fi
-
- # make sure we have proper permissions
- [[ -w ${bcdir} ]] || \
- die -q "You don't have permission to write to ${bcdir}"
-
- targets=( $(find_targets) )
-
- for bc in $@ ; do
- local file target=${bc}
-
- is_number "${target}" && \
- target=${targets[$(( ${target} - 1 ))]}
-
- [[ -z "${target}" ]] && \
- die -q "Target \"${bc}\" doesn't appear to be valid!"
-
- bc=${target}
-
- # ignore any unrecognized options
- [[ ${bc} == --* ]] && continue
-
- # what form is the argument in?
- case "${bc}" in
- # absolute path
- /*)
- file="${EROOT}/${bc}"
- ;;
- # relative path
- */*)
- file="${EROOT}/${PWD}/${bc}"
- ;;
- # no path
- *)
- # CWD
- if [[ -f ${bc} ]] ; then
- file="${EROOT}/${PWD}/${bc}"
- # assume /etc/fonts/conf.avail
- elif [[ -f ${EROOT}/etc/fonts/conf.avail/${bc} ]]
- then
- file="${EROOT}/etc/fonts/conf.avail/${bc}"
- else
- if [[ -n "${ES_FONTCONFIG_DIRS}" ]] ; then
- for x in ${ES_FONTCONFIG_DIRS} ; do
- [[ -f ${x}/${bc} ]] && file="${x}/${bc}"
- done
- fi
-
- [[ -e ${file} ]] || \
- file="${EROOT}/etc/fonts/conf.avail/${bc}"
- fi
- ;;
- esac
-
- # does it exist?
- if [[ ! -e ${file} ]] ; then
- write_error_msg "${file} doesn't exist"
- continue
- fi
-
- # already installed?
- if [[ -e ${bcdir}/$(basename ${bc}) ]] ; then
- write_error_msg "$(basename ${bc}) is already installed"
- continue
- fi
-
- # finally, create the symlink
- ln -s "${file}" "${bcdir}" || \
- die -q "Failed to create symlink from '${file}' to '${bcdir}'"
- done
-}
-
-### disable action ###
-
-describe_disable() {
- echo "Disable specified fontconfig .conf file(s)"
-}
-
-describe_disable_parameters() {
- echo "<target>"
-}
-
-describe_disable_options() {
- echo "<target> : Target name or number (from 'list' action)"
-}
-
-
-do_disable() {
- local bc bcdir="${EROOT}/etc/fonts/conf.d"
-
- [[ -z ${1} ]] && die -q "You didn't specify any .conf files to disable"
-
- targets=( $(find_targets) )
-
- for bc in $@ ; do
- local file target=${bc}
-
- is_number "${target}" && \
- target=${targets[$(( ${target} - 1 ))]}
-
- [[ -z "${target}" ]] && \
- die -q "Target \"${bc}\" doesn't appear to be valid!"
-
- bc=${target}
- file="${bcdir}/${bc}"
-
- # ignore any unrecognized options
- [[ ${bc} == --* ]] && continue
-
- # is in installed?
- if [[ ! -e ${file} ]] ; then
- write_error_msg "${bc} is not installed"
- continue
- fi
-
- # remove it if we have permissions
- if [[ -w $(dirname ${file}) ]] ; then
- rm "${file}" || die -q "Failed to remove ${file}"
- else
- die -q "You don't have permission to remove ${file}"
- fi
- done
-}
diff --git a/modules/iptables.eselect b/modules/iptables.eselect
deleted file mode 100644
index e3e5906..0000000
--- a/modules/iptables.eselect
+++ /dev/null
@@ -1,283 +0,0 @@
-# -*-eselect-*- vim: ft=eselect
-# Copyright 2005-2020 Gentoo Authors
-# Distributed under the terms of the GNU GPL version 2 or later
-
-inherit package-manager
-
-DESCRIPTION="Manage the iptables/arptables/ebtables symlinks"
-MAINTAINER="base-system@gentoo.org"
-VERSION="20200508"
-
-# a simple list of symlinks does for iptables
-IPTABLES_SYMLINKS=(
- "iptables-xml"
- "iptables" "iptables-restore" "iptables-save"
-)
-IP6TABLES_SYMLINKS=(
- "ip6tables" "ip6tables-restore" "ip6tables-save"
-)
-
-# for arptables and ebtables we map names to legacy targets
-ARPTABLES_TARGETS=(
- "arptables-legacy"
- "xtables-nft-multi"
-)
-declare -A ARPTABLES_SYMLINKS=(
- [arptables]="arptables-legacy"
- [arptables-restore]="arptables-legacy-restore"
- [arptables-save]="arptables-legacy-save"
-)
-
-EBTABLES_TARGETS=(
- "ebtables-legacy"
- "xtables-nft-multi"
-)
-declare -A EBTABLES_SYMLINKS=(
- [ebtables]="ebtables-legacy"
- [ebtables-restore]="ebtables-legacy-restore"
- [ebtables-save]="ebtables-legacy-save"
-)
-
-# get which module is running
-get_module() {
- local module
- module="${BASH_SOURCE[0]##*/}"
-
- printf -- '%s\n' "${module%.eselect}"
-}
-
-# find a list of symlink targets for the current module
-find_targets() {
- local module target
-
- module="$(get_module)"
- case "${module}" in
- iptables)
- for target in "${EROOT}"/sbin/xtables-*-multi; do
- [[ -x ${target} ]] && printf -- '%s\n' "${target##*/}"
- done
- ;;
- arptables)
- for target in "${ARPTABLES_TARGETS[@]}"; do
- [[ -x ${EROOT}/sbin/${target} ]] && printf -- '%s\n' "${target}"
- done
- ;;
- ebtables)
- for target in "${EBTABLES_TARGETS[@]}"; do
- [[ -x ${EROOT}/sbin/${target} ]] && printf -- '%s\n' "${target}"
- done
- ;;
- *) die "Invalid module name ${module}"
- esac
-}
-
-# get the list of symlinks for the current module
-get_symlinks_list() {
- local module
- module="$(get_module)"
-
- case "${module}" in
- iptables)
- printf -- '%s\n' "${IPTABLES_SYMLINKS[@]}"
-
- if [[ ${1} == -a ]] || has_version 'net-firewall/iptables[ipv6]'
- then
- printf -- '%s\n' "${IP6TABLES_SYMLINKS[@]}"
- fi
- ;;
- arptables) printf -- '%s\n' "${!ARPTABLES_SYMLINKS[@]}";;
- ebtables) printf -- '%s\n' "${!EBTABLES_SYMLINKS[@]}";;
- *) die "Invalid module name ${module}"
- esac
-}
-
-# get the symlink target given a symlink name and the target implementation
-get_symlink_target() {
- local link="${1}" target="${2}" module
- module="$(get_module)"
-
- case "${module}" in
- iptables) printf -- '%s\n' "${target}";;
- arptables)
- if [[ ${target} == *-legacy ]]; then
- printf -- '%s\n' "${ARPTABLES_SYMLINKS[${link}]}"
- else
- printf -- '%s\n' "${target}"
- fi
- ;;
- ebtables)
- if [[ ${target} == *-legacy ]]; then
- printf -- '%s\n' "${EBTABLES_SYMLINKS[${link}]}"
- else
- printf -- '%s\n' "${target}"
- fi
- ;;
- *) die "Invalid module name ${module}"
- esac
-}
-
-# set the symlinks for the current target
-set_symlinks() {
- local target="${1}"
- local retval=0
-
- if is_number "${target}" && [[ ${target} -ge 1 ]]; then
- local -a targets
- readarray -t targets < <(find_targets)
- target=${targets[$((target-1))]}
- fi
-
- if [[ -z ${target} || ! -f ${EROOT}/sbin/${target} ]]; then
- die -q "Target \"${target}\" doesn't appear to be valid!"
- fi
-
- # create an array of symlinks to be created, then create them
- # in a separate pass, it's done this way in an attempt to be atomic
- # either all symlinks get updated, or none
- local -a symlinks_list
- readarray -t symlinks_list < <(get_symlinks_list)
-
- local symlink
- local -A do_symlinks
- for symlink in "${symlinks_list[@]}"; do
- local symlink_path="${EROOT}/sbin/${symlink}"
-
- if [[ -L ${symlink_path} || ! -e ${symlink_path} ]]; then
- do_symlinks["${symlink_path}"]="$(get_symlink_target "${symlink}" "${target}")"
-
- else
- die -q "Could not create symlink at ${symlink_path}:" \
- "path exits and is not a symlink"
- fi
- done
-
- for symlink in "${!do_symlinks[@]}"; do
- if ! ln -sfn "${do_symlinks["${symlink}"]}" "${symlink}"; then
- write_error_message "Failed to create symlink at ${symlink}"
- retval=1
- fi
- done
-
- return "${retval}"
-}
-
-### show action ###
-
-describe_show() {
- printf -- 'Show the current %s symlink\n' "$(get_module)"
-}
-
-do_show() {
- local -a symlinks_list
- readarray -t symlinks_list < <(get_symlinks_list)
-
- local all_unset=1 symlink
- write_list_start "Current $(get_module) symlinks:"
- for symlink in "${symlinks_list[@]}"; do
- symlink_path="${EROOT}/sbin/${symlink}"
-
- if [[ -L ${symlink_path} ]]; then
- local symlink_target
- symlink_target=$(canonicalise "${symlink_path}")
- write_kv_list_entry "${symlink}" "${symlink_target%/}"
- all_unset=0
- elif [[ ! -f ${symlink_path} ]]; then
- write_kv_list_entry "${symlink}" "(unset)"
- fi
- done
-
- return "${all_unset}"
-}
-### list action ###
-
-describe_list() {
- printf -- 'List available %s symlink targets\n' "$(get_module)"
-}
-
-do_list() {
- local module
- module="$(get_module)"
-
- local -a targets_list symlinks_list
- readarray -t targets_list < <(find_targets)
- readarray -t symlinks_list < <(get_symlinks_list)
-
- local -a targets_output
-
- write_list_start "Available ${module} symlink targets:"
- local symlink current_target
- for symlink in "${symlinks_list[@]}"; do
- local symlink_path="${EROOT}/sbin/${symlink}"
- local target
- for target in "${targets_list[@]}"; do
- local symlink_target resolved_target
- symlink_target="$(get_symlink_target "${symlink}" "${target}")"
- resolved_target="$(basename "$(canonicalise "${symlink_path}")")"
-
- if [[ ${resolved_target} == "${symlink_target}" ]]; then
- if [[ -z ${current_target} ]]; then
- current_target="${target}"
- break
- elif [[ ${current_target} != "${target}" ]]; then
- write_warning_msg "Target mismatch"
- unset current_target
- break 2
- fi
- fi
- done
- done
- for target in "${targets_list[@]}"; do
- if [[ ${target} == "${current_target}" ]]; then
- targets_output+=("$(highlight_marker "${target}")")
- else
- targets_output+=("${target}")
- fi
- done
-
- write_numbered_list -m "(none found)" "${targets_output[@]}"
-}
-
-### set action ###
-
-describe_set() {
- printf "Set a new $(get_module) symlink target\\n"
-}
-
-describe_set_options() {
- printf -- "target : Target name or number (from 'list' action)\\n"
-}
-
-do_set() {
- local target="${1}"
-
- [[ -z ${target} ]] && die -q "You didn't tell me what to set the symlink to"
- [[ ${#} -gt 1 ]] && die -q "Too many parameters"
-
- set_symlinks "${target}" || die -q "Couldn't set symlinks"
-}
-
-### unset action ###
-
-describe_unset() {
- printf -- 'Unset %s symlink targets\n' "$(get_module)"
-}
-
-do_unset() {
- local retval=0
-
- local -a symlinks_list
- readarray -t symlinks_list < <(get_symlinks_list -a)
-
- local symlink
- for symlink in "${symlinks_list[@]}"; do
- local symlink_path="${EROOT}/sbin/${symlink}"
- if [[ -L ${symlink_path} ]]; then
- unlink "${symlink_path}" || retval=${?}
- elif [[ -e ${symlink_path} ]]; then
- write_error_msg "Not removing non-symlink \"${symlink_path}\""
- retval=1
- fi
- done
-
- return ${retval}
-}
diff --git a/modules/vi.eselect b/modules/vi.eselect
deleted file mode 100644
index 2d25859..0000000
--- a/modules/vi.eselect
+++ /dev/null
@@ -1,189 +0,0 @@
-# -*-eselect-*- vim: ft=eselect
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-DESCRIPTION="Manage /usr/bin/vi implementations"
-MAINTAINER="vim@gentoo.org"
-VERSION="1.1.9"
-
-# find a list of vi symlink targets, best first
-find_targets() {
- local f
- for f in \
- "${EROOT}"/usr/bin/vim \
- "${EROOT}"/usr/bin/nvim \
- "${EROOT}"/usr/bin/nvi \
- "${EROOT}"/usr/bin/elvis \
- "${EROOT}"/usr/bin/vile \
- "${EROOT}"/usr/bin/gvim \
- "${EROOT}"/usr/bin/qvim \
- "${EROOT}"/usr/bin/xvile \
- "${EROOT}"/bin/busybox \
- ; do
- if [[ -f "${f}" ]] ; then
- echo $(basename "${f}" )
- fi
- done
-}
-
-# try to remove the vi, ex, view and man vi symlinks
-remove_symlinks() {
- rm -f "${EROOT}"/usr/bin/{vi,ex,view} &>/dev/null && \
- rm -f "${EROOT}"/usr/share/man/man1/{vi,ex,view}.1{,.gz,.bz2,.lzma} &>/dev/null
-}
-
-# set a man page symlink
-set_man_symlink() {
- local target="${1}" link_name="${2}" x extension
-
- for x in ".1" ".1.bz2" ".1.gz" ".1.lzma" ; do
- if [[ -e ${EROOT}/usr/share/man/man1/${target}${x} ]] ; then
- extension="${x}"
- break
- fi
- done
-
- if [[ -z "${extension}" ]] ; then
- echo "Couldn't find a man page for ${target}; skipping." 1>&2
- return 1
- fi
-
- ln -s "${target}${extension}" \
- "${EROOT}/usr/share/man/man1/${link_name}${extension}"
-}
-
-# set the vi, ex, view, and man vi symlinks
-set_symlinks() {
- local target="${1}" targets
- if is_number "${target}" && [[ ${target} -ge 1 ]] ; then
- targets=( $(find_targets ) )
- target=${targets[target-1]}
- fi
-
- local dir
- if [[ ${target} == "busybox" ]]; then
- dir="${EROOT}/bin"
- else
- dir="${EROOT}/usr/bin"
- fi
-
- if [[ -f "${dir}/${target}" ]] ; then
- remove_symlinks
-
- # it's okay if these fail
- set_man_symlink "${target}" "vi"
- set_man_symlink "${target}" "ex"
- set_man_symlink "${target}" "view"
-
- # it's not okay if these fail
- target=$(relative_name "${dir}/${target}" "${EROOT}/usr/bin")
- ln -s "${target}" "${EROOT}/usr/bin/vi" \
- || die "Couldn't set ${target} /usr/bin/vi symlink"
- ln -s "${target}" "${EROOT}/usr/bin/ex" \
- || die "Couldn't set ${target} /usr/bin/ex symlink"
- ln -s "${target}" "${EROOT}/usr/bin/view" \
- || die "Couldn't set ${target} /usr/bin/view symlink"
- else
- die -q "Target \"${1}\" doesn't appear to be valid!"
- fi
-}
-
-### show action ###
-
-describe_show() {
- echo "Show the current vi implementation"
-}
-
-do_show() {
- [[ -z "${@}" ]] || die -q "Too many parameters"
-
- write_list_start "Current vi implementation:"
- if [[ -L "${EROOT}/usr/bin/vi" ]] ; then
- write_kv_list_entry "$(basename $(canonicalise ${EROOT}/usr/bin/vi ) )" ""
- elif [[ -e "${EROOT}/usr/bin/vi" ]] ; then
- write_kv_list_entry "(not a symlink)" ""
- else
- write_kv_list_entry "(unset)" ""
- fi
-}
-
-### list action ###
-
-describe_list() {
- echo "List available vi implementations"
-}
-
-do_list() {
- [[ -z "${@}" ]] || die -q "Too many parameters"
-
- local i targets
- targets=( $(find_targets ) )
- for (( i = 0; i < ${#targets[@]}; i++ )); do
- [[ ${targets[i]} = \
- $(basename "$(canonicalise "${EROOT}/usr/bin/vi")") ]] \
- && targets[i]=$(highlight_marker "${targets[i]}")
- done
- write_list_start "Available vi implementations:"
- write_numbered_list -m "(none found)" "${targets[@]}"
-}
-
-### set action ###
-
-describe_set() {
- echo "Set a new vi implementation provider"
-}
-
-describe_set_options() {
- echo "target : Target name or number (from 'list' action)"
-}
-
-describe_set_parameters() {
- echo "<target>"
-}
-
-do_set() {
- if [[ -z "${1}" ]] ; then
- die -q "You didn't give me a provider name"
-
- elif [[ -n "${2}" ]] ; then
- die -q "Too many parameters"
-
- elif [[ -L "${EROOT}/usr/bin/vi" ]] ; then
- if ! remove_symlinks ; then
- die -q "Can't remove existing provider"
- elif ! set_symlinks "${1}" ; then
- die -q "Can't set new provider"
- fi
-
- elif [[ -e "${EROOT}/usr/bin/vi" ]] ; then
- die -q "Sorry, ${EROOT}/usr/bin/vi confuses me"
-
- else
- set_symlinks "${1}" || die -q "Can't set a new provider"
- fi
-}
-
-### update action ###
-
-describe_update() {
- echo "Automatically update the vi provider"
-}
-
-describe_update_options() {
- echo "--if-unset : Do not override existing implementation"
-}
-
-do_update() {
- [[ -z "${1}" ]] || ( [[ -z "${2}" ]] && [[ "${1}" == "--if-unset" ]] ) || \
- die -q "Usage error"
-
- if [[ -L "${EROOT}/usr/bin/vi" ]] ; then
- [[ ${1} == "--if-unset" ]] && return
- remove_symlinks || die -q "Can't remove existing link"
- fi
- if [[ -e "${EROOT}/usr/bin/vi" ]] ; then
- die -q "Can't set a new provider"
- elif ! [[ -z $(find_targets ) ]] ; then
- set_symlinks 1 || die -q "Can't set a new provider"
- fi
-}
diff --git a/modules/wxwidgets.eselect b/modules/wxwidgets.eselect
deleted file mode 100644
index dc13704..0000000
--- a/modules/wxwidgets.eselect
+++ /dev/null
@@ -1,259 +0,0 @@
-# -*-eselect-*- vim: ft=eselect
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-inherit config multilib
-
-DESCRIPTION="Manage the system default wxWidgets profile"
-MAINTAINER="wxwidgets@gentoo.org"
-VERSION="20180529"
-
-WXCONFFILE="${EROOT}"/var/lib/wxwidgets/current
-
-get_confdir() {
- echo "${EROOT}/usr/$(get_libdir)/wx/config"
-}
-
-find_targets() {
- local conf
- for conf in ${WXCONFDIR}/*; do
- [[ -e ${conf} ]] && basename ${conf}
- done
-}
-
-set_config() {
- local target="${1}" targets
-
- if is_number "${target}"; then
- targets=( $(find_targets) )
- [[ ${1} -ge 1 && ${1} -le ${#targets[@]} ]] \
- || die -q "Number out of range: ${1}"
- target=${targets[$(( ${target} - 1 ))]}
- fi
- # we shouldn't change the profile to "none" if there are available configs
- # this can happen if WXCONFFILE got deleted somehow
- if [[ ${target} == "none" ]]; then
- targets=( $(find_targets) )
- [[ ${#targets[@]} -ge 1 ]] && target=${targets[0]}
- fi
-
- if [[ ! ${target} == "none" && ! -e ${WXCONFDIR}/${target} ]]; then
- die -q "\"${1}\" doesn't appear to be a valid profile name"
- fi
-
- echo
- echo "Setting wxWidgets profile to ${target}"
- echo
- store_config ${WXCONFFILE} WXCONFIG ${target}
-
- if [[ ! ${target} == "none" ]]; then
- # expose the slot number of the selected target for various uses
- local wxslot=${target##*-}
- fi
-
- # symlink bakefile presets to current slot (Bug #209150)
- local f
- pushd "${EROOT}"/usr/share/bakefile/presets/ &> /dev/null
- for f in .bkl _presets.py _unix.bkl _win32.bkl _xrc.bkl; do
- if [[ -e wx${f} || -L wx${f} ]]; then
- rm -f wx${f} || die -q "Error removing wx${f}"
- fi
- if [[ ! ${target} == "none" ]]; then
- if [[ -e wx${wxslot/./}${f} ]]; then
- ln -sf wx${wxslot/./}${f} wx${f} \
- || die -q "Error symlinking wx${wxslot/./}${f}"
- fi
- fi
- done
- popd &> /dev/null
-}
-
-### show action ###
-
-describe_show() {
- echo "Show the currently selected profile"
-}
-
-do_show() {
- [[ ${#@} -gt 0 ]] && die -q "Too many parameters"
-
- write_list_start "Current wxWidgets profile:"
- if [[ -e ${WXCONFFILE} ]]; then
- write_kv_list_entry "$(load_config ${WXCONFFILE} WXCONFIG)" ""
- else
- write_kv_list_entry "(none)" ""
- fi
-}
-
-### list action ###
-
-describe_list() {
- echo "List available profiles"
-}
-
-do_list() {
- local WXCONFDIR=$(get_confdir)
- local i targets currconf
- targets=( $(find_targets) )
- [[ -e ${WXCONFFILE} ]] && currconf=$(load_config ${WXCONFFILE} WXCONFIG)
-
- for (( i = 0; i < ${#targets[@]}; i++ )); do
- # highlight current version
- [[ ${targets[i]} = ${currconf} ]] \
- && targets[i]=$(highlight_marker "${targets[i]}")
- done
- write_list_start "Available wxWidgets profiles:"
- write_numbered_list -m "(none found)" "${targets[@]}"
-}
-
-### set action ###
-
-describe_set() {
- echo "Set the system wxWidgets profile"
-}
-
-describe_set_options() {
- echo "<target> : Profile name or number (from 'list')"
-}
-
-describe_set_parameters() {
- echo "<target>"
-}
-
-do_set() {
- [[ ! ${#@} -eq 1 ]] \
- && die -q "You must specify a profile name or number"
-
- [[ ! -w "${EROOT}"/var/lib/ ]] \
- && die -q "You need write permission to /var/lib to perform this action."
-
- local WXCONFDIR=$(get_confdir)
- set_config "${1}"
-}
-
-describe_update() {
- echo "Check current profile and update it if invalid (internal use only)"
-}
-
-do_update() {
- [[ ! -e ${WXCONFFILE} ]] && do_set none
-
- local WXCONFDIR=$(get_confdir)
- currconf=$(load_config ${WXCONFFILE} WXCONFIG)
-
- # if current config is valid leave it alone
- [[ -e ${WXCONFDIR}/${currconf} ]] && return 0
-
- # split the current config into components
- OIFS=${IFS}
- IFS=-
- set -- ${currconf}
- IFS=${OIFS}
-
- declare -a wxtoolkit wxchar wxdebug wxver
-
- # put them into the first element of the arrays
- wxtoolkit=(${1})
- wxchar=(${2})
- if [[ $# -eq 3 ]]; then
- # >=2.9 doesn't have a debug component, so fake it
- wxdebug=(release)
- wxver=(${3})
- else
- wxdebug=(${3})
- wxver=(${4})
- fi
-
- # now put all possible components into the next elements
- local component toolkit char debug ver i opt
-
- for component in toolkit char debug ver; do
- i=1
- case ${component} in
- toolkit)
- for opt in base gtk2 mac; do
- if [[ ${opt} == ${wxtoolkit[0]} ]]; then
- continue
- else
- wxtoolkit[${i}]=${opt}
- (( i++ ))
- fi
- done
- ;;
-
- char)
- for opt in ansi unicode; do
- if [[ ${opt} == ${wxchar[0]} ]]; then
- continue
- else
- wxchar[${i}]=${opt}
- (( i++ ))
- fi
- done
- ;;
-
- debug)
- for opt in release debug; do
- if [[ ${opt} == ${wxdebug[0]} ]]; then
- continue
- else
- wxdebug[${i}]=${opt}
- (( i++ ))
- fi
- done
- ;;
-
- ver)
- for opt in 3.0 2.9 2.8; do
- if [[ ${opt} == ${wxver[0]} ]]; then
- continue
- else
- wxver[${i}]=${opt}
- (( i++ ))
- fi
- done
- ;;
- esac
- done
-
- # Now we iterate through all the installed configs and find the closest match
- # ( debug -> char -> toolkit -> ver )
- # meaning w/ a current config of gtk2-unicode-debug-2.8, it will pick
- # gtk2-unicode-release-2.8 before
- # base-unicode-debug-2.8 before
- # gtk2-unicode-2.9
-
- local d c t v checkconf foundconf
-
- for (( v = 0 ; v < ${#wxver[@]} ; v++ )); do
- for (( t = 0 ; t < ${#wxtoolkit[@]} ; t++ )); do
- for (( c = 0 ; c < ${#wxchar[@]} ; c++ )); do
- for (( d = 0 ; d < ${#wxdebug[@]} ; d++ )); do
- if [[ ${wxver[$v]} != 2.8 ]]; then
- # >=2.9 doesn't have a debug component
- checkconf="${wxtoolkit[$t]}-${wxchar[$c]}-${wxver[$v]}"
- else
- checkconf="${wxtoolkit[$t]}-${wxchar[$c]}-${wxdebug[$d]}-${wxver[$v]}"
- fi
- [[ -e ${WXCONFDIR}/${checkconf} ]] || continue
- foundconf=${checkconf}
- break 4
- done
- done
- done
- done
-
- # nothing installed
- [[ -z ${foundconf} ]] && foundconf="none"
-
- if [[ ${currconf} != "none" && ${foundconf} != "none" ]]; then
- echo
- write_warning_msg "Your currently selected wxWidgets profile: ( ${currconf} )"
- write_warning_msg "is no longer available."
- write_warning_msg
- write_warning_msg "The closest matching profile: ( ${foundconf} )"
- write_warning_msg "will be activated in its place."
- fi
-
- do_set ${foundconf}
-}
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-03-26 16:12 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-10 10:22 [gentoo-commits] proj/eselect:extern commit in: modules/, / Ulrich Müller
-- strict thread matches above, loose matches on Subject: below --
2025-03-26 16:12 Ulrich Müller
2020-05-08 4:30 Mike Gilbert
2018-08-30 16:45 Ulrich Müller
2014-11-22 6:47 Ben de Groot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox