[1/3] json-glib: New package

Message ID 20250708150509.8131-1-daniel.weismueller@ipfire.org
State Staged
Commit 36521ad42706d4583b23a6880f47c66c1e7c2942
Headers
Series [1/3] json-glib: New package |

Commit Message

Daniel Weismüller July 8, 2025, 3:04 p.m. UTC
  This package is required for swtpm.

Signed-off-by: Daniel Weismüller <daniel.weismueller@ipfire.org>
---
 config/rootfiles/common/json-glib | 118 ++++++++++++++++++++++++++++++
 lfs/json-glib                     |  84 +++++++++++++++++++++
 make.sh                           |   1 +
 3 files changed, 203 insertions(+)
 create mode 100644 config/rootfiles/common/json-glib
 create mode 100644 lfs/json-glib
  

Comments

Adolf Belka July 8, 2025, 6:32 p.m. UTC | #1
Hi Daniel,

json-glib is failing to build because it has a run-time dependency for gio and that is provided by glib which comes after json-glib in make.sh

You will need to shift glib so it comes before json-glib.

You will also need to figure out what needs to be uncommented from the glib rootfile so that it will be available at run-time.

Regards,

Adolf.


On 08/07/2025 17:04, Daniel Weismüller wrote:
> This package is required for swtpm.
> 
> Signed-off-by: Daniel Weismüller <daniel.weismueller@ipfire.org>
> ---
>   config/rootfiles/common/json-glib | 118 ++++++++++++++++++++++++++++++
>   lfs/json-glib                     |  84 +++++++++++++++++++++
>   make.sh                           |   1 +
>   3 files changed, 203 insertions(+)
>   create mode 100644 config/rootfiles/common/json-glib
>   create mode 100644 lfs/json-glib
> 
> diff --git a/config/rootfiles/common/json-glib b/config/rootfiles/common/json-glib
> new file mode 100644
> index 000000000..d403c7c28
> --- /dev/null
> +++ b/config/rootfiles/common/json-glib
> @@ -0,0 +1,118 @@
> +#usr/bin/json-glib-format
> +#usr/bin/json-glib-validate
> +#usr/include/json-glib-1.0
> +#usr/include/json-glib-1.0/json-glib
> +#usr/include/json-glib-1.0/json-glib/json-builder.h
> +#usr/include/json-glib-1.0/json-glib/json-enum-types.h
> +#usr/include/json-glib-1.0/json-glib/json-generator.h
> +#usr/include/json-glib-1.0/json-glib/json-glib.h
> +#usr/include/json-glib-1.0/json-glib/json-gobject.h
> +#usr/include/json-glib-1.0/json-glib/json-gvariant.h
> +#usr/include/json-glib-1.0/json-glib/json-parser.h
> +#usr/include/json-glib-1.0/json-glib/json-path.h
> +#usr/include/json-glib-1.0/json-glib/json-reader.h
> +#usr/include/json-glib-1.0/json-glib/json-types.h
> +#usr/include/json-glib-1.0/json-glib/json-utils.h
> +#usr/include/json-glib-1.0/json-glib/json-version-macros.h
> +#usr/include/json-glib-1.0/json-glib/json-version.h
> +#usr/lib/libjson-glib-1.0.so
> +usr/lib/libjson-glib-1.0.so.0
> +usr/lib/libjson-glib-1.0.so.0.1000.6
> +#usr/lib/pkgconfig/json-glib-1.0.pc
> +#usr/libexec/installed-tests
> +#usr/libexec/installed-tests/json-glib-1.0
> +#usr/libexec/installed-tests/json-glib-1.0/array
> +#usr/libexec/installed-tests/json-glib-1.0/boxed
> +#usr/libexec/installed-tests/json-glib-1.0/builder
> +#usr/libexec/installed-tests/json-glib-1.0/generator
> +#usr/libexec/installed-tests/json-glib-1.0/gvariant
> +#usr/libexec/installed-tests/json-glib-1.0/invalid
> +#usr/libexec/installed-tests/json-glib-1.0/invalid.json
> +#usr/libexec/installed-tests/json-glib-1.0/node
> +#usr/libexec/installed-tests/json-glib-1.0/object
> +#usr/libexec/installed-tests/json-glib-1.0/parser
> +#usr/libexec/installed-tests/json-glib-1.0/path
> +#usr/libexec/installed-tests/json-glib-1.0/reader
> +#usr/libexec/installed-tests/json-glib-1.0/serialize-complex
> +#usr/libexec/installed-tests/json-glib-1.0/serialize-full
> +#usr/libexec/installed-tests/json-glib-1.0/serialize-simple
> +#usr/libexec/installed-tests/json-glib-1.0/skip-bom.json
> +#usr/libexec/installed-tests/json-glib-1.0/stream-load.json
> +#usr/share/installed-tests
> +#usr/share/installed-tests/json-glib-1.0
> +#usr/share/installed-tests/json-glib-1.0/array.test
> +#usr/share/installed-tests/json-glib-1.0/boxed.test
> +#usr/share/installed-tests/json-glib-1.0/builder.test
> +#usr/share/installed-tests/json-glib-1.0/generator.test
> +#usr/share/installed-tests/json-glib-1.0/gvariant.test
> +#usr/share/installed-tests/json-glib-1.0/invalid.test
> +#usr/share/installed-tests/json-glib-1.0/node.test
> +#usr/share/installed-tests/json-glib-1.0/object.test
> +#usr/share/installed-tests/json-glib-1.0/parser.test
> +#usr/share/installed-tests/json-glib-1.0/path.test
> +#usr/share/installed-tests/json-glib-1.0/reader.test
> +#usr/share/installed-tests/json-glib-1.0/serialize-complex.test
> +#usr/share/installed-tests/json-glib-1.0/serialize-full.test
> +#usr/share/installed-tests/json-glib-1.0/serialize-simple.test
> +#usr/share/locale/ab/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/as/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/be/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/bg/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/bn_IN/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/bs/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ca/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ca@valencia/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/cs/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/da/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/de/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/el/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/en_GB/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/eo/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/es/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/et/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/eu/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/fa/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/fr/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/fur/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/gl/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/he/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/hi/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/hr/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/hu/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/id/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/it/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ja/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ka/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/kab/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ko/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ky/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/lt/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/lv/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ml/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ms/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/nb/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ne/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/nl/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/oc/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/or/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/pa/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/pl/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/pt/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/pt_BR/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ro/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ru/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/sk/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/sl/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/sr/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/sr@latin/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/sv/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/te/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/tg/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/th/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/tr/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/ug/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/uk/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/vi/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/zh_CN/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/zh_HK/LC_MESSAGES/json-glib-1.0.mo
> +#usr/share/locale/zh_TW/LC_MESSAGES/json-glib-1.0.mo
> diff --git a/lfs/json-glib b/lfs/json-glib
> new file mode 100644
> index 000000000..00617cd93
> --- /dev/null
> +++ b/lfs/json-glib
> @@ -0,0 +1,84 @@
> +###############################################################################
> +#                                                                             #
> +# IPFire.org - A linux based firewall                                         #
> +# Copyright (C) 2007-2025  IPFire Team  <info@ipfire.org>                     #
> +#                                                                             #
> +# This program is free software: you can redistribute it and/or modify        #
> +# it under the terms of the GNU General Public License as published by        #
> +# the Free Software Foundation, either version 3 of the License, or           #
> +# (at your option) any later version.                                         #
> +#                                                                             #
> +# This program is distributed in the hope that it will be useful,             #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
> +# GNU General Public License for more details.                                #
> +#                                                                             #
> +# You should have received a copy of the GNU General Public License           #
> +# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
> +#                                                                             #
> +###############################################################################
> +
> +###############################################################################
> +# Definitions
> +###############################################################################
> +
> +include Config
> +
> +VER        = 1.10.6
> +
> +THISAPP    = json-glib-$(VER)
> +DL_FILE    = $(THISAPP).tar.xz
> +DL_FROM    = $(URL_IPFIRE)
> +DIR_APP    = $(DIR_SRC)/$(THISAPP)
> +TARGET     = $(DIR_INFO)/$(THISAPP)
> +
> +###############################################################################
> +# Top-level Rules
> +###############################################################################
> +
> +objects = $(DL_FILE)
> +
> +$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
> +
> +$(DL_FILE)_BLAKE2 = 125ba305d5d33ecb1a1fbe46322c5035c7f97bd49e8eeef26e3c9c5d829693978fdc10bbe3d926cd4d07f8fd80c9df282d5ff7fe80ab4a6ab8e17c93e9d362d4
> +
> +install : $(TARGET)
> +
> +check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> +
> +download :$(patsubst %,$(DIR_DL)/%,$(objects))
> +
> +b2 : $(subst %,%_BLAKE2,$(objects))
> +
> +dist:
> +	@$(PAK)
> +
> +###############################################################################
> +# Downloading, checking, b2sum
> +###############################################################################
> +
> +$(patsubst %,$(DIR_CHK)/%,$(objects)) :
> +	@$(CHECK)
> +
> +$(patsubst %,$(DIR_DL)/%,$(objects)) :
> +	@$(LOAD)
> +
> +$(subst %,%_BLAKE2,$(objects)) :
> +	@$(B2SUM)
> +
> +###############################################################################
> +# Installation Details
> +###############################################################################
> +
> +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> +	@$(PREBUILD)
> +	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
> +	cd $(DIR_APP) && meson setup \
> +		--prefix=/usr \
> +		--sysconfdir=/etc \
> +		--libdir=/usr/lib \
> +		builddir/
> +	cd $(DIR_APP) && ninja -C builddir/ $(MAKETUNING)
> +	cd $(DIR_APP) && ninja -C builddir/ install
> +	@rm -rf $(DIR_APP)
> +	@$(POSTBUILD)
> diff --git a/make.sh b/make.sh
> index 57a0ff2cf..3412c8f5a 100755
> --- a/make.sh
> +++ b/make.sh
> @@ -1514,6 +1514,7 @@ build_system() {
>   	lfsmake2 libarchive
>   	lfsmake2 cmake
>   	lfsmake2 json-c
> +	lfsmake2 json-glib
>   	lfsmake2 tcl
>   	lfsmake2 python3-MarkupSafe
>   	lfsmake2 python3-Jinja2
  
Michael Tremer July 8, 2025, 7:08 p.m. UTC | #2
Oops, sorry, that was me. Please send a patch and I will merge it tomorrow morning!

> On 8 Jul 2025, at 19:33, Adolf Belka <adolf.belka@ipfire.org> wrote:
> 
> Hi Daniel,
> 
> json-glib is failing to build because it has a run-time dependency for gio and that is provided by glib which comes after json-glib in make.sh
> 
> You will need to shift glib so it comes before json-glib.
> 
> You will also need to figure out what needs to be uncommented from the glib rootfile so that it will be available at run-time.
> 
> Regards,
> 
> Adolf.
> 
> 
>> On 08/07/2025 17:04, Daniel Weismüller wrote:
>> This package is required for swtpm.
>> Signed-off-by: Daniel Weismüller <daniel.weismueller@ipfire.org>
>> ---
>>  config/rootfiles/common/json-glib | 118 ++++++++++++++++++++++++++++++
>>  lfs/json-glib                     |  84 +++++++++++++++++++++
>>  make.sh                           |   1 +
>>  3 files changed, 203 insertions(+)
>>  create mode 100644 config/rootfiles/common/json-glib
>>  create mode 100644 lfs/json-glib
>> diff --git a/config/rootfiles/common/json-glib b/config/rootfiles/common/json-glib
>> new file mode 100644
>> index 000000000..d403c7c28
>> --- /dev/null
>> +++ b/config/rootfiles/common/json-glib
>> @@ -0,0 +1,118 @@
>> +#usr/bin/json-glib-format
>> +#usr/bin/json-glib-validate
>> +#usr/include/json-glib-1.0
>> +#usr/include/json-glib-1.0/json-glib
>> +#usr/include/json-glib-1.0/json-glib/json-builder.h
>> +#usr/include/json-glib-1.0/json-glib/json-enum-types.h
>> +#usr/include/json-glib-1.0/json-glib/json-generator.h
>> +#usr/include/json-glib-1.0/json-glib/json-glib.h
>> +#usr/include/json-glib-1.0/json-glib/json-gobject.h
>> +#usr/include/json-glib-1.0/json-glib/json-gvariant.h
>> +#usr/include/json-glib-1.0/json-glib/json-parser.h
>> +#usr/include/json-glib-1.0/json-glib/json-path.h
>> +#usr/include/json-glib-1.0/json-glib/json-reader.h
>> +#usr/include/json-glib-1.0/json-glib/json-types.h
>> +#usr/include/json-glib-1.0/json-glib/json-utils.h
>> +#usr/include/json-glib-1.0/json-glib/json-version-macros.h
>> +#usr/include/json-glib-1.0/json-glib/json-version.h
>> +#usr/lib/libjson-glib-1.0.so
>> +usr/lib/libjson-glib-1.0.so.0
>> +usr/lib/libjson-glib-1.0.so.0.1000.6
>> +#usr/lib/pkgconfig/json-glib-1.0.pc
>> +#usr/libexec/installed-tests
>> +#usr/libexec/installed-tests/json-glib-1.0
>> +#usr/libexec/installed-tests/json-glib-1.0/array
>> +#usr/libexec/installed-tests/json-glib-1.0/boxed
>> +#usr/libexec/installed-tests/json-glib-1.0/builder
>> +#usr/libexec/installed-tests/json-glib-1.0/generator
>> +#usr/libexec/installed-tests/json-glib-1.0/gvariant
>> +#usr/libexec/installed-tests/json-glib-1.0/invalid
>> +#usr/libexec/installed-tests/json-glib-1.0/invalid.json
>> +#usr/libexec/installed-tests/json-glib-1.0/node
>> +#usr/libexec/installed-tests/json-glib-1.0/object
>> +#usr/libexec/installed-tests/json-glib-1.0/parser
>> +#usr/libexec/installed-tests/json-glib-1.0/path
>> +#usr/libexec/installed-tests/json-glib-1.0/reader
>> +#usr/libexec/installed-tests/json-glib-1.0/serialize-complex
>> +#usr/libexec/installed-tests/json-glib-1.0/serialize-full
>> +#usr/libexec/installed-tests/json-glib-1.0/serialize-simple
>> +#usr/libexec/installed-tests/json-glib-1.0/skip-bom.json
>> +#usr/libexec/installed-tests/json-glib-1.0/stream-load.json
>> +#usr/share/installed-tests
>> +#usr/share/installed-tests/json-glib-1.0
>> +#usr/share/installed-tests/json-glib-1.0/array.test
>> +#usr/share/installed-tests/json-glib-1.0/boxed.test
>> +#usr/share/installed-tests/json-glib-1.0/builder.test
>> +#usr/share/installed-tests/json-glib-1.0/generator.test
>> +#usr/share/installed-tests/json-glib-1.0/gvariant.test
>> +#usr/share/installed-tests/json-glib-1.0/invalid.test
>> +#usr/share/installed-tests/json-glib-1.0/node.test
>> +#usr/share/installed-tests/json-glib-1.0/object.test
>> +#usr/share/installed-tests/json-glib-1.0/parser.test
>> +#usr/share/installed-tests/json-glib-1.0/path.test
>> +#usr/share/installed-tests/json-glib-1.0/reader.test
>> +#usr/share/installed-tests/json-glib-1.0/serialize-complex.test
>> +#usr/share/installed-tests/json-glib-1.0/serialize-full.test
>> +#usr/share/installed-tests/json-glib-1.0/serialize-simple.test
>> +#usr/share/locale/ab/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/as/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/be/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/bg/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/bn_IN/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/bs/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ca/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ca@valencia/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/cs/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/da/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/de/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/el/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/en_GB/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/eo/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/es/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/et/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/eu/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/fa/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/fr/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/fur/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/gl/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/he/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/hi/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/hr/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/hu/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/id/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/it/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ja/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ka/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/kab/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ko/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ky/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/lt/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/lv/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ml/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ms/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/nb/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ne/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/nl/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/oc/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/or/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/pa/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/pl/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/pt/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/pt_BR/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ro/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ru/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/sk/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/sl/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/sr/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/sr@latin/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/sv/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/te/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/tg/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/th/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/tr/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/ug/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/uk/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/vi/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/zh_CN/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/zh_HK/LC_MESSAGES/json-glib-1.0.mo
>> +#usr/share/locale/zh_TW/LC_MESSAGES/json-glib-1.0.mo
>> diff --git a/lfs/json-glib b/lfs/json-glib
>> new file mode 100644
>> index 000000000..00617cd93
>> --- /dev/null
>> +++ b/lfs/json-glib
>> @@ -0,0 +1,84 @@
>> +###############################################################################
>> +#                                                                             #
>> +# IPFire.org - A linux based firewall                                         #
>> +# Copyright (C) 2007-2025  IPFire Team  <info@ipfire.org>                     #
>> +#                                                                             #
>> +# This program is free software: you can redistribute it and/or modify        #
>> +# it under the terms of the GNU General Public License as published by        #
>> +# the Free Software Foundation, either version 3 of the License, or           #
>> +# (at your option) any later version.                                         #
>> +#                                                                             #
>> +# This program is distributed in the hope that it will be useful,             #
>> +# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
>> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
>> +# GNU General Public License for more details.                                #
>> +#                                                                             #
>> +# You should have received a copy of the GNU General Public License           #
>> +# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
>> +#                                                                             #
>> +###############################################################################
>> +
>> +###############################################################################
>> +# Definitions
>> +###############################################################################
>> +
>> +include Config
>> +
>> +VER        = 1.10.6
>> +
>> +THISAPP    = json-glib-$(VER)
>> +DL_FILE    = $(THISAPP).tar.xz
>> +DL_FROM    = $(URL_IPFIRE)
>> +DIR_APP    = $(DIR_SRC)/$(THISAPP)
>> +TARGET     = $(DIR_INFO)/$(THISAPP)
>> +
>> +###############################################################################
>> +# Top-level Rules
>> +###############################################################################
>> +
>> +objects = $(DL_FILE)
>> +
>> +$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>> +
>> +$(DL_FILE)_BLAKE2 = 125ba305d5d33ecb1a1fbe46322c5035c7f97bd49e8eeef26e3c9c5d829693978fdc10bbe3d926cd4d07f8fd80c9df282d5ff7fe80ab4a6ab8e17c93e9d362d4
>> +
>> +install : $(TARGET)
>> +
>> +check : $(patsubst %,$(DIR_CHK)/%,$(objects))
>> +
>> +download :$(patsubst %,$(DIR_DL)/%,$(objects))
>> +
>> +b2 : $(subst %,%_BLAKE2,$(objects))
>> +
>> +dist:
>> +    @$(PAK)
>> +
>> +###############################################################################
>> +# Downloading, checking, b2sum
>> +###############################################################################
>> +
>> +$(patsubst %,$(DIR_CHK)/%,$(objects)) :
>> +    @$(CHECK)
>> +
>> +$(patsubst %,$(DIR_DL)/%,$(objects)) :
>> +    @$(LOAD)
>> +
>> +$(subst %,%_BLAKE2,$(objects)) :
>> +    @$(B2SUM)
>> +
>> +###############################################################################
>> +# Installation Details
>> +###############################################################################
>> +
>> +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>> +    @$(PREBUILD)
>> +    @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
>> +    cd $(DIR_APP) && meson setup \
>> +        --prefix=/usr \
>> +        --sysconfdir=/etc \
>> +        --libdir=/usr/lib \
>> +        builddir/
>> +    cd $(DIR_APP) && ninja -C builddir/ $(MAKETUNING)
>> +    cd $(DIR_APP) && ninja -C builddir/ install
>> +    @rm -rf $(DIR_APP)
>> +    @$(POSTBUILD)
>> diff --git a/make.sh b/make.sh
>> index 57a0ff2cf..3412c8f5a 100755
>> --- a/make.sh
>> +++ b/make.sh
>> @@ -1514,6 +1514,7 @@ build_system() {
>>      lfsmake2 libarchive
>>      lfsmake2 cmake
>>      lfsmake2 json-c
>> +    lfsmake2 json-glib
>>      lfsmake2 tcl
>>      lfsmake2 python3-MarkupSafe
>>      lfsmake2 python3-Jinja2
> 
>
  

Patch

diff --git a/config/rootfiles/common/json-glib b/config/rootfiles/common/json-glib
new file mode 100644
index 000000000..d403c7c28
--- /dev/null
+++ b/config/rootfiles/common/json-glib
@@ -0,0 +1,118 @@ 
+#usr/bin/json-glib-format
+#usr/bin/json-glib-validate
+#usr/include/json-glib-1.0
+#usr/include/json-glib-1.0/json-glib
+#usr/include/json-glib-1.0/json-glib/json-builder.h
+#usr/include/json-glib-1.0/json-glib/json-enum-types.h
+#usr/include/json-glib-1.0/json-glib/json-generator.h
+#usr/include/json-glib-1.0/json-glib/json-glib.h
+#usr/include/json-glib-1.0/json-glib/json-gobject.h
+#usr/include/json-glib-1.0/json-glib/json-gvariant.h
+#usr/include/json-glib-1.0/json-glib/json-parser.h
+#usr/include/json-glib-1.0/json-glib/json-path.h
+#usr/include/json-glib-1.0/json-glib/json-reader.h
+#usr/include/json-glib-1.0/json-glib/json-types.h
+#usr/include/json-glib-1.0/json-glib/json-utils.h
+#usr/include/json-glib-1.0/json-glib/json-version-macros.h
+#usr/include/json-glib-1.0/json-glib/json-version.h
+#usr/lib/libjson-glib-1.0.so
+usr/lib/libjson-glib-1.0.so.0
+usr/lib/libjson-glib-1.0.so.0.1000.6
+#usr/lib/pkgconfig/json-glib-1.0.pc
+#usr/libexec/installed-tests
+#usr/libexec/installed-tests/json-glib-1.0
+#usr/libexec/installed-tests/json-glib-1.0/array
+#usr/libexec/installed-tests/json-glib-1.0/boxed
+#usr/libexec/installed-tests/json-glib-1.0/builder
+#usr/libexec/installed-tests/json-glib-1.0/generator
+#usr/libexec/installed-tests/json-glib-1.0/gvariant
+#usr/libexec/installed-tests/json-glib-1.0/invalid
+#usr/libexec/installed-tests/json-glib-1.0/invalid.json
+#usr/libexec/installed-tests/json-glib-1.0/node
+#usr/libexec/installed-tests/json-glib-1.0/object
+#usr/libexec/installed-tests/json-glib-1.0/parser
+#usr/libexec/installed-tests/json-glib-1.0/path
+#usr/libexec/installed-tests/json-glib-1.0/reader
+#usr/libexec/installed-tests/json-glib-1.0/serialize-complex
+#usr/libexec/installed-tests/json-glib-1.0/serialize-full
+#usr/libexec/installed-tests/json-glib-1.0/serialize-simple
+#usr/libexec/installed-tests/json-glib-1.0/skip-bom.json
+#usr/libexec/installed-tests/json-glib-1.0/stream-load.json
+#usr/share/installed-tests
+#usr/share/installed-tests/json-glib-1.0
+#usr/share/installed-tests/json-glib-1.0/array.test
+#usr/share/installed-tests/json-glib-1.0/boxed.test
+#usr/share/installed-tests/json-glib-1.0/builder.test
+#usr/share/installed-tests/json-glib-1.0/generator.test
+#usr/share/installed-tests/json-glib-1.0/gvariant.test
+#usr/share/installed-tests/json-glib-1.0/invalid.test
+#usr/share/installed-tests/json-glib-1.0/node.test
+#usr/share/installed-tests/json-glib-1.0/object.test
+#usr/share/installed-tests/json-glib-1.0/parser.test
+#usr/share/installed-tests/json-glib-1.0/path.test
+#usr/share/installed-tests/json-glib-1.0/reader.test
+#usr/share/installed-tests/json-glib-1.0/serialize-complex.test
+#usr/share/installed-tests/json-glib-1.0/serialize-full.test
+#usr/share/installed-tests/json-glib-1.0/serialize-simple.test
+#usr/share/locale/ab/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/as/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/be/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/bg/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/bn_IN/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/bs/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ca/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ca@valencia/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/cs/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/da/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/de/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/el/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/en_GB/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/eo/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/es/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/et/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/eu/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/fa/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/fr/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/fur/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/gl/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/he/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/hi/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/hr/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/hu/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/id/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/it/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ja/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ka/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/kab/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ko/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ky/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/lt/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/lv/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ml/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ms/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/nb/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ne/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/nl/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/oc/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/or/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/pa/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/pl/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/pt/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/pt_BR/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ro/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ru/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/sk/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/sl/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/sr/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/sr@latin/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/sv/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/te/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/tg/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/th/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/tr/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/ug/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/uk/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/vi/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/zh_CN/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/zh_HK/LC_MESSAGES/json-glib-1.0.mo
+#usr/share/locale/zh_TW/LC_MESSAGES/json-glib-1.0.mo
diff --git a/lfs/json-glib b/lfs/json-glib
new file mode 100644
index 000000000..00617cd93
--- /dev/null
+++ b/lfs/json-glib
@@ -0,0 +1,84 @@ 
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007-2025  IPFire Team  <info@ipfire.org>                     #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 1.10.6
+
+THISAPP    = json-glib-$(VER)
+DL_FILE    = $(THISAPP).tar.xz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_BLAKE2 = 125ba305d5d33ecb1a1fbe46322c5035c7f97bd49e8eeef26e3c9c5d829693978fdc10bbe3d926cd4d07f8fd80c9df282d5ff7fe80ab4a6ab8e17c93e9d362d4
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+b2 : $(subst %,%_BLAKE2,$(objects))
+
+dist:
+	@$(PAK)
+
+###############################################################################
+# Downloading, checking, b2sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+	@$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+	@$(LOAD)
+
+$(subst %,%_BLAKE2,$(objects)) :
+	@$(B2SUM)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+	@$(PREBUILD)
+	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+	cd $(DIR_APP) && meson setup \
+		--prefix=/usr \
+		--sysconfdir=/etc \
+		--libdir=/usr/lib \
+		builddir/
+	cd $(DIR_APP) && ninja -C builddir/ $(MAKETUNING)
+	cd $(DIR_APP) && ninja -C builddir/ install
+	@rm -rf $(DIR_APP)
+	@$(POSTBUILD)
diff --git a/make.sh b/make.sh
index 57a0ff2cf..3412c8f5a 100755
--- a/make.sh
+++ b/make.sh
@@ -1514,6 +1514,7 @@  build_system() {
 	lfsmake2 libarchive
 	lfsmake2 cmake
 	lfsmake2 json-c
+	lfsmake2 json-glib
 	lfsmake2 tcl
 	lfsmake2 python3-MarkupSafe
 	lfsmake2 python3-Jinja2