Gnome-tweaks does not look at GSETTINGS_SCHEMA_PATH or XDG_DATA_DIRS, it assumes that schemas are installed in one global directory (GSETTINGS_SCHEMA_DIR/gsettingsschemadir). Guix/GuixSD uses a different directory for every gir package and has packages pick-up files using XDG_DATA_DIRS. Upstream ticket: https://bugzilla.gnome.org/show_bug.cgi?id=764537 janneke@gnu.org --- gnome-tweak-3.18.1.orig/gtweak/gsettings.py 2015-04-08 15:21:32.000000000 +0200 +++ gnome-tweak-tool-3.18.1/gtweak/gsettings.py 2016-04-03 11:26:38.658482704 +0200 @@ -16,7 +16,8 @@ # along with gnome-tweak-tool. If not, see . import logging -import os.path +import os +import sys import xml.dom.minidom import gettext @@ -31,6 +32,13 @@ class GSettingsMissingError(Exception): pass +def file_from_path(path, file_name): + for dir in path: + f = os.path.join(dir, file_name) + if os.path.exists(f): + return f + return None + class _GSettingsSchema: def __init__(self, schema_name, schema_dir=None, schema_filename=None, **options): if not schema_dir: @@ -38,9 +46,14 @@ if not schema_filename: schema_filename = schema_name + ".gschema.xml" + schema_prefix = os.path.join('glib-2.0', 'schemas') schema_path = os.path.join(schema_dir, schema_filename) if not os.path.exists(schema_path): - logging.critical("Could not find schema %s" % schema_path) + schema_path = file_from_path(os.environ.get ('GSETTINGS_SCHEMA_PATH', '').split(os.path.pathsep), schema_filename) + if not (schema_path and os.path.exists(schema_path)): + schema_path = file_from_path(os.environ.get ('XDG_DATA_DIRS', '').split(os.path.pathsep), os.path.join(schema_prefix, schema_filename)) + if not (schema_path and os.path.exists(schema_path)): + logging.critical("Could not find schema %s" % schema_filename) assert(False) self._schema_name = schema_name v class='path'>path: root/gnu/installer/connman.scm
AgeCommit message (Expand)Author
2020-09-21installer: Fix docstring typoes....* gnu/installer/connman.scm (connman-state, run-locale-page) (start-swapping, stop-swapping, run-installer-steps): Fix typo in docstring. Tobias Geerinckx-Rice
2020-04-19installer: connman: Fix Wifi connection....Issue reported by SergioBG here: https://lists.gnu.org/archive/html/bug-guix/2020-04/msg00432.html. Due to default buffering mode, the installer was reading from the pipe without having actually written a command before. * gnu/installer/connman.scm (connman-connect-with-auth): Set pipe buffering mode to 'line. Mathieu Othacehe
2019-05-29installer: Fix wifi menu crash with hidden SSIDs....This fixes https://issues.guix.gnu.org/issue/35622. * gnu/installer/connman.scm (<service>): Mention that name may be false. * gnu/installer/newt/wifi.scm (wifi-services): Filter out wifi services without name. Co-authored by: Pierre Neidhardt <mail@ambrevar.xyz> Mathieu Othacehe
2019-02-18gnu: Fix some typos in the installer....* gnu/installer/connman.scm (connman-connect-with-auth): Fix typo in documentation. * gnu/installer/newt/keymap.scm (sort-variants): Likewise. * gnu/installer/newt/page.scm (run-listbox-selection-page): Likewise. * gnu/installer/parted.scm (mkpart): Likewise. * gnu/installer/newt/utils.scm (destroy-form-and-pop): Likewise. * gnu/installer/newt/wifi.scm (run-unknown-error-page): Fix typo. (wifi-listbox-heigth): Rename to… (wifi-listbox-height): …this, and adjust caller. * gnu/installer/timezone.scm (locate-childrens): Rename to… (locate-children): …this. Adjust all callers. Tobias Geerinckx-Rice
2019-01-17gnu: Add graphical installer support....* configure.ac: Require that guile-newt is available. * gnu/installer.scm: New file. * gnu/installer/aux-files/logo.txt: New file. * gnu/installer/build-installer.scm: New file. * gnu/installer/connman.scm: New file. * gnu/installer/keymap.scm: New file. * gnu/installer/locale.scm: New file. * gnu/installer/newt.scm: New file. * gnu/installer/newt/ethernet.scm: New file. * gnu/installer/newt/hostname.scm: New file. * gnu/installer/newt/keymap.scm: New file. * gnu/installer/newt/locale.scm: New file. * gnu/installer/newt/menu.scm: New file. * gnu/installer/newt/network.scm: New file. * gnu/installer/newt/page.scm: New file. * gnu/installer/newt/timezone.scm: New file. * gnu/installer/newt/user.scm: New file. * gnu/installer/newt/utils.scm: New file. * gnu/installer/newt/welcome.scm: New file. * gnu/installer/newt/wifi.scm: New file. * gnu/installer/steps.scm: New file. * gnu/installer/timezone.scm: New file. * gnu/installer/utils.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add previous files. * gnu/system.scm: Export %root-account. * gnu/system/install.scm (%installation-services): Use kmscon instead of linux VT for all tty. (installation-os)[users]: Add the graphical installer as shell of the root account. [packages]: Add font related packages. * po/guix/POTFILES.in: Add installer files. Mathieu Othacehe