;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; 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