Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE
@ 2021-09-01 16:16 ahesford
  2021-09-01 16:29 ` Chocimier
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: ahesford @ 2021-09-01 16:16 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1089 bytes --]

There is a new pull request by ahesford against master on the void-packages repository

https://github.com/ahesford/void-packages fontconfig
https://github.com/void-linux/void-packages/pull/32794

fontconfig: move default configuration to INSTALL/REMOVE
Encoding /etc/fonts/conf.d configuration symlinks in the package means that upgrades and installations will clobber existing custom configurations. In addition, removing any default configuration files would cause xbps-pkgdb to complain.

Managing default configurations in INSTALL/REMOVE allows custom configurations to persist through upgrades and removals. A guard file, /etc/fonts/conf.d/.autoconfig, serves as an INSTALL guard to prevent configuration modifications during upgrade. It also stores a list of the default configurations that will be removed when the package is uninstalled. This is an extension of an idea from @ericonr.

These scripts should mimic existing behavior through the first subsequent upgrade or installation.

A patch file from https://github.com/void-linux/void-packages/pull/32794.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-fontconfig-32794.patch --]
[-- Type: text/x-diff, Size: 3924 bytes --]

From d877e1e48d72e8ba3d632b8598d72f4f50b05195 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 1 Sep 2021 12:06:34 -0400
Subject: [PATCH] fontconfig: move default configuration to INSTALL/REMOVE

Encoding /etc/fonts/conf.d configuration symlinks in the package means
that upgrades and installations will clobber existing custom
configurations. In addition, removing any default configuration files
would cause xbps-pkgdb to complain.

Managing default configurations in INSTALL/REMOVE allows custom
configurations to persist through upgrades and removals. A guard file,
/etc/fonts/conf.d/.autoconfig, serves as an INSTALL guard to prevent
configuration modifications during upgrade. It also stores a list of the
default configurations that will be removed when the package is
uninstalled. This is an extension of an idea from @ericonr.

These scripts should mimic existing behavior through the first
subsequent upgrade or installation.
---
 srcpkgs/fontconfig/INSTALL  | 37 ++++++++++++++++++++++++++++++++++++-
 srcpkgs/fontconfig/REMOVE   | 21 +++++++++++++++++++++
 srcpkgs/fontconfig/template |  8 ++++++--
 3 files changed, 63 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/fontconfig/REMOVE

diff --git a/srcpkgs/fontconfig/INSTALL b/srcpkgs/fontconfig/INSTALL
index 1daa9b2a8f57..4b6f93653b93 100644
--- a/srcpkgs/fontconfig/INSTALL
+++ b/srcpkgs/fontconfig/INSTALL
@@ -1,10 +1,45 @@
 #
-# This script builds fontconfig's fonts cache.
+# This script establishes a default config and builds the font cache
 #
 case "${ACTION}" in
 pre)
 	;;
 post)
+	if [ ! -e etc/fonts/conf.d/.autoconfig ]; then
+		echo "Setting default font configuration"
+		: > etc/fonts/conf.d/.autoconfig
+
+		_defconfigs="
+		 10-hinting-slight.conf
+		 10-scale-bitmap-fonts.conf
+		 20-unhint-small-vera.conf
+		 30-metric-aliases.conf
+		 40-nonlatin.conf
+		 45-generic.conf
+		 45-latin.conf
+		 49-sansserif.conf
+		 50-user.conf
+		 51-local.conf
+		 60-generic.conf
+		 60-latin.conf
+		 65-fonts-persian.conf
+		 65-nonlatin.conf
+		 69-unifont.conf
+		 80-delicious.conf
+		 90-synthetic.conf
+		"
+
+		for _f in $_defconfigs; do
+			_fsrc="usr/share/fontconfig/conf.avail/$_f"
+			[ -e "$_fsrc" ] || continue
+
+			ln -s "/$_fsrc" etc/fonts/conf.d
+			echo "$_f" >> etc/fonts/conf.d/.autoconfig
+		done
+
+		unset _f _fsrc _defconfigs
+	fi
+
 	echo "Building fonts cache... "
 	fc-cache -f >/dev/null
 	echo "done."
diff --git a/srcpkgs/fontconfig/REMOVE b/srcpkgs/fontconfig/REMOVE
new file mode 100644
index 000000000000..3f8d3b47bb1c
--- /dev/null
+++ b/srcpkgs/fontconfig/REMOVE
@@ -0,0 +1,21 @@
+#
+# This script removes any default configuration established by INSTALL
+#
+case "${ACTION}" in
+pre)
+	if [ -r etc/fonts/conf.d/.autoconfig ]; then
+		echo "Removing default font configuration"
+
+		while read -r _f; do
+			_fsrc="etc/fonts/conf.d/$_f"
+			[ -L "$_fsrc" ] && rm "$_fsrc"
+		done < etc/fonts/conf.d/.autoconfig
+
+		rm -f etc/fonts/conf.d/.autoconfig
+
+		unset _f _fsrc
+	fi
+	;;
+post)
+	;;
+esac
diff --git a/srcpkgs/fontconfig/template b/srcpkgs/fontconfig/template
index 89c0cf5ea240..132d5c9a350b 100644
--- a/srcpkgs/fontconfig/template
+++ b/srcpkgs/fontconfig/template
@@ -1,7 +1,7 @@
 # Template file for 'fontconfig'
 pkgname=fontconfig
 version=2.13.1
-revision=3
+revision=4
 build_style=gnu-configure
 configure_args="--enable-static --enable-docs --with-cache-dir=/var/cache/${pkgname}"
 hostmakedepends="gperf pkg-config"
@@ -21,9 +21,13 @@ pre_build() {
 
 post_install() {
 	if [ "$CROSS_BUILD" ]; then
-		sed -i 's,\(Cflags: -I${includedir}\).*,\1,g' ${DESTDIR}/usr/lib/pkgconfig/fontconfig.pc
+		sed -i 's,\(Cflags: -I${includedir}\).*,\1,g' "${DESTDIR}"/usr/lib/pkgconfig/fontconfig.pc
 	fi
+
 	vlicense COPYING
+
+	# Default configuration is managed in INSTALL/REMOVE
+	rm -f "${DESTDIR}"/etc/fonts/conf.d/*.conf
 }
 
 fontconfig-devel_package() {

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
@ 2021-09-01 16:29 ` Chocimier
  2021-09-01 17:03 ` ahesford
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Chocimier @ 2021-09-01 16:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 392 bytes --]

New comment by Chocimier on void-packages repository

https://github.com/void-linux/void-packages/pull/32794#issuecomment-910451410

Comment:
Is the only reason to do this is that marking symlinks as conf_files doesn't work?
I am working on that [right now](https://github.com/Chocimier/xbps-org/commits/conf-links), as it breaks how [cast](https://github.com/Chocimier/cast) is configured.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
  2021-09-01 16:29 ` Chocimier
@ 2021-09-01 17:03 ` ahesford
  2021-09-01 18:39 ` [PR REVIEW] " ericonr
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2021-09-01 17:03 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 393 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/32794#issuecomment-910477905

Comment:
Marking as `conf_files` wouldn't work anyway, because an upgrade would replace any files that the user had removed. The only other option would be to make them real files and tell people to blank any they don't want rather than just removing symlinks.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR REVIEW] fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
  2021-09-01 16:29 ` Chocimier
  2021-09-01 17:03 ` ahesford
@ 2021-09-01 18:39 ` ericonr
  2021-09-01 19:28 ` [PR PATCH] [Updated] " ahesford
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: ericonr @ 2021-09-01 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 289 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/32794#discussion_r700469852

Comment:
Could we dump this as a list in the template, to avoid hardcoding? Or is it unnecessary? Could maybe work as a reference list for users too...

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Updated] fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
                   ` (2 preceding siblings ...)
  2021-09-01 18:39 ` [PR REVIEW] " ericonr
@ 2021-09-01 19:28 ` ahesford
  2021-09-01 19:28 ` [PR REVIEW] " ahesford
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2021-09-01 19:28 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1094 bytes --]

There is an updated pull request by ahesford against master on the void-packages repository

https://github.com/ahesford/void-packages fontconfig
https://github.com/void-linux/void-packages/pull/32794

fontconfig: move default configuration to INSTALL/REMOVE
Encoding /etc/fonts/conf.d configuration symlinks in the package means that upgrades and installations will clobber existing custom configurations. In addition, removing any default configuration files would cause xbps-pkgdb to complain.

Managing default configurations in INSTALL/REMOVE allows custom configurations to persist through upgrades and removals. A guard file, /etc/fonts/conf.d/.autoconfig, serves as an INSTALL guard to prevent configuration modifications during upgrade. It also stores a list of the default configurations that will be removed when the package is uninstalled. This is an extension of an idea from @ericonr.

These scripts should mimic existing behavior through the first subsequent upgrade or installation.

A patch file from https://github.com/void-linux/void-packages/pull/32794.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-fontconfig-32794.patch --]
[-- Type: text/x-diff, Size: 7682 bytes --]

From d877e1e48d72e8ba3d632b8598d72f4f50b05195 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 1 Sep 2021 12:06:34 -0400
Subject: [PATCH 1/2] fontconfig: move default configuration to INSTALL/REMOVE

Encoding /etc/fonts/conf.d configuration symlinks in the package means
that upgrades and installations will clobber existing custom
configurations. In addition, removing any default configuration files
would cause xbps-pkgdb to complain.

Managing default configurations in INSTALL/REMOVE allows custom
configurations to persist through upgrades and removals. A guard file,
/etc/fonts/conf.d/.autoconfig, serves as an INSTALL guard to prevent
configuration modifications during upgrade. It also stores a list of the
default configurations that will be removed when the package is
uninstalled. This is an extension of an idea from @ericonr.

These scripts should mimic existing behavior through the first
subsequent upgrade or installation.
---
 srcpkgs/fontconfig/INSTALL  | 37 ++++++++++++++++++++++++++++++++++++-
 srcpkgs/fontconfig/REMOVE   | 21 +++++++++++++++++++++
 srcpkgs/fontconfig/template |  8 ++++++--
 3 files changed, 63 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/fontconfig/REMOVE

diff --git a/srcpkgs/fontconfig/INSTALL b/srcpkgs/fontconfig/INSTALL
index 1daa9b2a8f57..4b6f93653b93 100644
--- a/srcpkgs/fontconfig/INSTALL
+++ b/srcpkgs/fontconfig/INSTALL
@@ -1,10 +1,45 @@
 #
-# This script builds fontconfig's fonts cache.
+# This script establishes a default config and builds the font cache
 #
 case "${ACTION}" in
 pre)
 	;;
 post)
+	if [ ! -e etc/fonts/conf.d/.autoconfig ]; then
+		echo "Setting default font configuration"
+		: > etc/fonts/conf.d/.autoconfig
+
+		_defconfigs="
+		 10-hinting-slight.conf
+		 10-scale-bitmap-fonts.conf
+		 20-unhint-small-vera.conf
+		 30-metric-aliases.conf
+		 40-nonlatin.conf
+		 45-generic.conf
+		 45-latin.conf
+		 49-sansserif.conf
+		 50-user.conf
+		 51-local.conf
+		 60-generic.conf
+		 60-latin.conf
+		 65-fonts-persian.conf
+		 65-nonlatin.conf
+		 69-unifont.conf
+		 80-delicious.conf
+		 90-synthetic.conf
+		"
+
+		for _f in $_defconfigs; do
+			_fsrc="usr/share/fontconfig/conf.avail/$_f"
+			[ -e "$_fsrc" ] || continue
+
+			ln -s "/$_fsrc" etc/fonts/conf.d
+			echo "$_f" >> etc/fonts/conf.d/.autoconfig
+		done
+
+		unset _f _fsrc _defconfigs
+	fi
+
 	echo "Building fonts cache... "
 	fc-cache -f >/dev/null
 	echo "done."
diff --git a/srcpkgs/fontconfig/REMOVE b/srcpkgs/fontconfig/REMOVE
new file mode 100644
index 000000000000..3f8d3b47bb1c
--- /dev/null
+++ b/srcpkgs/fontconfig/REMOVE
@@ -0,0 +1,21 @@
+#
+# This script removes any default configuration established by INSTALL
+#
+case "${ACTION}" in
+pre)
+	if [ -r etc/fonts/conf.d/.autoconfig ]; then
+		echo "Removing default font configuration"
+
+		while read -r _f; do
+			_fsrc="etc/fonts/conf.d/$_f"
+			[ -L "$_fsrc" ] && rm "$_fsrc"
+		done < etc/fonts/conf.d/.autoconfig
+
+		rm -f etc/fonts/conf.d/.autoconfig
+
+		unset _f _fsrc
+	fi
+	;;
+post)
+	;;
+esac
diff --git a/srcpkgs/fontconfig/template b/srcpkgs/fontconfig/template
index 89c0cf5ea240..132d5c9a350b 100644
--- a/srcpkgs/fontconfig/template
+++ b/srcpkgs/fontconfig/template
@@ -1,7 +1,7 @@
 # Template file for 'fontconfig'
 pkgname=fontconfig
 version=2.13.1
-revision=3
+revision=4
 build_style=gnu-configure
 configure_args="--enable-static --enable-docs --with-cache-dir=/var/cache/${pkgname}"
 hostmakedepends="gperf pkg-config"
@@ -21,9 +21,13 @@ pre_build() {
 
 post_install() {
 	if [ "$CROSS_BUILD" ]; then
-		sed -i 's,\(Cflags: -I${includedir}\).*,\1,g' ${DESTDIR}/usr/lib/pkgconfig/fontconfig.pc
+		sed -i 's,\(Cflags: -I${includedir}\).*,\1,g' "${DESTDIR}"/usr/lib/pkgconfig/fontconfig.pc
 	fi
+
 	vlicense COPYING
+
+	# Default configuration is managed in INSTALL/REMOVE
+	rm -f "${DESTDIR}"/etc/fonts/conf.d/*.conf
 }
 
 fontconfig-devel_package() {

From f5ef683d3809666ff633c9b7bde364b7812f4ccf Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 1 Sep 2021 15:27:54 -0400
Subject: [PATCH 2/2] fontconfig: manage default configuration in template

---
 srcpkgs/fontconfig/INSTALL  | 41 ++++++++++---------------------------
 srcpkgs/fontconfig/REMOVE   | 15 +++++++-------
 srcpkgs/fontconfig/template | 16 ++++++++++++---
 3 files changed, 32 insertions(+), 40 deletions(-)

diff --git a/srcpkgs/fontconfig/INSTALL b/srcpkgs/fontconfig/INSTALL
index 4b6f93653b93..2879e698dbbc 100644
--- a/srcpkgs/fontconfig/INSTALL
+++ b/srcpkgs/fontconfig/INSTALL
@@ -5,40 +5,21 @@ case "${ACTION}" in
 pre)
 	;;
 post)
-	if [ ! -e etc/fonts/conf.d/.autoconfig ]; then
-		echo "Setting default font configuration"
-		: > etc/fonts/conf.d/.autoconfig
+	_confd="etc/fonts/conf.d"
+	if [ ! -e "${_confd}/.xbps-configured" ] && [ -r "${_confd}/.defconfigs" ]; then
+		echo "Setting default font configuration..."
 
-		_defconfigs="
-		 10-hinting-slight.conf
-		 10-scale-bitmap-fonts.conf
-		 20-unhint-small-vera.conf
-		 30-metric-aliases.conf
-		 40-nonlatin.conf
-		 45-generic.conf
-		 45-latin.conf
-		 49-sansserif.conf
-		 50-user.conf
-		 51-local.conf
-		 60-generic.conf
-		 60-latin.conf
-		 65-fonts-persian.conf
-		 65-nonlatin.conf
-		 69-unifont.conf
-		 80-delicious.conf
-		 90-synthetic.conf
-		"
+		while read -r _f; do
+			_fsrc="usr/share/fontconfig/conf.avail/${_f}"
+			[ -e "${_fsrc}" ] || continue
 
-		for _f in $_defconfigs; do
-			_fsrc="usr/share/fontconfig/conf.avail/$_f"
-			[ -e "$_fsrc" ] || continue
+			[ -e "${_confd}/${_f}" ] || ln -s "/${_fsrc}" "${_confd}/${_f}"
+		done < "${_confd}/.defconfigs"
 
-			ln -s "/$_fsrc" etc/fonts/conf.d
-			echo "$_f" >> etc/fonts/conf.d/.autoconfig
-		done
-
-		unset _f _fsrc _defconfigs
+		: > etc/fonts/conf.d/.xbps-configured
+		unset _f _fsrc
 	fi
+	unset _confd
 
 	echo "Building fonts cache... "
 	fc-cache -f >/dev/null
diff --git a/srcpkgs/fontconfig/REMOVE b/srcpkgs/fontconfig/REMOVE
index 3f8d3b47bb1c..ec83813b319e 100644
--- a/srcpkgs/fontconfig/REMOVE
+++ b/srcpkgs/fontconfig/REMOVE
@@ -3,18 +3,19 @@
 #
 case "${ACTION}" in
 pre)
-	if [ -r etc/fonts/conf.d/.autoconfig ]; then
-		echo "Removing default font configuration"
+	_confd="etc/fonts/conf.d"
+	if [ -e "${_confd}/.xbps-configured" ] && [ -r "${_confd}/.defconfigs" ]; then
+		echo "Removing default font configuration..."
 
 		while read -r _f; do
-			_fsrc="etc/fonts/conf.d/$_f"
-			[ -L "$_fsrc" ] && rm "$_fsrc"
-		done < etc/fonts/conf.d/.autoconfig
-
-		rm -f etc/fonts/conf.d/.autoconfig
+			_fsrc="${_confd}/${_f}"
+			[ -L "${_fsrc}" ] && rm "${_fsrc}"
+		done < "${_confd}/.defconfigs"
 
+		rm -f "${_confd}/.xbps-configured"
 		unset _f _fsrc
 	fi
+	unset _confd
 	;;
 post)
 	;;
diff --git a/srcpkgs/fontconfig/template b/srcpkgs/fontconfig/template
index 132d5c9a350b..3848e8d2f0c4 100644
--- a/srcpkgs/fontconfig/template
+++ b/srcpkgs/fontconfig/template
@@ -21,13 +21,23 @@ pre_build() {
 
 post_install() {
 	if [ "$CROSS_BUILD" ]; then
-		sed -i 's,\(Cflags: -I${includedir}\).*,\1,g' "${DESTDIR}"/usr/lib/pkgconfig/fontconfig.pc
+		sed -i 's,\(Cflags: -I${includedir}\).*,\1,g' "${DESTDIR}/usr/lib/pkgconfig/fontconfig.pc"
 	fi
 
 	vlicense COPYING
 
-	# Default configuration is managed in INSTALL/REMOVE
-	rm -f "${DESTDIR}"/etc/fonts/conf.d/*.conf
+	# Default configuration links are managed in INSTALL/REMOVE
+
+	local _confd="${DESTDIR}/etc/fonts/conf.d" _f= _fb=
+
+	: > "${_confd}/.defconfigs"
+	for _f in "${_confd}"/*.conf; do
+		[ "${_f}" = "${_confd}/*.conf" ] && continue
+		_fb="${_f##*/}"
+		echo "${_fb}" >> "${_confd}/.defconfigs"
+	done
+
+	rm -f "${_confd}"/*.conf
 }
 
 fontconfig-devel_package() {

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR REVIEW] fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
                   ` (3 preceding siblings ...)
  2021-09-01 19:28 ` [PR PATCH] [Updated] " ahesford
@ 2021-09-01 19:28 ` ahesford
  2022-06-05  2:14 ` github-actions
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2021-09-01 19:28 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 409 bytes --]

New review comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/32794#discussion_r700509539

Comment:
Hrm. It would be nice to do this programmatically, in the template, but I don't see how to do it without making *two* files. At first this bothered me, but I've come to like it. I've made a proposal in the latest commit, let me know which solution seems better.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
                   ` (4 preceding siblings ...)
  2021-09-01 19:28 ` [PR REVIEW] " ahesford
@ 2022-06-05  2:14 ` github-actions
  2022-10-11 17:48 ` [PR PATCH] [Closed]: " ahesford
  2022-10-11 17:51 ` ahesford
  7 siblings, 0 replies; 9+ messages in thread
From: github-actions @ 2022-06-05  2:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 305 bytes --]

New comment by github-actions[bot] on void-packages repository

https://github.com/void-linux/void-packages/pull/32794#issuecomment-1146724882

Comment:
Pull Requests become stale 90 days after last activity and are closed 14 days after that.  If this pull request is still relevant bump it or assign it.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PR PATCH] [Closed]: fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
                   ` (5 preceding siblings ...)
  2022-06-05  2:14 ` github-actions
@ 2022-10-11 17:48 ` ahesford
  2022-10-11 17:51 ` ahesford
  7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2022-10-11 17:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 933 bytes --]

There's a closed pull request on the void-packages repository

fontconfig: move default configuration to INSTALL/REMOVE
https://github.com/void-linux/void-packages/pull/32794

Description:
Encoding /etc/fonts/conf.d configuration symlinks in the package means that upgrades and installations will clobber existing custom configurations. In addition, removing any default configuration files would cause xbps-pkgdb to complain.

Managing default configurations in INSTALL/REMOVE allows custom configurations to persist through upgrades and removals. A guard file, /etc/fonts/conf.d/.autoconfig, serves as an INSTALL guard to prevent configuration modifications during upgrade. It also stores a list of the default configurations that will be removed when the package is uninstalled. This is an extension of an idea from @ericonr.

These scripts should mimic existing behavior through the first subsequent upgrade or installation.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: fontconfig: move default configuration to INSTALL/REMOVE
  2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
                   ` (6 preceding siblings ...)
  2022-10-11 17:48 ` [PR PATCH] [Closed]: " ahesford
@ 2022-10-11 17:51 ` ahesford
  7 siblings, 0 replies; 9+ messages in thread
From: ahesford @ 2022-10-11 17:51 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 219 bytes --]

New comment by ahesford on void-packages repository

https://github.com/void-linux/void-packages/pull/32794#issuecomment-1275064327

Comment:
I'm not convinced that this is the right solution to the fontconfig problem.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-10-11 17:51 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-01 16:16 [PR PATCH] fontconfig: move default configuration to INSTALL/REMOVE ahesford
2021-09-01 16:29 ` Chocimier
2021-09-01 17:03 ` ahesford
2021-09-01 18:39 ` [PR REVIEW] " ericonr
2021-09-01 19:28 ` [PR PATCH] [Updated] " ahesford
2021-09-01 19:28 ` [PR REVIEW] " ahesford
2022-06-05  2:14 ` github-actions
2022-10-11 17:48 ` [PR PATCH] [Closed]: " ahesford
2022-10-11 17:51 ` ahesford

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).