diff --git a/gnome-base/dconf-editor/additional-files/compile-schemas.sh b/gnome-base/dconf-editor/additional-files/compile-schemas.sh new file mode 100644 index 000000000..eb29c6400 --- /dev/null +++ b/gnome-base/dconf-editor/additional-files/compile-schemas.sh @@ -0,0 +1,8 @@ +#!/bin/sh +SYSTEM_DATA_DIR="`finddir B_SYSTEM_DATA_DIRECTORY`" +NONPACKAGED_DATA_DIR="`finddir B_SYSTEM_NONPACKAGED_DATA_DIRECTORY`" + +mkdir -p $NONPACKAGED_DATA_DIR/glib-2.0/schemas +cp -nrf $SYSTEM_DATA_DIR/glib-2.0/schemas/* $NONPACKAGED_DATA_DIR/glib-2.0/schemas + +glib-compile-schemas $NONPACKAGED_DATA_DIR/glib-2.0/schemas diff --git a/gnome-base/dconf-editor/additional-files/dconf_editor.rdef.in b/gnome-base/dconf-editor/additional-files/dconf_editor.rdef.in new file mode 100644 index 000000000..7607278c4 --- /dev/null +++ b/gnome-base/dconf-editor/additional-files/dconf_editor.rdef.in @@ -0,0 +1,62 @@ + +resource app_flags B_MULTIPLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = 0, + variety = B_APPV_FINAL, + internal = 0, + short_info = "Dconf Editor", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + +resource vector_icon { + $"6E63696606020016023ABACC3C5D6DBC2D6F3A83674AE1B449F76B0068FF8505" + $"01011A171B660554020016020000003C4000BC40000000004D700048C00000FF" + $"FFE50401660B06047FC719B454C719B454C261B454C426BB3CC17EBB3CC6CEBB" + $"3CC719B454CBD2B454C719B454B45406047FBF48BA2BBF48BA2BC0B4BA40BF97" + $"B567C244B514BCEAB5BBBF48BA2BBDDBBA16BF48BA2BBA2B06047FB8ABBDD7B8" + $"ABBDD7B9AEBD60B714BA14B8CDB8D8B55BBB51B8ABBDD7B7A8BE4EB8ABBDD7BD" + $"D706057F01BB85BB39BB85BB39BCBABAFCBAA5B719BCCBB63FB87EB7F3BB85BB" + $"39BA51BB75BB85BB39BB39BB390609FF7F01C1EBC68BC1EBC68BC223C826BF50" + $"C7E8C0B5C8F2BADDC49BC5E6BE74C6AEC2F6C541BAB6B820C1B8B977BBDDB737" + $"C5AEC0B7CB2CBBDDCB2CC31ACB2CC65EC66AC5DAC913C6C3C463C1EBC68BC1BD" + $"C533C1EBC68BC68BC68B0606FF0737303730BA9E30303730BA9E30BDB3373EBA" + $"9E3EBDB33E3E373EBDB33EBA9E3730BDB3303730300216C3BABC26C3BABC26C3" + $"BABCF2C359BE83C399BDBEC267BEA9C084BEF6C176BECFC01ABF9ABEF6C083BF" + $"91C01EBECFC176BE81C35BBEA8C268BDBFC39BBC24C3B9BCF2C3B9BBB5C2DFBA" + $"D7C12BBB46C205BA1AC0FAB8E1C02BB971C0A0B7EEC051B609C09E2AC077B590" + $"BFF9B4F4BE7CB535BF40B5A2BDCFB6FDBC74B64FBD21B6F1BBB1B755BA49B712" + $"BAF5B6E6B96EB607B7B7B676B892B67EB712B7B8B608B711B681B892B677BA47" + $"B755B96DB6E6BAFDB70EBC73B6FEBBBAB6F2BD21B650BE7CB4F4BDCEB5A2BF3F" + $"B534C09EB60CBFF7B592C077B6FEC02BB8E1C051B7EFC0A6B978C12ABAD7C0FA" + $"BA24C205BB47C3BABC26C2E0BBB7C3BABC26C3BABC26C3BABC26C3BABC260216" + $"C2EEBB5AC2EEBB5AC2EEBC26C28DBDB7C2CDBCF2C19BBDDDBFB8BE2AC0AABE03" + $"BF4EBECEBE2ABFB7BEC5BF52BE03C0AABDB5C28FBDDCC19CBCF3C2CFBB58C2ED" + $"BC26C2EDBAE9C213BA0BC05FBA7AC139B94EC02EB815BF5FB8A5BFD4B722BF85" + $"B53DBFD228BFABB4C4BF2DB428BDB0B469BE74B4D6BD03B631BBA8B583BC55B6" + $"25BAE5B689B97DB646BA29B61AB8A2B53BB6EBB5AAB7C6B5B2B646B6ECB53CB6" + $"45B5B5B7C6B5ABB97BB689B8A1B61ABA31B642BBA7B632BAEEB626BC55B584BD" + $"B0B428BD02B4D6BE73B468BFD2B540BF2BB4C6BFABB632BF5FB815BF85B723BF" + $"DAB8ACC05EBA0BC02EB958C139BA7BC2EEBB5AC214BAEBC2EEBB5AC2EEBB5AC2" + $"EEBB5AC2EEBB5A0606FF07352E352EB9D22E2E352EB9D22EBCE7353CB9D23CBC" + $"E73C3C353CBCE73CB9D2352EBCE72E352E2E0606FF07352E352EB9D22E2E352E" + $"B9D22EBCE7353CB9D23CBCE73C3C353CBCE73CB9D2352EBCE72E352E2E0216C2" + $"EEBB5AC2EEBB5AC2EEBC26C28DBDB7C2CDBCF2C19BBDDDBFB8BE2AC0AABE03BF" + $"4EBECEBE2ABFB7BEC5BF52BE03C0AABDB5C28FBDDCC19CBCF3C2CFBB58C2EDBC" + $"26C2EDBAE9C213BA0BC05FBA7AC139B94EC02EB815BF5FB8A5BFD4B722BF85B5" + $"3DBFD228BFABB4C4BF2DB428BDB0B469BE74B4D6BD03B631BBA8B583BC55B625" + $"BAE5B689B97DB646BA29B61AB8A2B53BB6EBB5AAB7C6B5B2B646B6ECB53CB645" + $"B5B5B7C6B5ABB97BB689B8A1B61ABA31B642BBA7B632BAEEB626BC55B584BDB0" + $"B428BD02B4D6BE73B468BFD2B540BF2BB4C6BFABB632BF5FB815BF85B723BFDA" + $"B8ACC05EBA0BC02EB958C139BA7BC2EEBB5AC214BAEBC2EEBB5AC2EEBB5AC2EE" + $"BB5AC2EEBB5A0A0A05050403020100023F24910000000000003B3B81487BC34B" + $"289B0A0105040302010030241F01178300040A00010020241F0A00010120241F" + $"0A00010220241F0A00010320241F0A00010420241F0A02020506123EE4D00000" + $"000000003EE4BA3AB82C4A02BA01178400040A03020708123EE4D00000000000" + $"003EE4BA3AB82C4A02BA01178500040A0402090A023EE4D00000000000003EE4" + $"BA3AB82C4A02BA" +}; diff --git a/gnome-base/dconf-editor/dconf_editor-43.0.recipe b/gnome-base/dconf-editor/dconf_editor-43.0.recipe new file mode 100644 index 000000000..3ed35dd41 --- /dev/null +++ b/gnome-base/dconf-editor/dconf_editor-43.0.recipe @@ -0,0 +1,110 @@ +SUMMARY="A GSettings editor for GNOME" +DESCRIPTION="Dconf Editor is a viewer and editor of applications internal settings. \ +It allows editing options not exposed in some applications interface. It\'s a \ +powerful tool, that could break some applications if misused, and you should \ +only use it understanding that." +HOMEPAGE="https://wiki.gnome.org/Apps/DconfEditor" +COPYRIGHT="2022 The GNOME Project" +LICENSE="GNU GPL v3" +REVISION="1" +SOURCE_URI="https://gitlab.gnome.org/GNOME/dconf-editor/-/archive/$portVersion/dconf-editor-$portVersion.tar.gz" +CHECKSUM_SHA256="9c74aaaa37beb55c94df160ff26b18004c9f601e6af4c5cc33fb421b74245218" +SOURCE_DIR="dconf-editor-$portVersion" +PATCHES="dconf_editor-$portVersion.patchset" + +ADDITIONAL_FILES=" + dconf_editor.rdef.in + compile-schemas.sh + " + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +POST_INSTALL_SCRIPTS=" + $relativePostInstallDir/compile-schemas.sh + " + +PROVIDES=" + dconf_editor$secondaryArchSuffix = $portVersion + app:DconfEditor = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libdconf$secondaryArchSuffix + lib:libgtk_3$secondaryArchSuffix + lib:libglib_2.0$secondaryArchSuffix + lib:libgio_2.0$secondaryArchSuffix + lib:libgmodule_2.0$secondaryArchSuffix + lib:libgobject_2.0$secondaryArchSuffix + lib:libgthread_2.0$secondaryArchSuffix + lib:libhandy_1$secondaryArchSuffix + lib:libintl$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libdconf$secondaryArchSuffix + devel:libgtk_3$secondaryArchSuffix + devel:libglib_2.0$secondaryArchSuffix + devel:libhandy_1$secondaryArchSuffix + devel:libintl$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:find + cmd:gcc$secondaryArchSuffix + cmd:itstool + cmd:meson + cmd:ninja + cmd:pkg_config$secondaryArchSuffix + cmd:xargs + cmd:valac + " + +PATCH() +{ + cd $sourceDir + find editor -type f -regex '.*\(vala\|ui\|css\)' -print0 | xargs -0 sed -i 's/-symbolic//g' +} + +BUILD() +{ + meson Build \ + --buildtype=release \ + --prefix="$prefix" \ + --bindir="$appsDir" \ + --datadir="$dataDir" \ + --localedir="$dataDir/locale" + + ninja -C Build +} + +INSTALL() +{ + ninja install -C Build + + mv $appsDir/dconf-editor "$appsDir/Dconf Editor" + + rm -rf $prefix/share + rm -rf $dataDir/{applications,dbus-1,bash-completion} + + mkdir -p $postInstallDir + cp -f $portDir/additional-files/compile-schemas.sh $postInstallDir + chmod -v a+rx $postInstallDir/compile-schemas.sh + + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local APP_NAME="Dconf Editor" + local LONG_INFO="$SUMMARY" + local APP_SIGNATURE="application/x-vnd.gnome-dconf-editor" + sed \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + -e "s|@APP_NAME@|$APP_NAME|" \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + $portDir/additional-files/dconf_editor.rdef.in > dconf_editor.rdef + + addResourcesToBinaries dconf_editor.rdef "$appsDir/Dconf Editor" + + addAppDeskbarSymlink "$appsDir/Dconf Editor" +} diff --git a/gnome-base/dconf-editor/patches/dconf_editor-43.0.patchset b/gnome-base/dconf-editor/patches/dconf_editor-43.0.patchset new file mode 100644 index 000000000..f6af7a7fc --- /dev/null +++ b/gnome-base/dconf-editor/patches/dconf_editor-43.0.patchset @@ -0,0 +1,26 @@ +From 78dadff19ee55c7e6af99d4a99baf06627336223 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Thu, 1 Dec 2022 16:10:27 +1000 +Subject: Dirty hack for XDG vars + + +diff --git a/editor/dconf-editor.vala b/editor/dconf-editor.vala +index ca3ce16..55c37f0 100644 +--- a/editor/dconf-editor.vala ++++ b/editor/dconf-editor.vala +@@ -184,6 +184,12 @@ private class ConfigurationEditor : Gtk.Application, BaseApplication + + private static int main (string [] args) + { ++ GLib.Environment.set_variable("XDG_CONFIG_DIRS", "/boot/system/settings", false); ++ GLib.Environment.set_variable("XDG_DATA_HOME", "/boot/home/config/non-packaged/data", false); ++ GLib.Environment.set_variable("XDG_CONFIG_HOME", "/boot/home/config/settings", false); ++ GLib.Environment.set_variable("XDG_CACHE_HOME", "/boot/home/config/cache", false); ++ GLib.Environment.set_variable("XDG_DATA_DIRS", "/boot/system/non-packaged/data:/boot/system/data", false); ++ + Intl.setlocale (LocaleCategory.ALL, ""); + Intl.bindtextdomain (Config.GETTEXT_PACKAGE, Config.LOCALEDIR); + Intl.bind_textdomain_codeset (Config.GETTEXT_PACKAGE, "UTF-8"); +-- +2.37.3 +