[gentoo-dev] [PATCH] metadata.xsd: add codeberg remote-id

2023-09-14 Thread Thomas Bracht Laumann Jespersen
---
 metadata.xsd | 1 +
 1 file changed, 1 insertion(+)

diff --git a/metadata.xsd b/metadata.xsd
index a9a7963..cf8485d 100644
--- a/metadata.xsd
+++ b/metadata.xsd
@@ -271,6 +271,7 @@



+   



-- 
2.41.0




[gentoo-dev] [PATCH] metadata.dtd: Add codeberg remote-id

2023-09-14 Thread Thomas Bracht Laumann Jespersen
Signed-off-by: Thomas Bracht Laumann Jespersen 
---
 metadata.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/metadata.dtd b/metadata.dtd
index 41bec63..9aab14d 100644
--- a/metadata.dtd
+++ b/metadata.dtd
@@ -56,7 +56,7 @@
 
 
 
-  
+  
 
   
-- 
2.41.0




Re: [gentoo-dev] [PATCH 3/7] eclass/dotnet-pkg.eclass: introduce new eclass

2023-07-31 Thread Thomas Bracht Laumann Jespersen


> +EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile 
> src_test src_install

EXPORT_FUNCTIONS should go outside the inherit guard (see
https://devmanual.gentoo.org/eclass-writing/index.html#export-functions)
- unless I'm missing something and there's a specific reason to put it
inside.

> +
> +fi



[gentoo-dev] [PATCH v3 2/2] texlive-module.eclass: add EAPI 8

2023-04-12 Thread Thomas Bracht Laumann Jespersen
Signed-off-by: Thomas Bracht Laumann Jespersen 
---

v2 -> v3:
 * Change ${@} to $@

 eclass/texlive-module.eclass | 23 +++
 1 file changed, 15 insertions(+), 8 deletions(-)

diff --git a/eclass/texlive-module.eclass b/eclass/texlive-module.eclass
index fea4003c37a8..6b9e443be9c0 100644
--- a/eclass/texlive-module.eclass
+++ b/eclass/texlive-module.eclass
@@ -1,453 +1,460 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2

 # @ECLASS: texlive-module.eclass
 # @MAINTAINER:
 # t...@gentoo.org
 # @AUTHOR:
 # Original Author: Alexis Ballier 
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Provide generic install functions so that modular texlive's texmf 
ebuild will only have to inherit this eclass
 # @DESCRIPTION:
 # Purpose: Provide generic install functions so that modular texlive's texmf 
ebuilds will
 # only have to inherit this eclass.
 # Ebuilds have to provide TEXLIVE_MODULE_CONTENTS variable that contains the 
list
 # of packages that it will install. (See below)
 #
 # For TeX Live versions prior to 2009, the ebuild was supposed to unpack the
 # texmf and texmf-dist directories to ${WORKDIR} (which is what the default
 # src_unpack does).
 # Starting from TeX Live 2009, the eclass provides a src_unpack function taking
 # care of unpacking and relocating the files that need it.
 #
 # It inherits texlive-common.  Patching is supported via the PATCHES
 # bash array.

 # @ECLASS_VARIABLE: TEXLIVE_MODULE_CONTENTS
 # @PRE_INHERIT
 # @REQUIRED
 # @DESCRIPTION:
 # The list of packages that will be installed. This variable will be expanded 
to
 # SRC_URI:
 # foo -> texlive-module-foo-${PV}.tar.xz

 # @ECLASS_VARIABLE: TEXLIVE_MODULE_DOC_CONTENTS
 # @PRE_INHERIT
 # @REQUIRED
 # @DESCRIPTION:
 # The list of packages that will be installed if the doc useflag is enabled.
 # Expansion to SRC_URI is the same as for TEXLIVE_MODULE_CONTENTS.

 # @ECLASS_VARIABLE: TEXLIVE_MODULE_SRC_CONTENTS
 # @PRE_INHERIT
 # @REQUIRED
 # @DESCRIPTION:
 # The list of packages that will be installed if the source useflag is enabled.
 # Expansion to SRC_URI is the same as for TEXLIVE_MODULE_CONTENTS.

 # @ECLASS_VARIABLE: TEXLIVE_MODULE_BINSCRIPTS
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # A space separated list of files that are in fact scripts installed in the
 # texmf tree and that we want to be available directly. They will be installed 
in
 # /usr/bin.

 # @ECLASS_VARIABLE: TEXLIVE_MODULE_BINLINKS
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # A space separated list of links to add for BINSCRIPTS.
 # The syntax is: foo:bar to create a symlink bar -> foo.

 # @ECLASS_VARIABLE: TL_PV
 # @INTERNAL
 # @DESCRIPTION:
 # Normally the module's PV reflects the TeXLive release it belongs to.
 # If this is not the case, TL_PV takes the version number for the
 # needed app-text/texlive-core.

 # @ECLASS_VARIABLE: TL_MODULE_INFORMATION
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Information to display about the package.
 # e.g. for enabling/disabling a feature

 case ${EAPI} in
-   7) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac

 if [[ -z ${_TEXLIVE_MODULE_ECLASS} ]]; then
 _TEXLIVE_MODULE_ECLASS=1

 inherit texlive-common

 HOMEPAGE="http://www.tug.org/texlive/;

 COMMON_DEPEND=">=app-text/texlive-core-${TL_PV:-${PV}}"

 IUSE="source"

 # Starting from TeX Live 2009, upstream provides .tar.xz modules.
 PKGEXT=tar.xz

 # Now where should we get these files?
 TEXLIVE_DEVS=${TEXLIVE_DEVS:- zlogene dilfridge sam }

 # We do not need anything from SYSROOT:
 #   Everything is built from the texlive install in /
 #   Generated files are noarch
 BDEPEND="${COMMON_DEPEND}
app-arch/xz-utils"

 for i in ${TEXLIVE_MODULE_CONTENTS}; do
for tldev in ${TEXLIVE_DEVS}; do
SRC_URI="${SRC_URI} 
https://dev.gentoo.org/~${tldev}/distfiles/texlive/tl-${i}-${PV}.${PKGEXT};
done
 done

 # Forge doc SRC_URI
 [[ -n ${TEXLIVE_MODULE_DOC_CONTENTS} ]] && SRC_URI="${SRC_URI} doc? ("
 for i in ${TEXLIVE_MODULE_DOC_CONTENTS}; do
for tldev in ${TEXLIVE_DEVS}; do
SRC_URI="${SRC_URI} 
https://dev.gentoo.org/~${tldev}/distfiles/texlive/tl-${i}-${PV}.${PKGEXT};
done
 done
 [[ -n ${TEXLIVE_MODULE_DOC_CONTENTS} ]] && SRC_URI="${SRC_URI} )"

 # Forge source SRC_URI
 if [[ -n ${TEXLIVE_MODULE_SRC_CONTENTS} ]] ; then
SRC_URI="${SRC_URI} source? ("
for i in ${TEXLIVE_MODULE_SRC_CONTENTS}; do
for tldev in ${TEXLIVE_DEVS}; do
SRC_URI="${SRC_URI} 
https://dev.gentoo.org/~${tldev}/distfiles/texlive/tl-${i}-${PV}.${PKGEXT};
done
done
SRC_URI="${SRC_URI} )"
 fi

 RDEPEND="${COMMON_DEPEND}"

 IUSE="${IUSE} doc"

 # @ECLASS_VARIABLE: TEXLIVE_MODULE_OPTIONAL

[gentoo-dev] [PATCH v3 1/2] texlive-common.eclass: add EAPI 8

2023-04-12 Thread Thomas Bracht Laumann Jespersen
Signed-off-by: Thomas Bracht Laumann Jespersen 
---

v2 -> v3:
 * Change ${@} to $@

 eclass/texlive-common.eclass | 23 +--
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/eclass/texlive-common.eclass b/eclass/texlive-common.eclass
index f43d10926857..02ac9d72784a 100644
--- a/eclass/texlive-common.eclass
+++ b/eclass/texlive-common.eclass
@@ -1,176 +1,179 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2

 # @ECLASS: texlive-common.eclass
 # @MAINTAINER:
 # t...@gentoo.org
 # @AUTHOR:
 # Original Author: Alexis Ballier 
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Provide various functions used by both texlive-core and texlive 
modules
 # @DESCRIPTION:
 # Purpose: Provide various functions used by both texlive-core and texlive
 # modules.
 #
 # Note that this eclass *must* not assume the presence of any standard tex too

 case ${EAPI} in
7) inherit eapi8-dosym ;;
+   8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac

 if [[ -z ${_TEXLIVE_COMMON_ECLASS} ]]; then
 _TEXLIVE_COMMON_ECLASS=1

 TEXMF_PATH=/usr/share/texmf
 TEXMF_DIST_PATH=/usr/share/texmf-dist
 TEXMF_VAR_PATH=/var/lib/texmf

 # @FUNCTION: texlive-common_handle_config_files
 # @DESCRIPTION:
 # Has to be called in src_install after having installed the files in ${D}
 # This function will move the relevant files to /etc/texmf and symling them
 # from their original location. This is to allow easy update of texlive's
 # configuration
-
 texlive-common_handle_config_files() {
+   debug-print-function ${FUNCNAME} "$@"
# Handle config files properly
[[ -d ${ED}${TEXMF_PATH} ]] || return
cd "${ED}${TEXMF_PATH}" || die
+   local dosym=dosym
+   [[ ${EAPI} == 7 ]] && dosym=dosym8

while read -r f; do
if [[ ${f#*config} != ${f} || ${f#doc} != ${f} || ${f#source} 
!= ${f} || ${f#tex} != ${f} ]] ; then
continue
fi
dodir /etc/texmf/$(dirname ${f}).d
einfo "Moving (and symlinking) ${EPREFIX}${TEXMF_PATH}/${f} to 
${EPREFIX}/etc/texmf/$(dirname ${f}).d"
mv "${ED}/${TEXMF_PATH}/${f}" "${ED}/etc/texmf/$(dirname 
${f}).d" || die "mv ${f} failed."
-   dosym8 -r /etc/texmf/$(dirname ${f}).d/$(basename ${f}) 
${TEXMF_PATH}/${f}
+   "${dosym}" -r /etc/texmf/$(dirname ${f}).d/$(basename ${f}) 
${TEXMF_PATH}/${f}
done < <(find  -name '*.cnf' -type f -o -name '*.cfg' -type f | sed -e 
"s:\./::g")
 }

 # @FUNCTION: texlive-common_is_file_present_in_texmf
 # @DESCRIPTION:
 # Return if a file is present in the texmf tree
 # Call it from the directory containing texmf and texmf-dist
-
 texlive-common_is_file_present_in_texmf() {
+   debug-print-function ${FUNCNAME} "$@"
local mark="${T}/${1}.found"
if [[ -d texmf ]]; then
find texmf -name ${1} -exec touch ${mark} {} + || die
fi

if [[ -d texmf-dist ]]; then
find texmf-dist -name ${1} -exec touch ${mark} {} + || die
fi
-   [ -f "${mark}" ]
+   [[ -f ${mark} ]]
 }

 # @FUNCTION: texlive-common_do_symlinks
 # @USAGE:  
 # @DESCRIPTION:
 # Mimic the install_link function of texlinks
 #
 # Should have the same behavior as the one in /usr/bin/texlinks
 # except that it is under the control of the package manager
 # Note that $1 corresponds to $src and $2 to $dest in this function
 # ( Arguments are switched because texlinks main function sends them switched )
 # This function should not be called from an ebuild, prefer etexlinks that will
 # also do the fmtutil file parsing.
-
 texlive-common_do_symlinks() {
+   debug-print-function ${FUNCNAME} "$@"
while [[ ${#} != 0 ]]; do
case ${1} in
cont-??|metafun|mptopdf)
einfo "Symlink ${1} skipped (special case)"
;;
mf)
einfo "Symlink ${1} -> ${2} skipped 
(texlive-core takes care of it)"
;;
*)
if [[ ${1} == ${2} ]]; then
einfo "Symlink ${1} -> ${2} skipped"
elif [[ -e ${ED}/usr/bin/${1} || -L 
${ED}/usr/bin/${1} ]]; then
einfo "Symlink ${1} skipped (file 
exists)"
else
einfo "Making symlink from ${1} to ${2}"
dosym ${2} /usr/bin/${1}
fi
;;
  

[gentoo-dev] [PATCH v2 2/2] texlive-module.eclass: add EAPI 8

2023-04-09 Thread Thomas Bracht Laumann Jespersen
Signed-off-by: Thomas Bracht Laumann Jespersen 
---
Does not appear to need any additional EAPI 8 considerations. Add
debug-print-function lines to all functions.

 eclass/texlive-module.eclass | 23 +++
 1 file changed, 15 insertions(+), 8 deletions(-)

diff --git a/eclass/texlive-module.eclass b/eclass/texlive-module.eclass
index fea4003c37a8..b0e48587bb68 100644
--- a/eclass/texlive-module.eclass
+++ b/eclass/texlive-module.eclass
@@ -1,453 +1,460 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: texlive-module.eclass
 # @MAINTAINER:
 # t...@gentoo.org
 # @AUTHOR:
 # Original Author: Alexis Ballier 
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Provide generic install functions so that modular texlive's texmf 
ebuild will only have to inherit this eclass
 # @DESCRIPTION:
 # Purpose: Provide generic install functions so that modular texlive's texmf 
ebuilds will
 # only have to inherit this eclass.
 # Ebuilds have to provide TEXLIVE_MODULE_CONTENTS variable that contains the 
list
 # of packages that it will install. (See below)
 #
 # For TeX Live versions prior to 2009, the ebuild was supposed to unpack the
 # texmf and texmf-dist directories to ${WORKDIR} (which is what the default
 # src_unpack does).
 # Starting from TeX Live 2009, the eclass provides a src_unpack function taking
 # care of unpacking and relocating the files that need it.
 #
 # It inherits texlive-common.  Patching is supported via the PATCHES
 # bash array.
 
 # @ECLASS_VARIABLE: TEXLIVE_MODULE_CONTENTS
 # @PRE_INHERIT
 # @REQUIRED
 # @DESCRIPTION:
 # The list of packages that will be installed. This variable will be expanded 
to
 # SRC_URI:
 # foo -> texlive-module-foo-${PV}.tar.xz
 
 # @ECLASS_VARIABLE: TEXLIVE_MODULE_DOC_CONTENTS
 # @PRE_INHERIT
 # @REQUIRED
 # @DESCRIPTION:
 # The list of packages that will be installed if the doc useflag is enabled.
 # Expansion to SRC_URI is the same as for TEXLIVE_MODULE_CONTENTS.
 
 # @ECLASS_VARIABLE: TEXLIVE_MODULE_SRC_CONTENTS
 # @PRE_INHERIT
 # @REQUIRED
 # @DESCRIPTION:
 # The list of packages that will be installed if the source useflag is enabled.
 # Expansion to SRC_URI is the same as for TEXLIVE_MODULE_CONTENTS.
 
 # @ECLASS_VARIABLE: TEXLIVE_MODULE_BINSCRIPTS
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # A space separated list of files that are in fact scripts installed in the
 # texmf tree and that we want to be available directly. They will be installed 
in
 # /usr/bin.
 
 # @ECLASS_VARIABLE: TEXLIVE_MODULE_BINLINKS
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # A space separated list of links to add for BINSCRIPTS.
 # The syntax is: foo:bar to create a symlink bar -> foo.
 
 # @ECLASS_VARIABLE: TL_PV
 # @INTERNAL
 # @DESCRIPTION:
 # Normally the module's PV reflects the TeXLive release it belongs to.
 # If this is not the case, TL_PV takes the version number for the
 # needed app-text/texlive-core.
 
 # @ECLASS_VARIABLE: TL_MODULE_INFORMATION
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Information to display about the package.
 # e.g. for enabling/disabling a feature
 
 case ${EAPI} in
-   7) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 if [[ -z ${_TEXLIVE_MODULE_ECLASS} ]]; then
 _TEXLIVE_MODULE_ECLASS=1
 
 inherit texlive-common
 
 HOMEPAGE="http://www.tug.org/texlive/;
 
 COMMON_DEPEND=">=app-text/texlive-core-${TL_PV:-${PV}}"
 
 IUSE="source"
 
 # Starting from TeX Live 2009, upstream provides .tar.xz modules.
 PKGEXT=tar.xz
 
 # Now where should we get these files?
 TEXLIVE_DEVS=${TEXLIVE_DEVS:- zlogene dilfridge sam }
 
 # We do not need anything from SYSROOT:
 #   Everything is built from the texlive install in /
 #   Generated files are noarch
 BDEPEND="${COMMON_DEPEND}
app-arch/xz-utils"
 
 for i in ${TEXLIVE_MODULE_CONTENTS}; do
for tldev in ${TEXLIVE_DEVS}; do
SRC_URI="${SRC_URI} 
https://dev.gentoo.org/~${tldev}/distfiles/texlive/tl-${i}-${PV}.${PKGEXT};
done
 done
 
 # Forge doc SRC_URI
 [[ -n ${TEXLIVE_MODULE_DOC_CONTENTS} ]] && SRC_URI="${SRC_URI} doc? ("
 for i in ${TEXLIVE_MODULE_DOC_CONTENTS}; do
for tldev in ${TEXLIVE_DEVS}; do
SRC_URI="${SRC_URI} 
https://dev.gentoo.org/~${tldev}/distfiles/texlive/tl-${i}-${PV}.${PKGEXT};
done
 done
 [[ -n ${TEXLIVE_MODULE_DOC_CONTENTS} ]] && SRC_URI="${SRC_URI} )"
 
 # Forge source SRC_URI
 if [[ -n ${TEXLIVE_MODULE_SRC_CONTENTS} ]] ; then
SRC_URI="${SRC_URI} source? ("
for i in ${TEXLIVE_MODULE_SRC_CONTENTS}; do
for tldev in ${TEXLIVE_DEVS}; do
SRC_URI="${SRC_URI} 
https://dev.gentoo.org/~${tldev}/distfiles/texlive/tl-${i}-${PV}.${PKGEXT};
done
done
SRC_URI="${SRC_URI} )"
 fi
 
 RDEPEND="${COMMON_DEPEND}&qu

[gentoo-dev] [PATCH v2 1/2] texlive-common.eclass: add EAPI 8

2023-04-09 Thread Thomas Bracht Laumann Jespersen
Signed-off-by: Thomas Bracht Laumann Jespersen 
---
v1 -> v2:

 * remove unnecessary quotation in [[ .. ]] construct as per ulm's feedback

 * add debug-print-function to all functions (just seems like a potentially
   useful addition)

 * remove blank line between function docs and declaration

 eclass/texlive-common.eclass | 23 +--
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/eclass/texlive-common.eclass b/eclass/texlive-common.eclass
index f43d10926857..401ccce31519 100644
--- a/eclass/texlive-common.eclass
+++ b/eclass/texlive-common.eclass
@@ -1,176 +1,179 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: texlive-common.eclass
 # @MAINTAINER:
 # t...@gentoo.org
 # @AUTHOR:
 # Original Author: Alexis Ballier 
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Provide various functions used by both texlive-core and texlive 
modules
 # @DESCRIPTION:
 # Purpose: Provide various functions used by both texlive-core and texlive
 # modules.
 #
 # Note that this eclass *must* not assume the presence of any standard tex too
 
 case ${EAPI} in
7) inherit eapi8-dosym ;;
+   8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 if [[ -z ${_TEXLIVE_COMMON_ECLASS} ]]; then
 _TEXLIVE_COMMON_ECLASS=1
 
 TEXMF_PATH=/usr/share/texmf
 TEXMF_DIST_PATH=/usr/share/texmf-dist
 TEXMF_VAR_PATH=/var/lib/texmf
 
 # @FUNCTION: texlive-common_handle_config_files
 # @DESCRIPTION:
 # Has to be called in src_install after having installed the files in ${D}
 # This function will move the relevant files to /etc/texmf and symling them
 # from their original location. This is to allow easy update of texlive's
 # configuration
-
 texlive-common_handle_config_files() {
+   debug-print-function ${FUNCNAME} "${@}"
# Handle config files properly
[[ -d ${ED}${TEXMF_PATH} ]] || return
cd "${ED}${TEXMF_PATH}" || die
+   local dosym=dosym
+   [[ ${EAPI} == 7 ]] && dosym=dosym8
 
while read -r f; do
if [[ ${f#*config} != ${f} || ${f#doc} != ${f} || ${f#source} 
!= ${f} || ${f#tex} != ${f} ]] ; then
continue
fi
dodir /etc/texmf/$(dirname ${f}).d
einfo "Moving (and symlinking) ${EPREFIX}${TEXMF_PATH}/${f} to 
${EPREFIX}/etc/texmf/$(dirname ${f}).d"
mv "${ED}/${TEXMF_PATH}/${f}" "${ED}/etc/texmf/$(dirname 
${f}).d" || die "mv ${f} failed."
-   dosym8 -r /etc/texmf/$(dirname ${f}).d/$(basename ${f}) 
${TEXMF_PATH}/${f}
+   "${dosym}" -r /etc/texmf/$(dirname ${f}).d/$(basename ${f}) 
${TEXMF_PATH}/${f}
done < <(find  -name '*.cnf' -type f -o -name '*.cfg' -type f | sed -e 
"s:\./::g")
 }
 
 # @FUNCTION: texlive-common_is_file_present_in_texmf
 # @DESCRIPTION:
 # Return if a file is present in the texmf tree
 # Call it from the directory containing texmf and texmf-dist
-
 texlive-common_is_file_present_in_texmf() {
+   debug-print-function ${FUNCNAME} "${@}"
local mark="${T}/${1}.found"
if [[ -d texmf ]]; then
find texmf -name ${1} -exec touch ${mark} {} + || die
fi
 
if [[ -d texmf-dist ]]; then
find texmf-dist -name ${1} -exec touch ${mark} {} + || die
fi
-   [ -f "${mark}" ]
+   [[ -f ${mark} ]]
 }
 
 # @FUNCTION: texlive-common_do_symlinks
 # @USAGE:  
 # @DESCRIPTION:
 # Mimic the install_link function of texlinks
 #
 # Should have the same behavior as the one in /usr/bin/texlinks
 # except that it is under the control of the package manager
 # Note that $1 corresponds to $src and $2 to $dest in this function
 # ( Arguments are switched because texlinks main function sends them switched )
 # This function should not be called from an ebuild, prefer etexlinks that will
 # also do the fmtutil file parsing.
-
 texlive-common_do_symlinks() {
+   debug-print-function ${FUNCNAME} "${@}"
while [[ ${#} != 0 ]]; do
case ${1} in
cont-??|metafun|mptopdf)
einfo "Symlink ${1} skipped (special case)"
;;
mf)
einfo "Symlink ${1} -> ${2} skipped 
(texlive-core takes care of it)"
;;
*)
if [[ ${1} == ${2} ]]; then
einfo "Symlink ${1} -> ${2} skipped"
elif [[ -e ${ED}/usr/bin/${1} || -L 
${ED}/usr/bin/${1} ]]; then
einfo "Symlink ${1} skipped (file 
exists)"

Re: [gentoo-dev] [PATCH] texlive-common.eclass: add EAPI 8

2023-04-08 Thread Thomas Bracht Laumann Jespersen


>> -[ -f "${mark}" ]
>> +[[ -f "${mark}" ]]
>
> The quotes are no longer needed in [[ ]].

ack. Will include in a v2.

I'll also add a patch to add EAPI 8 to texlive-module.eclass.

-- Thomas



[gentoo-dev] [PATCH] texlive-common.eclass: add EAPI 8

2023-04-08 Thread Thomas Bracht Laumann Jespersen
Signed-off-by: Thomas Bracht Laumann Jespersen 
---

As an initial step in the work to add texlive 2023, let's start with adding EAPI
8 support to texlive-common.eclass.

Needs a consideration for dosym -r in one place, and also changes a test block
with single brackets to double brackets.

 eclass/texlive-common.eclass | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/eclass/texlive-common.eclass b/eclass/texlive-common.eclass
index f43d10926857..d9d9caf364f4 100644
--- a/eclass/texlive-common.eclass
+++ b/eclass/texlive-common.eclass
@@ -1,176 +1,179 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: texlive-common.eclass
 # @MAINTAINER:
 # t...@gentoo.org
 # @AUTHOR:
 # Original Author: Alexis Ballier 
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Provide various functions used by both texlive-core and texlive 
modules
 # @DESCRIPTION:
 # Purpose: Provide various functions used by both texlive-core and texlive
 # modules.
 #
 # Note that this eclass *must* not assume the presence of any standard tex too
 
 case ${EAPI} in
7) inherit eapi8-dosym ;;
+   8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 if [[ -z ${_TEXLIVE_COMMON_ECLASS} ]]; then
 _TEXLIVE_COMMON_ECLASS=1
 
 TEXMF_PATH=/usr/share/texmf
 TEXMF_DIST_PATH=/usr/share/texmf-dist
 TEXMF_VAR_PATH=/var/lib/texmf
 
 # @FUNCTION: texlive-common_handle_config_files
 # @DESCRIPTION:
 # Has to be called in src_install after having installed the files in ${D}
 # This function will move the relevant files to /etc/texmf and symling them
 # from their original location. This is to allow easy update of texlive's
 # configuration
 
 texlive-common_handle_config_files() {
# Handle config files properly
[[ -d ${ED}${TEXMF_PATH} ]] || return
cd "${ED}${TEXMF_PATH}" || die
+   local dosym=dosym
+   [[ ${EAPI} == 7 ]] && dosym=dosym8
 
while read -r f; do
if [[ ${f#*config} != ${f} || ${f#doc} != ${f} || ${f#source} 
!= ${f} || ${f#tex} != ${f} ]] ; then
continue
fi
dodir /etc/texmf/$(dirname ${f}).d
einfo "Moving (and symlinking) ${EPREFIX}${TEXMF_PATH}/${f} to 
${EPREFIX}/etc/texmf/$(dirname ${f}).d"
mv "${ED}/${TEXMF_PATH}/${f}" "${ED}/etc/texmf/$(dirname 
${f}).d" || die "mv ${f} failed."
-   dosym8 -r /etc/texmf/$(dirname ${f}).d/$(basename ${f}) 
${TEXMF_PATH}/${f}
+   "${dosym}" -r /etc/texmf/$(dirname ${f}).d/$(basename ${f}) 
${TEXMF_PATH}/${f}
done < <(find  -name '*.cnf' -type f -o -name '*.cfg' -type f | sed -e 
"s:\./::g")
 }
 
 # @FUNCTION: texlive-common_is_file_present_in_texmf
 # @DESCRIPTION:
 # Return if a file is present in the texmf tree
 # Call it from the directory containing texmf and texmf-dist
 
 texlive-common_is_file_present_in_texmf() {
local mark="${T}/${1}.found"
if [[ -d texmf ]]; then
find texmf -name ${1} -exec touch ${mark} {} + || die
fi
 
if [[ -d texmf-dist ]]; then
find texmf-dist -name ${1} -exec touch ${mark} {} + || die
fi
-   [ -f "${mark}" ]
+   [[ -f "${mark}" ]]
 }
 
 # @FUNCTION: texlive-common_do_symlinks
 # @USAGE:  
 # @DESCRIPTION:
 # Mimic the install_link function of texlinks
 #
 # Should have the same behavior as the one in /usr/bin/texlinks
 # except that it is under the control of the package manager
 # Note that $1 corresponds to $src and $2 to $dest in this function
 # ( Arguments are switched because texlinks main function sends them switched )
 # This function should not be called from an ebuild, prefer etexlinks that will
 # also do the fmtutil file parsing.
 
 texlive-common_do_symlinks() {
while [[ ${#} != 0 ]]; do
case ${1} in
cont-??|metafun|mptopdf)
einfo "Symlink ${1} skipped (special case)"
;;
mf)
einfo "Symlink ${1} -> ${2} skipped 
(texlive-core takes care of it)"
;;
*)
if [[ ${1} == ${2} ]]; then
einfo "Symlink ${1} -> ${2} skipped"
elif [[ -e ${ED}/usr/bin/${1} || -L 
${ED}/usr/bin/${1} ]]; then
einfo "Symlink ${1} skipped (file 
exists)"
else
einfo "Making symlink from ${1} to ${2}"
dosym ${2} /usr/bin/${1}
 

Re: [gentoo-dev] Last-rites: app-admin/lastpass-cli

2021-04-09 Thread Thomas Bracht Laumann Jespersen
> > I actually use lastpass-cli, because my company use LastPass. Is there an
> > alternative, or can we keep this somehow?
> > 
> 
> Unfortunately we cannot keep it unless the upstream shows a sign of life. You 
> can still use the web interface etc. of LastPass. There is also a community 
> fork of lastpass-cli[0], which I would be opposed to maintaining because it’s 
> not sanctioned by LogMeIn.
> 
> Given the fact that upstream is practically dead now, you can just not delete 
> the package. Most likely it’ll eventually break if one of its dependencies’ 
> ABI changes, which would require a rebuild. If you really want to keep the 
> package, you can save it in a local overlay and use it for as long as it 
> lasts. Just remember that if LogMeIn decides to change the web API at some 
> point, lastpass-cli is effectively a program with undefined behavior.

Sigh. I guess it'll have to be that way :-) I'll follow the community fork and
put it in my own overlay.

Thanks,
-- Thomas



Re: [gentoo-dev] Last-rites: app-admin/lastpass-cli

2021-03-15 Thread Thomas Bracht Laumann Jespersen
> > # Göktürk Yüksek  (2021-03-14)
> > # Dead upstream. No revdeps.
> > # Removal in 60 days to allow people extra time
> > # for transitioning out. Bug #776262.
> > app-admin/lastpass-cli
> >
> >
> 
> 
> Due to recent changes to Lastpass, I switched to Bitwarden.  It may be
> worth mentioning somewhere that you can export from Lastpass and import
> to Bitwarden and not lose any passwords.  My switching took about 5
> minutes, some of which is downloading the sources and add-ons. 

I actually use lastpass-cli, because my company use LastPass. Is there an
alternative, or can we keep this somehow?

All the best,
-- Thomas




Re: [gentoo-dev] Packages up for grabs

2017-12-13 Thread Thomas Bracht Laumann Jespersen
On 12 December 2017 at 22:46, Daniel Campbell  wrote:
>
> The following packages are in need of a maintainer:
>
> dev-util/astyle
> net-im/toxic
> x11-misc/alock
> x11-misc/ktsuss
> x11-misc/spacefm

Hi!

I've been interested in getting more involved with Gentoo - would
package maintenance be a good place to start?

I'd be interested in astyle and alock as these are tools I would use
myself. Do I just start by reading
https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers and try to get
in touch with the right people?

It seems like alock's site is broken:
http://darkshed.net/projects/alock (I'm seeing an error connecting to
mysql)

-- Thomas
> --
> Daniel Campbell
> OpenPGP Fingerprint: AE03 9064 AE00 053C 270C  1DE4 6F7A 9091 1EA0 55D6
> Found on hkp://keys.gnupg.net and other keyservers