;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; migrate-prefs.scm ;;; Custom generated script to migrate user preferences from ;;; gconf to gsettings. This should only be run once - ;;; when running GnuCash 2.6.x for the first time. ;;; ;;; Copyright 2013 Geert Janssens <geert@kobaltwit.be> ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (define-module (migrate-prefs-user)) (use-modules (gnucash core-utils)) ;(use-modules (gnucash gnc-module)) ;; Guile 2 needs to find the symbols from the c module at compile time already ;(eval-when ; (compile load eval) ; (load-extension "libgnc-core-utils" "scm_init_sw_core_utils_module")) ;(use-modules (sw_core_utils)) (define (run-migration-internal) ;; Processing preferences in group ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (display "Preference migration has finished")(newline) ) (define (run-migration) (catch #t run-migration-internal (lambda args (display (string-append "An error occurred while migrating preferences." (newline) "The error is: " (symbol->string key) " - " (car (caddr args)) ".")) #f)) ) (export run-migration) ;; Processing preference ;; Gconf value (boolean): (gnc-prefs-set-bool ; preference group "" ; preference name "" ; preference value #t #f ) ;; Gconf value (string): "" -> gsettings (integer) (gnc-prefs-set-int ; preference group "" ; preference name "" ; preference value ) ;; Type: pair of decimals (stored in Gconf as list of floats) (let ((coords '())) (set! coords (append coords '())) (if (> (length coords) 1) (gnc-prefs-set-coords ; preference group "" ; preference name "" ; x coord (car coords) ; y coord (cadr coords)))) ;; Gconf value (decimal): (gnc-prefs-set-float ; preference group "" ; preference name "" ; preference value ) ;; Gconf value (integer): (gnc-prefs-set-int ; preference group "" ; preference name "" ; preference value ) ;; Gconf value (string): "" -> gsettings (boolean) (let ((suffix (string-delete "" #\_))) (gnc-prefs-set-bool ; preference group "" ; preference name "" ; preference value (string-suffix? (string-append "-" suffix) ""))) ;; Gconf value (string): "" (gnc-prefs-set-string ; preference group "" ; preference name "" ; preference value "" ) ;; Gconf value (64bit integer): (gnc-prefs-set-int64 ; preference group "" ; preference name "" ; preference value ) us0 uk1 ce2 iso3 locale4