Skip to content

Commit

Permalink
Switch to using gimp-console for processing .xcf files
Browse files Browse the repository at this point in the history
This doesn't expect a graphical display, while gimp 3.0 now appears to
require it, despite the --no-interface option.
  • Loading branch information
dfandrich committed Jan 23, 2025
1 parent cdeab2a commit 5425698
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion autodescribe
Original file line number Diff line number Diff line change
Expand Up @@ -1315,7 +1315,7 @@ comment_xcf () {
sf="$(echo "$1" | sed 's/"/\\"/g')"
# gimp's Scheme interpreter displays some logging info before and after the
# desired output, so use sed to delete it to leave only XML.
METADATA=$(echo '((display "\nMETADATA-START\n") (let ((img (car (gimp-file-load RUN-NONINTERACTIVE "'"$sf"'" "file")))) (display (car (gimp-image-get-metadata img))) (gimp-image-delete img)) (gimp-quit TRUE))' | gimp -n -i -d -f -s -g /dev/null --stack-trace-mode=never -b - 2>/dev/null | sed -e '1,/^METADATA-START/d' -e '/<\/metadata>/q')
METADATA=$(echo '((display "\nMETADATA-START\n") (let ((img (car (gimp-file-load RUN-NONINTERACTIVE "'"$sf"'" "file")))) (display (car (gimp-image-get-metadata img))) (gimp-image-delete img)) (gimp-quit TRUE))' | gimp-console -n -i -c -d -f -s -g /dev/null --stack-trace-mode=never -b - 2>/dev/null | sed -e '1,/^METADATA-START/d' -e '/<\/metadata>/q')
if [ -n "$METADATA" ]; then
COMMENT=$(echo "$METADATA" | xmlstarlet sel -t -v '/metadata/tag[@name="Xmp.dc.title"]' | sed 's/lang="x-default" *//')
fi
Expand Down
2 changes: 1 addition & 1 deletion automtime
Original file line number Diff line number Diff line change
Expand Up @@ -887,7 +887,7 @@ mtime_xcf () {
# generally a "save" event (which makes sense).
# gimp's Scheme interpreter displays some logging info before and after the
# desired output, so use sed to delete it to leave only XML.
METADATA=$(echo '((display "\nMETADATA-START\n") (let ((img (car (gimp-file-load RUN-NONINTERACTIVE "'"$sf"'" "file")))) (display (car (gimp-image-get-metadata img))) (gimp-image-delete img)) (gimp-quit TRUE))' | gimp -n -i -d -f -s -g /dev/null --stack-trace-mode=never -b - 2>/dev/null | sed -e '1,/^METADATA-START/d' -e '/<\/metadata>/q')
METADATA=$(echo '((display "\nMETADATA-START\n") (let ((img (car (gimp-file-load RUN-NONINTERACTIVE "'"$sf"'" "file")))) (display (car (gimp-image-get-metadata img))) (gimp-image-delete img)) (gimp-quit TRUE))' | gimp-console -n -i -c -d -f -s -g /dev/null --stack-trace-mode=never -b - 2>/dev/null | sed -e '1,/^METADATA-START/d' -e '/<\/metadata>/q')
if [ -n "$METADATA" ]; then
RAWTIME=$(echo "$METADATA" | xmlstarlet sel -t -v "/metadata/tag[starts-with(@name, 'Xmp.xmpMM.History[') and contains(@name, '/stEvt:when')]" | sed 's/lang="x-default" *//' | sort -d | tail -1)
# $RAWTIME is like 2022-02-23T22:50:48-08:00
Expand Down

0 comments on commit 5425698

Please sign in to comment.