summaryrefslogtreecommitdiffstats
path: root/packaging
diff options
context:
space:
mode:
authorMichael Soegtrop <MSoegtrop@yahoo.de>2017-06-05 13:01:17 +0000
committerMichael Soegtrop <MSoegtrop@yahoo.de>2017-06-05 13:01:17 +0000
commite7248b2fa042f42a5c4dd14cd86ab6a5b4524059 (patch)
tree9097520c54e355ded9bd0b4d6618af4e8dacdd91 /packaging
parentupdated to latest trunk (diff)
parent[Bug #1695016] Xaml export misses some radialGradients. (diff)
downloadinkscape-e7248b2fa042f42a5c4dd14cd86ab6a5b4524059.tar.gz
inkscape-e7248b2fa042f42a5c4dd14cd86ab6a5b4524059.zip
updated to latest trunk
(bzr r14876.2.4)
Diffstat (limited to 'packaging')
-rw-r--r--packaging/macosx/README.txt31
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/application-exit.pngbin647 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/dialog-information.pngbin879 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-new.pngbin569 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open-recent.pngbin892 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open.pngbin492 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print-preview.pngbin733 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print.pngbin525 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-properties.pngbin794 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-ltr.pngbin800 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-rtl.pngbin794 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save-as.pngbin770 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save.pngbin652 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/drive-harddisk.pngbin832 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-clear.pngbin695 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-copy.pngbin498 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-cut.pngbin876 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-delete.pngbin866 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find-replace.pngbin875 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find.pngbin788 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-paste.pngbin561 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-ltr.pngbin790 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-rtl.pngbin808 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-select-all.pngbin547 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-ltr.pngbin784 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-rtl.pngbin764 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder-remote.pngbin548 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder.pngbin548 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-ltr.pngbin594 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-rtl.pngbin596 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-ltr.pngbin611 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-rtl.pngbin604 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-center.pngbin393 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-fill.pngbin358 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-left.pngbin378 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-right.pngbin400 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-bold.pngbin649 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-italic.pngbin665 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-strikethrough.pngbin656 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-underline.pngbin645 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-bottom.pngbin647 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-down.pngbin598 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-ltr.pngbin632 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-rtl.pngbin653 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-home.pngbin735 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-ltr.pngbin811 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-rtl.pngbin806 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-ltr.pngbin653 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-rtl.pngbin632 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-ltr.pngbin580 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-rtl.pngbin579 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-ltr.pngbin579 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-rtl.pngbin580 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-top.pngbin630 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-up.pngbin551 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-caps-lock-warning.pngbin275 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-color-picker.pngbin606 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-connect.pngbin692 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-convert.pngbin677 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-disconnect.pngbin715 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-edit.pngbin755 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-font.pngbin706 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-index.pngbin753 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-landscape.pngbin756 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-portrait.pngbin543 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-landscape.pngbin751 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-portrait.pngbin557 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-page-setup.pngbin622 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-preferences.pngbin1014 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-color.pngbin735 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-font.pngbin706 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-ltr.pngbin962 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-rtl.pngbin952 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-about.pngbin704 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-contents.pngbin1002 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/image-missing.pngbin654 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-add.pngbin260 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-remove.pngbin210 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-floppy.pngbin652 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-optical.pngbin894 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-pause.pngbin247 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-ltr.pngbin542 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-rtl.pngbin532 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-stop.pngbin295 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-record.pngbin565 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-ltr.pngbin502 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-rtl.pngbin523 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-ltr.pngbin523 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-rtl.pngbin502 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-ltr.pngbin462 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-rtl.pngbin455 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-ltr.pngbin455 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-rtl.pngbin462 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/network-idle.pngbin623 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-error.pngbin711 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-info.pngbin724 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-paused.pngbin689 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-warning.pngbin685 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/process-stop.pngbin769 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/system-run.pngbin902 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/text-x-generic.pngbin569 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/tools-check-spelling.pngbin641 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-desktop.pngbin548 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-home.pngbin548 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-fullscreen.pngbin432 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-refresh.pngbin926 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-restore.pngbin473 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-ascending.pngbin333 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-descending.pngbin331 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/window-close.pngbin889 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-fit-best.pngbin750 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-in.pngbin785 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-original.pngbin784 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-out.pngbin772 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-apply.pngbin1002 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-cancel.pngbin1067 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-no.pngbin952 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-ok.pngbin963 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-yes.pngbin1044 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/20/window-close.pngbin1224 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/application-exit.pngbin967 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-high.pngbin1217 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-low.pngbin857 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-medium.pngbin1021 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-muted.pngbin910 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/dialog-information.pngbin1420 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-new.pngbin736 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open-recent.pngbin1561 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open.pngbin612 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print-preview.pngbin1244 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print.pngbin818 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-properties.pngbin1146 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-ltr.pngbin1404 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-rtl.pngbin1411 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save-as.pngbin1206 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save.pngbin951 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/drive-harddisk.pngbin1360 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-clear.pngbin1163 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-copy.pngbin697 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-cut.pngbin1032 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-delete.pngbin1449 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find-replace.pngbin1379 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find.pngbin1238 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-paste.pngbin893 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-ltr.pngbin1070 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-rtl.pngbin1085 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-select-all.pngbin717 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-ltr.pngbin1052 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-rtl.pngbin1035 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder-remote.pngbin662 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder.pngbin662 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-ltr.pngbin843 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-rtl.pngbin876 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-ltr.pngbin852 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-rtl.pngbin870 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-center.pngbin490 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-fill.pngbin447 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-left.pngbin489 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-right.pngbin503 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-bold.pngbin947 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-italic.pngbin971 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-strikethrough.pngbin966 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-underline.pngbin969 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-bottom.pngbin1037 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-down.pngbin973 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-ltr.pngbin1028 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-rtl.pngbin1061 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-home.pngbin1050 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-ltr.pngbin1229 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-rtl.pngbin1226 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-ltr.pngbin1061 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-rtl.pngbin1028 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-ltr.pngbin906 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-rtl.pngbin915 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-ltr.pngbin915 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-rtl.pngbin906 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-top.pngbin1037 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-up.pngbin946 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-caps-lock-warning.pngbin360 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-color-picker.pngbin891 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-connect.pngbin946 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-convert.pngbin1413 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-disconnect.pngbin852 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-edit.pngbin1120 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-font.pngbin1109 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-index.pngbin960 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-landscape.pngbin1097 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-portrait.pngbin931 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-landscape.pngbin1059 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-portrait.pngbin940 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-page-setup.pngbin1081 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-preferences.pngbin1691 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-color.pngbin993 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-font.pngbin1109 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-ltr.pngbin1692 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-rtl.pngbin1722 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-about.pngbin982 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-contents.pngbin1728 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/image-missing.pngbin894 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-add.pngbin571 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-remove.pngbin369 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-floppy.pngbin951 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-optical.pngbin1372 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-pause.pngbin383 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-ltr.pngbin863 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-rtl.pngbin895 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-stop.pngbin400 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-record.pngbin1063 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-ltr.pngbin902 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-rtl.pngbin776 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-ltr.pngbin776 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-rtl.pngbin902 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-ltr.pngbin806 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-rtl.pngbin848 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-ltr.pngbin848 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-rtl.pngbin806 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/network-idle.pngbin1015 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-error.pngbin1130 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-info.pngbin1154 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-paused.pngbin1096 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-warning.pngbin1099 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/process-stop.pngbin1043 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/system-run.pngbin1592 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/text-x-generic.pngbin736 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/tools-check-spelling.pngbin950 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-desktop.pngbin662 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-home.pngbin662 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-fullscreen.pngbin606 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-refresh.pngbin1466 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-restore.pngbin677 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-ascending.pngbin413 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-descending.pngbin379 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/window-close.pngbin1453 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-fit-best.pngbin937 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-in.pngbin993 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-original.pngbin962 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-out.pngbin941 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd-multiple.pngbin1215 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd.pngbin1349 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-error.pngbin2828 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-information.pngbin3259 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-password.pngbin2358 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-question.pngbin2809 -> 0 bytes
-rw-r--r--packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-warning.pngbin2358 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/Inkscape-Generic.icnsbin100381 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/Inkscape.icnsbin175323 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/MenuBar.nib/classes.nib4
-rw-r--r--packaging/macosx/Resources/MenuBar.nib/info.nib23
-rw-r--r--packaging/macosx/Resources/MenuBar.nib/objects.xib73
-rw-r--r--packaging/macosx/Resources/ProgressWindow.nib/classes.nib4
-rw-r--r--packaging/macosx/Resources/ProgressWindow.nib/info.nib18
-rw-r--r--packaging/macosx/Resources/ProgressWindow.nib/objects.xib53
-rw-r--r--packaging/macosx/Resources/alert_fccache.sh26
-rw-r--r--packaging/macosx/Resources/application-gimp-gradient.icnsbin107998 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-illustrator-svg.icnsbin111240 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-illustrator.icnsbin105960 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-pdf.icnsbin108879 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-vnd.corel-draw-compressed.icnsbin109979 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-vnd.corel-draw-template.icnsbin109021 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-vnd.corel-draw.icnsbin109756 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-vnd.ms.xaml.icnsbin111445 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/application-vnd.wordperfect-graphic.icnsbin110434 -> 0 bytes
-rwxr-xr-xpackaging/macosx/Resources/bin/gimp-wrapper.sh95
-rwxr-xr-xpackaging/macosx/Resources/bin/inkscape174
-rw-r--r--packaging/macosx/Resources/etc/fonts/fonts.conf159
-rw-r--r--packaging/macosx/Resources/etc/gtk-2.0/gtkrc23
-rw-r--r--packaging/macosx/Resources/image-svg+xml-compressed.icnsbin109445 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/image-svg+xml.icnsbin110098 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/image-vnd.dxf.icnsbin109423 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/image-vnd.sk1.icnsbin109072 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/image-vnd.windows-metafile.icnsbin110447 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/image-x-eps.icnsbin108891 -> 0 bytes
-rw-r--r--packaging/macosx/Resources/image-x-ps.icnsbin107690 -> 0 bytes
-rwxr-xr-xpackaging/macosx/Resources/openDoc17
-rwxr-xr-xpackaging/macosx/Resources/script27
-rw-r--r--packaging/macosx/Resources/xdg_setup.sh11
-rw-r--r--packaging/macosx/ScriptExec/English.lproj/InfoPlist.stringsbin520 -> 0 bytes
-rw-r--r--packaging/macosx/ScriptExec/English.lproj/main.nib/classes.nib4
-rw-r--r--packaging/macosx/ScriptExec/English.lproj/main.nib/info.nib19
-rw-r--r--packaging/macosx/ScriptExec/English.lproj/main.nib/objects.xib271
-rw-r--r--packaging/macosx/ScriptExec/Info.plist39
-rw-r--r--packaging/macosx/ScriptExec/MenuBar.nib/classes.nib4
-rw-r--r--packaging/macosx/ScriptExec/MenuBar.nib/info.nib23
-rw-r--r--packaging/macosx/ScriptExec/MenuBar.nib/objects.xib73
-rw-r--r--packaging/macosx/ScriptExec/ScriptExec.xcodeproj/project.pbxproj351
-rw-r--r--packaging/macosx/ScriptExec/ScriptExec_Prefix.pch5
-rwxr-xr-xpackaging/macosx/ScriptExec/launcher-quartz-no-macintegration.sh176
-rw-r--r--packaging/macosx/ScriptExec/main.c593
-rwxr-xr-xpackaging/macosx/ScriptExec/openDoc4
-rwxr-xr-xpackaging/macosx/ScriptExec/script4
-rw-r--r--packaging/macosx/ScriptExec/version.plist16
-rwxr-xr-xpackaging/macosx/create-stock-icon-theme.sh191
-rw-r--r--packaging/macosx/dmg_background.pngbin23997 -> 0 bytes
-rw-r--r--packaging/macosx/dmg_background.svg1345
-rwxr-xr-xpackaging/macosx/dmg_set_style.scptbin5146 -> 0 bytes
-rw-r--r--packaging/macosx/inkscape.ds_storebin12292 -> 0 bytes
-rwxr-xr-xpackaging/macosx/osx-app.sh864
-rwxr-xr-xpackaging/macosx/osx-build.sh579
-rwxr-xr-xpackaging/macosx/osx-dmg.sh178
-rw-r--r--packaging/macosx/ports/_resources/port1.0/group/python-1.0.tcl289
-rw-r--r--packaging/macosx/ports/devel/dbus-python/Portfile164
-rw-r--r--packaging/macosx/ports/devel/inkscape-packaging/Portfile126
-rw-r--r--packaging/macosx/ports/lang/python25/Portfile214
-rw-r--r--packaging/macosx/ports/lang/python25/files/_localemodule.c.ed2
-rw-r--r--packaging/macosx/ports/lang/python25/files/locale.py.ed2
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-64bit.diff1234
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-FSIORefNum.diff11
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-Lib-cgi.py.diff18
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-Lib-distutils-dist.py.diff51
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-Makefile.pre.in.diff49
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-Misc-setuid-prog.c.diff16
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-Modules-posixmodule.c.diff21
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-configure.diff45
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-fwrapv.diff12
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-libedit.diff132
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-mac_ver.diff114
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-pyconfig.h.in.diff13
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-setup.py-disabled_modules.diff11
-rw-r--r--packaging/macosx/ports/lang/python25/files/patch-setup.py.diff80
-rw-r--r--packaging/macosx/ports/lang/python25/files/pyconfig.ed2
-rw-r--r--packaging/macosx/ports/lang/python25/files/pyconfig.h-universal.ed50
-rw-r--r--packaging/macosx/ports/lang/python25/files/python2513
-rw-r--r--packaging/macosx/ports/lang/python26/Portfile158
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-Lib-cgi.py.diff18
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-Lib-distutils-dist.py.diff51
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-Mac-IDLE-Makefile.in.diff11
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-Mac-Makefile.in.diff11
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-Mac-PythonLauncher-Makefile.in.diff11
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-Mac-Tools-Doc-setup.py.diff11
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-Makefile.pre.in.diff31
-rw-r--r--packaging/macosx/ports/lang/python26/files/patch-setup.py.diff16
-rw-r--r--packaging/macosx/ports/lang/python26/files/pyconfig.ed2
-rw-r--r--packaging/macosx/ports/lang/python26/files/python2612
-rw-r--r--packaging/macosx/ports/lang/python26/files/version.plist16
-rw-r--r--packaging/macosx/ports/python/py-Pillow/Portfile74
-rw-r--r--packaging/macosx/ports/python/py-Pillow/files/patch-setup.py.diff120
-rw-r--r--packaging/macosx/ports/python/py-gobject/Portfile77
-rw-r--r--packaging/macosx/ports/python/py-gobject/files/00git_class_init.patch316
-rw-r--r--packaging/macosx/ports/python/py-gobject/files/00git_fix_qdata_warning.patch28
-rw-r--r--packaging/macosx/ports/python/py-gobject/files/00git_gio_flag_type.patch50
-rw-r--r--packaging/macosx/ports/python/py-gobject/files/patch-pygi-info.c-p1.diff28
-rw-r--r--packaging/macosx/ports/python/py-numpy/Portfile214
-rw-r--r--packaging/macosx/ports/python/py-numpy/files/patch-f2py_setup.py.diff39
-rw-r--r--packaging/macosx/ports/python/py-numpy/files/patch-fcompiler_g95.diff15
-rw-r--r--packaging/macosx/ports/python/py-numpy/files/patch-numpy_core_setup.py.diff34
-rw-r--r--packaging/macosx/ports/python/py-numpy/files/patch-numpy_linalg_setup.py.diff20
-rwxr-xr-xpackaging/macosx/ports/python/py-numpy/files/wrapper-template143
-rw-r--r--packaging/macosx/ports/python/py-sk1libs/Portfile64
-rw-r--r--packaging/macosx/ports/python/py-sk1libs/files/patch-src-imaging-libimagingft-_imagingft.c.diff16
-rw-r--r--packaging/macosx/ports/python/py-sk1libs/files/patch-src-utils-fs.py.diff26
-rw-r--r--packaging/macosx/ports/python/py-uniconvertor/Portfile46
-rw-r--r--packaging/macosx/ports/python/py25-Pillow/Portfile77
-rw-r--r--packaging/macosx/ports/python/py25-Pillow/files/patch-_imagingft.c.diff14
-rw-r--r--packaging/macosx/ports/python/py25-Pillow/files/patch-setup.py-v1.7.8.diff83
-rw-r--r--packaging/macosx/ports/python/py25-lxml/Portfile51
-rw-r--r--packaging/macosx/ports/python/py25-nose/Portfile86
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests241
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests251
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests261
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests271
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests311
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests321
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests331
-rw-r--r--packaging/macosx/ports/python/py25-nose/files/nosetests341
-rw-r--r--packaging/macosx/ports/python/py25-numpy/Portfile209
-rw-r--r--packaging/macosx/ports/python/py25-numpy/files/patch-f2py_setup.py.diff29
-rw-r--r--packaging/macosx/ports/python/py25-numpy/files/patch-fcompiler_g95.diff11
-rw-r--r--packaging/macosx/ports/python/py25-numpy/files/patch-numpy_distutils_fcompiler___init__.py.diff30
-rw-r--r--packaging/macosx/ports/python/py25-numpy/files/patch-numpy_linalg_setup.py.diff10
-rw-r--r--packaging/macosx/ports/python/py25-numpy/files/patch-setup.py.diff34
-rwxr-xr-xpackaging/macosx/ports/python/py25-numpy/files/wrapper-template143
-rw-r--r--packaging/macosx/ports/python/py25-setuptools/Portfile58
-rw-r--r--packaging/macosx/ports/python/py26-cython/Portfile85
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython242
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython252
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython262
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython272
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython312
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython322
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython332
-rw-r--r--packaging/macosx/ports/python/py26-cython/files/cython342
-rw-r--r--packaging/macosx/ports/python/py26-lxml/Portfile52
-rw-r--r--packaging/macosx/ports/python/py26-nose/Portfile87
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests241
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests251
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests261
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests271
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests311
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests321
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests331
-rw-r--r--packaging/macosx/ports/python/py26-nose/files/nosetests341
-rw-r--r--packaging/macosx/ports/python/py26-numpy/Portfile214
-rw-r--r--packaging/macosx/ports/python/py26-numpy/files/patch-f2py_setup.py.diff39
-rw-r--r--packaging/macosx/ports/python/py26-numpy/files/patch-fcompiler_g95.diff15
-rw-r--r--packaging/macosx/ports/python/py26-numpy/files/patch-numpy_core_setup.py.diff34
-rw-r--r--packaging/macosx/ports/python/py26-numpy/files/patch-numpy_linalg_setup.py.diff20
-rw-r--r--packaging/macosx/ports/python/py26-numpy/files/wrapper-template143
-rw-r--r--packaging/macosx/ports/python/py26-setuptools/Portfile61
-rwxr-xr-x[-rw-r--r--]packaging/mkNEWS0
-rwxr-xr-xpackaging/snappy/snapcraft.sh6
-rw-r--r--packaging/win32/MessageBox.txt186
-rw-r--r--packaging/win32/RequireLatestNSIS.nsh9
-rw-r--r--packaging/win32/VersionCompleteXXXX.nsh47
-rw-r--r--[-rwxr-xr-x]packaging/win32/inkscape.nsi795
-rw-r--r--packaging/win32/languages/Breton.nsh144
-rw-r--r--packaging/win32/languages/Breton_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Catalan.nsh134
-rw-r--r--packaging/win32/languages/Catalan_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Czech.nsh156
-rw-r--r--packaging/win32/languages/Czech_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Danish.nsh131
-rw-r--r--packaging/win32/languages/Danish_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Dutch.nsh86
-rw-r--r--packaging/win32/languages/Dutch_languageNames.nsh94
-rw-r--r--packaging/win32/languages/English.nsh80
-rw-r--r--packaging/win32/languages/English_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Finnish.nsh132
-rw-r--r--packaging/win32/languages/Finnish_languageNames.nsh94
-rw-r--r--packaging/win32/languages/French.nsh138
-rw-r--r--packaging/win32/languages/French_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Galician.nsh132
-rw-r--r--packaging/win32/languages/Galician_languageNames.nsh94
-rw-r--r--packaging/win32/languages/German.nsh148
-rw-r--r--packaging/win32/languages/German_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Greek.nsh172
-rw-r--r--packaging/win32/languages/Greek_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Hebrew.nsh170
-rw-r--r--packaging/win32/languages/Hebrew_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Icelandic.nsh154
-rw-r--r--packaging/win32/languages/Icelandic_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Indonesian.nsh76
-rw-r--r--packaging/win32/languages/Indonesian_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Italian.nsh92
-rw-r--r--packaging/win32/languages/Italian_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Japanese.nsh168
-rw-r--r--packaging/win32/languages/Japanese_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Polish.nsh138
-rw-r--r--packaging/win32/languages/Polish_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Portuguese.nsh55
-rw-r--r--packaging/win32/languages/PortugueseBR.nsh126
-rw-r--r--packaging/win32/languages/PortugueseBR_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Portuguese_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Romanian.nsh142
-rw-r--r--packaging/win32/languages/Romanian_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Russian.nsh170
-rw-r--r--packaging/win32/languages/Russian_languageNames.nsh94
-rw-r--r--packaging/win32/languages/SimpChinese.nsh170
-rw-r--r--packaging/win32/languages/SimpChinese_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Slovak.nsh162
-rw-r--r--packaging/win32/languages/Slovak_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Slovenian.nsh118
-rw-r--r--packaging/win32/languages/Slovenian_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Spanish.nsh116
-rw-r--r--packaging/win32/languages/Spanish_languageNames.nsh94
-rw-r--r--packaging/win32/languages/TradChinese.nsh170
-rw-r--r--packaging/win32/languages/TradChinese_languageNames.nsh94
-rw-r--r--packaging/win32/languages/Ukrainian.nsh170
-rw-r--r--packaging/win32/languages/Ukrainian_languageNames.nsh94
-rw-r--r--packaging/win32/languages/_language_lists.nsh140
-rw-r--r--packaging/win32/languages/_language_lists.py79
-rw-r--r--packaging/win32/languages/_polib.py1870
-rw-r--r--packaging/win32/macros/AdvUninstLog.nsh (renamed from packaging/win32/AdvUninstLog.nsh)2
-rw-r--r--packaging/win32/macros/AdvUninstLog.txt (renamed from packaging/win32/AdvUninstLog.txt)0
-rw-r--r--packaging/win32/macros/RequireLatestNSIS.nsh4
-rw-r--r--packaging/win32/macros/SHMessageBoxCheck.nsh94
-rw-r--r--packaging/win32/macros/VersionCompleteXXXX.nsh60
-rw-r--r--packaging/win32/macros/ifexist.nsh (renamed from packaging/win32/ifexist.nsh)15
-rw-r--r--packaging/win32/md5dll.dllbin8192 -> 0 bytes
-rw-r--r--packaging/win32/messagebox.dllbin6144 -> 0 bytes
-rwxr-xr-xpackaging/win32/plugins/md5dll.dllbin0 -> 6656 bytes
-rw-r--r--packaging/win32/plugins/md5dll.txt (renamed from packaging/win32/md5dll.txt)0
-rw-r--r--packaging/win32/portable/App/AppInfo/Launcher/InkscapePortable.ini55
-rw-r--r--packaging/wix/README23
-rwxr-xr-x[-rw-r--r--]packaging/wix/files.py88
-rwxr-xr-xpackaging/wix/helpers.py65
-rw-r--r--packaging/wix/inkscape.wxs96
-rw-r--r--packaging/wix/install.bat4
-rwxr-xr-x[-rw-r--r--]packaging/wix/version.py11
-rw-r--r--packaging/wix/wixenv.bat20
479 files changed, 6531 insertions, 14747 deletions
diff --git a/packaging/macosx/README.txt b/packaging/macosx/README.txt
deleted file mode 100644
index 463188c06..000000000
--- a/packaging/macosx/README.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-Quick instructions:
-===================
-
-1) install MacPorts from source into $MP_PREFIX (e.g. "/opt/local-x11")
- <https://www.macports.org/install.php>
-
-2) add MacPorts to your PATH environement variable, for example:
-
-$ export PATH="$MP_PREFIX/bin:$MP_PREFIX/sbin:$PATH"
-
-3) add 'ports/' subdirectory as local portfile repository:
-
-$ sudo sed -e '/^rsync:/i\'$'\n'"file://$(pwd)/ports" -i "" "$MP_PREFIX/etc/macports/sources.conf"
-
-4) index the new local portfile repository:
-
-$ (cd ports && portindex)
-
-5) add default variants for x11-based package to MacPorts' global variants:
-
-$ sudo sed -e '$a\'$'\n''+x11 -quartz -no_x11 +rsvg +Pillow -tkinter +gnome_vfs' -i "" "$MP_PREFIX/etc/macports/variants.conf"
-
-6) install required dependencies:
-
-$ sudo port install inkscape-packaging
-
-7) compile inkscape, create app bundle and DMG:
-
-$ LIBPREFIX="$MP_PREFIX" ./osx-build.sh a c b -j 5 i p -s d
-
-8) upload the DMG.
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/application-exit.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/application-exit.png
deleted file mode 100644
index d070809f1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/application-exit.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/dialog-information.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/dialog-information.png
deleted file mode 100644
index df87def2f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/dialog-information.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-new.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-new.png
deleted file mode 100644
index 7cd94435a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-new.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open-recent.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open-recent.png
deleted file mode 100644
index 61543990d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open-recent.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open.png
deleted file mode 100644
index 476185370..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-open.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print-preview.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print-preview.png
deleted file mode 100644
index 45b44f324..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print-preview.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print.png
deleted file mode 100644
index 5997b9222..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-print.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-properties.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-properties.png
deleted file mode 100644
index 65d22e4fb..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-properties.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-ltr.png
deleted file mode 100644
index 026014ca3..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-rtl.png
deleted file mode 100644
index aaea1ff39..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-revert-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save-as.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save-as.png
deleted file mode 100644
index 3409adc7a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save-as.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save.png
deleted file mode 100644
index 18b7d2419..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/document-save.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/drive-harddisk.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/drive-harddisk.png
deleted file mode 100644
index b714d86e2..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/drive-harddisk.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-clear.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-clear.png
deleted file mode 100644
index 49ae8db9c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-clear.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-copy.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-copy.png
deleted file mode 100644
index 8dd48c494..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-copy.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-cut.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-cut.png
deleted file mode 100644
index ff87558fc..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-cut.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-delete.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-delete.png
deleted file mode 100644
index 2c5a46733..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-delete.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find-replace.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find-replace.png
deleted file mode 100644
index fca34f52a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find-replace.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find.png
deleted file mode 100644
index e9a40950b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-find.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-paste.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-paste.png
deleted file mode 100644
index 24588a3a4..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-paste.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-ltr.png
deleted file mode 100644
index f7923083b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-rtl.png
deleted file mode 100644
index 7c6c250b6..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-redo-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-select-all.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-select-all.png
deleted file mode 100644
index e3bd4ba72..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-select-all.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-ltr.png
deleted file mode 100644
index b0c8a48d7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-rtl.png
deleted file mode 100644
index 13e061e09..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/edit-undo-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder-remote.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder-remote.png
deleted file mode 100644
index 14ed14a12..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder-remote.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder.png
deleted file mode 100644
index 14ed14a12..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/folder.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-ltr.png
deleted file mode 100644
index 776f5767e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-rtl.png
deleted file mode 100644
index 18ededbfc..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-less-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-ltr.png
deleted file mode 100644
index b00e21840..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-rtl.png
deleted file mode 100644
index 015c495ef..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-indent-more-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-center.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-center.png
deleted file mode 100644
index 57d6a0e35..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-center.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-fill.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-fill.png
deleted file mode 100644
index a416b25ab..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-fill.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-left.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-left.png
deleted file mode 100644
index 9a7abf7ff..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-left.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-right.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-right.png
deleted file mode 100644
index 15b507332..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-justify-right.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-bold.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-bold.png
deleted file mode 100644
index 7e2c5dba9..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-bold.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-italic.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-italic.png
deleted file mode 100644
index 867df5ded..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-italic.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-strikethrough.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-strikethrough.png
deleted file mode 100644
index 8a844a3a9..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-strikethrough.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-underline.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-underline.png
deleted file mode 100644
index 35bcc8127..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/format-text-underline.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-bottom.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-bottom.png
deleted file mode 100644
index 69aaafc2c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-bottom.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-down.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-down.png
deleted file mode 100644
index dcde30f02..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-down.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-ltr.png
deleted file mode 100644
index 689ba0a96..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-rtl.png
deleted file mode 100644
index a653e10ed..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-first-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-home.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-home.png
deleted file mode 100644
index fadd43dc3..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-home.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-ltr.png
deleted file mode 100644
index 0f0f57a1a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-rtl.png
deleted file mode 100644
index 0f03be58d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-jump-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-ltr.png
deleted file mode 100644
index a653e10ed..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-rtl.png
deleted file mode 100644
index 689ba0a96..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-last-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-ltr.png
deleted file mode 100644
index 5b9e3f0d1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-rtl.png
deleted file mode 100644
index 9e77ac2ea..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-next-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-ltr.png
deleted file mode 100644
index 9e77ac2ea..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-rtl.png
deleted file mode 100644
index 5b9e3f0d1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-previous-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-top.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-top.png
deleted file mode 100644
index 0a3b1bfba..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-top.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-up.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-up.png
deleted file mode 100644
index 432225f51..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/go-up.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-caps-lock-warning.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-caps-lock-warning.png
deleted file mode 100644
index 0dfa41876..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-caps-lock-warning.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-color-picker.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-color-picker.png
deleted file mode 100644
index 24233cde0..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-color-picker.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-connect.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-connect.png
deleted file mode 100644
index 097969a7c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-connect.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-convert.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-convert.png
deleted file mode 100644
index e4d912579..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-convert.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-disconnect.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-disconnect.png
deleted file mode 100644
index 3dece1068..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-disconnect.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-edit.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-edit.png
deleted file mode 100644
index c5da3f9fb..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-edit.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-font.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-font.png
deleted file mode 100644
index 2514b6167..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-font.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-index.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-index.png
deleted file mode 100644
index 0967a61c3..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-index.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-landscape.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-landscape.png
deleted file mode 100644
index 748bb502d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-landscape.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-portrait.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-portrait.png
deleted file mode 100644
index 94f078d91..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-portrait.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-landscape.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-landscape.png
deleted file mode 100644
index 2a732a6ee..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-landscape.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-portrait.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-portrait.png
deleted file mode 100644
index c79cea355..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-orientation-reverse-portrait.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-page-setup.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-page-setup.png
deleted file mode 100644
index 61b46d998..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-page-setup.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-preferences.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-preferences.png
deleted file mode 100644
index 9703a40df..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-preferences.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-color.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-color.png
deleted file mode 100644
index 2c764b374..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-color.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-font.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-font.png
deleted file mode 100644
index 2514b6167..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-select-font.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-ltr.png
deleted file mode 100644
index cc58d0fb5..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-rtl.png
deleted file mode 100644
index a312dd854..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/gtk-undelete-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-about.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-about.png
deleted file mode 100644
index 010d294a7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-about.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-contents.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-contents.png
deleted file mode 100644
index 20ae955c3..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/help-contents.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/image-missing.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/image-missing.png
deleted file mode 100644
index 84b26afd6..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/image-missing.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-add.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-add.png
deleted file mode 100644
index 9cd9e5cf2..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-add.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-remove.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-remove.png
deleted file mode 100644
index 0ed9c2210..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/list-remove.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-floppy.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-floppy.png
deleted file mode 100644
index 18b7d2419..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-floppy.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-optical.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-optical.png
deleted file mode 100644
index 922f452f1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-optical.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-pause.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-pause.png
deleted file mode 100644
index 8b70f471a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-pause.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-ltr.png
deleted file mode 100644
index e7e2584db..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-rtl.png
deleted file mode 100644
index e3cb29165..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-start-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-stop.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-stop.png
deleted file mode 100644
index c844e8322..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-playback-stop.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-record.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-record.png
deleted file mode 100644
index 93b2ec100..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-record.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-ltr.png
deleted file mode 100644
index 4972cb7ba..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-rtl.png
deleted file mode 100644
index a02022474..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-backward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-ltr.png
deleted file mode 100644
index a02022474..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-rtl.png
deleted file mode 100644
index 4972cb7ba..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-seek-forward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-ltr.png
deleted file mode 100644
index 67dbb2e16..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-rtl.png
deleted file mode 100644
index 08ad0b69a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-backward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-ltr.png
deleted file mode 100644
index 08ad0b69a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-rtl.png
deleted file mode 100644
index 67dbb2e16..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/media-skip-forward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/network-idle.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/network-idle.png
deleted file mode 100644
index e74e060ea..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/network-idle.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-error.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-error.png
deleted file mode 100644
index 934ee68d3..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-error.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-info.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-info.png
deleted file mode 100644
index 8e2ab7487..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-info.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-paused.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-paused.png
deleted file mode 100644
index ebd5ac60c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-paused.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-warning.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-warning.png
deleted file mode 100644
index 52410c38d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/printer-warning.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/process-stop.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/process-stop.png
deleted file mode 100644
index d88fed703..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/process-stop.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/system-run.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/system-run.png
deleted file mode 100644
index c9c48d6a3..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/system-run.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/text-x-generic.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/text-x-generic.png
deleted file mode 100644
index 7cd94435a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/text-x-generic.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/tools-check-spelling.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/tools-check-spelling.png
deleted file mode 100644
index 32dcc2e63..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/tools-check-spelling.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-desktop.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-desktop.png
deleted file mode 100644
index 14ed14a12..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-desktop.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-home.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-home.png
deleted file mode 100644
index 14ed14a12..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/user-home.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-fullscreen.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-fullscreen.png
deleted file mode 100644
index b9e9ea632..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-fullscreen.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-refresh.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-refresh.png
deleted file mode 100644
index e9ea8c4e5..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-refresh.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-restore.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-restore.png
deleted file mode 100644
index 49966a996..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-restore.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-ascending.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-ascending.png
deleted file mode 100644
index 3f8fd257f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-ascending.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-descending.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-descending.png
deleted file mode 100644
index a8aa70584..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/view-sort-descending.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/window-close.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/window-close.png
deleted file mode 100644
index 52f58630f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/window-close.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-fit-best.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-fit-best.png
deleted file mode 100644
index adbf7f3a2..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-fit-best.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-in.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-in.png
deleted file mode 100644
index 6b1b94336..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-in.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-original.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-original.png
deleted file mode 100644
index 92dddd2ea..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-original.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-out.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-out.png
deleted file mode 100644
index ddc1eb136..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/16/zoom-out.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-apply.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-apply.png
deleted file mode 100644
index afca0732a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-apply.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-cancel.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-cancel.png
deleted file mode 100644
index 0a395c099..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-cancel.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-no.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-no.png
deleted file mode 100644
index 2a7da6e2a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-no.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-ok.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-ok.png
deleted file mode 100644
index c08115f62..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-ok.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-yes.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-yes.png
deleted file mode 100644
index e56236638..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/gtk-yes.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/window-close.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/20/window-close.png
deleted file mode 100644
index a13d1984b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/20/window-close.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/application-exit.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/application-exit.png
deleted file mode 100644
index 0c9de64ba..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/application-exit.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-high.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-high.png
deleted file mode 100644
index 7de1e0e4f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-high.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-low.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-low.png
deleted file mode 100644
index 4152b6c9f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-low.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-medium.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-medium.png
deleted file mode 100644
index 8d899cfa5..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-medium.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-muted.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-muted.png
deleted file mode 100644
index 6902efdc6..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/audio-volume-muted.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/dialog-information.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/dialog-information.png
deleted file mode 100644
index b66871a94..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/dialog-information.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-new.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-new.png
deleted file mode 100644
index c89e797b7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-new.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open-recent.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open-recent.png
deleted file mode 100644
index 5edf531e3..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open-recent.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open.png
deleted file mode 100644
index 312e1187f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-open.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print-preview.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print-preview.png
deleted file mode 100644
index 7f405de58..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print-preview.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print.png
deleted file mode 100644
index 05d22d7a8..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-print.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-properties.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-properties.png
deleted file mode 100644
index 297c86b0c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-properties.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-ltr.png
deleted file mode 100644
index 3046794e7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-rtl.png
deleted file mode 100644
index 46435e1a0..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-revert-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save-as.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save-as.png
deleted file mode 100644
index 5da8a02dc..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save-as.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save.png
deleted file mode 100644
index 7ef7685f4..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/document-save.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/drive-harddisk.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/drive-harddisk.png
deleted file mode 100644
index 1be6b6c88..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/drive-harddisk.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-clear.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-clear.png
deleted file mode 100644
index 590f673db..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-clear.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-copy.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-copy.png
deleted file mode 100644
index a1178e64f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-copy.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-cut.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-cut.png
deleted file mode 100644
index 82b105f80..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-cut.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-delete.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-delete.png
deleted file mode 100644
index e375b894e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-delete.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find-replace.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find-replace.png
deleted file mode 100644
index ed81e5a82..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find-replace.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find.png
deleted file mode 100644
index 5c83fb689..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-find.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-paste.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-paste.png
deleted file mode 100644
index e938c3e99..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-paste.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-ltr.png
deleted file mode 100644
index 3da43f0c0..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-rtl.png
deleted file mode 100644
index f2c1a50a1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-redo-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-select-all.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-select-all.png
deleted file mode 100644
index 1fc5b8282..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-select-all.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-ltr.png
deleted file mode 100644
index 3b12a233a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-rtl.png
deleted file mode 100644
index 3ba7d6240..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/edit-undo-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder-remote.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder-remote.png
deleted file mode 100644
index 28b68f338..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder-remote.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder.png
deleted file mode 100644
index 28b68f338..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/folder.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-ltr.png
deleted file mode 100644
index 36d231434..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-rtl.png
deleted file mode 100644
index a6f7dc19b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-less-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-ltr.png
deleted file mode 100644
index 7e3656dc4..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-rtl.png
deleted file mode 100644
index 5527663fd..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-indent-more-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-center.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-center.png
deleted file mode 100644
index 35579d553..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-center.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-fill.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-fill.png
deleted file mode 100644
index eaf9a460b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-fill.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-left.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-left.png
deleted file mode 100644
index 07db84109..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-left.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-right.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-right.png
deleted file mode 100644
index 9bbd47ca0..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-justify-right.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-bold.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-bold.png
deleted file mode 100644
index 9869fb8b1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-bold.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-italic.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-italic.png
deleted file mode 100644
index 8842b5aa7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-italic.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-strikethrough.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-strikethrough.png
deleted file mode 100644
index 04d464e28..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-strikethrough.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-underline.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-underline.png
deleted file mode 100644
index be0906d8a..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/format-text-underline.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-bottom.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-bottom.png
deleted file mode 100644
index 79994416e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-bottom.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-down.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-down.png
deleted file mode 100644
index 2a0a8ea2c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-down.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-ltr.png
deleted file mode 100644
index e44f9b612..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-rtl.png
deleted file mode 100644
index 3ba5c4ba7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-first-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-home.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-home.png
deleted file mode 100644
index a2e0b3c96..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-home.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-ltr.png
deleted file mode 100644
index 9b639939f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-rtl.png
deleted file mode 100644
index 80068face..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-jump-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-ltr.png
deleted file mode 100644
index 3ba5c4ba7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-rtl.png
deleted file mode 100644
index e44f9b612..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-last-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-ltr.png
deleted file mode 100644
index 727ff37f2..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-rtl.png
deleted file mode 100644
index 23b89b761..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-next-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-ltr.png
deleted file mode 100644
index 23b89b761..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-rtl.png
deleted file mode 100644
index 727ff37f2..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-previous-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-top.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-top.png
deleted file mode 100644
index 9b98fd26f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-top.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-up.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-up.png
deleted file mode 100644
index 3df5fe511..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/go-up.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-caps-lock-warning.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-caps-lock-warning.png
deleted file mode 100644
index ca76d509b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-caps-lock-warning.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-color-picker.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-color-picker.png
deleted file mode 100644
index fd97f343c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-color-picker.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-connect.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-connect.png
deleted file mode 100644
index 97f2143fb..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-connect.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-convert.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-convert.png
deleted file mode 100644
index da8194fa8..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-convert.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-disconnect.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-disconnect.png
deleted file mode 100644
index 883a003bc..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-disconnect.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-edit.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-edit.png
deleted file mode 100644
index f429e1015..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-edit.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-font.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-font.png
deleted file mode 100644
index cde0e8698..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-font.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-index.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-index.png
deleted file mode 100644
index 9ddbe9b8e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-index.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-landscape.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-landscape.png
deleted file mode 100644
index fcf7f2a49..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-landscape.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-portrait.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-portrait.png
deleted file mode 100644
index cb7b760bc..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-portrait.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-landscape.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-landscape.png
deleted file mode 100644
index 69ade2524..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-landscape.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-portrait.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-portrait.png
deleted file mode 100644
index c309a6d82..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-orientation-reverse-portrait.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-page-setup.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-page-setup.png
deleted file mode 100644
index 9acf0d5ff..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-page-setup.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-preferences.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-preferences.png
deleted file mode 100644
index 2596f3cc5..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-preferences.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-color.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-color.png
deleted file mode 100644
index 0e71c35d7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-color.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-font.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-font.png
deleted file mode 100644
index cde0e8698..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-select-font.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-ltr.png
deleted file mode 100644
index bccc39e7c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-rtl.png
deleted file mode 100644
index 22023b853..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/gtk-undelete-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-about.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-about.png
deleted file mode 100644
index 063d0df43..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-about.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-contents.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-contents.png
deleted file mode 100644
index b00fbd8c1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/help-contents.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/image-missing.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/image-missing.png
deleted file mode 100644
index 90e26e5bc..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/image-missing.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-add.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-add.png
deleted file mode 100644
index 2f8b70d9c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-add.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-remove.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-remove.png
deleted file mode 100644
index 0bd69c92c..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/list-remove.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-floppy.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-floppy.png
deleted file mode 100644
index 7ef7685f4..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-floppy.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-optical.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-optical.png
deleted file mode 100644
index c4358f5f8..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-optical.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-pause.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-pause.png
deleted file mode 100644
index 6187ba6d2..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-pause.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-ltr.png
deleted file mode 100644
index 0f5348900..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-rtl.png
deleted file mode 100644
index 036f05f55..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-start-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-stop.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-stop.png
deleted file mode 100644
index 9e54ef3f5..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-playback-stop.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-record.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-record.png
deleted file mode 100644
index d1b25c2f1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-record.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-ltr.png
deleted file mode 100644
index 508808285..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-rtl.png
deleted file mode 100644
index 4a1bdf89b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-backward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-ltr.png
deleted file mode 100644
index 4a1bdf89b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-rtl.png
deleted file mode 100644
index 508808285..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-seek-forward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-ltr.png
deleted file mode 100644
index c3a649f4e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-rtl.png
deleted file mode 100644
index 3da34257d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-backward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-ltr.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-ltr.png
deleted file mode 100644
index 3da34257d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-ltr.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-rtl.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-rtl.png
deleted file mode 100644
index c3a649f4e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/media-skip-forward-rtl.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/network-idle.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/network-idle.png
deleted file mode 100644
index a6f14418b..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/network-idle.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-error.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-error.png
deleted file mode 100644
index 28517473d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-error.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-info.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-info.png
deleted file mode 100644
index 13304368e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-info.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-paused.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-paused.png
deleted file mode 100644
index da6df48a9..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-paused.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-warning.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-warning.png
deleted file mode 100644
index dd70e0be9..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/printer-warning.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/process-stop.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/process-stop.png
deleted file mode 100644
index 54e1cb3e9..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/process-stop.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/system-run.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/system-run.png
deleted file mode 100644
index 2b11b5075..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/system-run.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/text-x-generic.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/text-x-generic.png
deleted file mode 100644
index c89e797b7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/text-x-generic.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/tools-check-spelling.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/tools-check-spelling.png
deleted file mode 100644
index 2574c181f..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/tools-check-spelling.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-desktop.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-desktop.png
deleted file mode 100644
index 28b68f338..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-desktop.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-home.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-home.png
deleted file mode 100644
index 28b68f338..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/user-home.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-fullscreen.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-fullscreen.png
deleted file mode 100644
index 21462fe0e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-fullscreen.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-refresh.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-refresh.png
deleted file mode 100644
index 09b5df1d1..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-refresh.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-restore.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-restore.png
deleted file mode 100644
index ff9c2289d..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-restore.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-ascending.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-ascending.png
deleted file mode 100644
index 44c871133..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-ascending.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-descending.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-descending.png
deleted file mode 100644
index d498a59a5..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/view-sort-descending.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/window-close.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/window-close.png
deleted file mode 100644
index 312b84dae..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/window-close.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-fit-best.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-fit-best.png
deleted file mode 100644
index dfbdf9b6e..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-fit-best.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-in.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-in.png
deleted file mode 100644
index 3a386fae7..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-in.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-original.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-original.png
deleted file mode 100644
index 499cbd6c6..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-original.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-out.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-out.png
deleted file mode 100644
index 22afd1951..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/24/zoom-out.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd-multiple.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd-multiple.png
deleted file mode 100644
index dc09283f4..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd-multiple.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd.png
deleted file mode 100644
index c58e5a6f4..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/32/gtk-dnd.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-error.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-error.png
deleted file mode 100644
index cb03e5420..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-error.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-information.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-information.png
deleted file mode 100644
index d73990ecc..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-information.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-password.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-password.png
deleted file mode 100644
index f81198437..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-password.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-question.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-question.png
deleted file mode 100644
index 14dbd9cac..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-question.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-warning.png b/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-warning.png
deleted file mode 100644
index 827a33918..000000000
--- a/packaging/macosx/Resources-extras/src/icons/stock-icons/48/dialog-warning.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/Inkscape-Generic.icns b/packaging/macosx/Resources/Inkscape-Generic.icns
deleted file mode 100644
index 9843be9a6..000000000
--- a/packaging/macosx/Resources/Inkscape-Generic.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/Inkscape.icns b/packaging/macosx/Resources/Inkscape.icns
deleted file mode 100644
index 72c0ceddf..000000000
--- a/packaging/macosx/Resources/Inkscape.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/MenuBar.nib/classes.nib b/packaging/macosx/Resources/MenuBar.nib/classes.nib
deleted file mode 100644
index ea58db118..000000000
--- a/packaging/macosx/Resources/MenuBar.nib/classes.nib
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-IBClasses = ();
-IBVersion = 1;
-}
diff --git a/packaging/macosx/Resources/MenuBar.nib/info.nib b/packaging/macosx/Resources/MenuBar.nib/info.nib
deleted file mode 100644
index c0f4643ef..000000000
--- a/packaging/macosx/Resources/MenuBar.nib/info.nib
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>IBDocumentLocation</key>
- <string>99 362 356 240 0 0 1280 832 </string>
- <key>IBEditorPositions</key>
- <dict>
- <key>187</key>
- <string>340 374 240 44 0 0 1280 832 </string>
- </dict>
- <key>IBFramework Version</key>
- <string>349.0</string>
- <key>IBOpenObjects</key>
- <array>
- <integer>187</integer>
- </array>
- <key>IBSystem Version</key>
- <string>7F44</string>
- <key>targetFramework</key>
- <string>IBCarbonFramework</string>
-</dict>
-</plist>
diff --git a/packaging/macosx/Resources/MenuBar.nib/objects.xib b/packaging/macosx/Resources/MenuBar.nib/objects.xib
deleted file mode 100644
index 78f0a0a01..000000000
--- a/packaging/macosx/Resources/MenuBar.nib/objects.xib
+++ /dev/null
@@ -1,73 +0,0 @@
-<?xml version="1.0" standalone="yes"?>
-<object class="NSIBObjectData">
- <string name="targetFramework">IBCarbonFramework</string>
- <object name="rootObject" class="NSCustomObject" id="1">
- <string name="customClass">NSApplication</string>
- </object>
- <array count="4" name="allObjects">
- <object class="IBCarbonMenu" id="187">
- <string name="title">MenuBar</string>
- <array count="1" name="items">
- <object class="IBCarbonMenuItem" id="195">
- <string name="title">ScriptExec</string>
- <object name="submenu" class="IBCarbonMenu" id="193">
- <string name="title">ScriptExec</string>
- <string name="name">_NSAppleMenu</string>
- </object>
- </object>
- </array>
- <string name="name">_NSMainMenu</string>
- </object>
- <reference idRef="193"/>
- <reference idRef="195"/>
- <object class="IBCarbonMenuItem" id="204">
- <string name="title">Window</string>
- <object name="submenu" class="IBCarbonMenu">
- <string name="title">Window</string>
- <array count="5" name="items">
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Minimize Window</string>
- <string name="keyEquivalent">m</string>
- <ostype name="command">mini</ostype>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Minimize All Windows</string>
- <string name="keyEquivalent">m</string>
- <int name="keyEquivalentModifier">1572864</int>
- <ostype name="command">mini</ostype>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="separator">TRUE</boolean>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Bring All to Front</string>
- <ostype name="command">frnt</ostype>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Bring in Front</string>
- <int name="keyEquivalentModifier">1572864</int>
- <ostype name="command">frnt</ostype>
- </object>
- </array>
- <string name="name">_NSWindowsMenu</string>
- </object>
- </object>
- </array>
- <array count="4" name="allParents">
- <reference idRef="1"/>
- <reference idRef="195"/>
- <reference idRef="187"/>
- <reference idRef="187"/>
- </array>
- <dictionary count="2" name="nameTable">
- <string>File&apos;s Owner</string>
- <reference idRef="1"/>
- <string>MenuBar</string>
- <reference idRef="187"/>
- </dictionary>
- <unsigned_int name="nextObjectID">206</unsigned_int>
-</object>
diff --git a/packaging/macosx/Resources/ProgressWindow.nib/classes.nib b/packaging/macosx/Resources/ProgressWindow.nib/classes.nib
deleted file mode 100644
index ea58db118..000000000
--- a/packaging/macosx/Resources/ProgressWindow.nib/classes.nib
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-IBClasses = ();
-IBVersion = 1;
-}
diff --git a/packaging/macosx/Resources/ProgressWindow.nib/info.nib b/packaging/macosx/Resources/ProgressWindow.nib/info.nib
deleted file mode 100644
index 4e5156002..000000000
--- a/packaging/macosx/Resources/ProgressWindow.nib/info.nib
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>IBDocumentLocation</key>
- <string>124 298 356 240 0 0 1280 832 </string>
- <key>IBFramework Version</key>
- <string>349.0</string>
- <key>IBOpenObjects</key>
- <array>
- <integer>180</integer>
- </array>
- <key>IBSystem Version</key>
- <string>7F44</string>
- <key>targetFramework</key>
- <string>IBCarbonFramework</string>
-</dict>
-</plist>
diff --git a/packaging/macosx/Resources/ProgressWindow.nib/objects.xib b/packaging/macosx/Resources/ProgressWindow.nib/objects.xib
deleted file mode 100644
index 6eaacc43e..000000000
--- a/packaging/macosx/Resources/ProgressWindow.nib/objects.xib
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" standalone="yes"?>
-<object class="NSIBObjectData">
- <string name="targetFramework">IBCarbonFramework</string>
- <object name="rootObject" class="NSCustomObject" id="1">
- <string name="customClass">NSApplication</string>
- </object>
- <array count="4" name="allObjects">
- <object class="IBCarbonWindow" id="180">
- <string name="windowRect">404 523 457 899 </string>
- <string name="title">Caching Fonts...</string>
- <object name="rootControl" class="IBCarbonRootControl" id="183">
- <string name="bounds">0 0 53 376 </string>
- <array count="2" name="subviews">
- <object class="IBCarbonProgressBar" id="181">
- <string name="bounds">19 17 32 270 </string>
- <boolean name="small">TRUE</boolean>
- <int name="controlSize">1</int>
- <int name="initialValue">50</int>
- </object>
- <object class="IBCarbonButton" id="185">
- <string name="bounds">16 284 34 356 </string>
- <boolean name="small">TRUE</boolean>
- <int name="controlSize">1</int>
- <string name="title">Cancel</string>
- <ostype name="command">quit</ostype>
- </object>
- </array>
- </object>
- <boolean name="hasCloseBox">FALSE</boolean>
- <boolean name="hasHorizontalZoom">FALSE</boolean>
- <boolean name="isResizable">FALSE</boolean>
- <boolean name="hasVerticalZoom">FALSE</boolean>
- <int name="themeBrush">51</int>
- <int name="windowPosition">1</int>
- </object>
- <reference idRef="181"/>
- <reference idRef="183"/>
- <reference idRef="185"/>
- </array>
- <array count="4" name="allParents">
- <reference idRef="1"/>
- <reference idRef="183"/>
- <reference idRef="180"/>
- <reference idRef="183"/>
- </array>
- <dictionary count="2" name="nameTable">
- <string>File&apos;s Owner</string>
- <reference idRef="1"/>
- <string>Window</string>
- <reference idRef="180"/>
- </dictionary>
- <unsigned_int name="nextObjectID">186</unsigned_int>
-</object>
diff --git a/packaging/macosx/Resources/alert_fccache.sh b/packaging/macosx/Resources/alert_fccache.sh
deleted file mode 100644
index e39971def..000000000
--- a/packaging/macosx/Resources/alert_fccache.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-ALERT_SCRIPT="$(cat << EOM
-try
- set parent_path to "$CWD"
- set icon_path to POSIX path of (parent_path & "/Inkscape.icns")
- set front_app to ((path to frontmost application) as text)
- tell application front_app
- display dialog "While Inkscape is open, its windows can be displayed or hidden by displaying or hiding the X11 application.
-
-The first time this version of Inkscape is run it may take several minutes before the main window is displayed while font caches are built." buttons {"OK"} default button 1 with title "Inkscape on OS X" with icon POSIX file icon_path
- activate
- end tell
-end try
-EOM)"
-
-if [ -z "$INK_CACHE_DIR" ]; then
- export INK_CACHE_DIR="${HOME}/.cache/inkscape"
- mkdir -p "$INK_CACHE_DIR"
- [ $_DEBUG ] && echo "INK_CACHE_DIR: falling back to $INK_CACHE_DIR"
-fi
-
-# Warn the user about time-consuming generation of fontconfig caches.
-if [ ! -f "${INK_CACHE_DIR}/.fccache-new" ]; then
- alert_result=$(osascript -e "$ALERT_SCRIPT")
- mkdir -p "$INK_CACHE_DIR"
- touch "${INK_CACHE_DIR}/.fccache-new"
-fi
diff --git a/packaging/macosx/Resources/application-gimp-gradient.icns b/packaging/macosx/Resources/application-gimp-gradient.icns
deleted file mode 100644
index ebd4b2a61..000000000
--- a/packaging/macosx/Resources/application-gimp-gradient.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-illustrator-svg.icns b/packaging/macosx/Resources/application-illustrator-svg.icns
deleted file mode 100644
index b666dccb1..000000000
--- a/packaging/macosx/Resources/application-illustrator-svg.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-illustrator.icns b/packaging/macosx/Resources/application-illustrator.icns
deleted file mode 100644
index c44d46582..000000000
--- a/packaging/macosx/Resources/application-illustrator.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-pdf.icns b/packaging/macosx/Resources/application-pdf.icns
deleted file mode 100644
index 1eb670fb0..000000000
--- a/packaging/macosx/Resources/application-pdf.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-vnd.corel-draw-compressed.icns b/packaging/macosx/Resources/application-vnd.corel-draw-compressed.icns
deleted file mode 100644
index ad5dad981..000000000
--- a/packaging/macosx/Resources/application-vnd.corel-draw-compressed.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-vnd.corel-draw-template.icns b/packaging/macosx/Resources/application-vnd.corel-draw-template.icns
deleted file mode 100644
index 475c3fc3c..000000000
--- a/packaging/macosx/Resources/application-vnd.corel-draw-template.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-vnd.corel-draw.icns b/packaging/macosx/Resources/application-vnd.corel-draw.icns
deleted file mode 100644
index 5907b7e9d..000000000
--- a/packaging/macosx/Resources/application-vnd.corel-draw.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-vnd.ms.xaml.icns b/packaging/macosx/Resources/application-vnd.ms.xaml.icns
deleted file mode 100644
index 6a44b4af2..000000000
--- a/packaging/macosx/Resources/application-vnd.ms.xaml.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/application-vnd.wordperfect-graphic.icns b/packaging/macosx/Resources/application-vnd.wordperfect-graphic.icns
deleted file mode 100644
index 9ee499309..000000000
--- a/packaging/macosx/Resources/application-vnd.wordperfect-graphic.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/bin/gimp-wrapper.sh b/packaging/macosx/Resources/bin/gimp-wrapper.sh
deleted file mode 100755
index bbb4d6c6a..000000000
--- a/packaging/macosx/Resources/bin/gimp-wrapper.sh
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/bash
-#
-# simple gimp wrapper script for Inkscape.app
-#
-
-#_DEBUG=true
-
-# --- unset environment inherited from inkscape.app
-get_env_current ()
-{
- env | awk -F= '/[a-zA-Z_][a-zA-Z_0-9]*=/ {if (!system("[ -n \"${" $1 "+y}\" ]")) print $1 }' | sort | uniq
-}
-
-if [ ! -z "$_env_orig" ]; then
- keep_env=$_env_orig
- for i in $(get_env_current); do
- if [ -z "$(printf %s "$keep_env" | grep $i)" ]; then
- unset $i
- fi
- done
-fi
-
-
-# --- defaults for GIMP.app
-
-app_id="org.gnome.gimp"
-app_exec_default="GIMP"
-
-
-# --- defaults for gimp in $PATH
-
-# path for local gimp install
-PATH_local="/opt/local/bin"
-# launch a specific gimp version? (e.g. gimp-2.9)
-gimp_name="gimp"
-
-
-# --- detect installed GIMP.app
-
-unset GIMP_APP
-
-APPLESCRIPT1="$(cat << EOM
-try
- tell application "Finder"
- set theApp to application file id "$app_id" as string
- set theApp_path to POSIX path of theApp as string
- return theApp_path
- end tell
-end try
-EOM)"
-
-GIMP_APP="$(osascript -e "$APPLESCRIPT1")"
-
-
-# --- pass command line arguments to GIMP.app or gimp or exit
-
-if [ ! -z "$GIMP_APP" ]; then
-
- app_exec="$(defaults read "${GIMP_APP}/Contents/Info.plist" CFBundleExecutable)"
- [[ $? -ne 0 ]] && app_exec="$app_exec_default"
-
- GIMP_APP_EXEC="${GIMP_APP}/Contents/MacOS/${app_exec}"
-
- [ $_DEBUG ] && echo "GIMP.app found as: $GIMP_APP" 1>&2
- [ $_DEBUG ] && echo "Command line arguments: $@" 1>&2
- if [ $# -eq 1 ]; then
- [ $_DEBUG ] && echo "open -a $GIMP_APP $@" 1>&2
- open -a "$GIMP_APP" "$@"
- else
- [ $_DEBUG ] && echo "exec $GIMP_APP_EXEC $@" 1>&2
- exec "$GIMP_APP_EXEC" "$@"
- fi
-
-else # --- test for gimp installed in PATH
-
- # remove CWD from path (we don't want to recursively call this script)
- [ $_DEBUG ] && echo "orig PATH: $PATH" 1>&2
- PATH_cleaned="$(echo $PATH | sed 's|'"$(cd "$(dirname "$0")" && pwd)"':||g')" || exit 1
- [ $_DEBUG ] && echo "clean PATH: $PATH_cleaned" 1>&2
- export PATH="$PATH_local:$PATH_cleaned"
- [ $_DEBUG ] && echo "final PATH: $PATH" 1>&2
-
- type -p "$gimp_name"
-
- if [ $? -eq 0 ]; then
- [ $_DEBUG ] && echo "gimp found in \$PATH: $PATH" 1>&2
- [ $_DEBUG ] && echo "Command line arguments: $@" 1>&2
- exec "$gimp_name" -n "$@"
- else
- echo "Giving up - couldn't find GIMP.app nor gimp." 1>&2
- fi
-
-fi
-
-# eof
diff --git a/packaging/macosx/Resources/bin/inkscape b/packaging/macosx/Resources/bin/inkscape
deleted file mode 100755
index 85c9f8eba..000000000
--- a/packaging/macosx/Resources/bin/inkscape
+++ /dev/null
@@ -1,174 +0,0 @@
-#!/bin/sh
-#
-# Author: Aaron Voisine <aaron@voisine.org>
-# Inkscape Modifications:
-# Michael Wybrow <mjwybrow@users.sourceforge.net>
-# Jean-Olivier Irisson <jo.irisson@gmail.com>
-# ~suv <suv-sf@users.sourceforge.net>
-#
-
-get_env_current ()
-{
- env | awk -F= '/[a-zA-Z_][a-zA-Z_0-9]*=/ {if (!system("[ -n \"${" $1 "+y}\" ]")) print $1 }' | sort | uniq
-}
-[ -z "$_env_orig" ] && export _env_orig="$(get_env_current)"
-
-[ -n "$INK_DEBUG_LAUNCHER" ] && set -x
-
-CMD="$(readlink $0 || echo $0)"
-CWD="$(cd "$(dirname "$CMD")" && pwd -P)"
-# e.g. /Applications/Inkscape.app/Contents/Resources/bin
-TOP="$(dirname "$CWD")"
-# e.g. /Applications/Inkscape.app/Contents/Resources
-BASE="$(echo "$TOP" | sed -e 's/\/Contents\/Resources.*$//')"
-# e.g. /Applications/Inkscape.app
-
-# FIXME: Inkscape needs better relocation support for OS X (get rid of the relative
-# path hack in src/path-prefix.h for osxapp-enabled builds). Until then, below change
-# of working directory is required:
-#
-# Due to changes after 0.48, we have to change working directory in the script named 'inkscape':
-# recursive calls to inkscape from python-based extensions otherwise cause the app to hang or
-# fail (for python-based extensions, inkscape changes the working directory to the
-# script's directory, and inkscape launched by python script thus can't find resources
-# like the now essential 'units.xml' in INKSCAPE_UIDIR relative to the working directory).
-cd "$BASE" || exit 1
-
-# don't prepend to $PATH in recursive calls:
-if [ -z "$INK_PATH_ORIG" ]; then
-
- # Brutally add many things to the PATH. If the directories do not exist, they won't be used anyway.
- # the 'classic' PATH additions:
- # /usr/local/bin which, though standard, doesn't seem to be in the PATH
- # Fink
- # MacPorts (former DarwinPorts)
- # LaTeX distribution for Mac OS X
- PATH_OTHER="/Library/TeX/texbin:/usr/texbin:/opt/local/bin:/sw/bin/:/usr/local/bin"
-
- # Put /usr/bin at beginning of path so we make sure we use Apple's python
- # over one that may be installed be Macports, Fink or some other means.
- PATH_PYTHON="/usr/bin"
-
- # Put $TOP/bin at beginning of path so we make sure that recursive calls
- # to inkscape don't pull in other inkscape binaries with different setup.
- # Also allows to override system python with custom wrapper script, and
- # e.g. to support GIMP.app or gimp for external editing and GIMP XCF export.
- PATH_pkgbin="$TOP/bin"
-
- # save orig, new PATH
- export INK_PATH_ORIG="$PATH"
- export PATH="$PATH_pkgbin:$PATH_PYTHON:$PATH_OTHER:$INK_PATH_ORIG"
-fi
-
-# Setup PYTHONPATH to use python modules shipped with Inkscape
-OSXMINORNO="$(/usr/bin/sw_vers -productVersion | cut -d. -f2)"
-build_arch=__build_arch__
-if [ $OSXMINORNO -gt "5" ]; then
- if [ $OSXMINORNO -eq "6" ]; then
- export VERSIONER_PYTHON_VERSION=2.6
- else # if [ $OSXMINORNO -ge "7" ]; then
- export VERSIONER_PYTHON_VERSION=2.7
- fi
- if [ $build_arch = "i386" ]; then
- export VERSIONER_PYTHON_PREFER_32_BIT=yes
- else # build & runtime arch x86_64
- export VERSIONER_PYTHON_PREFER_32_BIT=no
- fi
-fi
-PYTHON_VERS="$(python -V 2>&1 | cut -c 8-10)"
-export PYTHONPATH="$TOP/lib/python$PYTHON_VERS/site-packages/"
-
-export FONTCONFIG_PATH="$TOP/etc/fonts"
-export PANGO_RC_FILE="$TOP/etc/pango/pangorc"
-export PANGO_SYSCONFDIR="$TOP/etc"
-export GTK_IM_MODULE_FILE="$TOP/lib/gtk-2.0/__gtk_version__/immodules.cache"
-export GDK_PIXBUF_MODULE_FILE="$TOP/lib/gdk-pixbuf-2.0/__gtk_version__/loaders.cache"
-export GTK_DATA_PREFIX="$TOP"
-export GTK_EXE_PREFIX="$TOP"
-export GTK_PATH="$TOP"
-export GNOME_VFS_MODULE_CONFIG_PATH="$TOP/etc/gnome-vfs-2.0/modules"
-export GNOME_VFS_MODULE_PATH="$TOP/lib/gnome-vfs-2.0/modules"
-export GIO_USE_VFS="local"
-export GVFS_REMOTE_VOLUME_MONITOR_IGNORE=1
-export GVFS_DISABLE_FUSE=1
-export XDG_DATA_DIRS="$TOP/share"
-export ASPELL_CONF="prefix $TOP;"
-export POPPLER_DATADIR="$TOP/share/poppler"
-
-# no DBUS for now
-unset DBUS_LAUNCHD_SESSION_BUS_SOCKET
-unset DBUS_SESSION_BUS_ADDRESS
-
-# Note: This requires the path with the exact ImageMagic version number.
-# The actual version is inserted by the packaging script.
-export MAGICK_CONFIGURE_PATH="$TOP/lib/ImageMagick-IMAGEMAGICKVER/config:$TOP/share/ImageMagick-IMAGEMAGICKVER_MAJOR/config"
-export MAGICK_CODER_FILTER_PATH="$TOP/lib/ImageMagick-IMAGEMAGICKVER/modules-Q16/filters"
-export MAGICK_CODER_MODULE_PATH="$TOP/lib/ImageMagick-IMAGEMAGICKVER/modules-Q16/coders"
-
-export INKSCAPE_SHAREDIR="$TOP/share/inkscape"
-export INKSCAPE_PLUGINDIR="$TOP/lib/inkscape"
-export INKSCAPE_LOCALEDIR="$TOP/share/locale"
-
-# Handle the case where the directory storing Inkscape has special characters
-# ('#', '&', '|') in the name. These need to be escaped to work properly for
-# various configuration files.
-ESCAPEDTOP=`echo "$TOP" | sed 's/#/\\\\\\\\#/' | sed 's/&/\\\\\\&/g' | sed 's/|/\\\\\\|/g'`
-
-# Set GTK theme (only if there is no .gtkrc-2.0 in the user's home)
-if [[ ! -e "$HOME/.gtkrc-2.0" ]]; then
- export GTK2_RC_FILES="$ESCAPEDTOP/etc/gtk-2.0/gtkrc"
-fi
-
-# If the AppleCollationOrder preference doesn't exist, we fall back to using
-# the AppleLocale preference.
-LANGSTR=`defaults read .GlobalPreferences AppleCollationOrder 2>/dev/null`
-if [ "x$LANGSTR" == "x" -o "x$LANGSTR" == "xroot" ]
-then
- LANGSTR=`defaults read .GlobalPreferences AppleLocale 2>/dev/null | \
- sed 's/_.*//'`
- [ $_DEBUG ] && echo "Setting LANGSTR from AppleLocale: $LANGSTR" 1>&2
-else
- [ $_DEBUG ] && echo "Setting LANGSTR from AppleCollationOrder: $LANGSTR" 1>&2
-fi
-
-# NOTE: Have to add ".UTF-8" to the LANG since omitting causes Inkscape
-# to crash on startup in locale_from_utf8().
-if [ "x$LANGSTR" == "x" ]
-then
- # override broken script
- [ $_DEBUG ] && echo "Overriding empty LANGSTR" 1>&2
- export LANG="en_US.UTF-8"
-else
- tmpLANG="`grep \"\`echo $LANGSTR\`_\" /usr/share/locale/locale.alias | \
- tail -n1 | sed 's/\./ /' | awk '{print $2}'`"
- if [ "x$tmpLANG" == "x" ]
- then
- # override broken script
- [ $_DEBUG ] && echo "Overriding empty LANG from /usr/share/locale/locale.alias" 1>&2
- export LANG="en_US.UTF-8"
- else
- [ $_DEBUG ] && echo "Setting LANG from /usr/share/locale/locale.alias" 1>&2
- export LANG="$tmpLANG.UTF-8"
- fi
-fi
-[ $_DEBUG ] && echo "Setting Language: $LANG" 1>&2
-export LC_ALL="$LANG"
-
-case "$INK_DEBUG" in
- gdb)
- EXEC="gdb --args" ;;
- lldb)
- EXEC="lldb -- " ;;
- dtruss)
- EXEC="dtruss" ;;
- *)
- EXEC="exec" ;;
-esac
-unset INK_DEBUG # ignore for recursive calls
-
-if [ "x$INK_DEBUG_SHELL" != "x" ]; then
- unset INK_DEBUG_SHELL # ignore for recursive calls
- exec bash
-else
- $EXEC "$CWD/inkscape-bin" "$@"
-fi
diff --git a/packaging/macosx/Resources/etc/fonts/fonts.conf b/packaging/macosx/Resources/etc/fonts/fonts.conf
deleted file mode 100644
index 316043814..000000000
--- a/packaging/macosx/Resources/etc/fonts/fonts.conf
+++ /dev/null
@@ -1,159 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-<!-- /etc/fonts/fonts.conf file to configure system font access -->
-<fontconfig>
-
-<!--
- DO NOT EDIT THIS FILE.
- IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
- LOCAL CHANGES BELONG IN 'local.conf'.
-
- The intent of this standard configuration file is to be adequate for
- most environments. If you have a reasonably normal environment and
- have found problems with this configuration, they are probably
- things that others will also want fixed. Please submit any
- problems to the fontconfig bugzilla system located at fontconfig.org
-
- Note that the normal 'make install' procedure for fontconfig is to
- replace any existing fonts.conf file with the new version. Place
- any local customizations in local.conf which this file references.
-
- Keith Packard
--->
-
-<!-- Font directory list -->
-
- <dir>/usr/share/fonts</dir>
- <dir>/usr/X11/lib/X11/fonts</dir>
- <dir>/opt/local/share/fonts</dir>
- <dir>/System/Library/Fonts</dir>
- <dir>/Network/Library/Fonts</dir>
- <dir>/Library/Fonts</dir>
- <dir>~/Library/Fonts</dir>
- <dir prefix="xdg">fonts</dir>
- <!-- the following element will be removed in the future -->
- <dir>~/.fonts</dir>
-
-<!--
- Accept deprecated 'mono' alias, replacing it with 'monospace'
--->
- <match target="pattern">
- <test qual="any" name="family">
- <string>mono</string>
- </test>
- <edit name="family" mode="assign" binding="same">
- <string>monospace</string>
- </edit>
- </match>
-
-<!--
- Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
--->
- <match target="pattern">
- <test qual="any" name="family">
- <string>sans serif</string>
- </test>
- <edit name="family" mode="assign" binding="same">
- <string>sans-serif</string>
- </edit>
- </match>
-
-<!--
- Accept deprecated 'sans' alias, replacing it with 'sans-serif'
--->
- <match target="pattern">
- <test qual="any" name="family">
- <string>sans</string>
- </test>
- <edit name="family" mode="assign" binding="same">
- <string>sans-serif</string>
- </edit>
- </match>
-
-<!--
- Load local system customization file
--->
- <include ignore_missing="yes">conf.d</include>
-
-<!-- Font cache directory list -->
-
- <cachedir prefix="xdg">fontconfig</cachedir>
- <!-- the following element will be removed in the future -->
- <cachedir>~/.fontconfig</cachedir>
-
- <config>
-<!--
- These are the default Unicode chars that are expected to be blank
- in fonts. All other blank chars are assumed to be broken and
- won't appear in the resulting charsets
- -->
- <blank>
- <int>0x0020</int> <!-- SPACE -->
- <int>0x00A0</int> <!-- NO-BREAK SPACE -->
- <int>0x00AD</int> <!-- SOFT HYPHEN -->
- <int>0x034F</int> <!-- COMBINING GRAPHEME JOINER -->
- <int>0x0600</int> <!-- ARABIC NUMBER SIGN -->
- <int>0x0601</int> <!-- ARABIC SIGN SANAH -->
- <int>0x0602</int> <!-- ARABIC FOOTNOTE MARKER -->
- <int>0x0603</int> <!-- ARABIC SIGN SAFHA -->
- <int>0x06DD</int> <!-- ARABIC END OF AYAH -->
- <int>0x070F</int> <!-- SYRIAC ABBREVIATION MARK -->
- <int>0x115F</int> <!-- HANGUL CHOSEONG FILLER -->
- <int>0x1160</int> <!-- HANGUL JUNGSEONG FILLER -->
- <int>0x1680</int> <!-- OGHAM SPACE MARK -->
- <int>0x17B4</int> <!-- KHMER VOWEL INHERENT AQ -->
- <int>0x17B5</int> <!-- KHMER VOWEL INHERENT AA -->
- <int>0x180E</int> <!-- MONGOLIAN VOWEL SEPARATOR -->
- <int>0x2000</int> <!-- EN QUAD -->
- <int>0x2001</int> <!-- EM QUAD -->
- <int>0x2002</int> <!-- EN SPACE -->
- <int>0x2003</int> <!-- EM SPACE -->
- <int>0x2004</int> <!-- THREE-PER-EM SPACE -->
- <int>0x2005</int> <!-- FOUR-PER-EM SPACE -->
- <int>0x2006</int> <!-- SIX-PER-EM SPACE -->
- <int>0x2007</int> <!-- FIGURE SPACE -->
- <int>0x2008</int> <!-- PUNCTUATION SPACE -->
- <int>0x2009</int> <!-- THIN SPACE -->
- <int>0x200A</int> <!-- HAIR SPACE -->
- <int>0x200B</int> <!-- ZERO WIDTH SPACE -->
- <int>0x200C</int> <!-- ZERO WIDTH NON-JOINER -->
- <int>0x200D</int> <!-- ZERO WIDTH JOINER -->
- <int>0x200E</int> <!-- LEFT-TO-RIGHT MARK -->
- <int>0x200F</int> <!-- RIGHT-TO-LEFT MARK -->
- <int>0x2028</int> <!-- LINE SEPARATOR -->
- <int>0x2029</int> <!-- PARAGRAPH SEPARATOR -->
- <int>0x202A</int> <!-- LEFT-TO-RIGHT EMBEDDING -->
- <int>0x202B</int> <!-- RIGHT-TO-LEFT EMBEDDING -->
- <int>0x202C</int> <!-- POP DIRECTIONAL FORMATTING -->
- <int>0x202D</int> <!-- LEFT-TO-RIGHT OVERRIDE -->
- <int>0x202E</int> <!-- RIGHT-TO-LEFT OVERRIDE -->
- <int>0x202F</int> <!-- NARROW NO-BREAK SPACE -->
- <int>0x205F</int> <!-- MEDIUM MATHEMATICAL SPACE -->
- <int>0x2060</int> <!-- WORD JOINER -->
- <int>0x2061</int> <!-- FUNCTION APPLICATION -->
- <int>0x2062</int> <!-- INVISIBLE TIMES -->
- <int>0x2063</int> <!-- INVISIBLE SEPARATOR -->
- <int>0x206A</int> <!-- INHIBIT SYMMETRIC SWAPPING -->
- <int>0x206B</int> <!-- ACTIVATE SYMMETRIC SWAPPING -->
- <int>0x206C</int> <!-- INHIBIT ARABIC FORM SHAPING -->
- <int>0x206D</int> <!-- ACTIVATE ARABIC FORM SHAPING -->
- <int>0x206E</int> <!-- NATIONAL DIGIT SHAPES -->
- <int>0x206F</int> <!-- NOMINAL DIGIT SHAPES -->
- <int>0x2800</int> <!-- BRAILLE PATTERN BLANK -->
- <int>0x3000</int> <!-- IDEOGRAPHIC SPACE -->
- <int>0x3164</int> <!-- HANGUL FILLER -->
- <int>0xFEFF</int> <!-- ZERO WIDTH NO-BREAK SPACE -->
- <int>0xFFA0</int> <!-- HALFWIDTH HANGUL FILLER -->
- <int>0xFFF9</int> <!-- INTERLINEAR ANNOTATION ANCHOR -->
- <int>0xFFFA</int> <!-- INTERLINEAR ANNOTATION SEPARATOR -->
- <int>0xFFFB</int> <!-- INTERLINEAR ANNOTATION TERMINATOR -->
- </blank>
-<!--
- Rescan configuration every 30 seconds when FcFontSetList is called
- -->
- <rescan>
- <int>30</int>
- </rescan>
- </config>
-
-</fontconfig>
diff --git a/packaging/macosx/Resources/etc/gtk-2.0/gtkrc b/packaging/macosx/Resources/etc/gtk-2.0/gtkrc
deleted file mode 100644
index 46f5d2910..000000000
--- a/packaging/macosx/Resources/etc/gtk-2.0/gtkrc
+++ /dev/null
@@ -1,23 +0,0 @@
-#
-# gtkrc file for Inkscape.app (X11)
-#
-
-gtk-theme-name = "Adwaita"
-gtk-font-name = "Lucida Grande 9"
-
-gtk-icon-theme-name = "GtkStock"
-gtk-icon-sizes = "gtk-dialog=32,32:gtk-button=16,16:gtk-large-toolbar=24,24:gtk-small-toolbar=16,16:gtk-menu=16,16:inkscape-decoration=12,12"
-
-gtk-button-images = 0
-gtk-menu-images = 1
-gtk-toolbar-style = 0
-#gtk-toolbar-icon-size = 2
-
-# use OS X default PDF viewer for print preview
-gtk-print-preview-command="open -a /Applications/Preview.app %f"
-
-# fix Adwaita theme for Inkscape's GimpSpinScale widgets
-style "spinbutton" {}
-widget_class "*GimpSpinScale*" style "spinbutton"
-
-# eof
diff --git a/packaging/macosx/Resources/image-svg+xml-compressed.icns b/packaging/macosx/Resources/image-svg+xml-compressed.icns
deleted file mode 100644
index 7d242061a..000000000
--- a/packaging/macosx/Resources/image-svg+xml-compressed.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/image-svg+xml.icns b/packaging/macosx/Resources/image-svg+xml.icns
deleted file mode 100644
index 63419845a..000000000
--- a/packaging/macosx/Resources/image-svg+xml.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/image-vnd.dxf.icns b/packaging/macosx/Resources/image-vnd.dxf.icns
deleted file mode 100644
index 3b18609f7..000000000
--- a/packaging/macosx/Resources/image-vnd.dxf.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/image-vnd.sk1.icns b/packaging/macosx/Resources/image-vnd.sk1.icns
deleted file mode 100644
index 887cd1a8f..000000000
--- a/packaging/macosx/Resources/image-vnd.sk1.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/image-vnd.windows-metafile.icns b/packaging/macosx/Resources/image-vnd.windows-metafile.icns
deleted file mode 100644
index fb0bfa9c6..000000000
--- a/packaging/macosx/Resources/image-vnd.windows-metafile.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/image-x-eps.icns b/packaging/macosx/Resources/image-x-eps.icns
deleted file mode 100644
index ebb294022..000000000
--- a/packaging/macosx/Resources/image-x-eps.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/image-x-ps.icns b/packaging/macosx/Resources/image-x-ps.icns
deleted file mode 100644
index 93fcf7348..000000000
--- a/packaging/macosx/Resources/image-x-ps.icns
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/Resources/openDoc b/packaging/macosx/Resources/openDoc
deleted file mode 100755
index b2e58c114..000000000
--- a/packaging/macosx/Resources/openDoc
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/bash
-#
-# Author: Aaron Voisine <aaron@voisine.org>
-# Inkscape Modifications: Michael Wybrow <mjwybrow@users.sourceforge.net>
-# Inkscape Modifications: ~suv <suv-sf@users.sourceforge.net>
-
-get_env_current ()
-{
- env | awk -F= '/[a-zA-Z_][a-zA-Z_0-9]*=/ {if (!system("[ -n \"${" $1 "+y}\" ]")) print $1 }' | sort | uniq
-}
-[ -z "$_env_orig" ] && export _env_orig="$(get_env_current)"
-
-CWD="$(cd "$(dirname "$0")" && pwd)"
-
-source "${CWD}/xdg_setup.sh"
-
-exec "$CWD/bin/inkscape" "$@"
diff --git a/packaging/macosx/Resources/script b/packaging/macosx/Resources/script
deleted file mode 100755
index 2bfe1d9ba..000000000
--- a/packaging/macosx/Resources/script
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/bash
-#
-# Author: Aaron Voisine <aaron@voisine.org>
-# Inkscape Modifications: Michael Wybrow <mjwybrow@users.sourceforge.net>
-# Inkscape Modifications: ~suv <suv-sf@users.sourceforge.net>
-
-#export _DEBUG=true
-
-get_env_current ()
-{
- env | awk -F= '/[a-zA-Z_][a-zA-Z_0-9]*=/ {if (!system("[ -n \"${" $1 "+y}\" ]")) print $1 }' | sort | uniq
-}
-[ -z "$_env_orig" ] && export _env_orig="$(get_env_current)"
-
-CWD="$(cd "$(dirname "$0")" && pwd)"
-
-source "${CWD}/xdg_setup.sh"
-source "${CWD}/alert_fccache.sh"
-
-# TODO examine whether it would be wisest to move the code from inkscape shell
-# script and getdisplay.sh to here and only keep the real binary in bin. This
-# may make things easier on Leopard and may also help using Inkscape on the
-# command line.
-#
-# See related FIXME in bin/inkscape for requirements to merge the two scripts.
-
-exec "$CWD/bin/inkscape" "$@"
diff --git a/packaging/macosx/Resources/xdg_setup.sh b/packaging/macosx/Resources/xdg_setup.sh
deleted file mode 100644
index f37738210..000000000
--- a/packaging/macosx/Resources/xdg_setup.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-export XDG_CACHE_HOME="${HOME}/.cache"
-export XDG_CONFIG_HOME="${HOME}/.config"
-export XDG_DATA_HOME="${HOME}/.local/share"
-
-mkdir -p "$XDG_CACHE_HOME"
-mkdir -p "$XDG_CONFIG_HOME"
-mkdir -p "$XDG_DATA_HOME"
-
-export INK_CACHE_DIR="${XDG_CACHE_HOME}/inkscape"
-mkdir -p "$INK_CACHE_DIR"
-
diff --git a/packaging/macosx/ScriptExec/English.lproj/InfoPlist.strings b/packaging/macosx/ScriptExec/English.lproj/InfoPlist.strings
deleted file mode 100644
index 0bb6ef503..000000000
--- a/packaging/macosx/ScriptExec/English.lproj/InfoPlist.strings
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/ScriptExec/English.lproj/main.nib/classes.nib b/packaging/macosx/ScriptExec/English.lproj/main.nib/classes.nib
deleted file mode 100644
index ea58db118..000000000
--- a/packaging/macosx/ScriptExec/English.lproj/main.nib/classes.nib
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-IBClasses = ();
-IBVersion = 1;
-}
diff --git a/packaging/macosx/ScriptExec/English.lproj/main.nib/info.nib b/packaging/macosx/ScriptExec/English.lproj/main.nib/info.nib
deleted file mode 100644
index da8455c15..000000000
--- a/packaging/macosx/ScriptExec/English.lproj/main.nib/info.nib
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>IBFramework Version</key>
- <string>345.0</string>
- <key>IBOldestOS</key>
- <integer>3</integer>
- <key>IBOpenObjects</key>
- <array>
- <integer>29</integer>
- <integer>166</integer>
- </array>
- <key>IBSystem Version</key>
- <string>7B44</string>
- <key>targetFramework</key>
- <string>IBCarbonFramework</string>
-</dict>
-</plist>
diff --git a/packaging/macosx/ScriptExec/English.lproj/main.nib/objects.xib b/packaging/macosx/ScriptExec/English.lproj/main.nib/objects.xib
deleted file mode 100644
index 92ff05616..000000000
--- a/packaging/macosx/ScriptExec/English.lproj/main.nib/objects.xib
+++ /dev/null
@@ -1,271 +0,0 @@
-<?xml version="1.0" standalone="yes"?>
-<object class="NSIBObjectData">
- <string name="targetFramework">IBCarbonFramework</string>
- <object name="rootObject" class="NSCustomObject" id="1">
- <string name="customClass">NSApplication</string>
- </object>
- <array count="38" name="allObjects">
- <object class="IBCarbonMenu" id="29">
- <string name="title">main</string>
- <array count="4" name="items">
- <object class="IBCarbonMenuItem" id="185">
- <string name="title">Foo</string>
- <object name="submenu" class="IBCarbonMenu" id="184">
- <string name="title">Foo</string>
- <array count="1" name="items">
- <object class="IBCarbonMenuItem" id="187">
- <string name="title">About Foo</string>
- <int name="keyEquivalentModifier">0</int>
- <ostype name="command">abou</ostype>
- </object>
- </array>
- <string name="name">_NSAppleMenu</string>
- </object>
- </object>
- <object class="IBCarbonMenuItem" id="127">
- <string name="title">File</string>
- <object name="submenu" class="IBCarbonMenu" id="131">
- <string name="title">File</string>
- <array count="10" name="items">
- <object class="IBCarbonMenuItem" id="139">
- <string name="title">New</string>
- <string name="keyEquivalent">n</string>
- <ostype name="command">new </ostype>
- </object>
- <object class="IBCarbonMenuItem" id="134">
- <string name="title">Open…</string>
- <string name="keyEquivalent">o</string>
- <ostype name="command">open</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="133">
- <boolean name="separator">TRUE</boolean>
- </object>
- <object class="IBCarbonMenuItem" id="130">
- <string name="title">Close</string>
- <string name="keyEquivalent">w</string>
- <ostype name="command">clos</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="138">
- <string name="title">Save</string>
- <string name="keyEquivalent">s</string>
- <ostype name="command">save</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="137">
- <string name="title">Save As…</string>
- <string name="keyEquivalent">S</string>
- <ostype name="command">svas</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="132">
- <string name="title">Revert</string>
- <string name="keyEquivalent">r</string>
- <ostype name="command">rvrt</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="128">
- <boolean name="separator">TRUE</boolean>
- </object>
- <object class="IBCarbonMenuItem" id="135">
- <string name="title">Page Setup…</string>
- <string name="keyEquivalent">P</string>
- <ostype name="command">page</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="136">
- <string name="title">Print…</string>
- <string name="keyEquivalent">p</string>
- <ostype name="command">prnt</ostype>
- </object>
- </array>
- </object>
- </object>
- <object class="IBCarbonMenuItem" id="152">
- <string name="title">Edit</string>
- <object name="submenu" class="IBCarbonMenu" id="147">
- <string name="title">Edit</string>
- <array count="10" name="items">
- <object class="IBCarbonMenuItem" id="141">
- <string name="title">Undo</string>
- <string name="keyEquivalent">z</string>
- <ostype name="command">undo</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="146">
- <string name="title">Redo</string>
- <string name="keyEquivalent">Z</string>
- <ostype name="command">redo</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="142">
- <boolean name="separator">TRUE</boolean>
- </object>
- <object class="IBCarbonMenuItem" id="143">
- <string name="title">Cut</string>
- <string name="keyEquivalent">x</string>
- <ostype name="command">cut </ostype>
- </object>
- <object class="IBCarbonMenuItem" id="149">
- <string name="title">Copy</string>
- <string name="keyEquivalent">c</string>
- <ostype name="command">copy</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="144">
- <string name="title">Paste</string>
- <string name="keyEquivalent">v</string>
- <ostype name="command">past</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="151">
- <string name="title">Delete</string>
- <ostype name="command">clea</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="148">
- <string name="title">Select All</string>
- <string name="keyEquivalent">a</string>
- <ostype name="command">sall</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="199">
- <boolean name="separator">TRUE</boolean>
- </object>
- <object class="IBCarbonMenuItem" id="198">
- <string name="title">Special Characters…</string>
- <ostype name="command">chrp</ostype>
- </object>
- </array>
- </object>
- </object>
- <object class="IBCarbonMenuItem" id="192">
- <string name="title">Window</string>
- <object name="submenu" class="IBCarbonMenu" id="195">
- <string name="title">Window</string>
- <array count="6" name="items">
- <object class="IBCarbonMenuItem" id="197">
- <string name="title">Zoom Window</string>
- <ostype name="command">zoom</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="190">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Minimize Window</string>
- <string name="keyEquivalent">m</string>
- <ostype name="command">mini</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="191">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Minimize All Windows</string>
- <string name="keyEquivalent">m</string>
- <int name="keyEquivalentModifier">1572864</int>
- <ostype name="command">mina</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="194">
- <boolean name="separator">TRUE</boolean>
- </object>
- <object class="IBCarbonMenuItem" id="196">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Bring All to Front</string>
- <ostype name="command">bfrt</ostype>
- </object>
- <object class="IBCarbonMenuItem" id="193">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Arrange in Front</string>
- <int name="keyEquivalentModifier">1572864</int>
- <ostype name="command">frnt</ostype>
- </object>
- </array>
- <string name="name">_NSWindowsMenu</string>
- </object>
- </object>
- </array>
- <string name="name">_NSMainMenu</string>
- </object>
- <reference idRef="127"/>
- <reference idRef="128"/>
- <reference idRef="130"/>
- <reference idRef="131"/>
- <reference idRef="132"/>
- <reference idRef="133"/>
- <reference idRef="134"/>
- <reference idRef="135"/>
- <reference idRef="136"/>
- <reference idRef="137"/>
- <reference idRef="138"/>
- <reference idRef="139"/>
- <reference idRef="141"/>
- <reference idRef="142"/>
- <reference idRef="143"/>
- <reference idRef="144"/>
- <reference idRef="146"/>
- <reference idRef="147"/>
- <reference idRef="148"/>
- <reference idRef="149"/>
- <reference idRef="151"/>
- <reference idRef="152"/>
- <object class="IBCarbonWindow" id="166">
- <string name="windowRect">204 300 564 780 </string>
- <string name="title">Window</string>
- <object name="rootControl" class="IBCarbonRootControl" id="167">
- <string name="bounds">0 0 360 480 </string>
- <string name="viewFrame">0 0 480 360 </string>
- </object>
- <boolean name="receiveUpdates">FALSE</boolean>
- <boolean name="liveResize">TRUE</boolean>
- <boolean name="compositing">TRUE</boolean>
- </object>
- <reference idRef="167"/>
- <reference idRef="184"/>
- <reference idRef="185"/>
- <reference idRef="187"/>
- <reference idRef="190"/>
- <reference idRef="191"/>
- <reference idRef="192"/>
- <reference idRef="193"/>
- <reference idRef="194"/>
- <reference idRef="195"/>
- <reference idRef="196"/>
- <reference idRef="197"/>
- <reference idRef="198"/>
- <reference idRef="199"/>
- </array>
- <array count="38" name="allParents">
- <reference idRef="1"/>
- <reference idRef="29"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="127"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="131"/>
- <reference idRef="147"/>
- <reference idRef="147"/>
- <reference idRef="147"/>
- <reference idRef="147"/>
- <reference idRef="147"/>
- <reference idRef="152"/>
- <reference idRef="147"/>
- <reference idRef="147"/>
- <reference idRef="147"/>
- <reference idRef="29"/>
- <reference idRef="1"/>
- <reference idRef="166"/>
- <reference idRef="185"/>
- <reference idRef="29"/>
- <reference idRef="184"/>
- <reference idRef="195"/>
- <reference idRef="195"/>
- <reference idRef="29"/>
- <reference idRef="195"/>
- <reference idRef="195"/>
- <reference idRef="192"/>
- <reference idRef="195"/>
- <reference idRef="195"/>
- <reference idRef="147"/>
- <reference idRef="147"/>
- </array>
- <dictionary count="3" name="nameTable">
- <string>Files Owner</string>
- <reference idRef="1"/>
- <string>MainWindow</string>
- <reference idRef="166"/>
- <string>MenuBar</string>
- <reference idRef="29"/>
- </dictionary>
- <unsigned_int name="nextObjectID">200</unsigned_int>
-</object>
diff --git a/packaging/macosx/ScriptExec/Info.plist b/packaging/macosx/ScriptExec/Info.plist
deleted file mode 100644
index 9cac37f85..000000000
--- a/packaging/macosx/ScriptExec/Info.plist
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
-<plist version="0.9">
-<dict>
- <key>CFBundleDevelopmentRegion</key>
- <string>English</string>
- <key>CFBundleDocumentTypes</key>
- <array>
- <dict>
- <key>CFBundleTypeExtensions</key>
- <array>
- <string>*</string>
- </array>
- <key>CFBundleTypeName</key>
- <string>All</string>
- <key>CFBundleTypeOSTypes</key>
- <array>
- <string>****</string>
- </array>
- <key>CFBundleTypeRole</key>
- <string>Viewer</string>
- </dict>
- </array>
- <key>CFBundleExecutable</key>
- <string>ScriptExec</string>
- <key>CFBundleIconFile</key>
- <string></string>
- <key>CFBundleIdentifier</key>
- <string>com.apple.myCarbonNibApp</string>
- <key>CFBundleInfoDictionaryVersion</key>
- <string>6.0</string>
- <key>CFBundlePackageType</key>
- <string>APPL</string>
- <key>CFBundleSignature</key>
- <string>????</string>
- <key>CFBundleVersion</key>
- <string>1.1</string>
-</dict>
-</plist>
diff --git a/packaging/macosx/ScriptExec/MenuBar.nib/classes.nib b/packaging/macosx/ScriptExec/MenuBar.nib/classes.nib
deleted file mode 100644
index ea58db118..000000000
--- a/packaging/macosx/ScriptExec/MenuBar.nib/classes.nib
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-IBClasses = ();
-IBVersion = 1;
-}
diff --git a/packaging/macosx/ScriptExec/MenuBar.nib/info.nib b/packaging/macosx/ScriptExec/MenuBar.nib/info.nib
deleted file mode 100644
index c0f4643ef..000000000
--- a/packaging/macosx/ScriptExec/MenuBar.nib/info.nib
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>IBDocumentLocation</key>
- <string>99 362 356 240 0 0 1280 832 </string>
- <key>IBEditorPositions</key>
- <dict>
- <key>187</key>
- <string>340 374 240 44 0 0 1280 832 </string>
- </dict>
- <key>IBFramework Version</key>
- <string>349.0</string>
- <key>IBOpenObjects</key>
- <array>
- <integer>187</integer>
- </array>
- <key>IBSystem Version</key>
- <string>7F44</string>
- <key>targetFramework</key>
- <string>IBCarbonFramework</string>
-</dict>
-</plist>
diff --git a/packaging/macosx/ScriptExec/MenuBar.nib/objects.xib b/packaging/macosx/ScriptExec/MenuBar.nib/objects.xib
deleted file mode 100644
index 78f0a0a01..000000000
--- a/packaging/macosx/ScriptExec/MenuBar.nib/objects.xib
+++ /dev/null
@@ -1,73 +0,0 @@
-<?xml version="1.0" standalone="yes"?>
-<object class="NSIBObjectData">
- <string name="targetFramework">IBCarbonFramework</string>
- <object name="rootObject" class="NSCustomObject" id="1">
- <string name="customClass">NSApplication</string>
- </object>
- <array count="4" name="allObjects">
- <object class="IBCarbonMenu" id="187">
- <string name="title">MenuBar</string>
- <array count="1" name="items">
- <object class="IBCarbonMenuItem" id="195">
- <string name="title">ScriptExec</string>
- <object name="submenu" class="IBCarbonMenu" id="193">
- <string name="title">ScriptExec</string>
- <string name="name">_NSAppleMenu</string>
- </object>
- </object>
- </array>
- <string name="name">_NSMainMenu</string>
- </object>
- <reference idRef="193"/>
- <reference idRef="195"/>
- <object class="IBCarbonMenuItem" id="204">
- <string name="title">Window</string>
- <object name="submenu" class="IBCarbonMenu">
- <string name="title">Window</string>
- <array count="5" name="items">
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Minimize Window</string>
- <string name="keyEquivalent">m</string>
- <ostype name="command">mini</ostype>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Minimize All Windows</string>
- <string name="keyEquivalent">m</string>
- <int name="keyEquivalentModifier">1572864</int>
- <ostype name="command">mini</ostype>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="separator">TRUE</boolean>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Bring All to Front</string>
- <ostype name="command">frnt</ostype>
- </object>
- <object class="IBCarbonMenuItem">
- <boolean name="dynamic">TRUE</boolean>
- <string name="title">Bring in Front</string>
- <int name="keyEquivalentModifier">1572864</int>
- <ostype name="command">frnt</ostype>
- </object>
- </array>
- <string name="name">_NSWindowsMenu</string>
- </object>
- </object>
- </array>
- <array count="4" name="allParents">
- <reference idRef="1"/>
- <reference idRef="195"/>
- <reference idRef="187"/>
- <reference idRef="187"/>
- </array>
- <dictionary count="2" name="nameTable">
- <string>File&apos;s Owner</string>
- <reference idRef="1"/>
- <string>MenuBar</string>
- <reference idRef="187"/>
- </dictionary>
- <unsigned_int name="nextObjectID">206</unsigned_int>
-</object>
diff --git a/packaging/macosx/ScriptExec/ScriptExec.xcodeproj/project.pbxproj b/packaging/macosx/ScriptExec/ScriptExec.xcodeproj/project.pbxproj
deleted file mode 100644
index 0443dd764..000000000
--- a/packaging/macosx/ScriptExec/ScriptExec.xcodeproj/project.pbxproj
+++ /dev/null
@@ -1,351 +0,0 @@
-// !$*UTF8*$!
-{
- archiveVersion = 1;
- classes = {
- };
- objectVersion = 42;
- objects = {
-
-/* Begin PBXBuildFile section */
- 664C29F1060ECDC4006EC560 /* openDoc in Resources */ = {isa = PBXBuildFile; fileRef = 664C29F0060ECDC4006EC560 /* openDoc */; };
- 8D0C4E8B0486CD37000505A6 /* ScriptExec_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = 32DBCF6D0370B57F00C91783 /* ScriptExec_Prefix.pch */; };
- 8D0C4E8D0486CD37000505A6 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */; };
- 8D0C4E900486CD37000505A6 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 20286C2BFDCF999611CA2CEA /* main.c */; settings = {ATTRIBUTES = (); }; };
- 8D0C4E920486CD37000505A6 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 20286C33FDCF999611CA2CEA /* Carbon.framework */; };
- B8DCE045056DAC3500C390B0 /* MenuBar.nib in Resources */ = {isa = PBXBuildFile; fileRef = B8DCE042056DAC3500C390B0 /* MenuBar.nib */; };
- B8DCE049056DAC5000C390B0 /* script in Resources */ = {isa = PBXBuildFile; fileRef = B8DCE048056DAC5000C390B0 /* script */; };
- B8DCE04F056DACAE00C390B0 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B8DCE04E056DACAE00C390B0 /* Security.framework */; };
-/* End PBXBuildFile section */
-
-/* Begin PBXFileReference section */
- 0867D6ABFE840B52C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
- 20286C2BFDCF999611CA2CEA /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
- 20286C33FDCF999611CA2CEA /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
- 32DBCF6D0370B57F00C91783 /* ScriptExec_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptExec_Prefix.pch; sourceTree = "<group>"; };
- 4A9504C8FFE6A3BC11CA0CBA /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = "<absolute>"; };
- 4A9504CAFFE6A41611CA0CBA /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
- 664C29F0060ECDC4006EC560 /* openDoc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.script.sh; path = openDoc; sourceTree = "<group>"; };
- 8D0C4E960486CD37000505A6 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
- 8D0C4E970486CD37000505A6 /* ScriptExec.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ScriptExec.app; sourceTree = BUILT_PRODUCTS_DIR; };
- B8DCE042056DAC3500C390B0 /* MenuBar.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; path = MenuBar.nib; sourceTree = "<group>"; };
- B8DCE048056DAC5000C390B0 /* script */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.script.sh; path = script; sourceTree = "<group>"; };
- B8DCE04E056DACAE00C390B0 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = "<absolute>"; };
-/* End PBXFileReference section */
-
-/* Begin PBXFrameworksBuildPhase section */
- 8D0C4E910486CD37000505A6 /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 8D0C4E920486CD37000505A6 /* Carbon.framework in Frameworks */,
- B8DCE04F056DACAE00C390B0 /* Security.framework in Frameworks */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXFrameworksBuildPhase section */
-
-/* Begin PBXGroup section */
- 195DF8CFFE9D517E11CA2CBB /* Products */ = {
- isa = PBXGroup;
- children = (
- 8D0C4E970486CD37000505A6 /* ScriptExec.app */,
- );
- name = Products;
- sourceTree = "<group>";
- };
- 20286C29FDCF999611CA2CEA /* ScriptExec */ = {
- isa = PBXGroup;
- children = (
- 20286C2AFDCF999611CA2CEA /* Sources */,
- 20286C2CFDCF999611CA2CEA /* Resources */,
- 20286C32FDCF999611CA2CEA /* External Frameworks and Libraries */,
- 195DF8CFFE9D517E11CA2CBB /* Products */,
- );
- name = ScriptExec;
- sourceTree = "<group>";
- };
- 20286C2AFDCF999611CA2CEA /* Sources */ = {
- isa = PBXGroup;
- children = (
- 32DBCF6D0370B57F00C91783 /* ScriptExec_Prefix.pch */,
- 20286C2BFDCF999611CA2CEA /* main.c */,
- );
- name = Sources;
- sourceTree = "<group>";
- };
- 20286C2CFDCF999611CA2CEA /* Resources */ = {
- isa = PBXGroup;
- children = (
- 664C29F0060ECDC4006EC560 /* openDoc */,
- B8DCE042056DAC3500C390B0 /* MenuBar.nib */,
- 8D0C4E960486CD37000505A6 /* Info.plist */,
- B8DCE048056DAC5000C390B0 /* script */,
- 0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */,
- );
- name = Resources;
- sourceTree = "<group>";
- };
- 20286C32FDCF999611CA2CEA /* External Frameworks and Libraries */ = {
- isa = PBXGroup;
- children = (
- 20286C33FDCF999611CA2CEA /* Carbon.framework */,
- 4A9504CAFFE6A41611CA0CBA /* CoreServices.framework */,
- 4A9504C8FFE6A3BC11CA0CBA /* ApplicationServices.framework */,
- B8DCE04E056DACAE00C390B0 /* Security.framework */,
- );
- name = "External Frameworks and Libraries";
- sourceTree = "<group>";
- };
-/* End PBXGroup section */
-
-/* Begin PBXHeadersBuildPhase section */
- 8D0C4E8A0486CD37000505A6 /* Headers */ = {
- isa = PBXHeadersBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 8D0C4E8B0486CD37000505A6 /* ScriptExec_Prefix.pch in Headers */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXHeadersBuildPhase section */
-
-/* Begin PBXNativeTarget section */
- 8D0C4E890486CD37000505A6 /* ScriptExec */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 78E9AE160A36A8E3000D76A8 /* Build configuration list for PBXNativeTarget "ScriptExec" */;
- buildPhases = (
- 8D0C4E8A0486CD37000505A6 /* Headers */,
- 8D0C4E8C0486CD37000505A6 /* Resources */,
- 8D0C4E8F0486CD37000505A6 /* Sources */,
- 8D0C4E910486CD37000505A6 /* Frameworks */,
- 8D0C4E940486CD37000505A6 /* Rez */,
- );
- buildRules = (
- );
- dependencies = (
- );
- name = ScriptExec;
- productInstallPath = "$(HOME)/Applications";
- productName = ScriptExec;
- productReference = 8D0C4E970486CD37000505A6 /* ScriptExec.app */;
- productType = "com.apple.product-type.application";
- };
-/* End PBXNativeTarget section */
-
-/* Begin PBXProject section */
- 20286C28FDCF999611CA2CEA /* Project object */ = {
- isa = PBXProject;
- buildConfigurationList = 78E9AE1A0A36A8E3000D76A8 /* Build configuration list for PBXProject "ScriptExec" */;
- compatibilityVersion = "Xcode 2.4";
- developmentRegion = English;
- hasScannedForEncodings = 1;
- knownRegions = (
- en,
- );
- mainGroup = 20286C29FDCF999611CA2CEA /* ScriptExec */;
- projectDirPath = "";
- projectRoot = "";
- targets = (
- 8D0C4E890486CD37000505A6 /* ScriptExec */,
- );
- };
-/* End PBXProject section */
-
-/* Begin PBXResourcesBuildPhase section */
- 8D0C4E8C0486CD37000505A6 /* Resources */ = {
- isa = PBXResourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 8D0C4E8D0486CD37000505A6 /* InfoPlist.strings in Resources */,
- B8DCE045056DAC3500C390B0 /* MenuBar.nib in Resources */,
- B8DCE049056DAC5000C390B0 /* script in Resources */,
- 664C29F1060ECDC4006EC560 /* openDoc in Resources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXResourcesBuildPhase section */
-
-/* Begin PBXRezBuildPhase section */
- 8D0C4E940486CD37000505A6 /* Rez */ = {
- isa = PBXRezBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXRezBuildPhase section */
-
-/* Begin PBXSourcesBuildPhase section */
- 8D0C4E8F0486CD37000505A6 /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 8D0C4E900486CD37000505A6 /* main.c in Sources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXSourcesBuildPhase section */
-
-/* Begin PBXVariantGroup section */
- 0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */ = {
- isa = PBXVariantGroup;
- children = (
- 0867D6ABFE840B52C02AAC07 /* English */,
- );
- name = InfoPlist.strings;
- sourceTree = "<group>";
- };
-/* End PBXVariantGroup section */
-
-/* Begin XCBuildConfiguration section */
- 78E9AE170A36A8E3000D76A8 /* Development */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)";
- ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386";
- COPY_PHASE_STRIP = NO;
- DEBUGGING_SYMBOLS = YES;
- FRAMEWORK_SEARCH_PATHS = "";
- GCC_DYNAMIC_NO_PIC = NO;
- GCC_ENABLE_FIX_AND_CONTINUE = YES;
- GCC_ENABLE_TRIGRAPHS = NO;
- GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
- GCC_OPTIMIZATION_LEVEL = 0;
- GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = ScriptExec_Prefix.pch;
- GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
- GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
- GCC_WARN_UNKNOWN_PRAGMAS = NO;
- HEADER_SEARCH_PATHS = "";
- INFOPLIST_FILE = Info.plist;
- INSTALL_PATH = "$(HOME)/Applications";
- LIBRARY_SEARCH_PATHS = "";
- LIBRARY_STYLE = Static;
- OTHER_CFLAGS = "";
- OTHER_LDFLAGS = "";
- OTHER_REZFLAGS = "";
- PRODUCT_NAME = ScriptExec;
- SECTORDER_FLAGS = "";
- WARNING_CFLAGS = (
- "-Wmost",
- "-Wno-four-char-constants",
- "-Wno-unknown-pragmas",
- );
- WRAPPER_EXTENSION = app;
- ZERO_LINK = YES;
- };
- name = Development;
- };
- 78E9AE180A36A8E3000D76A8 /* Deployment */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)";
- ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386";
- COPY_PHASE_STRIP = YES;
- FRAMEWORK_SEARCH_PATHS = "";
- GCC_ENABLE_FIX_AND_CONTINUE = NO;
- GCC_ENABLE_TRIGRAPHS = NO;
- GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
- GCC_OPTIMIZATION_LEVEL = s;
- GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = ScriptExec_Prefix.pch;
- GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
- GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
- GCC_WARN_UNKNOWN_PRAGMAS = NO;
- HEADER_SEARCH_PATHS = "";
- INFOPLIST_FILE = Info.plist;
- INSTALL_PATH = "$(HOME)/Applications";
- LIBRARY_SEARCH_PATHS = "";
- LIBRARY_STYLE = Static;
- OTHER_CFLAGS = "";
- OTHER_LDFLAGS = "";
- OTHER_REZFLAGS = "";
- PRODUCT_NAME = ScriptExec;
- SECTORDER_FLAGS = "";
- WARNING_CFLAGS = (
- "-Wmost",
- "-Wno-four-char-constants",
- "-Wno-unknown-pragmas",
- );
- WRAPPER_EXTENSION = app;
- ZERO_LINK = NO;
- };
- name = Deployment;
- };
- 78E9AE190A36A8E3000D76A8 /* Default */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)";
- ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386";
- FRAMEWORK_SEARCH_PATHS = "";
- GCC_ENABLE_TRIGRAPHS = NO;
- GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
- GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = ScriptExec_Prefix.pch;
- GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
- GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
- GCC_WARN_UNKNOWN_PRAGMAS = NO;
- HEADER_SEARCH_PATHS = "";
- INFOPLIST_FILE = Info.plist;
- INSTALL_PATH = "$(HOME)/Applications";
- LIBRARY_SEARCH_PATHS = "";
- LIBRARY_STYLE = Static;
- OTHER_CFLAGS = "";
- OTHER_LDFLAGS = "";
- OTHER_REZFLAGS = "";
- PRODUCT_NAME = ScriptExec;
- SECTORDER_FLAGS = "";
- WARNING_CFLAGS = (
- "-Wmost",
- "-Wno-four-char-constants",
- "-Wno-unknown-pragmas",
- );
- WRAPPER_EXTENSION = app;
- };
- name = Default;
- };
- 78E9AE1B0A36A8E3000D76A8 /* Development */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- };
- name = Development;
- };
- 78E9AE1C0A36A8E3000D76A8 /* Deployment */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- };
- name = Deployment;
- };
- 78E9AE1D0A36A8E3000D76A8 /* Default */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- };
- name = Default;
- };
-/* End XCBuildConfiguration section */
-
-/* Begin XCConfigurationList section */
- 78E9AE160A36A8E3000D76A8 /* Build configuration list for PBXNativeTarget "ScriptExec" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 78E9AE170A36A8E3000D76A8 /* Development */,
- 78E9AE180A36A8E3000D76A8 /* Deployment */,
- 78E9AE190A36A8E3000D76A8 /* Default */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Default;
- };
- 78E9AE1A0A36A8E3000D76A8 /* Build configuration list for PBXProject "ScriptExec" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 78E9AE1B0A36A8E3000D76A8 /* Development */,
- 78E9AE1C0A36A8E3000D76A8 /* Deployment */,
- 78E9AE1D0A36A8E3000D76A8 /* Default */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Default;
- };
-/* End XCConfigurationList section */
- };
- rootObject = 20286C28FDCF999611CA2CEA /* Project object */;
-}
diff --git a/packaging/macosx/ScriptExec/ScriptExec_Prefix.pch b/packaging/macosx/ScriptExec/ScriptExec_Prefix.pch
deleted file mode 100644
index 16d7ede3d..000000000
--- a/packaging/macosx/ScriptExec/ScriptExec_Prefix.pch
+++ /dev/null
@@ -1,5 +0,0 @@
-//
-// Prefix header for all source files of the 'ScriptExec' target in the 'ScriptExec' project.
-//
-
-#include <Carbon/Carbon.h>
diff --git a/packaging/macosx/ScriptExec/launcher-quartz-no-macintegration.sh b/packaging/macosx/ScriptExec/launcher-quartz-no-macintegration.sh
deleted file mode 100755
index 9cf08ed49..000000000
--- a/packaging/macosx/ScriptExec/launcher-quartz-no-macintegration.sh
+++ /dev/null
@@ -1,176 +0,0 @@
-#!/bin/sh
-#
-# Author: Aaron Voisine <aaron@voisine.org>
-# Inkscape Modifications:
-# Michael Wybrow <mjwybrow@users.sourceforge.net>
-# Jean-Olivier Irisson <jo.irisson@gmail.com>
-# ~suv <suv-sf@users.sourceforge.net>
-#
-
-get_env_current ()
-{
- env | awk -F= '/[a-zA-Z_][a-zA-Z_0-9]*=/ {if (!system("[ -n \"${" $1 "+y}\" ]")) print $1 }' | sort | uniq
-}
-[ -z "$_env_orig" ] && export _env_orig="$(get_env_current)"
-
-[ -n "$INK_DEBUG_LAUNCHER" ] && set -x
-
-CMD="$(readlink $0 || echo $0)"
-CWD="$(cd "$(dirname "$CMD")" && pwd -P)"
-# e.g. /Applications/Inkscape.app/Contents/MacOS
-TOP="$(dirname "$CWD")/Resources"
-# e.g. /Applications/Inkscape.app/Contents/Resources
-BASE="$(echo "$TOP" | sed -e 's/\/Contents\/Resources.*$//')"
-# e.g. /Applications/Inkscape.app
-
-source "${TOP}/xdg_setup.sh"
-source "${TOP}/alert_fccache.sh"
-
-# FIXME: Inkscape needs better relocation support for OS X (get rid of the relative
-# path hack in src/path-prefix.h for osxapp-enabled builds). Until then, below change
-# of working directory is required:
-#
-# Due to changes after 0.48, we have to change working directory in the script named 'inkscape':
-# recursive calls to inkscape from python-based extensions otherwise cause the app to hang or
-# fail (for python-based extensions, inkscape changes the working directory to the
-# script's directory, and inkscape launched by python script thus can't find resources
-# like the now essential 'units.xml' in INKSCAPE_UIDIR relative to the working directory).
-cd "$BASE" || exit 1
-
-# don't prepend to $PATH in recursive calls:
-if [ -z "$INK_PATH_ORIG" ]; then
-
- # Brutally add many things to the PATH. If the directories do not exist, they won't be used anyway.
- # the 'classic' PATH additions:
- # /usr/local/bin which, though standard, doesn't seem to be in the PATH
- # Fink
- # MacPorts (former DarwinPorts)
- # LaTeX distribution for Mac OS X
- PATH_OTHER="/usr/texbin:/opt/local/bin:/sw/bin/:/usr/local/bin"
-
- # Put /usr/bin at beginning of path so we make sure we use Apple's python
- # over one that may be installed be Macports, Fink or some other means.
- PATH_PYTHON="/usr/bin"
-
- # Put $TOP/bin at beginning of path so we make sure that recursive calls
- # to inkscape don't pull in other inkscape binaries with different setup.
- # Also allows to override system python with custom wrapper script, and
- # e.g. to support GIMP.app or gimp for external editing and GIMP XCF export.
- PATH_pkgbin="$CWD:$TOP/bin"
-
- # save orig, new PATH
- export INK_PATH_ORIG="$PATH"
- export PATH="$PATH_pkgbin:$PATH_PYTHON:$PATH_OTHER:$INK_PATH_ORIG"
-fi
-
-# Setup PYTHONPATH to use python modules shipped with Inkscape
-OSXMINORNO="$(/usr/bin/sw_vers -productVersion | cut -d. -f2)"
-build_arch=__build_arch__
-if [ $OSXMINORNO -gt "5" ]; then
- if [ $OSXMINORNO -eq "6" ]; then
- export VERSIONER_PYTHON_VERSION=2.6
- else # if [ $OSXMINORNO -ge "7" ]; then
- export VERSIONER_PYTHON_VERSION=2.7
- fi
- if [ $build_arch = "i386" ]; then
- export VERSIONER_PYTHON_PREFER_32_BIT=yes
- else # build & runtime arch x86_64
- export VERSIONER_PYTHON_PREFER_32_BIT=no
- fi
-fi
-PYTHON_VERS="$(python -V 2>&1 | cut -c 8-10)"
-export PYTHONPATH="$TOP/lib/python$PYTHON_VERS/site-packages/"
-
-export FONTCONFIG_PATH="$TOP/etc/fonts"
-export PANGO_RC_FILE="$TOP/etc/pango/pangorc"
-export PANGO_SYSCONFDIR="$TOP/etc"
-export GTK_IM_MODULE_FILE="$TOP/lib/gtk-2.0/__gtk_version__/immodules.cache"
-export GDK_PIXBUF_MODULE_FILE="$TOP/lib/gdk-pixbuf-2.0/__gtk_version__/loaders.cache"
-export GTK_DATA_PREFIX="$TOP"
-export GTK_EXE_PREFIX="$TOP"
-export GTK_PATH="$TOP"
-export GNOME_VFS_MODULE_CONFIG_PATH="$TOP/etc/gnome-vfs-2.0/modules"
-export GNOME_VFS_MODULE_PATH="$TOP/lib/gnome-vfs-2.0/modules"
-export GIO_USE_VFS="local"
-export GVFS_REMOTE_VOLUME_MONITOR_IGNORE=1
-export GVFS_DISABLE_FUSE=1
-export XDG_DATA_DIRS="$TOP/share"
-export ASPELL_CONF="prefix $TOP;"
-export POPPLER_DATADIR="$TOP/share/poppler"
-
-# no DBUS for now
-unset DBUS_LAUNCHD_SESSION_BUS_SOCKET
-unset DBUS_SESSION_BUS_ADDRESS
-
-# Note: This requires the path with the exact ImageMagic version number.
-# The actual version is inserted by the packaging script.
-export MAGICK_CONFIGURE_PATH="$TOP/lib/ImageMagick-IMAGEMAGICKVER/config:$TOP/share/ImageMagick-IMAGEMAGICKVER_MAJOR/config"
-export MAGICK_CODER_FILTER_PATH="$TOP/lib/ImageMagick-IMAGEMAGICKVER/modules-Q16/filters"
-export MAGICK_CODER_MODULE_PATH="$TOP/lib/ImageMagick-IMAGEMAGICKVER/modules-Q16/coders"
-
-export INKSCAPE_SHAREDIR="$TOP/share/inkscape"
-export INKSCAPE_PLUGINDIR="$TOP/lib/inkscape"
-export INKSCAPE_LOCALEDIR="$TOP/share/locale"
-
-# Handle the case where the directory storing Inkscape has special characters
-# ('#', '&', '|') in the name. These need to be escaped to work properly for
-# various configuration files.
-ESCAPEDTOP=`echo "$TOP" | sed 's/#/\\\\\\\\#/' | sed 's/&/\\\\\\&/g' | sed 's/|/\\\\\\|/g'`
-
-# Set GTK theme (only if there is no .gtkrc-2.0 in the user's home)
-if [[ ! -e "$HOME/.gtkrc-2.0" ]]; then
- export GTK2_RC_FILES="$ESCAPEDTOP/etc/gtk-2.0/gtkrc"
-fi
-
-# If the AppleCollationOrder preference doesn't exist, we fall back to using
-# the AppleLocale preference.
-LANGSTR=`defaults read .GlobalPreferences AppleCollationOrder 2>/dev/null`
-if [ "x$LANGSTR" == "x" -o "x$LANGSTR" == "xroot" ]
-then
- LANGSTR=`defaults read .GlobalPreferences AppleLocale 2>/dev/null | \
- sed 's/_.*//'`
- [ $_DEBUG ] && echo "Setting LANGSTR from AppleLocale: $LANGSTR" 1>&2
-else
- [ $_DEBUG ] && echo "Setting LANGSTR from AppleCollationOrder: $LANGSTR" 1>&2
-fi
-
-# NOTE: Have to add ".UTF-8" to the LANG since omitting causes Inkscape
-# to crash on startup in locale_from_utf8().
-if [ "x$LANGSTR" == "x" ]
-then
- # override broken script
- [ $_DEBUG ] && echo "Overriding empty LANGSTR" 1>&2
- export LANG="en_US.UTF-8"
-else
- tmpLANG="`grep \"\`echo $LANGSTR\`_\" /usr/share/locale/locale.alias | \
- tail -n1 | sed 's/\./ /' | awk '{print $2}'`"
- if [ "x$tmpLANG" == "x" ]
- then
- # override broken script
- [ $_DEBUG ] && echo "Overriding empty LANG from /usr/share/locale/locale.alias" 1>&2
- export LANG="en_US.UTF-8"
- else
- [ $_DEBUG ] && echo "Setting LANG from /usr/share/locale/locale.alias" 1>&2
- export LANG="$tmpLANG.UTF-8"
- fi
-fi
-[ $_DEBUG ] && echo "Setting Language: $LANG" 1>&2
-export LC_ALL="$LANG"
-
-case "$INK_DEBUG" in
- gdb)
- EXEC="gdb --args" ;;
- lldb)
- EXEC="lldb -- " ;;
- dtruss)
- EXEC="dtruss" ;;
- *)
- EXEC="exec" ;;
-esac
-unset INK_DEBUG # ignore for recursive calls
-
-if [ "x$INK_DEBUG_SHELL" != "x" ]; then
- exec bash
-else
- $EXEC "$CWD/inkscape-bin" "$@"
-fi
diff --git a/packaging/macosx/ScriptExec/main.c b/packaging/macosx/ScriptExec/main.c
deleted file mode 100644
index e3f066d70..000000000
--- a/packaging/macosx/ScriptExec/main.c
+++ /dev/null
@@ -1,593 +0,0 @@
-/*
- Platypus - create MacOS X application bundles that execute scripts
- This is the executable that goes into Platypus apps
- Copyright (C) 2003 Sveinbjorn Thordarson <sveinbt@hi.is>
-
- With modifications by Aaron Voisine for gimp.app
- With modifications by Marianne gagnon for Wilber-loves-apple
- With modifications by Michael Wybrow for Inkscape.app
- With modifications by ~suv for Inkscape.app
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- main.c - main program file
-
-*/
-
-/*
- * This app laucher basically takes care of:
- * - launching Inkscape when double-clicked
- * - bringing X11 to the top when its icon is clicked in the dock (via a small applescript)
- * - catch file dropped on icon events (and double-clicked gimp documents) and notify gimp.
- * - catch quit events performed outside gimp, e.g. on the dock icon.
- */
-
-///////////////////////////////////////
-// Includes
-///////////////////////////////////////
-#pragma mark Includes
-
-// Apple stuff
-
-// Note: including Carbon prevents building the launcher app in x86_64
-// used for StandardAlert in RequestUserAttention(),
-// RedFatalAlert()
-#include <Carbon/Carbon.h>
-
-#include <CoreFoundation/CoreFoundation.h>
-#include <Security/Authorization.h>
-#include <Security/AuthorizationTags.h>
-
-// Unix stuff
-#include <string.h>
-#include <unistd.h>
-#include <sys/wait.h>
-#include <pthread.h>
-#include <stdio.h>
-
-///////////////////////////////////////
-// Definitions
-///////////////////////////////////////
-#pragma mark Definitions
-
-// name length limits
-#define kMaxPathLength 1024
-
-// names of files bundled with app
-#define kScriptFileName "script"
-#define kOpenDocFileName "openDoc"
-
-// custom carbon event class
-#define kEventClassRedFatalAlert 911
-
-// custom carbon event types
-#define kEventKindFCCacheFailed 912
-
-//maximum arguments the script accepts
-#define kMaxArgumentsToScript 252
-
-///////////////////////////////////////
-// Prototypes
-///////////////////////////////////////
-#pragma mark Prototypes
-
-static void *Execute(void *arg);
-static void *OpenDoc(void *arg);
-static OSErr ExecuteScript(char *script, pid_t *pid);
-
-static void GetParameters(void);
-static unsigned char* GetScript(void);
-static unsigned char* GetOpenDoc(void);
-
-OSErr LoadMenuBar(char *appName);
-
-static OSStatus FSMakePath(FSRef fileRef, unsigned char *path, long maxPathSize);
-static void RedFatalAlert(Str255 errorString, Str255 expStr);
-static short DoesFileExist(unsigned char *path);
-
-static OSErr AppQuitAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon);
-static OSErr AppOpenDocAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon);
-static OSErr AppOpenAppAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon);
-static OSStatus FCCacheFailedHandler(EventHandlerCallRef theHandlerCall,
- EventRef theEvent, void *userData);
-static OSErr AppReopenAppAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon);
-
-static OSStatus CompileAppleScript(const void* text, long textLength,
- AEDesc *resultData);
-static OSStatus SimpleCompileAppleScript(const char* theScript);
-static OSErr runScript();
-
-///////////////////////////////////////
-// Globals
-///////////////////////////////////////
-#pragma mark Globals
-
-// process id of forked process
-pid_t pid = 0;
-
-// thread id of threads that start scripts
-pthread_t odtid = 0, tid = 0;
-
-// indicator of whether the script has completed executing
-short taskDone = true;
-
-// execution parameters
-char scriptPath[kMaxPathLength];
-char openDocPath[kMaxPathLength];
-
-//arguments to the script
-char *arguments[kMaxArgumentsToScript+3];
-char *fileArgs[kMaxArgumentsToScript];
-short numArgs = 0;
-
-extern char **environ;
-
-#pragma mark -
-
-///////////////////////////////////////
-// Program entrance point
-///////////////////////////////////////
-int main(int argc, char* argv[])
-{
- OSErr err = noErr;
- EventTypeSpec FCCacheEvents = { kEventClassRedFatalAlert, kEventKindFCCacheFailed };
-
- InitCursor();
-
- //install Apple Event handlers
- err += AEInstallEventHandler(kCoreEventClass, kAEQuitApplication,
- NewAEEventHandlerUPP(AppQuitAEHandler),
- 0, false);
- err += AEInstallEventHandler(kCoreEventClass, kAEOpenDocuments,
- NewAEEventHandlerUPP(AppOpenDocAEHandler),
- 0, false);
- err += AEInstallEventHandler(kCoreEventClass, kAEOpenApplication,
- NewAEEventHandlerUPP(AppOpenAppAEHandler),
- 0, false);
-
- err += AEInstallEventHandler(kCoreEventClass, kAEReopenApplication,
- NewAEEventHandlerUPP(AppReopenAppAEHandler),
- 0, false);
-
- err += InstallEventHandler(GetApplicationEventTarget(),
- NewEventHandlerUPP(FCCacheFailedHandler), 1,
- &FCCacheEvents, NULL, NULL);
-
- if (err) RedFatalAlert("\pInitialization Error",
- "\pError initing Apple Event handlers.");
-
- //create the menu bar
- if (err = LoadMenuBar(NULL)) RedFatalAlert("\pInitialization Error",
- "\pError loading MenuBar.nib.");
-
- GetParameters(); //load data from files containing exec settings
-
- // compile "icon clicked" script so it's ready to execute
- SimpleCompileAppleScript("tell application \"XQuartz\" to activate");
-
- RunApplicationEventLoop(); //Run the event loop
- return 0;
-}
-
-#pragma mark -
-
-
-static void RequestUserAttention(void)
-{
- NMRecPtr notificationRequest = (NMRecPtr) NewPtr(sizeof(NMRec));
-
- memset(notificationRequest, 0, sizeof(*notificationRequest));
- notificationRequest->qType = nmType;
- notificationRequest->nmMark = 1;
- notificationRequest->nmIcon = 0;
- notificationRequest->nmSound = 0;
- notificationRequest->nmStr = NULL;
- notificationRequest->nmResp = NULL;
-
- verify_noerr(NMInstall(notificationRequest));
-}
-
-
-static void ShowFirstStartWarningDialog(void)
-{
- SInt16 itemHit;
-
- AlertStdAlertParamRec params;
- params.movable = true;
- params.helpButton = false;
- params.filterProc = NULL;
- params.defaultText = (void *) kAlertDefaultOKText;
- params.cancelText = NULL;
- params.otherText = NULL;
- params.defaultButton = kAlertStdAlertOKButton;
- params.cancelButton = kAlertStdAlertCancelButton;
- params.position = kWindowDefaultPosition;
-
- StandardAlert(kAlertNoteAlert, "\pInkscape on Mac OS X",
- "\pWhile Inkscape is open, its windows can be displayed or hidden by displaying or hiding the X11 application.\n\nThe first time this version of Inkscape is run it may take several minutes before the main window is displayed while font caches are built.",
- &params, &itemHit);
-}
-
-
-//////////////////////////////////
-// Handler for when fontconfig caches need to be generated
-// TODO: remove (alert and touch moved to launcher script)
-//////////////////////////////////
-static OSStatus FCCacheFailedHandler(EventHandlerCallRef theHandlerCall,
- EventRef theEvent, void *userData)
-{
-
- pthread_join(tid, NULL);
- if (odtid) pthread_join(odtid, NULL);
-
- // Bounce Inkscape Dock icon
- RequestUserAttention();
- // Need to show warning to the user, then carry on.
- ShowFirstStartWarningDialog();
-
- // Note that we've seen the warning.
- system("test -d \"$HOME/.cache/inkscape\" || mkdir -p \"$HOME/.cache/inkscape\"; "
- "touch \"$HOME/.cache/inkscape/.fccache-new\"");
- // Rerun now.
- OSErr err = ExecuteScript(scriptPath, &pid);
- ExitToShell();
-
- return noErr;
-}
-
-
-///////////////////////////////////
-// Execution thread starts here
-///////////////////////////////////
-static void *Execute (void *arg)
-{
- EventRef event;
-
- taskDone = false;
-
- OSErr err = ExecuteScript(scriptPath, &pid);
- if (err == (OSErr)12) {
- CreateEvent(NULL, kEventClassRedFatalAlert, kEventKindFCCacheFailed, 0,
- kEventAttributeNone, &event);
- PostEventToQueue(GetMainEventQueue(), event, kEventPriorityHigh);
- }
- else ExitToShell();
- return 0;
-}
-
-///////////////////////////////////
-// Open additional documents thread starts here
-///////////////////////////////////
-static void *OpenDoc (void *arg)
-{
- ExecuteScript(openDocPath, NULL);
- return 0;
-}
-
-///////////////////////////////////////
-// Run a script via the system command
-///////////////////////////////////////
-static OSErr ExecuteScript (char *script, pid_t *pid)
-{
- pid_t wpid = 0, p = 0;
- int status, i;
-
- if (! pid) pid = &p;
-
- // Generate the array of argument strings before we do any executing
- arguments[0] = script;
- for (i = 0; i < numArgs; i++) arguments[i + 1] = fileArgs[i];
- arguments[i + 1] = NULL;
-
- *pid = fork(); //open fork
-
- if (*pid == (pid_t)-1) exit(13); //error
- else if (*pid == 0) { //child process started
- execve(arguments[0], arguments, environ);
- exit(13); //if we reach this point, there's an error
- }
-
- wpid = waitpid(*pid, &status, 0); //wait while child process finishes
-
- if (wpid == (pid_t)-1) return wpid;
- return (OSErr)WEXITSTATUS(status);
-}
-
-#pragma mark -
-
-///////////////////////////////////////
-// This function loads all the neccesary settings
-// from config files in the Resources folder
-///////////////////////////////////////
-static void GetParameters (void)
-{
- char *str;
- if (! (str = (char *)GetScript())) //get path to script to be executed
- RedFatalAlert("\pInitialization Error",
- "\pError getting script from application bundle.");
- strcpy((char *)&scriptPath, str);
-
- if (! (str = (char *)GetOpenDoc())) //get path to openDoc
- RedFatalAlert("\pInitialization Error",
- "\pError getting openDoc from application bundle.");
- strcpy((char *)&openDocPath, str);
-}
-
-///////////////////////////////////////
-// Get path to the script in Resources folder
-///////////////////////////////////////
-static unsigned char* GetScript (void)
-{
- CFStringRef fileName;
- CFBundleRef appBundle;
- CFURLRef scriptFileURL;
- FSRef fileRef;
- unsigned char *path;
-
- //get CF URL for script
- if (! (appBundle = CFBundleGetMainBundle())) return NULL;
- if (! (fileName = CFStringCreateWithCString(NULL, kScriptFileName,
- kCFStringEncodingASCII)))
- return NULL;
- if (! (scriptFileURL = CFBundleCopyResourceURL(appBundle, fileName, NULL,
- NULL))) return NULL;
-
- //Get file reference from Core Foundation URL
- if (! CFURLGetFSRef(scriptFileURL, &fileRef)) return NULL;
-
- //dispose of the CF variables
- CFRelease(scriptFileURL);
- CFRelease(fileName);
-
- //create path string
- if (! (path = malloc(kMaxPathLength))) return NULL;
- if (FSMakePath(fileRef, path, kMaxPathLength)) return NULL;
- if (! DoesFileExist(path)) return NULL;
-
- return path;
-}
-
-///////////////////////////////////////
-// Gets the path to openDoc in Resources folder
-///////////////////////////////////////
-static unsigned char* GetOpenDoc (void)
-{
- CFStringRef fileName;
- CFBundleRef appBundle;
- CFURLRef openDocFileURL;
- FSRef fileRef;
- unsigned char *path;
-
- //get CF URL for openDoc
- if (! (appBundle = CFBundleGetMainBundle())) return NULL;
- if (! (fileName = CFStringCreateWithCString(NULL, kOpenDocFileName,
- kCFStringEncodingASCII)))
- return NULL;
- if (! (openDocFileURL = CFBundleCopyResourceURL(appBundle, fileName, NULL,
- NULL))) return NULL;
-
- //Get file reference from Core Foundation URL
- if (! CFURLGetFSRef( openDocFileURL, &fileRef )) return NULL;
-
- //dispose of the CF variables
- CFRelease(openDocFileURL);
- CFRelease(fileName);
-
- //create path string
- if (! (path = malloc(kMaxPathLength))) return NULL;
- if (FSMakePath(fileRef, path, kMaxPathLength)) return NULL;
- if (! DoesFileExist(path)) return NULL;
-
- return path;
-}
-
-#pragma mark -
-
-/////////////////////////////////////
-// Load menu bar from nib
-/////////////////////////////////////
-OSErr LoadMenuBar (char *appName)
-{
- OSErr err;
- IBNibRef nibRef;
-
- if (err = CreateNibReference(CFSTR("MenuBar"), &nibRef)) return err;
- if (err = SetMenuBarFromNib(nibRef, CFSTR("MenuBar"))) return err;
- DisposeNibReference(nibRef);
-
- return noErr;
-}
-
-#pragma mark -
-
-///////////////////////////////////////
-// Generate path string from FSSpec record
-///////////////////////////////////////
-static OSStatus FSMakePath(FSRef fileRef, unsigned char *path, long maxPathSize)
-{
- // and then convert the FSRef to a path
- return FSRefMakePath(&fileRef, path, maxPathSize);
-}
-
-////////////////////////////////////////
-// Standard red error alert, then exit application
-////////////////////////////////////////
-static void RedFatalAlert (Str255 errorString, Str255 expStr)
-{
- StandardAlert(kAlertStopAlert, errorString, expStr, NULL, NULL);
- ExitToShell();
-}
-
-///////////////////////////////////////
-// Determines whether file exists at path or not
-///////////////////////////////////////
-static short DoesFileExist (unsigned char *path)
-{
- if (access((char *)path, F_OK) == -1) return false;
- return true;
-}
-
-#pragma mark -
-
-///////////////////////////////////////
-// Apple Event handler for Quit i.e. from
-// the dock or Application menu item
-///////////////////////////////////////
-static OSErr AppQuitAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon)
-{
- #pragma unused (reply, refCon, theAppleEvent)
-
- while (numArgs > 0) free(fileArgs[numArgs--]);
-
- if (! taskDone && pid) { //kill the script process brutally
- kill(pid, 9);
- printf("Inkscape.app: PID %d killed brutally\n", pid);
- }
-
- pthread_cancel(tid);
- if (odtid) pthread_cancel(odtid);
-
- ExitToShell();
-
- return noErr;
-}
-
-/////////////////////////////////////
-// Handler for docs dragged on app icon
-/////////////////////////////////////
-static OSErr AppOpenDocAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon)
-{
- #pragma unused (reply, refCon)
-
- OSErr err = noErr;
- AEDescList fileRefList;
- AEKeyword keyword;
- DescType type;
-
- short i;
- long count, actualSize;
-
- FSRef fileRef;
- unsigned char path[kMaxPathLength];
-
- while (numArgs > 0) free(fileArgs[numArgs--]);
-
- //Read the AppleEvent
- err = AEGetParamDesc(theAppleEvent, keyDirectObject, typeAEList,
- &fileRefList);
-
- err = AECountItems(&fileRefList, &count); //Count number of files
-
- for (i = 1; i <= count; i++) { //iteratively process each file
- //get fsref from apple event
- if (! (err = AEGetNthPtr(&fileRefList, i, typeFSRef, &keyword, &type,
- (Ptr)&fileRef, sizeof(FSRef), &actualSize)))
- {
- //get path from file ref
- if ((err = FSMakePath(fileRef, (unsigned char *)&path,
- kMaxPathLength))) return err;
-
- if (numArgs == kMaxArgumentsToScript) break;
-
- if (! (fileArgs[numArgs] = malloc(kMaxPathLength))) return true;
-
- strcpy(fileArgs[numArgs++], (char *)&path);
- }
- else return err;
- }
-
- if (! taskDone) pthread_create(&odtid, NULL, OpenDoc, NULL);
- else pthread_create(&tid, NULL, Execute, NULL);
-
- return err;
-}
-
-///////////////////////////////
-// Handler for clicking on app icon
-///////////////////////////////
-// if app is already open
-static OSErr AppReopenAppAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon)
-{
- return runScript();
-}
-
-// if app is being opened
-static OSErr AppOpenAppAEHandler(const AppleEvent *theAppleEvent,
- AppleEvent *reply, long refCon)
-{
- #pragma unused (reply, refCon, theAppleEvent)
-
- // the app has been opened without any items dragged on to it
- pthread_create(&tid, NULL, Execute, NULL);
-
- return noErr;
-}
-
-
-// Compile and run a small AppleScript. The code below does no cleanup and no proper error checks
-// but since it's there until the app is shut down, and since we know the script is okay,
-// there should not be any problems.
-ComponentInstance theComponent;
-AEDesc scriptTextDesc;
-OSStatus err;
-OSAID scriptID, resultID;
-
-static OSStatus CompileAppleScript(const void* text, long textLength,
- AEDesc *resultData) {
-
- resultData = NULL;
- /* set up locals to a known state */
- theComponent = NULL;
- AECreateDesc(typeNull, NULL, 0, &scriptTextDesc);
- scriptID = kOSANullScript;
- resultID = kOSANullScript;
-
- /* open the scripting component */
- theComponent = OpenDefaultComponent(kOSAComponentType,
- typeAppleScript);
- if (theComponent == NULL) { err = paramErr; return err; }
-
- /* put the script text into an aedesc */
- err = AECreateDesc(typeChar, text, textLength, &scriptTextDesc);
- if (err != noErr) return err;
-
- /* compile the script */
- err = OSACompile(theComponent, &scriptTextDesc,
- kOSAModeNull, &scriptID);
-
- return err;
-}
-
-/* runs the compiled applescript */
-static OSErr runScript()
-{
- /* run the script */
- err = OSAExecute(theComponent, scriptID, kOSANullScript,
- kOSAModeNull, &resultID);
- return err;
-}
-
-
-/* Simple shortcut to the function that actually compiles the applescript. */
-static OSStatus SimpleCompileAppleScript(const char* theScript) {
- return CompileAppleScript(theScript, strlen(theScript), NULL);
-}
diff --git a/packaging/macosx/ScriptExec/openDoc b/packaging/macosx/ScriptExec/openDoc
deleted file mode 100755
index 2242173e7..000000000
--- a/packaging/macosx/ScriptExec/openDoc
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-
-echo $1; \ No newline at end of file
diff --git a/packaging/macosx/ScriptExec/script b/packaging/macosx/ScriptExec/script
deleted file mode 100755
index 2242173e7..000000000
--- a/packaging/macosx/ScriptExec/script
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-
-echo $1; \ No newline at end of file
diff --git a/packaging/macosx/ScriptExec/version.plist b/packaging/macosx/ScriptExec/version.plist
deleted file mode 100644
index a29320186..000000000
--- a/packaging/macosx/ScriptExec/version.plist
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>BuildVersion</key>
- <string>17</string>
- <key>CFBundleShortVersionString</key>
- <string>0.1</string>
- <key>CFBundleVersion</key>
- <string>0.1</string>
- <key>ProjectName</key>
- <string>NibPBTemplates</string>
- <key>SourceVersion</key>
- <string>1150000</string>
-</dict>
-</plist>
diff --git a/packaging/macosx/create-stock-icon-theme.sh b/packaging/macosx/create-stock-icon-theme.sh
deleted file mode 100755
index 4e47f270f..000000000
--- a/packaging/macosx/create-stock-icon-theme.sh
+++ /dev/null
@@ -1,191 +0,0 @@
-#!/usr/bin/env bash
-#
-#
-# Create new icon theme based on GTK+ stock icons
-#
-# Copyright (C) 2014 ~suv
-#
-
-
-# config
-#---------------------------------------------------------
-
-if [ -z $LIBPREFIX ]; then
- LIBPREFIX="/opt/local-x11"
-fi
-if [ -z $stock_src ]; then
- stock_src="$(pwd)/stock-icons"
-fi
-
-
-# setup
-#---------------------------------------------------------
-
-map_legacy_icons="$LIBPREFIX/libexec/icon-name-mapping"
-if [ ! -x "$map_legacy_icons" ]; then
- echo "Install icon-naming-utils"
- exit 1
-fi
-
-if [ ! -d "$stock_src" ]; then
- echo "extra icons not found."
- exit 1
-fi
-
-ICONDIR="$1"
-icon_theme_dir="$(dirname "$ICONDIR")"
-if [ ! -d "$icon_theme_dir" ] ; then
- mkdir -p "$icon_theme_dir"
-fi
-icon_theme_name="$(basename "$ICONDIR")"
-if [ -z "$icon_theme_name" ]; then
- echo "Not a valid icon theme name."
- exit 1
-fi
-theme_color="$2"
-
-contexts="actions animations apps categories devices emblems emotes mimetypes places status"
-gtk_stock_sizes="16 20 24 32 48"
-
-orig_dir="$(pwd)"
-cd "$icon_theme_dir"
-current_dir="$(pwd)"
-
-index_file="${icon_theme_name}/index.theme"
-
-
-# Remove a previously existing icon theme if necessary
-#---------------------------------------------------------
-
-if [ -d "$icon_theme_name" ]; then
- echo "Removing previous $icon_theme_name"
- rm -R "$icon_theme_name"
-fi
-
-
-# create new icon theme structure
-#---------------------------------------------------------
-
-mkdir -p "$icon_theme_name"
-for size in $gtk_stock_sizes; do
- mkdir "${icon_theme_name}/${size}x${size}"
-done
-
-
-# copy stock icons
-#---------------------------------------------------------
-
-for size in $gtk_stock_sizes; do
- cp -RP "${stock_src}/$size" "${icon_theme_name}/${size}x${size}/stock"
-done
-
-
-# workarounds for broken icons (bug #1269698)
-#---------------------------------------------------------
-
-for size in $gtk_stock_sizes; do
- cd "${icon_theme_name}/${size}x${size}/stock"
- # directional icons
- di_stock="edit-undo edit-redo document-revert gtk-undelete
- format-indent-less format-indent-more
- go-first go-jump go-last go-next go-previous
- media-playback-start media-seek-backward media-seek-forward media-skip-backward media-skip-forward"
- for di in $di_stock; do
- if [ -f "${di}-ltr.png" ]; then
- if [ ! -e "${di}.png" ]; then
- ln -s "${di}-ltr.png" "${di}.png"
- fi
- fi
- done
- # misc failed lookups
- for i in "preferences"; do
- if [ -f "gtk-${i}.png" ]; then
- if [ ! -e "${i}-system.png" ]; then
- ln -s "gtk-${i}.png" "${i}-system.png"
- fi
- fi
- done
- cd "$current_dir"
-done
-
-
-# create links (round 1): legacy mapping
-#---------------------------------------------------------
-
-for size in $gtk_stock_sizes; do
- cd "${icon_theme_name}/${size}x${size}"
- for ct in $contexts; do
- echo "size: $size context: $ct"
- mv "stock" "$ct"
- $map_legacy_icons -c "$ct"
- mv $ct "stock"
- done
- cd "$current_dir"
-done
-
-
-# create links (round 2): directional icons (bug #1269698)
-#---------------------------------------------------------
-
-for size in $gtk_stock_sizes; do
- cd "${icon_theme_name}/${size}x${size}/stock"
- # legacy directional icons
- di_stock="gtk-undo gtk-redo gtk-revert-to-saved
- gtk-unindent gtk-indent
- gtk-goto-first gtk-jump-to gtk-goto-last gtk-go-forward gtk-go-back"
- for di in $di_stock; do
- if [ -f "${di}-ltr.png" ]; then
- if [ ! -e "${di}.png" ]; then
- ln -s "${di}-ltr.png" "${di}.png"
- fi
- fi
- done
- cd "$current_dir"
-done
-
-
-# create links (round 3): fallbacks for symbolic icon lookup
-#---------------------------------------------------------
-
-# for size in $gtk_stock_sizes; do
-# cd "${icon_theme_name}/${size}x${size}/stock"
-# for icon_file in *.png; do
-# [ -s $icon_file ] && ln -s "$icon_file" "$(basename $icon_file .png)"-symbolic.png
-# done
-# cd "$current_dir"
-# done
-
-
-# create new index.theme
-#---------------------------------------------------------
-
-dir_list=
-for size in $gtk_stock_sizes; do
- dir_list="${dir_list}${size}x${size}/stock,"
-done
-
-cat > "$index_file" <<End-of-message
-[Icon Theme]
-Name=$icon_theme_name
-Inherits=hicolor
-Comment=Gtk Stock Icons for Inkscape.app
-Example=folder
-
-# Directory list
-Directories=$dir_list
-
-End-of-message
-
-for size in $gtk_stock_sizes; do
- cat >> "$index_file" << End-of-message
-[${size}x${size}/stock]
-Size=${size}
-Context=Stock
-Type=fixed
-
-End-of-message
-done
-
-
-#---------------------------------------------------------
-# vim: expandtab shiftwidth=4 tabstop=8 softtabstop=4 fileencoding=utf-8 textwidth=99
diff --git a/packaging/macosx/dmg_background.png b/packaging/macosx/dmg_background.png
deleted file mode 100644
index cbb27c341..000000000
--- a/packaging/macosx/dmg_background.png
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/dmg_background.svg b/packaging/macosx/dmg_background.svg
deleted file mode 100644
index 650069fbd..000000000
--- a/packaging/macosx/dmg_background.svg
+++ /dev/null
@@ -1,1345 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="1280"
- height="800"
- id="svg13532"
- version="1.1"
- inkscape:version="0.91+devel r13674"
- viewBox="0 0 1280 800"
- sodipodi:docname="dmg_background.svg">
- <defs
- id="defs13534">
- <linearGradient
- inkscape:collect="always"
- id="content_bg">
- <stop
- style="stop-color:#eeeeee;stop-opacity:1"
- offset="0"
- id="stop4699" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4701" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="header_bg">
- <stop
- style="stop-color:#e6e6e6;stop-opacity:1"
- offset="0"
- id="stop4685" />
- <stop
- id="stop4687"
- offset="0.13333334"
- style="stop-color:#e6e6e6;stop-opacity:1" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4689" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="nav_foot">
- <stop
- style="stop-color:#4d4d4d;stop-opacity:1"
- offset="0"
- id="stop4635" />
- <stop
- style="stop-color:#333333;stop-opacity:1"
- offset="1"
- id="stop4637" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="nav_top">
- <stop
- style="stop-color:#4d4d4d;stop-opacity:1"
- offset="0"
- id="stop4469" />
- <stop
- style="stop-color:#1a1a1a;stop-opacity:1"
- offset="1"
- id="stop4471" />
- </linearGradient>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="linearGradient5785-8-9">
- <stop
- offset="0"
- style="stop-color:#c0cdf9;stop-opacity:1"
- id="stop5787-7-9" />
- <stop
- offset="1"
- style="stop-color:#07092d;stop-opacity:0.28804347"
- id="stop5789-3-7" />
- </linearGradient>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="WhiteTransparent-3-90">
- <stop
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1"
- id="stop7606-1-2" />
- <stop
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0"
- id="stop7608-8-0" />
- </linearGradient>
- <linearGradient
- id="linearGradient5793-9-3">
- <stop
- offset="0"
- style="stop-color:#eeeeec;stop-opacity:1"
- id="stop5795-5-7" />
- <stop
- offset="1"
- style="stop-color:#eeeeec;stop-opacity:0"
- id="stop5797-4-8" />
- </linearGradient>
- <linearGradient
- id="linearGradient10981-3-9-0">
- <stop
- offset="0"
- style="stop-color:#729fcf;stop-opacity:1"
- id="stop10983-2-0-9" />
- <stop
- offset="1"
- style="stop-color:#729fcf;stop-opacity:0"
- id="stop10985-3-7-7" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5781">
- <stop
- style="stop-color:#555753;stop-opacity:1"
- offset="0"
- id="stop5783" />
- <stop
- style="stop-color:#d3d7cf;stop-opacity:1"
- offset="1"
- id="stop5785" />
- </linearGradient>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#linearGradient5785-8-9"
- id="linearGradient9175"
- y2="40"
- x2="60"
- y1="20"
- x1="82.118591" />
- <clipPath
- id="clipoutline1-8">
- <path
- id="outline1-2"
- d="M 54.1,12.5 12.9,54.7 C -2.7,70.3 23,69 32.3,74.9 36.6,77.7 18.5,81.3 22.2,85 c 3.6,3.7 21.7,7.1 25.3,10.7 3.6,3.7 -7.3,7.6 -3.7,11.3 3.5,3.7 11.9,0.2 13.4,8.6 1.1,6.2 15.4,3.1 21.8,-2.2 4,-3.4 -6.9,-3.4 -3.3,-7.1 9,-9.1 17,-4.1 20.3,-12.5 1.8,-4.5 -13.6,-7.7 -9.5,-10.6 9.8,-6.9 45.8,-10.4 29.2,-27 L 73,12.5 c -5.3,-5 -14,-5 -18.9,0 z m -9.9,64.7 c 0.9,0 30.8,4 19.3,7.1 -4.4,1.2 -24.6,-7.1 -19.3,-7.1 z m 57.2,16.6 c 0,2.1 16.3,3.3 15.4,-0.5 -1.3,-6.4 -13.6,-5.9 -15.4,0.5 z m -69.5,11.1 c 3.7,3.2 9.3,-0.7 11.1,-5.2 -3.6,-4.7 -16.9,0.3 -11.1,5.2 z m 67.5,-6.7 c -4.6,4.2 0.8,8.6 5.3,5.7 1.2,-0.8 -0.1,-4.7 -5.3,-5.7 z" />
- </clipPath>
- <filter
- color-interpolation-filters="sRGB"
- id="filter6017-3-7">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.80546496"
- id="feGaussianBlur6019-9-28" />
- </filter>
- <filter
- color-interpolation-filters="sRGB"
- id="filter6031-0-56">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="3.4903482"
- id="feGaussianBlur6033-8-49" />
- </filter>
- <clipPath
- id="clipPath9086-1-5">
- <use
- xlink:href="#outline1-2"
- height="300"
- width="400"
- y="0"
- x="0"
- style="opacity:0.25;fill:#ffffff;fill-opacity:1"
- id="use9088-0-9"
- transform="translate(1.0095461e-6,0)" />
- </clipPath>
- <filter
- color-interpolation-filters="sRGB"
- id="filter8490-0-0">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="2.4163949"
- id="feGaussianBlur8492-5-0" />
- </filter>
- <linearGradient
- gradientTransform="matrix(1.009184,0,0,1.009184,-0.3890738,-0.3831933)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="shinySpecular-0-4"
- y2="60"
- x2="58"
- y1="35"
- x1="33" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="IcecapTip-0-3"
- y2="50"
- x2="90"
- y1="20"
- x1="60" />
- <radialGradient
- gradientTransform="matrix(1.5700516,0,0,1.0509301,-75.500107,-22.095908)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient9177-1-7"
- fy="250.89737"
- fx="116.31038"
- r="30.599579"
- cy="250.89737"
- cx="116.31038" />
- <radialGradient
- gradientTransform="matrix(2.0032532,0,0,1.340898,-132.8752,-95.166065)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient8574-0-1"
- fy="251.99396"
- fx="132.44434"
- r="30.599579"
- cy="251.99396"
- cx="132.44434" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter8732-3-8"
- x="-0.078079157"
- width="1.1561583"
- y="-0.11422065"
- height="1.2284414">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="1.9579068"
- id="feGaussianBlur8734-5-0" />
- </filter>
- <radialGradient
- gradientTransform="matrix(1,0,0,0.4233577,0,97.164234)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient8744-9-7"
- fy="168.5"
- fx="210.25"
- r="34.25"
- cy="168.5"
- cx="210.25" />
- <radialGradient
- gradientTransform="matrix(1,0,0,0.4233577,0,97.164234)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient8768-6-2"
- fy="182.08189"
- fx="217.5"
- r="34.25"
- cy="182.08189"
- cx="217.5" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter8764-9-3"
- x="-0.074262142"
- width="1.1485243"
- y="-0.1754123"
- height="1.3508246">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="2.1195652"
- id="feGaussianBlur8766-2-4" />
- </filter>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient8912-9-9"
- y2="201.5"
- x2="231.75"
- y1="195.1875"
- x1="231.625" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient8910-3-8"
- y2="200.07138"
- x2="231.37646"
- y1="195.62132"
- x1="231.37646" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter8906-3-4"
- x="-0.085441329"
- width="1.1708827"
- y="-0.27823201"
- height="1.556464">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.56515877"
- id="feGaussianBlur8908-7-88" />
- </filter>
- <radialGradient
- gradientTransform="matrix(1,0,0,0.1477455,0,174.56924)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient8922-9-3"
- fy="204.83229"
- fx="228.21875"
- r="14.09375"
- cy="204.83229"
- cx="228.21875" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter8980-1-63"
- x="-0.069862768"
- width="1.1397254"
- y="-0.47285891"
- height="1.9457178">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.82052366"
- id="feGaussianBlur8982-9-6" />
- </filter>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient8990-4-8"
- y2="201.5"
- x2="231.75"
- y1="195.1875"
- x1="231.625" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient8992-2-5"
- y2="200.07138"
- x2="231.37646"
- y1="195.62132"
- x1="231.37646" />
- <radialGradient
- gradientTransform="matrix(1,0,0,0.1477455,0,174.56924)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient8994-0-8"
- fy="204.83229"
- fx="228.21875"
- r="14.09375"
- cy="204.83229"
- cx="228.21875" />
- <radialGradient
- gradientTransform="matrix(1,0,0,0.4070844,0,115.76014)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient9004-6-0"
- fy="187.86935"
- fx="89.875"
- r="22.75"
- cy="187.86935"
- cx="89.875" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient9023-6-6"
- y2="201.5"
- x2="231.75"
- y1="195.1875"
- x1="231.625" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient9025-1-9"
- y2="200.07138"
- x2="231.37646"
- y1="195.62132"
- x1="231.37646" />
- <radialGradient
- gradientTransform="matrix(1.1850746,-0.3283582,0.1228557,0.4433973,-45.068314,152.92161)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient9046-1-8"
- fy="230.83626"
- fx="90.28125"
- r="10.46875"
- cy="230.83626"
- cx="90.28125" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter9068-2-2"
- x="-0.076179281"
- width="1.1523587"
- y="-0.1655701"
- height="1.3311402">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.66458488"
- id="feGaussianBlur9070-7-2" />
- </filter>
- <radialGradient
- gradientTransform="matrix(1.7221535,0,0,1.6949765,-49.39526,-14.078057)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient11553-3-1"
- fy="21.225746"
- fx="68.39994"
- r="54.783398"
- cy="21.225746"
- cx="68.39994" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter9298-4-5">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.32610678"
- id="feGaussianBlur9300-4-6" />
- </filter>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient5905-4-7"
- y2="223.5"
- x2="153.5"
- y1="208.16444"
- x1="95.5" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter5983-8-5"
- x="-0.082508981"
- width="1.165018"
- y="-0.12233575"
- height="1.2446715">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="3.6868363"
- id="feGaussianBlur5985-3-7" />
- </filter>
- <linearGradient
- gradientTransform="matrix(0.8852575,0,0,0.8852575,5.1772151,9.2293372)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#linearGradient5793-9-3"
- id="linearGradient5801-2-8"
- y2="84.480316"
- x2="53.63158"
- y1="76.246338"
- x1="57.225197" />
- <radialGradient
- gradientTransform="matrix(1.3515234,0,0,1.7175707,-63.705646,-153.95568)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="radialGradient5811-3-0"
- fy="214.55121"
- fx="181.22731"
- r="22.466398"
- cy="214.55121"
- cx="181.22731" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter5845-5-1">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="1.2409356"
- id="feGaussianBlur5847-5-4" />
- </filter>
- <linearGradient
- gradientTransform="matrix(0.4927913,0,0,0.4927913,-6.0003885,-9.7225182)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#WhiteTransparent-3-90"
- id="linearGradient5822-7-1"
- y2="187.65974"
- x2="82.754066"
- y1="180.47572"
- x1="73.712105" />
- <filter
- color-interpolation-filters="sRGB"
- id="filter10997-7-2-1">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="2.7696726"
- id="feGaussianBlur10999-0-7-6" />
- </filter>
- <linearGradient
- gradientTransform="translate(-130.16572,-83.352786)"
- gradientUnits="userSpaceOnUse"
- xlink:href="#linearGradient10981-3-9-0"
- id="linearGradient1539-7"
- y2="144.5"
- x2="153.70045"
- y1="217.5"
- x1="180.81293" />
- <clipPath
- id="clipPath17127"
- clipPathUnits="userSpaceOnUse">
- <rect
- y="0"
- x="0"
- height="128"
- width="128"
- id="rect17129"
- style="opacity:0.25;fill:#0000ff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- </clipPath>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#nav_top"
- id="linearGradient4475"
- x1="60"
- y1="110"
- x2="60"
- y2="162"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#nav_top"
- id="linearGradient4483"
- x1="70"
- y1="110"
- x2="70"
- y2="162"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#nav_foot"
- id="radialGradient4639"
- cx="512"
- cy="767"
- fx="512"
- fy="767"
- r="480"
- gradientTransform="matrix(0.625,0,0,0.625,192,287.625)"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#header_bg"
- id="linearGradient4681"
- x1="532"
- y1="0"
- x2="532"
- y2="75"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-20,0)" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#content_bg"
- id="linearGradient4703"
- x1="512"
- y1="163"
- x2="512"
- y2="263"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5781"
- id="linearGradient3762"
- gradientUnits="userSpaceOnUse"
- x1="220"
- y1="233.5"
- x2="379"
- y2="233.5" />
- <mask
- maskUnits="userSpaceOnUse"
- id="mask3799">
- <rect
- style="display:inline;opacity:1;fill:#808080;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- id="rect3801"
- width="600"
- height="400"
- x="0"
- y="0" />
- </mask>
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#6666af"
- borderopacity="1"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="0.70710678"
- inkscape:cx="1680"
- inkscape:cy="533.33334"
- inkscape:document-units="px"
- inkscape:current-layer="layer5"
- showgrid="false"
- inkscape:object-nodes="true"
- inkscape:snap-page="true"
- inkscape:showpageshadow="false"
- borderlayer="true"
- inkscape:window-width="1163"
- inkscape:window-height="742"
- inkscape:window-x="53"
- inkscape:window-y="22"
- inkscape:window-maximized="0"
- inkscape:snap-bbox="true"
- inkscape:bbox-nodes="true"
- showguides="false"
- inkscape:guide-bbox="true"
- inkscape:snap-text-baseline="true"
- inkscape:snap-center="true"
- inkscape:snap-nodes="true"
- inkscape:snap-others="true"
- inkscape:snap-midpoints="true">
- <inkscape:grid
- type="xygrid"
- id="grid14925" />
- <sodipodi:guide
- orientation="0,1"
- position="113.27875,743.405"
- id="guide4435" />
- <sodipodi:guide
- orientation="1,0"
- position="113.27875,743.405"
- id="guide4441" />
- <sodipodi:guide
- orientation="0,1"
- position="137.888,658.21001"
- id="guide4500" />
- <sodipodi:guide
- orientation="1,0"
- position="115,743"
- id="guide4575" />
- <sodipodi:guide
- orientation="1,0"
- position="146,715"
- id="guide4577" />
- <sodipodi:guide
- orientation="1,0"
- position="512,33"
- id="guide4641" />
- <sodipodi:guide
- orientation="0,1"
- position="141,566.5"
- id="guide4834" />
- <sodipodi:guide
- orientation="1,0"
- position="459,566.5"
- id="guide4836" />
- </sodipodi:namedview>
- <metadata
- id="metadata13537">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- inkscape:groupmode="layer"
- id="layer3"
- inkscape:label="website vector"
- style="display:none">
- <use
- x="0"
- y="0"
- xlink:href="#rect4669"
- id="use4724"
- width="100%"
- height="100%" />
- <use
- x="0"
- y="0"
- xlink:href="#g17092"
- id="use17385"
- width="100%"
- height="100%"
- transform="matrix(0.5,0,0,0.5,32,92)" />
- <use
- x="0"
- y="0"
- xlink:href="#text4431"
- id="use4447"
- width="100%"
- height="100%" />
- <use
- x="0"
- y="0"
- xlink:href="#text4443"
- id="use4449"
- width="100%"
- height="100%" />
- <use
- x="0"
- y="0"
- xlink:href="#rect4693"
- id="use4728"
- width="100%"
- height="100%" />
- <use
- x="0"
- y="0"
- xlink:href="#g4485"
- id="use4587"
- width="100%"
- height="100%" />
- <g
- id="g4597">
- <text
- transform="translate(-4.8828124e-7,-3.2861328e-6)"
- sodipodi:linespacing="125%"
- id="text4490"
- y="141.78999"
- x="137.888"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- xml:space="preserve"><tspan
- y="141.78999"
- x="137.888"
- id="tspan4492"
- sodipodi:role="line">ABOUT</tspan></text>
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- x="232.79601"
- y="141.78999"
- id="text4496"
- sodipodi:linespacing="125%"><tspan
- sodipodi:role="line"
- id="tspan4498"
- x="232.79601"
- y="141.78999">DOWNLOAD</tspan></text>
- <text
- sodipodi:linespacing="125%"
- id="text4506"
- y="141.78999"
- x="361.29599"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- xml:space="preserve"><tspan
- y="141.78999"
- x="361.29599"
- id="tspan4508"
- sodipodi:role="line">NEWS</tspan></text>
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- x="448.18799"
- y="141.78999"
- id="text4510"
- sodipodi:linespacing="125%"><tspan
- sodipodi:role="line"
- id="tspan4512"
- x="448.18799"
- y="141.78999">COMMUNITY</tspan></text>
- <text
- sodipodi:linespacing="125%"
- id="text4514"
- y="141.78999"
- x="580.04602"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- xml:space="preserve"><tspan
- y="141.78999"
- x="580.04602"
- id="tspan4516"
- sodipodi:role="line">LEARN</tspan></text>
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- x="671.68799"
- y="141.78999"
- id="text4518"
- sodipodi:linespacing="125%"><tspan
- sodipodi:role="line"
- id="tspan4520"
- x="671.68799"
- y="141.78999">CONTRIBUTE</tspan></text>
- <text
- sodipodi:linespacing="125%"
- id="text4522"
- y="141.78999"
- x="804.29602"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- xml:space="preserve"><tspan
- y="141.78999"
- x="804.29602"
- id="tspan4524"
- sodipodi:role="line">DEVELOP</tspan></text>
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#ff732c;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- x="913.59601"
- y="141.78999"
- id="text4526"
- sodipodi:linespacing="125%"><tspan
- sodipodi:role="line"
- id="tspan4528"
- x="913.59601"
- y="141.78999">DONATE</tspan></text>
- </g>
- <g
- id="g4615">
- <use
- height="100%"
- width="100%"
- id="use4550"
- xlink:href="#g4543"
- y="0"
- x="0"
- style="display:inline" />
- <use
- height="100%"
- width="100%"
- transform="translate(95,0)"
- x="0"
- y="0"
- xlink:href="#g4543"
- id="use4553"
- style="display:inline" />
- <use
- id="use4555"
- xlink:href="#g4543"
- y="0"
- x="0"
- transform="translate(223,0)"
- width="100%"
- height="100%"
- style="display:inline" />
- <use
- height="100%"
- width="100%"
- transform="translate(310,0)"
- x="0"
- y="0"
- xlink:href="#g4543"
- id="use4557"
- style="display:inline" />
- <use
- id="use4559"
- xlink:href="#g4543"
- y="0"
- x="0"
- transform="translate(442,0)"
- width="100%"
- height="100%"
- style="display:inline" />
- <use
- height="100%"
- width="100%"
- transform="translate(534,0)"
- x="0"
- y="0"
- xlink:href="#g4543"
- id="use4561"
- style="display:inline" />
- <use
- id="use4563"
- xlink:href="#g4543"
- y="0"
- x="0"
- transform="translate(666,0)"
- width="100%"
- height="100%"
- style="display:inline" />
- <use
- height="100%"
- width="100%"
- transform="translate(776,0)"
- x="0"
- y="0"
- xlink:href="#g4543"
- id="use4565"
- style="display:inline" />
- </g>
- <use
- style="display:inline"
- x="0"
- y="0"
- xlink:href="#g4649"
- id="use4655"
- width="100%"
- height="100%" />
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- x="341.55399"
- y="766.96503"
- id="text4663"
- sodipodi:linespacing="125%"><tspan
- sodipodi:role="line"
- id="tspan4665"
- x="341.55399"
- y="766.96503">Inkscape is Free and Open Source Software licensed under the GPL.</tspan></text>
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer5"
- inkscape:label="background for dmg"
- style="display:inline">
- <g
- id="g4785">
- <rect
- style="display:inline;opacity:0.25;fill:#0000ff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- id="rect13530-7"
- width="90"
- height="90"
- x="414"
- y="188.5" />
- <rect
- y="188.5"
- x="96"
- height="90"
- width="90"
- id="rect13527-5"
- style="display:inline;opacity:0.25;fill:#0000ff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- <g
- id="g3786">
- <rect
- style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- id="rect4783"
- width="600"
- height="400"
- x="0"
- y="0" />
- <use
- style="display:inline"
- height="100%"
- width="100%"
- id="use4735"
- xlink:href="#rect4669"
- y="0"
- x="0"
- transform="scale(0.5859375,1)" />
- </g>
- <g
- id="g3779"
- mask="url(#mask3799)">
- <use
- height="100%"
- width="100%"
- id="use4709"
- xlink:href="#g4649"
- y="0"
- x="0"
- style="display:inline;opacity:1"
- transform="matrix(0.55833333,0,0,1,14.133334,-429)" />
- <use
- style="display:inline;opacity:1"
- height="100%"
- width="100%"
- id="use4718"
- xlink:href="#g4485"
- y="0"
- x="0"
- transform="matrix(0.55833333,0,0,1,14.133334,0)" />
- <use
- style="display:inline;opacity:1"
- transform="matrix(0.5,0,0,0.5,32,92)"
- height="100%"
- width="100%"
- id="use4738"
- xlink:href="#g17092"
- y="0"
- x="0" />
- <use
- style="display:inline;opacity:1"
- height="100%"
- width="100%"
- id="use4740"
- xlink:href="#text4431"
- y="0"
- x="0" />
- <use
- style="display:inline;opacity:1"
- height="100%"
- width="100%"
- id="use4742"
- xlink:href="#text4443"
- y="0"
- x="0" />
- </g>
- <g
- id="g3790">
- <rect
- y="163"
- x="32"
- height="141"
- width="536"
- id="rect4828"
- style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- <use
- style="display:inline"
- height="100%"
- width="100%"
- id="use4732"
- xlink:href="#rect4693"
- y="0"
- x="0"
- transform="matrix(0.55833333,0,0,1,14.133334,0)" />
- <text
- sodipodi:linespacing="125%"
- id="text4711"
- y="337.96503"
- x="132.5152"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- xml:space="preserve"><tspan
- y="337.96503"
- x="132.5152"
- id="tspan4713"
- sodipodi:role="line">Inkscape is Free and Open Source Software licensed under the GPL.</tspan></text>
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- x="459"
- y="141.78999"
- id="text4804"
- sodipodi:linespacing="125%"><tspan
- sodipodi:role="line"
- id="tspan4806"
- x="459"
- y="141.78999">Inkscape 0.91+devel</tspan></text>
- <path
- sodipodi:nodetypes="cccccccc"
- style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.8258427;fill:url(#linearGradient3762);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none"
- d="m 220,233.5 40,27.5 0,-11 119,0 0,-33 -119,0 0,-11 z"
- id="path4958"
- inkscape:connector-curvature="0" />
- </g>
- </g>
- <use
- x="0"
- y="0"
- xlink:href="#g4785"
- id="dmg_background"
- transform="matrix(1.3333333,0,0,1.3333333,1280,0)"
- width="100%"
- height="100%"
- inkscape:export-xdpi="72"
- inkscape:export-ydpi="72"
- inkscape:label="#use4802"
- inkscape:export-filename="dmg_background.png" />
- </g>
- <g
- inkscape:groupmode="layer"
- id="layer4"
- inkscape:label="assets"
- style="display:none">
- <g
- clip-path="url(#clipPath17127)"
- id="g17092"
- transform="translate(0,-128)">
- <g
- transform="matrix(0.9939405,0,0,0.9939405,0.38937111,-1.4450758)"
- id="g9139-7"
- style="display:inline;enable-background:new">
- <g
- transform="translate(3.6896803e-7,0.4883067)"
- id="g6035-3"
- style="opacity:0.78325124">
- <path
- d="m 54.1,12.988307 -41.2,42.2 c -15.6,15.6 10.1,14.3 19.4,20.2 4.3,2.8 -13.8,6.4 -10.1,10.1 3.6,3.7 21.7,7.1 25.3,10.7 3.6,3.699996 -7.3,7.600003 -3.7,11.300003 3.5,3.7 11.9,0.2 13.4,8.6 1.1,6.2 15.4,3.1 21.8,-2.2 4,-3.4 -6.9,-3.4 -3.3,-7.1 9,-9.100003 17,-4.1 20.3,-12.500003 1.8,-4.5 -13.6,-7.7 -9.5,-10.6 9.8,-6.9 45.8,-10.4 29.2,-27 l -42.7,-43.7 c -5.3,-5.0000003 -14,-5.0000003 -18.9,0 z m 47.3,81.3 c 0,2.1 16.3,3.3 15.4,-0.5 -1.3,-6.4 -13.6,-5.9 -15.4,0.5 z M 31.9,105.38831 c 3.7,3.2 9.3,-0.7 11.1,-5.2 -3.6,-4.700003 -16.9,0.3 -11.1,5.2 z m 67.5,-6.700003 c -4.6,4.200003 0.8,8.600003 5.3,5.700003 1.2,-0.8 -0.1,-4.700007 -5.3,-5.700003 z"
- id="path5987-2"
- style="fill:#000000;fill-opacity:1;filter:url(#filter6017-3-7)"
- inkscape:connector-curvature="0" />
- <path
- d="m 54.1,13.964921 -41.2,42.2 c -15.6,15.6 10.1,14.3 19.4,20.2 4.3,2.8 -13.8,6.4 -10.1,10.1 3.6,3.7 21.7,7.1 25.3,10.7 3.6,3.699999 -7.3,7.600009 -3.7,11.300009 3.5,3.7 11.9,0.2 13.4,8.6 1.1,6.2 15.4,3.1 21.8,-2.2 4,-3.4 -6.9,-3.4 -3.3,-7.1 9,-9.100009 17,-4.1 20.3,-12.500009 1.8,-4.5 -13.6,-7.7 -9.5,-10.6 9.8,-6.9 45.8,-10.4 29.2,-27 l -42.7,-43.7 c -5.3,-5.0000009 -14,-5.0000009 -18.9,0 z m 47.3,81.3 c 0,2.1 16.3,3.3 15.4,-0.5 -1.3,-6.4 -13.6,-5.9 -15.4,0.5 z M 31.9,106.36493 c 3.7,3.2 9.3,-0.7 11.1,-5.2 -3.6,-4.700009 -16.9,0.3 -11.1,5.2 z m 67.5,-6.700009 c -4.6,4.200009 0.8,8.600009 5.3,5.700009 1.2,-0.8 -0.1,-4.70001 -5.3,-5.700009 z"
- id="path6021-6"
- style="opacity:0.57635468;fill:#000000;fill-opacity:1;filter:url(#filter6031-0-56)"
- inkscape:connector-curvature="0" />
- </g>
- <path
- d="M 54.1,12.5 12.9,54.7 C -2.7,70.3 23,69 32.3,74.9 36.6,77.7 18.5,81.3 22.2,85 c 3.6,3.7 21.7,7.1 25.3,10.7 3.6,3.7 -7.3,7.6 -3.7,11.3 3.5,3.7 11.9,0.2 13.4,8.6 1.1,6.2 15.4,3.1 21.8,-2.2 4,-3.4 -6.9,-3.4 -3.3,-7.1 9,-9.1 17,-4.1 20.3,-12.5 1.8,-4.5 -13.6,-7.7 -9.5,-10.6 9.8,-6.9 45.8,-10.4 29.2,-27 L 73,12.5 c -5.3,-5 -14,-5 -18.9,0 z m 47.3,81.3 c 0,2.1 16.3,3.3 15.4,-0.5 -1.3,-6.4 -13.6,-5.9 -15.4,0.5 z m -69.5,11.1 c 3.7,3.2 9.3,-0.7 11.1,-5.2 -3.6,-4.7 -16.9,0.3 -11.1,5.2 z m 67.5,-6.7 c -4.6,4.2 0.8,8.6 5.3,5.7 1.2,-0.8 -0.1,-4.7 -5.3,-5.7 z"
- id="use7631-2"
- style="fill:#000000;fill-opacity:1"
- inkscape:connector-curvature="0" />
- <path
- d="M 54.1,12.5 12.9,54.7 C -2.7,70.3 23,69 32.3,74.9 36.6,77.7 18.5,81.3 22.2,85 c 3.6,3.7 21.7,7.1 25.3,10.7 3.6,3.7 -7.3,7.6 -3.7,11.3 3.5,3.7 11.9,0.2 13.4,8.6 1.1,6.2 15.4,3.1 21.8,-2.2 4,-3.4 -6.9,-3.4 -3.3,-7.1 9,-9.1 17,-4.1 20.3,-12.5 1.8,-4.5 -13.6,-7.7 -9.5,-10.6 9.8,-6.9 45.8,-10.4 29.2,-27 L 73,12.5 c -5.3,-5 -14,-5 -18.9,0 z m 47.3,81.3 c 0,2.1 16.3,3.3 15.4,-0.5 -1.3,-6.4 -13.6,-5.9 -15.4,0.5 z m -69.5,11.1 c 3.7,3.2 9.3,-0.7 11.1,-5.2 -3.6,-4.7 -16.9,0.3 -11.1,5.2 z m 67.5,-6.7 c -4.6,4.2 0.8,8.6 5.3,5.7 1.2,-0.8 -0.1,-4.7 -5.3,-5.7 z"
- id="use7639-7"
- style="fill:none"
- inkscape:connector-curvature="0" />
- <use
- transform="matrix(0.9905442,0,0,0.9905442,0.6051535,0.604136)"
- clip-path="url(#clipPath9086-1-5)"
- id="use7641-0"
- style="opacity:0.66995072;fill:url(#linearGradient9175);filter:url(#filter8490-0-0)"
- x="0"
- y="0"
- width="400"
- height="300"
- xlink:href="#outline1-2" />
- <path
- d="M 16.565217,57.039374 C 5.3632748,68.140398 25.042362,65.011927 40.180121,70.966113 L 71.464824,15.965587 c -4.743164,-4.844083 -10.798268,-4.44041 -15.137759,0 L 16.565217,57.039374 Z"
- id="path7643-5"
- style="opacity:0.50526315;fill:url(#shinySpecular-0-4);stroke:none"
- inkscape:connector-curvature="0" />
- <path
- d="m 70.5,15.5 16.3,16.6 c 1.5,1.5 1.5,4.6 0.6,5.5 L 79.3,31 77.7,40.7 71,37.1 60.1,44 56.5,29.5 50.7,42.1 36.2,42 c -2.8,0 -2.4,-2.9 0.5,-5.8 5.7,-6.3 16.8,-17 20.3,-20.7 3.6,-3.7 9.9,-3.6 13.5,0 z"
- id="icecap-3"
- style="fill:url(#IcecapTip-0-3)"
- inkscape:connector-curvature="0" />
- <path
- d="m 113,203.5 c 0,0 3.34046,5.10071 3,7.5 -0.66817,4.70868 -10.80945,7.05842 -8.5625,11.25 2.21991,4.14114 10.22139,1.79405 16.9375,6.125 6.6875,4.3125 4.88949,13.10149 9.75,15.3125 9.47925,4.31205 34.375,-7.4375 33.125,-7.1875 -1.25,0.25 -24.57014,5.09545 -29.82014,0.84545 -5.98592,-4.84575 -7.70217,-8.23028 -12.11736,-11.09545 -4.13751,-2.68498 -9.94967,-3.78036 -11.30246,-5.97865 -1.35279,-2.19829 2.7092,-5.03469 2.98996,-9.27135 0.16862,-2.54442 -4,-7.5 -4,-7.5 z"
- transform="matrix(0.5296484,0,0,0.5296484,-11.722258,-13.864159)"
- id="path8566-7"
- style="opacity:0.21674876;fill:url(#radialGradient9177-1-7);fill-opacity:1;fill-rule:evenodd;stroke:none"
- inkscape:connector-curvature="0" />
- <path
- d="m 113,203.5 c 0,0 3.34046,5.10071 3,7.5 -0.66817,4.70868 -10.80945,7.05842 -8.5625,11.25 2.21991,4.14114 10.22139,1.79405 16.9375,6.125 6.6875,4.3125 4.88949,13.10149 9.75,15.3125 9.47925,4.31205 34.375,-7.4375 33.125,-7.1875 -41.33959,0.15736 -33.62485,-10.4946 -49.5625,-17.5 -2.30305,-1.0123 -0.96826,-3.76334 -0.6875,-8 0.16862,-2.54442 -4,-7.5 -4,-7.5 z"
- transform="matrix(0.5296484,0,0,0.5296484,-11.722258,-13.864159)"
- id="path8718-6"
- style="opacity:0.27586209;fill:url(#radialGradient8574-0-1);fill-opacity:1;fill-rule:evenodd;stroke:none;filter:url(#filter8732-3-8)"
- inkscape:connector-curvature="0" />
- <path
- d="m 183.25,181.75 c 37.10371,-13.65459 49.02363,-15.53058 61.25,-27.75 -14.16069,11.95366 -44.09847,18.3658 -68.5,29 l 7.25,-1.25 z"
- transform="matrix(0.5296484,0,0,0.5296484,-11.722258,-13.864159)"
- id="path8736-9"
- style="opacity:0.45320195;fill:url(#radialGradient8744-9-7);fill-opacity:1;fill-rule:evenodd;stroke:none"
- inkscape:connector-curvature="0" />
- <path
- d="m 183.25,181.75 c 61.10371,-21.65459 50.77363,-21.53058 61.25,-27.75 -19.42769,7.43666 -55.73446,8.22981 -68.5,29 l 7.25,-1.25 z"
- transform="matrix(0.5296484,0,0,0.5296484,-11.722258,-14.791044)"
- id="path8746-3"
- style="opacity:0.51231528;fill:url(#radialGradient8768-6-2);fill-opacity:1;fill-rule:evenodd;stroke:none;filter:url(#filter8764-9-3)"
- inkscape:connector-curvature="0" />
- <path
- d="m 237.875,199.0625 a 7.9375,2.4375 0 1 1 -15.875,0 7.9375,2.4375 0 1 1 15.875,0 z"
- transform="matrix(0.5296484,0,0,0.5296484,-12.384318,-14.791044)"
- id="path8864-0"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.2857143;fill:url(#linearGradient8912-9-9);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 237.875,199.0625 a 7.9375,2.4375 0 1 1 -15.875,0 7.9375,2.4375 0 1 1 15.875,0 z"
- transform="matrix(0.7131486,0,0,1.1407811,-54.577902,-134.95502)"
- id="path8874-9"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.62068936;fill:url(#linearGradient8910-3-8);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;filter:url(#filter8906-3-4);enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 214.125,203.75 c 3.76948,3.48424 24.75576,5.27219 28.1875,-1 -6.73663,4.7839 -21.71677,3.10264 -28.1875,1 z"
- transform="matrix(0.5296484,0,0,0.5296484,-11.722258,-14.238677)"
- id="path8914-1"
- style="fill:url(#radialGradient8922-9-3);fill-opacity:1;fill-rule:evenodd;stroke:none;filter:url(#filter8980-1-63)"
- inkscape:connector-curvature="0" />
- <path
- d="m 236.44594,199.0625 a 6.5084434,3.0820823 0 1 1 -13.01688,0 6.5084434,3.0820823 0 1 1 13.01688,0 z"
- transform="matrix(0.2042516,-0.1035605,0.2395168,0.4723972,5.7547955,30.286555)"
- id="path8984-2"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.2857143;fill:url(#linearGradient8990-4-8);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 236.99305,199.0625 a 7.0555515,2.1400476 0 1 1 -14.1111,0 7.0555515,2.1400476 0 1 1 14.1111,0 z"
- transform="matrix(0.2750159,-0.1394397,0.5158824,1.0174708,-65.353496,-69.300635)"
- id="path8986-0"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.62068936;fill:url(#linearGradient8992-2-5);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;filter:url(#filter8906-3-4);enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 217.05754,201.94027 c 3.76948,3.48424 26.97122,8.91123 25.25496,0.80973 -3.31737,5.32326 -18.78423,1.29291 -25.25496,-0.80973 z"
- transform="matrix(0.2042516,-0.1035605,0.2395168,0.4723972,6.2599008,30.649764)"
- id="path8988-7"
- style="fill:url(#radialGradient8994-0-8);fill-opacity:1;fill-rule:evenodd;stroke:none;filter:url(#filter8980-1-63)"
- inkscape:connector-curvature="0" />
- <path
- d="m 68.25,186 c 0,-0.62057 38.84622,11.83854 45.5,18.5 -5.47122,-5.33854 -33.159709,-17.61609 -37.375,-17.75 -4.215291,-0.13391 -7.625,-0.5 -8.125,-0.75 z"
- transform="matrix(0.5296484,0,0,0.5296484,-11.722258,-13.864159)"
- id="path8996-6"
- style="fill:url(#radialGradient9004-6-0);fill-opacity:1;fill-rule:evenodd;stroke:none"
- inkscape:connector-curvature="0" />
- <g
- transform="matrix(0.8790148,-0.1929959,0.2338341,0.6959295,-20.209533,36.725557)"
- id="g9018-6">
- <path
- d="m 237.875,199.0625 a 7.9375,2.4375 0 1 1 -15.875,0 7.9375,2.4375 0 1 1 15.875,0 z"
- transform="matrix(0.5296484,0,0,0.5296484,-84.4165,-4.7277245)"
- id="path9006-8"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.2857143;fill:url(#linearGradient9023-6-6);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 237.875,199.0625 a 7.9375,2.4375 0 1 1 -15.875,0 7.9375,2.4375 0 1 1 15.875,0 z"
- transform="matrix(0.7131486,0,0,1.1407811,-126.61008,-124.8917)"
- id="path9008-0"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.62068936;fill:url(#linearGradient9025-1-9);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;filter:url(#filter8906-3-4);enable-background:accumulate"
- inkscape:connector-curvature="0" />
- </g>
- <path
- d="m 80.5,220.0625 c 0,0 2.10339,5.65078 7.875,5.9375 5.83887,0.29006 12.50324,-7.00698 13.0625,-9.625 -1,2.25 -6.590334,9.03328 -13.8125,8.9375 -4.099862,-0.0544 -7.125,-5.25 -7.125,-5.25 z"
- transform="matrix(0.5296484,0,0,0.5296484,-11.622949,-14.42691)"
- id="path9038-1"
- style="opacity:0.61576353;fill:url(#radialGradient9046-1-8);fill-opacity:1;fill-rule:evenodd;stroke:none;filter:url(#filter9068-2-2)"
- inkscape:connector-curvature="0" />
- <path
- d="m 63.40625,10.21875 c -3.098181,0 -6.134601,1.122042 -8.28125,3.3125 l -41.1875,42.1875 c -3.76562,3.76562 -4.6702413,6.23069 -4.4375,7.625 0.1163706,0.697155 0.4585994,1.303027 1.1875,1.9375 0.728901,0.634473 1.831495,1.256389 3.15625,1.8125 2.649511,1.112222 6.217961,2.008085 9.71875,2.96875 3.500789,0.960665 6.929812,1.974626 9.53125,3.625 0.396623,0.258266 0.769088,0.576468 1.03125,1.03125 0.262162,0.454782 0.354216,1.056088 0.25,1.5625 -0.208431,1.012824 -0.83202,1.546985 -1.46875,2.03125 -1.27346,0.96853 -3.023257,1.773229 -4.78125,2.625 -1.757993,0.851771 -3.524925,1.723242 -4.40625,2.4375 -0.440663,0.357129 -0.600112,0.678133 -0.59375,0.65625 0.0064,-0.02188 -0.116851,-0.273101 0.09375,-0.0625 0.551764,0.56709 2.274075,1.538165 4.46875,2.40625 2.194675,0.868085 4.88065,1.745624 7.59375,2.625 2.7131,0.879376 5.4575,1.749959 7.78125,2.65625 2.32375,0.906291 4.217694,1.748944 5.46875,3 0.622681,0.639978 1.062632,1.435956 1.15625,2.25 0.09362,0.814044 -0.126809,1.578032 -0.4375,2.21875 -0.621382,1.28144 -1.620313,2.26719 -2.53125,3.21875 -0.910938,0.95156 -1.736226,1.86034 -2.03125,2.46875 -0.147512,0.3042 -0.170347,0.50242 -0.15625,0.625 0.0141,0.12258 0.03518,0.24623 0.3125,0.53125 A 1.4566768,1.4566768 0 0 1 44.875,106 c 1.193594,1.2618 3.787002,1.43924 6.71875,2.125 1.465874,0.34288 2.998909,0.86196 4.3125,2 1.313591,1.13804 2.299435,2.87059 2.71875,5.21875 0.176459,0.99459 0.702722,1.4788 1.96875,1.875 1.266028,0.3962 3.194353,0.46554 5.3125,0.15625 4.236295,-0.61859 9.260035,-2.69532 12.15625,-5.09375 0.17999,-0.15299 0.129956,-0.11255 0.1875,-0.1875 -0.194805,-0.13939 -0.651644,-0.43652 -1.40625,-0.8125 -0.891527,-0.4442 -1.944708,-0.85956 -2.75,-1.875 -0.402646,-0.50772 -0.679877,-1.30934 -0.5625,-2.09375 0.117377,-0.78441 0.546832,-1.43702 1.125,-2.03125 4.745751,-4.79848 9.421937,-5.944136 12.9375,-6.875 1.757782,-0.465432 3.229292,-0.891233 4.34375,-1.59375 1.114458,-0.702517 1.98508,-1.663728 2.71875,-3.53125 0.08087,-0.202174 0.07855,-0.260846 -0.03125,-0.5 C 94.515197,92.542096 94.220541,92.159521 93.75,91.75 92.808918,90.930959 91.239577,90.050804 89.6875,89.1875 88.135423,88.324196 86.627034,87.519262 85.53125,86.5 84.983358,85.990369 84.409233,85.348367 84.34375,84.375 84.27827,83.401633 84.916318,82.523367 85.65625,82 88.401968,80.06679 92.552528,78.595094 97.0625,77.03125 101.57247,75.467406 106.42363,73.849125 110.375,72 c 3.95137,-1.849125 6.85729,-3.978669 7.78125,-6.125 0.46198,-1.073165 0.54663,-2.158606 0.0625,-3.5625 -0.48413,-1.403894 -1.58958,-3.120831 -3.5625,-5.09375 L 72,13.5625 c -0.01071,-0.0101 -0.02051,-0.02119 -0.03125,-0.03125 -2.357722,-2.207738 -5.478371,-3.3125 -8.5625,-3.3125 z m 45.9375,80 c -2.63522,0.09513 -5.05952,1.301393 -6.09375,3.1875 0.29381,0.110524 0.55838,0.234969 1.03125,0.34375 1.37562,0.316455 3.29543,0.520736 5.1875,0.5625 1.89207,0.04176 3.78415,-0.117472 4.9375,-0.4375 0.50487,-0.14009 0.77236,-0.281778 0.90625,-0.375 -0.2558,-1.091098 -0.86487,-1.862126 -1.90625,-2.4375 -1.07862,-0.595951 -2.55669,-0.898111 -4.0625,-0.84375 z m -70.5,9.0625 c -2.089872,-0.145348 -4.716548,0.686551 -6,1.71875 -0.641726,0.5161 -0.913269,0.99441 -0.9375,1.3125 -0.02423,0.31809 0.07726,0.74199 0.9375,1.46875 a 1.4566768,1.4566768 0 0 1 0,0.0312 c 1.352809,1.17 2.882256,1.04802 4.625,0.0937 1.460951,-0.79997 2.757201,-2.30075 3.625,-3.875 -0.585032,-0.377341 -1.284532,-0.682853 -2.25,-0.75 z m 61,0.625 c -0.447303,0.5686 -0.690902,1.09797 -0.71875,1.46875 -0.03844,0.51176 0.106611,0.90723 0.5,1.28125 0.73729,0.70099 2.33912,1.00278 3.96875,0.125 -0.0322,-0.1891 -0.0933,-0.47591 -0.34375,-0.84375 -0.4999,-0.73414 -1.6686,-1.5251 -3.40625,-2.03125 z"
- id="87235-3"
- style="fill:none;stroke:url(#radialGradient11553-3-1);stroke-width:0.48830673;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter9298-4-5)"
- inkscape:connector-curvature="0" />
- <path
- d="m 95.5,172 c -5.090606,1.50191 -21.592018,7.73713 -19.25,12.5 2.243595,4.56272 40.61138,6.40132 46.5,20 2.5679,5.93009 -5.89238,10.40326 -3.75,16.5 1.64973,4.69477 14.41196,16.49084 22.48603,22.06781 6.33298,4.37435 14.65096,-3.52244 11.26397,-10.06781 -5.39589,-10.42759 18.44266,-23.19912 29.25,-29 6.30524,-3.38436 -13,-20 -13,-20 0,0 -73.5,-12 -73.5,-12 z"
- transform="matrix(0.4883067,0,0,0.4883067,-5.8104012,-7.7042521)"
- id="path5897-0"
- style="opacity:0.32512315;fill:url(#linearGradient5905-4-7);fill-opacity:1;fill-rule:evenodd;stroke:none;filter:url(#filter5983-8-5)"
- inkscape:connector-curvature="0" />
- <path
- d="m 41.742167,78.533037 c 2.231933,1.639226 6.636757,0.650538 9.282124,1.841759 6.349518,2.859218 14.154941,6.045427 12.718568,0.404555 0,0 -1.615771,1.342042 -1.615771,1.342042 0,0 -0.03153,-2.557545 -0.03153,-2.557545 0,0 -3.751977,0.916294 -3.751977,0.916294 0,0 -2.906173,-2.332759 -4.238526,-3.101995 -0.27829,-0.160669 -1.707695,1.292815 -1.707695,1.292815 0,0 -0.25697,-1.543804 -0.25697,-1.543804 -1.857372,-0.197638 -3.696159,-0.284805 -5.31515,-0.271821 -3.880942,0.03112 -6.499059,0.637741 -5.083074,1.6777 z"
- id="path5783-7"
- style="fill:url(#linearGradient5801-2-8);fill-opacity:1;fill-rule:evenodd;stroke:none"
- inkscape:connector-curvature="0" />
- <path
- d="m 182.75,187.25 c -1.75981,6.4783 21.62776,15.27989 19.875,19.75 -3.85895,9.84158 -24.97596,3.13755 -41.125,23.75 -2.31318,2.95251 3.25,13.5 2.5,12.25 -0.75,-1.25 -6.4649,-9.96285 -5,-14.25 4.59417,-13.44525 49.0128,-18.45749 40.875,-24.875 -4.67988,-3.69058 -21.50546,-13.88721 -17.125,-16.625 z"
- transform="matrix(0.4883067,0,0,0.4883067,-5.8104012,-7.7042521)"
- id="path5803-5"
- style="opacity:0.47783251;fill:url(#radialGradient5811-3-0);fill-opacity:1;fill-rule:evenodd;stroke:none;filter:url(#filter5845-5-1)"
- inkscape:connector-curvature="0" />
- <path
- d="m 236.5,201.1875 a 2.5625,1.0625 0 1 1 -5.125,0 2.5625,1.0625 0 1 1 5.125,0 z"
- transform="matrix(0.4883067,0,0,0.4883067,-6.3597463,-8.0094438)"
- id="path6041-9"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.58620689;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 236.5,201.1875 a 2.5625,1.0625 0 1 1 -5.125,0 2.5625,1.0625 0 1 1 5.125,0 z"
- transform="matrix(0.3096579,0,0,0.4883067,27.528443,1.5735759)"
- id="path6043-3"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.58620689;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 236.5,201.1875 a 2.5625,1.0625 0 1 1 -5.125,0 2.5625,1.0625 0 1 1 5.125,0 z"
- transform="matrix(0.5478563,0,0,0.4883067,-92.102233,1.115795)"
- id="path6045-5"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.58620689;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 36.672282,76.528654 c -7.152988,4.424107 -18.274031,6.034229 -6.103834,8.972635 -1.449712,-3.2281 3.138581,-2.872021 6.103834,-8.972635 z"
- id="path5049-8"
- style="display:inline;overflow:visible;visibility:visible;opacity:0.25123153;fill:url(#linearGradient5822-7-1);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.04789329;marker:none;enable-background:accumulate"
- inkscape:connector-curvature="0" />
- <path
- d="m 8.8342799,171.64721 c 0,0 22.5917801,-2.12795 27.8180201,-8.64645 3.05755,-3.81358 -12.15146,-8.2638 -8.86827,-12 12.35008,-14.0541 22.73076,-13.46729 37.05025,-19.35355 14.31949,-5.88626 9.03544,-8.76906 4.40381,-11.35355 -7.9325,-4.4264 -25.58722,-9.14237 -19.74696,-19.64645 5.87688,-10.569936 57.34315,-25.249996 57.34315,-25.249996 15.59619,-5.32843 13.63909,-14.96447 6,-23 l -46,-45.7499997 c 0,0 2.28296,43.3886497 -7,61.9999997 -11.4715,22.99914 -72.54408,48.661766 -47,51.499996 9,1 13.32065,4.0705 17,11 7.57631,14.26883 -21.0000001,40.5 -21.0000001,40.5 z"
- transform="matrix(0.48830674,0,0,0.48830674,57.750397,32.997477)"
- id="path10207-0"
- style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.36315792;fill:url(#linearGradient1539-7);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;filter:url(#filter10997-7-2-1);enable-background:accumulate"
- inkscape:connector-curvature="0" />
- </g>
- </g>
- <g
- id="g4453"
- transform="translate(0,-92)">
- <text
- sodipodi:linespacing="125%"
- id="text4431"
- y="56.595001"
- x="113.27875"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:33.75px;line-height:125%;font-family:Calluna;-inkscape-font-specification:Calluna;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- xml:space="preserve"><tspan
- y="56.595001"
- x="113.27875"
- id="tspan4433"
- sodipodi:role="line">INKSCAPE</tspan></text>
- <text
- sodipodi:linespacing="125%"
- id="text4443"
- y="84.804001"
- x="144.53799"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
- xml:space="preserve"><tspan
- y="84.804001"
- x="144.53799"
- id="tspan4445"
- sodipodi:role="line">Draw Freely.</tspan></text>
- </g>
- <g
- style="display:inline"
- id="g4485">
- <rect
- y="162"
- x="32"
- height="1"
- width="960"
- id="rect4461"
- style="opacity:1;fill:#262626;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- <rect
- rx="10"
- y="110"
- x="32"
- height="52"
- width="960"
- id="rect4459"
- style="opacity:1;fill:url(#linearGradient4475);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- <rect
- style="opacity:1;fill:url(#linearGradient4483);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- id="rect4463"
- width="960"
- height="42"
- x="32"
- y="120" />
- </g>
- <g
- id="g4543">
- <rect
- y="110"
- x="113"
- height="52"
- width="1"
- id="rect4531"
- style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- <rect
- style="opacity:1;fill:#5a5a5a;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- id="rect4533"
- width="1"
- height="52"
- x="114"
- y="110" />
- </g>
- <g
- style="display:inline"
- id="g4649">
- <rect
- y="733"
- x="32"
- height="4"
- width="960"
- id="rect4625"
- style="opacity:1;fill:#0d0d0d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- <rect
- y="737"
- x="32"
- height="50"
- width="960"
- id="rect4629"
- style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- <rect
- rx="10"
- style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- id="rect4627"
- width="960"
- height="60"
- x="32"
- y="737" />
- <rect
- y="737"
- x="32"
- height="60"
- width="960"
- id="rect4631"
- style="opacity:1;fill:url(#radialGradient4639);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- rx="10" />
- </g>
- <use
- style="display:inline"
- transform="matrix(0.5,0,0,0.5,32,-8)"
- height="100%"
- width="100%"
- id="use4705"
- xlink:href="#g17092"
- y="0"
- x="0" />
- <rect
- style="display:inline;opacity:1;fill:url(#linearGradient4681);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1"
- id="rect4669"
- width="1024"
- height="75"
- x="0"
- y="0" />
- <rect
- y="163"
- x="32"
- height="100"
- width="960"
- id="rect4693"
- style="display:inline;opacity:1;fill:url(#linearGradient4703);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1" />
- </g>
-</svg>
diff --git a/packaging/macosx/dmg_set_style.scpt b/packaging/macosx/dmg_set_style.scpt
deleted file mode 100755
index b27a6860d..000000000
--- a/packaging/macosx/dmg_set_style.scpt
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/inkscape.ds_store b/packaging/macosx/inkscape.ds_store
deleted file mode 100644
index 469da6fcc..000000000
--- a/packaging/macosx/inkscape.ds_store
+++ /dev/null
Binary files differ
diff --git a/packaging/macosx/osx-app.sh b/packaging/macosx/osx-app.sh
deleted file mode 100755
index 2a6e9ed15..000000000
--- a/packaging/macosx/osx-app.sh
+++ /dev/null
@@ -1,864 +0,0 @@
-#!/bin/bash
-#
-# USAGE
-# osx-app [-s] [-l /path/to/libraries] -py /path/to/python/modules [-l /path/to/libraries] -b /path/to/bin/inkscape -p /path/to/Info.plist
-#
-# This script attempts to build an Inkscape.app package for OS X, resolving
-# dynamic libraries, etc.
-#
-# If the '-s' option is given, then the libraries and executable are stripped.
-#
-# The Info.plist file can be found in the base inkscape directory once
-# configure has been run.
-#
-# AUTHORS
-# Kees Cook <kees@outflux.net>
-# Michael Wybrow <mjwybrow@users.sourceforge.net>
-# Jean-Olivier Irisson <jo.irisson@gmail.com>
-# Liam P. White <inkscapebrony@gmail.com>
-# ~suv <suv-sf@users.sourceforge.net>
-#
-# Copyright (C) 2005 Kees Cook
-# Copyright (C) 2005-2009 Michael Wybrow
-# Copyright (C) 2007-2009 Jean-Olivier Irisson
-# Copyright (C) 2014 Liam P. White
-# Copyright (C) 2014 ~suv
-#
-# Released under GNU GPL, read the file 'COPYING' for more information
-#
-# Thanks to GNUnet's "build_app" script for help with library dep resolution.
-# https://gnunet.org/svn/GNUnet/contrib/OSX/build_app
-#
-# NB:
-# When packaging Inkscape for OS X, configure should be run with the
-# "--enable-osxapp" option which sets the correct paths for support
-# files inside the app bundle.
-#
-
-# Defaults
-strip_build=false
-add_wrapper=true
-add_python=true
-python_dir=""
-
-# If LIBPREFIX is not already set (by osx-build.sh for example) set it to blank
-# (one should use the command line argument to set it correctly)
-if [ -z $LIBPREFIX ]; then
- LIBPREFIX=""
-fi
-
-
-# Help message
-#----------------------------------------------------------
-help()
-{
-echo -e "
-Create an app bundle for OS X
-
-\033[1mUSAGE\033[0m
- $0 [-s] [-l /path/to/libraries] -py /path/to/python/modules -b /path/to/bin/inkscape -p /path/to/Info.plist
-
-\033[1mOPTIONS\033[0m
- \033[1m-h,--help\033[0m
- display this help message
- \033[1m-s\033[0m
- strip the libraries and executables from debugging symbols
- \033[1m-py,--with-python\033[0m
- add python modules (numpy, lxml) from given directory
- inside the app bundle
- \033[1m-l,--libraries\033[0m
- specify the path to the librairies Inkscape depends on
- (typically /sw or /opt/local)
- \033[1m-b,--binary\033[0m
- specify the path to Inkscape's binary. By default it is in
- Build/bin/ at the base of the source code directory
- \033[1m-p,--plist\033[0m
- specify the path to Info.plist. Info.plist can be found
- in the base directory of the source code once configure
- has been run
- \033[1m-v,--verbose\033[0m
- Verbose mode.
-
-\033[1mEXAMPLE\033[0m
- $0 -s -py ~/python-modules -l /opt/local -b ../../Build/bin/inkscape -p ../../Info.plist
-"
-}
-
-
-# Parse command line arguments
-#----------------------------------------------------------
-while [ "$1" != "" ]
-do
- case $1 in
- -py|--with-python)
- add_python=true
- python_dir="$2"
- shift 1 ;;
- -s)
- strip_build=true
- with_dSYM=false ;;
- -l|--libraries)
- LIBPREFIX="$2"
- shift 1 ;;
- -b|--binary)
- binary="$2"
- shift 1 ;;
- -p|--plist)
- plist="$2"
- shift 1 ;;
- -v|--verbose)
- verbose_mode=true ;;
- -h|--help)
- help
- exit 0 ;;
- *)
- echo "Invalid command line option: $1"
- exit 2 ;;
- esac
- shift 1
-done
-
-echo -e "\n\033[1mCREATE INKSCAPE APP BUNDLE\033[0m\n"
-
-
-# Safety tests
-#----------------------------------------------------------
-
-if [ "x$binary" == "x" ]; then
- echo "Inkscape binary path not specified." >&2
- exit 1
-fi
-
-if [ ! -x "$binary" ]; then
- echo "Inkscape executable not not found at $binary." >&2
- exit 1
-fi
-
-if [ "x$plist" == "x" ]; then
- echo "Info.plist file not specified." >&2
- exit 1
-fi
-
-if [ ! -f "$plist" ]; then
- echo "Info.plist file not found at $plist." >&2
- exit 1
-fi
-
-if [ ${add_python} = "true" ]; then
- if [ -z "$python_dir" ]; then
- echo "Python modules will be copied from MacPorts tree." >&2
- else
- if [ ! -e "$python_dir" ]; then
- echo "Python modules directory \""$python_dir"\" not found." >&2
- exit 1
- else
- if [ -e "$python_dir/i386" -o -e "$python_dir/ppc" ]; then
- echo "Outdated structure in custom python modules detected," >&2
- echo "not compatible with current packaging." >&2
- exit 1
- else
- echo "Python modules will be copied from $python_dir." >&2
- fi
- fi
- fi
-fi
-
-if [ ! -e "$LIBPREFIX" ]; then
- echo "Cannot find the directory containing the libraires: $LIBPREFIX" >&2
- exit 1
-fi
-
-if [ "x$(otool -L "$binary" | grep "libgtk-quartz")" != "x" ]; then
- if ! pkg-config --exists gtk+-quartz-2.0; then
- echo "Missing GTK+ backend -- please install gtk2 and its dependencies with variant '+quartz' and try again." >&2
- exit 1
- fi
- _backend="quartz"
-else
- if ! pkg-config --exists gtk+-x11-2.0; then
- echo "Missing GTK+ backend -- please install gtk2 and its dependencies with variant '+x11' and try again." >&2
- exit 1
- fi
- _backend="x11"
-fi
-
-if ! pkg-config --exists gtk-engines-2; then
- echo "Missing gtk-engines2 -- please install gtk-engines2 and try again." >&2
- exit 1
-fi
-
-if [ ! -e "$LIBPREFIX/lib/gtk-2.0/$(pkg-config --variable=gtk_binary_version gtk+-2.0)/engines/libmurrine.so" ]; then
- echo "Missing gtk2-murrine -- please install gtk2-murrine and try again." >&2
- exit 1
-fi
-
-if [ ! -e "$LIBPREFIX/lib/gtk-2.0/$(pkg-config --variable=gtk_binary_version gtk+-2.0)/engines/libadwaita.so" ]; then
- echo "Missing gnome-themes-standard -- please install gnome-themes-standard and try again." >&2
- exit 1
-fi
-
-if [ ! -e "$LIBPREFIX/share/icons/hicolor/index.theme" ]; then
- echo "Missing hicolor-icon-theme -- please install hicolor-icon-theme and try again." >&2
- exit 1
-fi
-
-if ! pkg-config --exists icon-naming-utils; then
- echo "Missing icon-naming-utils -- please install icon-naming-utils and try again." >&2
- exit 1
-fi
-
-# if [ "$default_theme" != "default" ] ; then
-# if ! pkg-config --exists gnome-icon-theme; then
-# echo "Missing gnome-icon-theme -- please install gnome-icon-theme and try again." >&2
-# exit 1
-# fi
-#
-# if ! pkg-config --exists gnome-icon-theme-symbolic; then
-# echo "Missing gnome-icon-theme-symbolic -- please install gnome-icon-theme-symbolic and try again." >&2
-# exit 1
-# fi
-# fi
-
-unset WITH_GNOME_VFS
-if ! pkg-config --exists gnome-vfs-2.0; then
- echo "Missing gnome-vfs2 -- some features will be disabled" >&2
-else
- WITH_GNOME_VFS=true
-fi
-
-# unset WITH_DBUS
-# if ! pkg-config --exists dbus-1; then
-# echo "Missing dbus -- some features will be disabled" >&2
-# else
-# WITH_DBUS=true
-# fi
-#
-# unset WITH_GVFS
-# if [ ! -e "$LIBPREFIX/libexec/gvfsd" ]; then
-# echo "Missing gvfs -- some features will be disabled" >&2
-# elif [ ! -z "$WITH_DBUS" ]; then
-# WITH_GVFS=true
-# else
-# echo "Missing dbus for gvfs -- some features will be disabled" >&2
-# fi
-
-if ! pkg-config --exists poppler; then
- echo "Missing poppler -- please install poppler and try again." >&2
- exit 1
-fi
-
-if [ ! -e "$LIBPREFIX/lib/libpotrace.dylib" ]; then
- echo "Missing potrace -- please install potrace and try again." >&2
- exit 1
-fi
-
-if ! pkg-config --exists ImageMagick; then
- echo "Missing ImageMagick -- please install ImageMagick and try again." >&2
- exit 1
-fi
-
-# FIXME: retrieve aspell version from installed files (no pkg-config support)
-ASPELL_VERSION="0.60"
-if [ ! -e "$LIBPREFIX/lib/aspell-$ASPELL_VERSION/en.dat" ]; then
- echo "Missing aspell en dictionary -- please install at least 'aspell-dict-en', but" >&2
- echo "preferably more dictionaries ('aspell-dict-*') and try again." >&2
- exit 1
-fi
-
-# awk on Leopard fails in fixlib(), test earlier and require gawk if test fails
-awk_test="$(echo "/lib" | awk -F/ '{for (i=1;i<NF;i++) sub($i,".."); sub($NF,"",$0); print $0}')"
-if [ -z "$awk_test" ]; then
- if [ ! -x "$LIBPREFIX/bin/gawk" ]; then
- echo "awk provided by system is too old, please install gawk and try again" >&2
- exit 1
- else
- awk_cmd="$LIBPREFIX/bin/gawk"
- fi
-else
- awk_cmd="awk"
-fi
-unset awk_test
-
-
-# OS X version
-#----------------------------------------------------------
-OSXVERSION="$(/usr/bin/sw_vers | grep ProductVersion | cut -f2)"
-OSXMINORVER="$(cut -d. -f 1,2 <<< $OSXVERSION)"
-OSXMINORNO="$(cut -d. -f2 <<< $OSXVERSION)"
-OSXPOINTNO="$(cut -d. -f3 <<< $OSXVERSION)"
-ARCH="$(uname -a | awk '{print $NF;}')"
-
-# guess default build_arch (MacPorts)
-if [ "$OSXMINORNO" -ge "6" ]; then
- if [ "$(sysctl -n hw.cpu64bit_capable 2>/dev/null)" = "1" ]; then
- _build_arch="x86_64"
- else
- _build_arch="i386"
- fi
-else
- if [ $ARCH = "powerpc" ]; then
- _build_arch="ppc"
- else
- _build_arch="i386"
- fi
-fi
-
-# Setup
-#----------------------------------------------------------
-case $_backend in
- x11)
- echo "Building package with GTK+/X11." >&2
- # Handle some version specific details.
- if [ "$OSXMINORNO" -le "4" ]; then
- echo "Note: Inkscape packaging requires Mac OS X 10.5 Leopard or later."
- exit 1
- else # if [ "$OSXMINORNO" -ge "5" ]; then
- XCODEFLAGS="-configuration Deployment"
- SCRIPTEXECDIR="ScriptExec/build/Deployment/ScriptExec.app/Contents/MacOS"
- EXTRALIBS=""
- fi
- ;;
- quartz)
- # quartz backend
- echo "Building package with GTK+/Quartz." >&2
- ;;
- *)
- exit 1
-esac
-
-
-# Package always has the same name. Version information is stored in
-# the Info.plist file which is filled in by the configure script.
-package="Inkscape.app"
-
-# Remove a previously existing package if necessary
-if [ -d $package ]; then
- echo "Removing previous Inkscape.app"
- rm -rf $package
-fi
-
-
-# Set the 'macosx' directory, usually the current directory.
-resdir=`pwd`
-
-# Custom resources used to generate resources during app bundle creation.
-if [ -z "$custom_res" ] ; then
- custom_res="${resdir}/Resources-extras"
-fi
-
-
-# Prepare Package
-#----------------------------------------------------------
-pkgexec="$package/Contents/MacOS"
-pkgbin="$package/Contents/Resources/bin"
-pkgetc="$package/Contents/Resources/etc"
-pkglib="$package/Contents/Resources/lib"
-pkgshare="$package/Contents/Resources/share"
-pkglocale="$package/Contents/Resources/share/locale"
-pkgresources="$package/Contents/Resources"
-
-mkdir -p "$pkgexec"
-mkdir -p "$pkgbin"
-mkdir -p "$pkgetc"
-mkdir -p "$pkglib"
-mkdir -p "$pkgshare"
-mkdir -p "$pkglocale"
-
-
-# utility
-#----------------------------------------------------------
-
-if [ $verbose_mode ] ; then
- cp_cmd="/bin/cp -v"
- ln_cmd="/bin/ln -sv"
- rsync_cmd="/usr/bin/rsync -av"
-else
- cp_cmd="/bin/cp"
- ln_cmd="/bin/ln -s"
- rsync_cmd="/usr/bin/rsync -a"
-fi
-
-
-# Build and add the launcher
-#----------------------------------------------------------
-case $_backend in
- x11)
- (
- # Build fails if CC happens to be set (to anything other than CompileC)
- unset CC
-
- cd "$resdir/ScriptExec"
- echo -e "\033[1mBuilding launcher...\033[0m\n"
- xcodebuild $XCODEFLAGS clean build
- )
- $cp_cmd "$resdir/$SCRIPTEXECDIR/ScriptExec" "$pkgexec/Inkscape"
- ;;
- quartz)
- $cp_cmd "$resdir/ScriptExec/launcher-quartz-no-macintegration.sh" "$pkgexec/inkscape"
- ;;
- *)
- exit 1
-esac
-
-
-# Copy all files into the bundle
-#----------------------------------------------------------
-echo -e "\n\033[1mFilling app bundle...\033[0m\n"
-
-binary_name=`basename "$binary"`
-binary_dir=`dirname "$binary"`
-
-# Inkscape's binary
-if [ $_backend = "x11" ]; then
- scrpath="$pkgbin/inkscape"
- binpath="$pkgbin/inkscape-bin"
-else
- scrpath="$pkgexec/inkscape"
- binpath="$pkgexec/inkscape-bin"
-fi
-$cp_cmd "$binary" "$binpath"
-# TODO Add a "$verbose" variable and command line switch, which sets wether these commands are verbose or not
-
-# Info.plist
-$cp_cmd "$plist" "$package/Contents/Info.plist"
-if [ $_backend = "quartz" ]; then
- /usr/libexec/PlistBuddy -x -c "Set :CGDisableCoalescedUpdates 1" "${package}/Contents/Info.plist"
-fi
-
-# Share files
-$rsync_cmd "$binary_dir/../share/$binary_name"/* "$pkgshare/$binary_name"
-$rsync_cmd "$binary_dir/../share/locale"/* "$pkglocale"
-
-# Copy GTK shared mime information
-mkdir -p "$pkgresources/share"
-$cp_cmd -rp "$LIBPREFIX/share/mime" "$pkgshare/"
-
-# Copy GTK hicolor icon theme index file
-mkdir -p "$pkgresources/share/icons/hicolor"
-$cp_cmd "$LIBPREFIX/share/icons/hicolor/index.theme" "$pkgresources/share/icons/hicolor"
-
-# GTK+ stock icons with legacy icon mapping
-echo "Creating GtkStock icon theme ..."
-stock_src="${custom_res}/src/icons/stock-icons" \
- ./create-stock-icon-theme.sh "${pkgshare}/icons/GtkStock"
-gtk-update-icon-cache --index-only "${pkgshare}/icons/GtkStock"
-
-# GTK+ themes
-$cp_cmd -RP "$LIBPREFIX/share/gtk-engines" "$pkgshare/"
-for item in Adwaita Clearlooks HighContrast Industrial Raleigh Redmond ThinIce; do
- mkdir -p "$pkgshare/themes/$item"
- $cp_cmd -RP "$LIBPREFIX/share/themes/$item/gtk-2.0" "$pkgshare/themes/$item/"
-done
-if [ $_backend = "quartz" ]; then
- for item in Mac; do
- $cp_cmd -RP "$LIBPREFIX/share/themes/$item/gtk-2.0"* "$pkgshare/themes/$item/"
- done
-fi
-
-# Icons and the rest of the script framework
-$rsync_cmd --exclude ".svn" "$resdir"/Resources/* "$pkgresources/"
-
-# remove files not needed with GTK+/Quartz
-if [ $_backend = "quartz" ]; then
- rm "$pkgresources/script"
- rm "$pkgresources/openDoc"
- rm "$pkgbin/inkscape"
-fi
-
-# activate wrapper scripts
-if [ $add_wrapper = "true" ]; then
- mv "$pkgbin/gimp-wrapper.sh" "$pkgbin/gimp"
-fi
-
-# Add python modules if requested
-if [ ${add_python} = "true" ]; then
- install_py_modules ()
- {
- # lxml
- $cp_cmd -RL "$packages_path/lxml" "$pkgpython"
- # numpy
- $cp_cmd -RL "$packages_path/nose" "$pkgpython"
- $cp_cmd -RL "$packages_path/numpy" "$pkgpython"
- # UniConvertor
- $cp_cmd -RL "$packages_path/PIL" "$pkgpython"
- if [ "$PYTHON_VER" == "2.5" ]; then
- $cp_cmd -RL "$packages_path/_imaging.so" "$pkgpython"
- $cp_cmd -RL "$packages_path/_imagingcms.so" "$pkgpython"
- $cp_cmd -RL "$packages_path/_imagingft.so" "$pkgpython"
- $cp_cmd -RL "$packages_path/_imagingmath.so" "$pkgpython"
- else # we build Pillow with +tkinter
- $cp_cmd -RL "$packages_path/_tkinter.so" "$pkgpython"
- fi
- $cp_cmd -RL "$packages_path/sk1libs" "$pkgpython"
- $cp_cmd -RL "$packages_path/uniconvertor" "$pkgpython"
- # pySerial for HPGL plotting
- $cp_cmd -RL "$packages_path/serial" "$pkgpython"
- # PyGTK (optional)
- $cp_cmd -RL "$packages_path/cairo" "$pkgpython"
- $cp_cmd -RL "$packages_path/glib" "$pkgpython"
- $cp_cmd -RL "$packages_path/gobject" "$pkgpython"
- $cp_cmd -RL "$packages_path/../../../share/pygobject" "$pkgshare"
- $cp_cmd -RL "$packages_path/gtk-2.0" "$pkgpython"
- $cp_cmd -RL "$packages_path/../../../share/pygtk" "$pkgshare"
- $cp_cmd -RL "$packages_path/pygtk.pth" "$pkgpython"
- $cp_cmd -RL "$packages_path/pygtk.py" "$pkgpython"
- # cleanup python modules
- find "$pkgpython" -name *.pyc -print0 | xargs -0 rm -f
- find "$pkgpython" -name *.pyo -print0 | xargs -0 rm -f
- find "${pkgshare}/pygobject" -name *.pyc -print0 | xargs -0 rm -f
-
- # TODO: test whether to remove hard-coded paths from *.la files or to exclude them altogether
- for la_file in $(find "$pkgpython" -name *.la); do
- sed -e "s,libdir=\'.*\',libdir=\'\',g" -i "" "$la_file"
- done
- }
-
- if [ $OSXMINORNO -eq "5" ]; then
- PYTHON_VERSIONS="2.5 2.6 2.7"
- elif [ $OSXMINORNO -eq "6" ]; then
- PYTHON_VERSIONS="2.6 2.7"
- else # if [ $OSXMINORNO -ge "7" ]; then
- PYTHON_VERSIONS="2.7"
- fi
- if [ -z "$python_dir" ]; then
- for PYTHON_VER in $PYTHON_VERSIONS; do
- python_dir="$(${LIBPREFIX}/bin/python${PYTHON_VER}-config --prefix)"
- packages_path="${python_dir}/lib/python${PYTHON_VER}/site-packages"
- pkgpython="${pkglib}/python${PYTHON_VER}/site-packages"
- mkdir -p $pkgpython
- install_py_modules
- done
- else
- # copy custom python site-packages.
- # They need to be organized in a hierarchical set of directories by python major+minor version:
- # - ${python_dir}/python2.5/site-packages/lxml
- # - ${python_dir}/python2.5/site-packages/nose
- # - ${python_dir}/python2.5/site-packages/numpy
- # - ${python_dir}/python2.6/site-packages/lxml
- # - ...
- $cp_cmd -rf "$python_dir"/* "$pkglib"
- fi
-fi
-
-sed -e "s,__build_arch__,$_build_arch,g" -i "" "$scrpath"
-
-# PkgInfo must match bundle type and creator code from Info.plist
-echo "APPLInks" > $package/Contents/PkgInfo
-
-# Pull in extra requirements for Pango and GTK
-PANGOVERSION=$(pkg-config --modversion pango)
-PANGOVERSION_MINOR="$(cut -d. -f2 <<< $PANGOVERSION)"
-
-if [ $PANGOVERSION_MINOR -lt 37 ]; then
- mkdir -p $pkgetc/pango
- touch "$pkgetc/pango/pangorc"
-else
- echo "Newer pango version found, modules are built-in"
-fi
-
-# We use a modified fonts.conf file so only need the dtd
-mkdir -p $pkgshare/xml/fontconfig
-$cp_cmd $LIBPREFIX/share/xml/fontconfig/fonts.dtd $pkgshare/xml/fontconfig
-mkdir -p $pkgetc/fonts
-$cp_cmd -r $LIBPREFIX/etc/fonts/conf.d $pkgetc/fonts/
-mkdir -p $pkgshare/fontconfig
-$cp_cmd -r $LIBPREFIX/share/fontconfig/conf.avail $pkgshare/fontconfig/
-(cd $pkgetc/fonts/conf.d && $ln_cmd ../../../share/fontconfig/conf.avail/10-autohint.conf)
-(cd $pkgetc/fonts/conf.d && $ln_cmd ../../../share/fontconfig/conf.avail/70-no-bitmaps.conf)
-
-if [ $PANGOVERSION_MINOR -lt 37 ]; then
- # Pull in modules
- pango_mod_version=`pkg-config --variable=pango_module_version pango`
- mkdir -p $pkglib/pango/$pango_mod_version/modules
- $cp_cmd $LIBPREFIX/lib/pango/$pango_mod_version/modules/*.so $pkglib/pango/$pango_mod_version/modules/
-fi
-
-gtk_version=`pkg-config --variable=gtk_binary_version gtk+-2.0`
-mkdir -p $pkglib/gtk-2.0/$gtk_version/{engines,immodules,printbackends}
-$cp_cmd -r $LIBPREFIX/lib/gtk-2.0/$gtk_version/* $pkglib/gtk-2.0/$gtk_version/
-
-gdk_pixbuf_version=`pkg-config --variable=gdk_pixbuf_binary_version gdk-pixbuf-2.0`
-mkdir -p $pkglib/gdk-pixbuf-2.0/$gdk_pixbuf_version/loaders
-$cp_cmd $LIBPREFIX/lib/gdk-pixbuf-2.0/$gdk_pixbuf_version/loaders/*.so $pkglib/gdk-pixbuf-2.0/$gdk_pixbuf_version/loaders/
-
-sed -e "s,__gtk_version__,$gtk_version,g" -i "" "$scrpath"
-sed -e "s,__gdk_pixbuf_version__,$gdk_pixbuf_version,g" -i "" "$scrpath"
-#sed -e "s,$LIBPREFIX,@loader_path/..,g" "$LIBPREFIX/etc/pango/pango.modules" > "$pkgetc/pango/pango.modules"
-#sed -e "s,$LIBPREFIX,@loader_path/..,g" "$LIBPREFIX/lib/gtk-2.0/$gtk_version/immodules.cache" > "$pkglib/gtk-2.0/$gtk_version/immodules.cache"
-#sed -e "s,$LIBPREFIX,@loader_path/..,g" "$LIBPREFIX/lib/gdk-pixbuf-2.0/$gtk_version/loaders.cache" > "$pkglib/gdk-pixbuf-2.0/$gtk_version/loaders.cache"
-
-# recreate loaders and modules caches based on actually included modules
-
-# Pango modules
-if [ $PANGOVERSION_MINOR -lt 37 ]; then
- pango-querymodules "$pkglib/pango/$pango_mod_version"/modules/*.so \
- | sed -e "s,$PWD/$pkgresources,@loader_path/..,g" \
- > "$pkgetc"/pango/pango.modules
-fi
-
-# Gtk immodules
-gtk-query-immodules-2.0 "$pkglib/gtk-2.0/$gtk_version"/immodules/*.so \
- | sed -e "s,$PWD/$pkgresources,@loader_path/..,g" \
- > "$pkglib/gtk-2.0/$gtk_version/"immodules.cache
-
-# Gdk pixbuf loaders
-GDK_PIXBUF_MODULEDIR="$pkglib/gdk-pixbuf-2.0/$gtk_version/"loaders gdk-pixbuf-query-loaders \
- | sed -e "s,$pkgresources,@loader_path/..,g" > "$pkglib/gdk-pixbuf-2.0/$gtk_version/"loaders.cache
-
-# GIO modules
-#gio-querymodules "$pkglib/gio/modules"
-
-# Gnome-vfs modules (deprecated, optional in inkscape)
-if [ $WITH_GNOME_VFS ] ; then
- for item in gnome-vfs-mime-magic gnome-vfs-2.0; do
- $cp_cmd -r "$LIBPREFIX/etc/$item" "$pkgetc/"
- done
- for item in modules; do
- mkdir -p "$pkglib/gnome-vfs-2.0/$item"
- $cp_cmd "$LIBPREFIX/lib/gnome-vfs-2.0/$item"/*.so "$pkglib/gnome-vfs-2.0/$item/"
- done
-fi
-
-# ImageMagick version
-IMAGEMAGICKVER="$(pkg-config --modversion ImageMagick)"
-IMAGEMAGICKVER_MAJOR="$(cut -d. -f1 <<< "$IMAGEMAGICKVER")"
-
-# ImageMagick data
-# include *.la files for main libs too
-for item in "$LIBPREFIX/lib/libMagick"*.la; do
- $cp_cmd "$item" "$pkglib/"
-done
-# ImageMagick modules
-$cp_cmd -r "$LIBPREFIX/lib/ImageMagick-$IMAGEMAGICKVER" "$pkglib/"
-$cp_cmd -r "$LIBPREFIX/etc/ImageMagick-$IMAGEMAGICKVER_MAJOR" "$pkgetc/"
-$cp_cmd -r "$LIBPREFIX/share/ImageMagick-$IMAGEMAGICKVER_MAJOR" "$pkgshare/"
-# REQUIRED: remove hard-coded paths from *.la files
-for la_file in "$pkglib/libMagick"*.la; do
- sed -e "s,$LIBPREFIX/lib,,g" -i "" "$la_file"
-done
-for la_file in "$pkglib/ImageMagick-$IMAGEMAGICKVER/modules-Q16/coders"/*.la; do
- sed -e "s,$LIBPREFIX/lib/ImageMagick-$IMAGEMAGICKVER/modules-Q16/coders,,g" -i "" "$la_file"
-done
-for la_file in "$pkglib/ImageMagick-$IMAGEMAGICKVER/modules-Q16/filters"/*.la; do
- sed -e "s,$LIBPREFIX/lib/ImageMagick-$IMAGEMAGICKVER/modules-Q16/filters,,g" -i "" "$la_file"
-done
-sed -e "s,IMAGEMAGICKVER,$IMAGEMAGICKVER,g" -i "" "$scrpath"
-sed -e "s,IMAGEMAGICKVER_MAJOR,$IMAGEMAGICKVER_MAJOR,g" -i "" "$scrpath"
-
-# Copy aspell dictionary files:
-$cp_cmd -r "$LIBPREFIX/lib/aspell-$ASPELL_VERSION" "$pkglib/"
-$cp_cmd -r "$LIBPREFIX/share/aspell" "$pkgshare/"
-
-# Copy Poppler data:
-$cp_cmd -r "$LIBPREFIX/share/poppler" "$pkgshare"
-
-# GLib2 schemas
-mkdir -p "$pkgshare/glib-2.0"
-$cp_cmd -RP "$LIBPREFIX/share/glib-2.0/schemas" "$pkgshare/glib-2.0/"
-
-# Copy all linked libraries into the bundle
-#----------------------------------------------------------
-# get list of *.so modules from python modules
-python_libs=""
-for PYTHON_VER in "2.5" "2.6" "2.7"; do
- python_libs="$python_libs $(find "${pkglib}/python${PYTHON_VER}" -name *.so -or -name *.dylib)"
-done
-[ $verbose_mode ] && echo "Python libs: $python_libs"
-
-# get list of included binary executables
-extra_bin=$(find $pkgbin -exec file {} \; | grep executable | grep -v text | cut -d: -f1)
-[ $verbose_mode ] && echo "Extra binaries: $extra_bin"
-
-# Find out libs we need from MacPorts, Fink, or from a custom install
-# (i.e. $LIBPREFIX), then loop until no changes.
-a=1
-nfiles=0
-endl=true
-while $endl; do
- echo -e "\033[1mLooking for dependencies.\033[0m Round" $a
- libs="$(otool -L \
- $pkglib/gtk-2.0/$gtk_version/{engines,immodules,printbackends}/*.{dylib,so} \
- $pkglib/gdk-pixbuf-2.0/$gtk_version/loaders/*.so \
- $pkglib/pango/$pango_version/modules/*.so \
- $pkglib/gnome-vfs-2.0/modules/*.so \
- $pkglib/gio/modules/*.so \
- $pkglib/ImageMagick-$IMAGEMAGICKVER/modules-Q16/{filters,coders}/*.so \
- $pkglib/*.{dylib,so} \
- $pkgbin/*.so \
- $python_libs \
- $extra_bin \
- $binpath \
- 2>/dev/null | fgrep compatibility | cut -d\( -f1 | grep $LIBPREFIX | sort | uniq)"
- $cp_cmd -f $libs "$pkglib"
- let "a+=1"
- nnfiles="$(ls "$pkglib" | wc -l)"
- if [ $nnfiles = $nfiles ]; then
- endl=false
- else
- nfiles=$nnfiles
- fi
-done
-
-# Some libraries don't seem to have write permission, fix this.
-chmod -R u+w "$package/Contents/Resources/lib"
-
-# Strip libraries and executables if requested
-#----------------------------------------------------------
-if [ "$strip_build" = "true" ]; then
- echo -e "\n\033[1mStripping debugging symbols...\033[0m\n"
- chmod +w "$pkglib"/*.dylib
- strip -x "$pkglib"/*.dylib
- strip -ur "$binpath"
-fi
-
-# Rewrite id and paths of linked libraries
-#----------------------------------------------------------
-# extract level for relative path to libs
-echo -e "\n\033[1mRewriting library paths ...\033[0m\n"
-
-LIBPREFIX_levels="$(echo "$LIBPREFIX"|awk -F/ '{print NF+1}')"
-
-fixlib () {
- if [ ! -d "$1" ]; then
- fileLibs="$(otool -L $1 | fgrep compatibility | cut -d\( -f1)"
- filePath="$(echo "$2" | sed 's/.*Resources//')"
- fileType="$3"
- unset to_id
- case $fileType in
- lib)
- # TODO: verfiy correct/expected install name for relocated libs
- to_id="$package/Contents/Resources$filePath/$1"
- loader_to_res="$(echo $filePath | $awk_cmd -F/ '{for (i=1;i<NF;i++) sub($i,".."); sub($NF,"",$0); print $0}')"
- ;;
- bin)
- loader_to_res="../"
- ;;
- exec)
- loader_to_res="../Resources/"
- ;;
- *)
- echo "Skipping loader_to_res for $1"
- ;;
- esac
- [ $verbose_mode ] && echo ""
- [ $verbose_mode ] && echo "basename: $1"
- [ $verbose_mode ] && echo "dirname: $2"
- [ $verbose_mode ] && echo "filePath: $filePath"
- [ $verbose_mode ] && echo "to_id: $to_id"
- [ $verbose_mode ] && echo "loader_to_res: $loader_to_res"
- [ $to_id ] && install_name_tool -id "$to_id" "$1"
- for lib in $fileLibs; do
- first="$(echo $lib | cut -d/ -f1-3)"
- if [ $first != /usr/lib -a $first != /usr/X11 -a $first != /opt/X11 -a $first != /System/Library ]; then
- lib_prefix_levels="$(echo $lib | $awk_cmd -F/ '{for (i=NF;i>0;i--) if($i=="lib") j=i; print j}')"
- res_to_lib="$(echo $lib | cut -d/ -f$lib_prefix_levels-)"
- unset to_path
- case $fileType in
- lib)
- to_path="@loader_path/$loader_to_res$res_to_lib"
- ;;
- bin)
- to_path="@executable_path/$loader_to_res$res_to_lib"
- ;;
- exec)
- to_path="@executable_path/$loader_to_res$res_to_lib"
- ;;
- *)
- echo "Skipping to_path for $lib in $1"
- ;;
- esac
- [ $verbose_mode ] && echo "lib: $lib"
- [ $verbose_mode ] && echo "lib_prefix_levels: $lib_prefix_levels"
- [ $verbose_mode ] && echo "res_to_lib: $res_to_lib"
- [ $verbose_mode ] && echo "to_path: $to_path"
- [ $verbose_mode ] && echo "install_name_tool arguments: -change $lib $to_path $1"
- [ $to_path ] && install_name_tool -change "$lib" "$to_path" "$1"
- fi
- done
- fi
-}
-
-rewritelibpaths () {
- if [ $_backend = "quartz" ]; then
- echo -n "Rewriting dylib paths for executable ... "
- (cd "$pkgexec"; fixlib "inkscape-bin" "$package/Contents/Resources/../MacOS" "exec")
- echo "done"
- fi
- echo "Rewriting dylib paths for included binaries:"
- for file in $extra_bin; do
- echo -n "Rewriting dylib paths for $file ... "
- (cd "$(dirname $file)" ; fixlib "$(basename $file)" "$(dirname $file)" "bin")
- echo "done"
- done
- echo "Rewriting dylib paths for included libraries:"
- for file in $(find $package \( -name '*.so' -or -name '*.dylib' \) -and -not -ipath '*.dSYM*'); do
- echo -n "Rewriting dylib paths for $file ... "
- (cd "$(dirname $file)" ; fixlib "$(basename $file)" "$(dirname $file)" "lib")
- echo "done"
- done
-}
-
-rewritelibpaths
-
-
-# Include debug info in app bundle
-#----------------------------------------------------------
-# TODO: needs more testing
-
-if [ "$with_dSYM" = "true" ]; then
-
- echo -e "\n\033[1mAdding debug info to app bundle ...\033[0m\n"
-
- # package debug symbols for main binary
- echo "dsymutil $binpath"
- dsymutil "$binpath"
-
- # some of the dependencies have debug symbols in MacPorts ...
- #for item in libbz2.1.0.dylib libexif.12.dylib libopenraw.1.dylib; do
- for item in libbz2.1.0.dylib libexif.12.dylib; do
- echo "dsymutil ${pkglib}/${item}"
- dsymutil "${pkglib}/${item}"
- done
-
- # to debug issues with ImageMagick / libMagick++
- # Note: install ImageMagick with local portfile which includes the 'debug 1.0' portgroup
- # use 'port -n -k upgrade --enforce-variants ImageMagick +debug' to reinstall with debug symbols
- # (keep work dir (port -k) to allow recreation of bundled dSYMs with dsymutil)
- if [[ "$use_port" == "t" ]]; then
- if [[ "$(port echo ImageMagick and active | grep debug)" ]]; then
- # if ImageMagick was installed with debug variant
- for file in $(find $package -name 'libMagick*' -and -name '*.dylib' -and -not -ipath '*.dSYM*'); do
- echo "dsymutil $file"
- dsymutil "$file"
- done
- for file in $(find $package -ipath '*ImageMagick*' -and -name '*.so' -and -not -ipath '*.dSYM*'); do
- echo "dsymutil $file"
- dsymutil "$file"
- done
- else
- echo "Macports' ImageMagick port was not installed with +debug variant."
- fi
- else
- echo "not using MacPorts, skipping recreation of dSYMs included in app bundle."
- fi
-
- # for debug bundle, remove translations and tutorials (download size)
- echo "Removing translation files and tutorials (only for debug builds) ..."
- rm -rf "$pkglocale"/*
- rm -f "${pkgshare}/${binary_name}/tutorials"/*
-
-else
-
- # remove dSYM files if present (local port built with +debug variant from debug port group)
- for item in $(find "${pkglib}/ImageMagick-${IMAGEMAGICKVER}" -name '*.dSYM'); do
- rm -r "$item"
- done
-
-fi
-
-
-# All done.
-#----------------------------------------------------------
-echo "Inkscape.app created successfully."
-
-exit 0
diff --git a/packaging/macosx/osx-build.sh b/packaging/macosx/osx-build.sh
deleted file mode 100755
index 048523143..000000000
--- a/packaging/macosx/osx-build.sh
+++ /dev/null
@@ -1,579 +0,0 @@
-#!/bin/bash
-#
-# Inkscape compilation and packaging script for Mac OS X
-#
-# Please see
-# http://wiki.inkscape.org/wiki/index.php?title=CompilingMacOsX
-# for more complete information
-#
-# Authors:
-# Jean-Olivier Irisson <jo.irisson@gmail.com>
-# Liam P. White <inkscapebrony@gmail.com>
-# ~suv <suv-sf@users.sourceforge.net>
-# with information from
-# Kees Cook
-# Michael Wybrow
-#
-# Copyright (C) 2006-2014
-# Released under GNU GPL, read the file 'COPYING' for more information
-#
-
-############################################################
-
-# User modifiable parameters
-#----------------------------------------------------------
-# Configure flags
-CONFFLAGS="--enable-osxapp"
-# Libraries prefix (Warning: NO trailing slash)
-if [ -z "$LIBPREFIX" ]; then
- LIBPREFIX="/opt/local-x11"
-fi
-
-############################################################
-
-# Help message
-#----------------------------------------------------------
-help()
-{
-
-echo -e "
-Compilation script for Inkscape on Mac OS X.
-
-\033[1mUSAGE\033[0m
- $0 [options] action[s]
-
-\033[1mACTIONS & OPTIONS\033[0m
- \033[1mh,help\033[0m
- display this help message
- \033[1mu,up,update\033[0m
- update an existing checkout from bzr (run bzr pull)
- \033[1ma,auto,autogen\033[0m
- prepare configure script (run autogen.sh). This is only necessary
- for a fresh bzr checkout or after make distclean.
- \033[1mc,conf,configure\033[0m
- configure the build (run configure). Edit your configuration
- options in $0
- \033[1m-g,--debug\033[0m compile with debug symbols and without optimization
- \033[1m-p,--prefix\033[0m specify install prefix (configure step only)
- \033[1mb,build\033[0m
- build Inkscape (run make)
- \033[1m-j,--jobs\033[0m Set the number of parallel execution for make
- \033[1mi,install\033[0m
- install the build products locally, inside the source
- directory (run make install)
- \033[1mp,pack,package\033[0m
- package Inkscape in a double clickable .app bundle
- \033[1m-s,--strip\033[0m remove debugging information in Inkscape package
- \033[1m-v,--verbose\033[0m verbose mode
- \033[1m-py,--with-python\033[0m specify python modules path for inclusion into the app bundle
- \033[1md,dist,distrib\033[0m
- store Inkscape.app in a disk image (dmg) for distribution
- \033[1minfo\033[0m
- create info file for current build
-
-\033[1mEXAMPLES\033[0m
- \033[1m$0 conf build install\033[0m
- configure, build and install a dowloaded version of Inkscape in the default
- directory, keeping debugging information.
- \033[1m$0 u a c b -p ~ i -s -py ~/python_modules/ p d\033[0m
- update an bzr checkout, prepare configure script, configure,
- build and install Inkscape in the user home directory (~).
- Then package Inkscape without debugging information,
- with python packages from ~/python_modules/ and prepare
- a dmg for distribution."
-}
-
-# Parameters
-#----------------------------------------------------------
-# Paths
-HERE="$(pwd)"
-SRCROOT="$(cd ../.. && pwd)" # we are currently in packaging/macosx
-
-# Defaults
-if [ -z "$BUILDPREFIX" ]; then
- BUILDPREFIX="$SRCROOT/build-osxapp/"
-fi
-if [ -z "$INSTALLPREFIX" ]; then
- INSTALLPREFIX="$SRCROOT/inst-osxapp/"
-fi
-BZRUPDATE="f"
-AUTOGEN="f"
-CONFIGURE="f"
-DEBUG_BUILD="f"
-BUILD="f"
-NJOBS=1
-INSTALL="f"
-PACKAGE="f"
-DISTRIB="f"
-BUILD_INFO="f"
-
-STRIP=""
-VERBOSE=""
-PYTHON_MODULES=""
-
-# Parse command line options
-#----------------------------------------------------------
-while [ "$1" != "" ]
-do
- case $1 in
- h|help)
- help
- exit 1 ;;
- all)
- BZRUPDATE="t"
- CONFIGURE="t"
- BUILD="t"
- INSTALL="t"
- PACKAGE="t"
- DISTRIB="t" ;;
- u|up|update)
- BZRUPDATE="t" ;;
- a|auto|autogen)
- AUTOGEN="t" ;;
- c|conf|configure)
- CONFIGURE="t" ;;
- -g|--debug)
- DEBUG_BUILD="t" ;;
- b|build)
- BUILD="t" ;;
- -j|--jobs)
- NJOBS=$2
- shift 1 ;;
- i|install)
- INSTALL="t" ;;
- p|pack|package)
- PACKAGE="t" ;;
- d|dist|distrib)
- DISTRIB="t" ;;
- -p|--prefix)
- INSTALLPREFIX=$2
- shift 1 ;;
- -s|--strip)
- STRIP="-s" ;;
- -py|--with-python)
- PYTHON_MODULES="$2"
- shift 1 ;;
- -v|--verbose)
- VERBOSE="-v" ;;
- info)
- BUILD_INFO="t" ;;
- *)
- echo "Invalid command line option: $1"
- exit 2 ;;
- esac
- shift 1
-done
-
-# Checks
-# ----------------------------------------------------------
-# OS X version
-OSXVERSION="$(/usr/bin/sw_vers | grep ProductVersion | cut -f2)"
-OSXMINORVER="$(cut -d. -f 1,2 <<< $OSXVERSION)"
-OSXMINORNO="$(cut -d. -f2 <<< $OSXVERSION)"
-OSXPOINTNO="$(cut -d. -f3 <<< $OSXVERSION)"
-ARCH="$(uname -a | awk '{print $NF;}')"
-
-# MacPorts for dependencies
-[[ -x $LIBPREFIX/bin/port && -d $LIBPREFIX/etc/macports ]] && export use_port="t"
-
-# guess default build_arch (MacPorts)
-if [ "$OSXMINORNO" -ge "6" ]; then
- if [ "$(sysctl -n hw.cpu64bit_capable 2>/dev/null)" = "1" ]; then
- _build_arch="x86_64"
- else
- _build_arch="i386"
- fi
-else
- if [ $ARCH = "powerpc" ]; then
- _build_arch="ppc"
- else
- _build_arch="i386"
- fi
-fi
-
-# GTK+ backend
-gtk_target="$(pkg-config --variable=target gtk+-2.0 2>/dev/null)"
-
-# Set environment variables
-# ----------------------------------------------------------
-export LIBPREFIX
-
-# Specific environment variables
-# automake seach path
-export CPATH="$LIBPREFIX/include"
-# configure search path
-export CPPFLAGS="$CPPFLAGS -I$LIBPREFIX/include"
-export LDFLAGS="$LDFLAGS -L$LIBPREFIX/lib"
-# compiler arguments
-if [[ $DEBUG_BUILD == "t" ]]; then
- export CFLAGS="-g -O0"
-else
- export CFLAGS="-Os"
-fi
-
-# Use system compiler and compiler flags which are known to work:
-if [ "$OSXMINORNO" -le "4" ]; then
- echo "Note: Inkscape packaging requires Mac OS X 10.5 Leopard or later."
- exit 1
-elif [ "$OSXMINORNO" -eq "5" ]; then
- ## Apple's GCC 4.2.1 on Leopard
- TARGETNAME="LEOPARD"
- TARGETVERSION="10.5"
- export CC="/usr/bin/gcc-4.2"
- export CXX="/usr/bin/g++-4.2"
- #export CLAGS="$CFLAGS -arch $_build_arch"
- export CXXFLAGS="$CFLAGS"
- CONFFLAGS="--disable-openmp $CONFFLAGS"
-elif [ "$OSXMINORNO" -eq "6" ]; then
- ## Apple's LLVM-GCC 4.2.1 on Snow Leopard
- TARGETNAME="SNOW LEOPARD"
- TARGETVERSION="10.6"
- export CC="/usr/bin/llvm-gcc-4.2"
- export CXX="/usr/bin/llvm-g++-4.2"
- #export CLAGS="$CFLAGS -arch $_build_arch"
- export CXXFLAGS="$CFLAGS"
- CONFFLAGS="--disable-openmp $CONFFLAGS"
-elif [ "$OSXMINORNO" -eq "7" ]; then
- ## Apple's clang on Lion and later
- TARGETNAME="LION"
- TARGETVERSION="10.7"
- export CC="/usr/bin/clang"
- export CXX="/usr/bin/clang++"
- #export CLAGS="$CFLAGS -arch $_build_arch"
- export CXXFLAGS="$CFLAGS -Wno-mismatched-tags -Wno-cast-align" #-stdlib=libstdc++ -std=c++11
-elif [ "$OSXMINORNO" -eq "8" ]; then
- ## Apple's clang on Mountain Lion
- TARGETNAME="MOUNTAIN LION"
- TARGETVERSION="10.8"
- export CC="/usr/bin/clang"
- export CXX="/usr/bin/clang++"
- #export CLAGS="$CFLAGS -arch $_build_arch"
- export CXXFLAGS="$CFLAGS -Wno-mismatched-tags -Wno-cast-align -std=c++11 -stdlib=libstdc++"
-elif [ "$OSXMINORNO" -eq "9" ]; then
- ## Apple's clang on Mavericks
- TARGETNAME="MAVERICKS"
- TARGETVERSION="10.9"
- export CC="/usr/bin/clang"
- export CXX="/usr/bin/clang++"
- #export CLAGS="$CFLAGS -arch $_build_arch"
- export CXXFLAGS="$CLAGS -Wno-mismatched-tags -Wno-cast-align -std=c++11 -stdlib=libc++"
-elif [ "$OSXMINORNO" -eq "10" ]; then
- ## Apple's clang on Yosemite
- TARGETNAME="YOSEMITE"
- TARGETVERSION="10.10"
- export CC="/usr/bin/clang"
- export CXX="/usr/bin/clang++"
- #export CLAGS="$CFLAGS -arch $_build_arch"
- export CXXFLAGS="$CLAGS -Wno-mismatched-tags -Wno-cast-align -std=c++11 -stdlib=libc++"
- echo "Note: Detected version of OS X: $TARGETNAME $OSXVERSION"
- echo " Inkscape packaging has not been tested on ${TARGETNAME}."
-else # if [ "$OSXMINORNO" -ge "11" ]; then
- ## Apple's clang after Yosemite?
- TARGETNAME="UNKNOWN"
- TARGETVERSION="10.XX"
- export CC="/usr/bin/clang"
- export CXX="/usr/bin/clang++"
- #export CLAGS="$CFLAGS -arch $_build_arch"
- export CXXFLAGS="$CLAGS -Wno-mismatched-tags -Wno-cast-align -std=c++11 -stdlib=libc++"
- echo "Note: Detected version of OS X: $TARGETNAME $OSXVERSION"
- echo " Inkscape packaging has not been tested on this unknown version of OS X (${OSXVERSION})."
-fi
-
-# Utility functions
-# ----------------------------------------------------------
-getinkscapeinfo () {
-
- osxapp_domain="$BUILDPREFIX/Info"
- INKVERSION="$(defaults read $osxapp_domain CFBundleVersion)"
- [ $? -ne 0 ] && INKVERSION="devel"
- REVISION="$(bzr revno 2>/dev/null)"
- [ $? -ne 0 ] && REVISION="" || REVISION="-r$REVISION"
- BUILDNO=1
-
- TARGETARCH="$_build_arch"
- NEWNAME="Inkscape-$INKVERSION$REVISION-$BUILDNO-$gtk_target-$TARGETVERSION-$TARGETARCH"
- while [ -e "Inkscape-$INKVERSION$REVISION-$BUILDNO-$gtk_target-$TARGETVERSION-$TARGETARCH".dmg ]; do
- let BUILDNO=${BUILDNO}+1
- NEWNAME="Inkscape-$INKVERSION$REVISION-$BUILDNO-$gtk_target-$TARGETVERSION-$TARGETARCH"
- done
- DMGFILE="$NEWNAME.dmg"
- INFOFILE="$NEWNAME-info.txt"
-
-}
-
-checkversion () {
- DEPVER="$(pkg-config --modversion $1 2>/dev/null)"
- if [[ "$?" == "1" ]]; then
- [[ $2 ]] && DEPVER="$(checkversion-port $2)" || unset DEPVER
- fi
- if [[ ! -z "$DEPVER" ]]; then
- [[ $2 ]] && DEPVER="${DEPVER}$(checklicense-port $2)"
- else
- DEPVER="---"
- fi
- echo "$DEPVER"
-}
-
-checkversion-port () {
- if [[ "$use_port" == "t" ]]; then
- PORTVER="$(port echo $1 and active 2>/dev/null | cut -d@ -f2 | cut -d_ -f1)"
- if [ -z "$PORTVER" ]; then
- PORTVER="$(port echo ${1}-devel and active 2>/dev/null | cut -d@ -f2 | cut -d_ -f1)"
- fi
- else
- PORTVER=""
- fi
- echo "$PORTVER"
-}
-
-checklicense-port() {
- if [[ "$use_port" == "t" ]]; then
- PORTLIC="$(port info --license --line $1 2>/dev/null)"
- PORTURL="$(port info --homepage --line $1 2>/dev/null)"
- if [[ -z "$PORTLIC" ]]; then
- PORTLIC="Unknown"
- fi
- _spacer="\t\t"
- PORTLIC="$(echo -ne "${_spacer}(License: ${PORTLIC}, Homepage: ${PORTURL})")"
- else
- PORTLIC="Unknown license"
- fi
- echo "$PORTLIC"
-}
-
-checkversion-py-module () {
- # python -c "import foo; ..."
- echo "TODO."
-}
-
-buildinfofile () {
- [ -z "$INFOFILE" ] && getinkscapeinfo
- # Prepare information file
- echo "Build information on $(date) for $(whoami):
- For OS X Ver $TARGETNAME ($TARGETVERSION)
- Architecture $TARGETARCH
-Build system information:
- OS X Version $OSXVERSION
- Architecture $_build_arch
- MacPorts Ver $(port version 2>/dev/null | cut -f2 -d \ )
- Compiler $($CXX --version | head -1)
- GTK+ backend $gtk_target
-Included dependency versions (build or runtime):
- Glib $(checkversion glib-2.0 glib2)
- Glibmm $(checkversion glibmm-2.4 glibmm)
- GTK $(checkversion gtk+-2.0 gtk2)
- GTKmm $(checkversion gtkmm-2.4 gtkmm)
- GdkPixbuf $(checkversion gdk-pixbuf-2.0 gdk-pixbuf2)
- Pixman $(checkversion pixman-1 libpixman)
- Cairo $(checkversion cairo cairo)
- Cairomm $(checkversion cairomm-1.0 cairomm)
- CairoPDF $(checkversion cairo-pdf cairo)
- Poppler $(checkversion poppler-cairo poppler)
- Fontconfig $(checkversion fontconfig fontconfig)
- Freetype $(checkversion freetype2 freetype)
- Pango $(checkversion pango pango)
- Pangoft2 $(checkversion pangoft2 pango)
- Harfbuzz $(checkversion harfbuzz harfbuzz)
- LibXML2 $(checkversion libxml-2.0 libxml2)
- LibXSLT $(checkversion libxslt libxslt)
- LibSigC++ $(checkversion sigc++-2.0 libsigcxx2)
- Boost $(checkversion boost boost)
- Boehm GC $(checkversion bdw-gc boehmgc)
- GSL $(checkversion gsl gsl)
- LibPNG $(checkversion libpng libpng)
- Librsvg $(checkversion librsvg-2.0 librsvg)
- LittleCMS $(checkversion lcms lcms)
- LittleCMS2 $(checkversion lcms2 lcms2)
- GnomeVFS $(checkversion gnome-vfs-2.0 gnome-vfs)
- DBus $(checkversion dbus-1 dbus)
- Gvfs $(checkversion gvfs gvfs)
- ImageMagick $(checkversion ImageMagick ImageMagick)
- Libexif $(checkversion libexif libexif)
- JPEG $(checkversion jpeg jpeg)
- Icu $(checkversion icu-uc icu)
- LibWPD $(checkversion libwpd-0.9 libwpd)
- LibWPG $(checkversion libwpg-0.2 libwpg)
- Libcdr $(checkversion libcdr-0.0 libcdr)
- Libvisio $(checkversion libvisio-0.0 libvisio)
- Potrace $(checkversion potrace potrace)
-Included python modules:
- lxml $(checkversion py27-lxml py27-lxml)
- numpy $(checkversion py27-numpy py27-numpy)
- sk1libs $(checkversion py27-sk1libs py27-sk1libs)
- UniConvertor $(checkversion py27-uniconvertor py27-uniconvertor)
- Pillow $(checkversion py27-Pillow py27-Pillow)
-" > $INFOFILE
-
- ## TODO: Pending merge adds support for:
- #LibRevenge $(checkversion librevenge-0.0 librevenge-devel)
- #LibWPD $(checkversion libwpd-0.10 libwpd-10.0)
- #LibWPG $(checkversion libwpg-0.3 libwpg-0.3)
- #Libcdr $(checkversion libcdr-0.1 libcdr-0.1)
- #Libvisio $(checkversion libvisio-0.1 libvisio-0.1)
-
- ## TODO: add support for gtk-mac-integration (see osxmenu branch)
- #Gtk-mac-integration $(checkversion gtk-mac-integration gtk-osx-application)
-
- ## TODO: how to realiably add details specific to config and build
- #if [[ ! -z "$ALLCONFFLAGS" ]]; then
- # echo "Configure options:
- # $ALLCONFFLAGS" >> $INFOFILE
- #fi
- #if [[ "$STRIP" == "-s" ]]; then
- # echo "Debug info:
- # no" >> $INFOFILE
- #else
- # echo "Debug info:
- # yes" >> $INFOFILE
- #fi
-}
-
-# Actions
-# ----------------------------------------------------------
-if [[ "$BZRUPDATE" == "t" ]]
-then
- cd $SRCROOT
- if [ -z "$(bzr info | grep "checkout")" ]; then
- echo "repo is unbound (branch)" >&2
- bzr pull
- else
- echo "repo is bound (checkout)" >&2
- echo '... please update bound branch manually.' >&2
- false
- fi
- status=$?
- if [[ $status -ne 0 ]]; then
- echo -e "\nBZR update failed"
- exit $status
- fi
- cd $HERE
-fi
-
-if [[ "$AUTOGEN" == "t" ]]
-then
- cd $SRCROOT
- export NOCONFIGURE=true && ./autogen.sh
- status=$?
- if [[ $status -ne 0 ]]; then
- echo -e "\nautogen failed"
- exit $status
- fi
- cd $HERE
-fi
-
-if [[ "$CONFIGURE" == "t" ]]
-then
- ALLCONFFLAGS="$CONFFLAGS --prefix=$INSTALLPREFIX --enable-localinstall"
- cd $SRCROOT
- if [ ! -d $BUILDPREFIX ]
- then
- mkdir $BUILDPREFIX || exit 1
- fi
- cd $BUILDPREFIX
- if [ ! -f $SRCROOT/configure ]
- then
- echo "Configure script not found in $SRCROOT. Run '$0 autogen' first"
- exit 1
- fi
- $SRCROOT/configure $ALLCONFFLAGS
- status=$?
- if [[ $status -ne 0 ]]; then
- echo -e "\nConfigure failed"
- exit $status
- fi
- cd $HERE
-fi
-
-if [[ "$BUILD" == "t" ]]
-then
- cd $BUILDPREFIX || exit 1
- touch "$SRCROOT/src/main.cpp" "$SRCROOT/src/ui/dialog/aboutbox.cpp"
- make -j $NJOBS
- status=$?
- if [[ $status -ne 0 ]]; then
- echo -e "\nBuild failed"
- exit $status
- fi
- cd $HERE
-fi
-
-if [[ "$INSTALL" == "t" ]]
-then
- cd $BUILDPREFIX || exit 1
- make install
- status=$?
- if [[ $status -ne 0 ]]; then
- echo -e "\nInstall failed"
- exit $status
- fi
- cd $HERE
-fi
-
-if [[ "$PACKAGE" == "t" ]]
-then
-
- # Test the existence of required files
- if [ ! -e $INSTALLPREFIX/bin/inkscape ]
- then
- echo "The inkscape executable \"$INSTALLPREFIX/bin/inkscape\" cound not be found."
- exit 1
- fi
- if [ ! -e $BUILDPREFIX/Info.plist ]
- then
- echo "The file \"$BUILDPREFIX/Info.plist\" could not be found, please re-run configure."
- exit 1
- fi
-
- # Set python command line option (if PYTHON_MODULES location is not empty, then add the python call to the command line, otherwise, stay empty)
- if [[ "$PYTHON_MODULES" != "" ]]; then
- PYTHON_MODULES="-py $PYTHON_MODULES"
- # TODO: fix this: it does not allow for spaces in the PATH under this form and cannot be quoted
- fi
-
- if [[ "$DEBUG_BUILD" = "t" ]]; then
- export with_dSYM="true"
- fi
-
- # Create app bundle
- ./osx-app.sh $STRIP $VERBOSE -b $INSTALLPREFIX/bin/inkscape -p $BUILDPREFIX/Info.plist $PYTHON_MODULES
- status=$?
- if [[ $status -ne 0 ]]; then
- echo -e "\nApplication bundle creation failed"
- exit $status
- fi
-fi
-
-if [[ "$DISTRIB" == "t" ]]
-then
- getinkscapeinfo
- # Create dmg bundle
- ./osx-dmg.sh -p "Inkscape.app"
- status=$?
- if [[ $status -ne 0 ]]; then
- echo -e "\nDisk image creation failed"
- exit $status
- fi
-
- mv Inkscape.dmg $DMGFILE
-
- if [[ "$DEBUG_BUILD" = "t" ]]; then
- mv "$DMGFILE" "${NEWNAME}-debug.dmg"
- ln -s "${NEWNAME}-debug.dmg" "$DMGFILE"
- fi
-
- # Prepare information file
- BUILD_INFO="t"
-fi
-
-if [[ "$BUILD_INFO" == "t" ]]
-then
- buildinfofile
-fi
-
-if [[ "$PACKAGE" == "t" || "$DISTRIB" == "t" ]];
-then
- # open a Finder window here to admire what we just produced
- open .
-fi
-
-exit 0
diff --git a/packaging/macosx/osx-dmg.sh b/packaging/macosx/osx-dmg.sh
deleted file mode 100755
index 95129b8cb..000000000
--- a/packaging/macosx/osx-dmg.sh
+++ /dev/null
@@ -1,178 +0,0 @@
-#!/bin/sh
-#
-# USAGE
-# osx-dmg [-s] -p /path/to/Inkscape.app
-#
-# The script creates a read-write disk image,
-# copies Inkscape in it, customizes its appearance using a
-# previously created .DS_Store file (inkscape.ds_store),
-# and then compresses the disk image for distribution.
-#
-# AUTHORS
-# Jean-Olivier Irisson <jo.irisson@gmail.com>
-# Michael Wybrow <mjwybrow@users.sourceforge.net>
-#
-# Copyright (C) 2006-2007
-# Released under GNU GPL, read the file 'COPYING' for more information
-#
-#
-# How to update the disk image layout:
-# ------------------------------------
-#
-# Modify the 'dmg_background.svg' file and generate a new
-# 'dmg_background.png' file.
-#
-# Update the AppleScript file 'dmg_set_style.scpt'.
-#
-# Run this script with the '-s' option. It will apply the
-# 'dmg_set_style.scpt' AppleScript file, and then prompt the
-# user to check the window size and position before writing
-# a new 'inkscape.ds_store' file to work around a bug in Finder
-# and AppleScript. The updated 'inkscape.ds_store' will need
-# to be commited to the repository when this is done.
-#
-
-# Defaults
-set_ds_store=false
-ds_store_file="inkscape.ds_store"
-package=""
-rw_name="RWinkscape.dmg"
-volume_name="Inkscape"
-tmp_dir="/tmp/dmg-$$"
-auto_open_opt=
-
-# Help message
-#----------------------------------------------------------
-help()
-{
-echo -e "
-Create a custom dmg file to distribute Inkscape
-
-\033[1mUSAGE\033[0m
- $0 [-s] -p /path/to/Inkscape.app
-
-\033[1mOPTIONS\033[0m
- \033[1m-h,--help\033[0m
- display this help message
- \033[1m-s\033[0m
- set a new apperance (do not actually creates a bundle)
- \033[1m-p,--package\033[0m
- set the path to the Inkscape.app that should be copie
- in the dmg
-"
-}
-
-# Parse command line arguments
-while [ "$1" != "" ]
-do
- case $1 in
- -h|--help)
- help
- exit 0 ;;
- -s)
- set_ds_store=true ;;
- -p|--package)
- package="$2"
- shift 1 ;;
- *)
- echo "Invalid command line option"
- exit 2 ;;
- esac
- shift 1
-done
-
-# Safety checks
-if [ ! -e "$package" ]; then
- echo "Cannot find package: $package"
- exit 1
-fi
-
-echo "\n\033[1mCREATE INKSCAPE DISK IMAGE\033[0m\n"
-
-# Create temp directory with desired contents of the release volume.
-rm -rf "$tmp_dir"
-mkdir "$tmp_dir"
-
-echo "\033[1mCopying files to temp directory\033[0m"
-# Inkscape itself
-# copy Inkscape.app
-cp -rf "$package" "$tmp_dir"/
-# link to Applications in order to drag and drop inkscape onto it
-ln -sf /Applications "$tmp_dir"/
-
-# Copy a background image inside a hidden directory so the image file itself won't be shown.
-mkdir "$tmp_dir/.background"
-cp dmg_background.png "$tmp_dir/.background/background.png"
-
-# If the appearance settings are not to be modified we just copy them
-if [ ${set_ds_store} = "false" ]; then
- # Copy the .DS_Store file which contains information about
- # window size, appearance, etc. Most of this can be set
- # with Apple script but involves user intervention so we
- # just keep a copy of the correct settings and use that instead.
- cp $ds_store_file "$tmp_dir/.DS_Store"
- auto_open_opt=-noautoopen
-fi
-
-# Create a new RW image from the temp directory.
-echo "\033[1mCreating a temporary disk image\033[0m"
-rm -f "$rw_name"
-/usr/bin/hdiutil create -srcfolder "$tmp_dir" -volname "$volume_name" -fs HFS+ -fsargs "-c c=64,a=16,e=16" -format UDRW "$rw_name"
-
-# We're finished with the temp directory, remove it.
-rm -rf "$tmp_dir"
-
-# Mount the created image.
-MOUNT_DIR="/Volumes/$volume_name"
-DEV_NAME=`/usr/bin/hdiutil attach -readwrite -noverify $auto_open_opt "$rw_name" | egrep '^/dev/' | sed 1q | awk '{print $1}'`
-
-# Have the disk image window open automatically when mounted.
-bless -openfolder /Volumes/$volume_name
-
-# In case the apperance has to be modified, mount the image and apply the base settings to it via Applescript
-if [ ${set_ds_store} = "true" ]; then
- /usr/bin/osascript dmg_set_style.scpt
-
- open "/Volumes/$volume_name"
- # BUG: one needs to move and close the window manually for the
- # changes in appearance to be retained...
- echo "
- **************************************
- * Please move the disk image window *
- * to the center of the screen *
- * then close it and press enter *
- **************************************
- "
- read -e DUMB
-
- # .DS_Store files aren't written till the disk is unmounted, or finder is restarted.
- hdiutil detach "$DEV_NAME"
- auto_open_opt=-noautoopen
- DEV_NAME=`/usr/bin/hdiutil attach -readwrite -noverify $auto_open_opt "$rw_name" | egrep '^/dev/' | sed 1q | awk '{print $1}'`
- echo
- echo "New $ds_store_file file written. Re-run $0 without the -s option to use it"
- cp /Volumes/$volume_name/.DS_Store ./$ds_store_file
- SetFile -a v ./$ds_store_file
-
- # Unmount the disk image.
- hdiutil detach "$DEV_NAME"
- rm -f "$rw_name"
-
- exit 0
-fi
-
-# Unmount the disk image.
-hdiutil detach "$DEV_NAME"
-
-# Create the offical release image by compressing the RW one.
-echo "\033[1mCompressing the final disk image\033[0m"
-img_name="Inkscape.dmg"
-# TODO make this a command line option
-if [ -e "$img_name" ]; then
- echo "$img_name already exists."
- rm -i "$img_name"
-fi
-/usr/bin/hdiutil convert "$rw_name" -format UDZO -imagekey zlib-level=9 -o "$img_name"
-rm -f "$rw_name"
-
-exit 0
diff --git a/packaging/macosx/ports/_resources/port1.0/group/python-1.0.tcl b/packaging/macosx/ports/_resources/port1.0/group/python-1.0.tcl
deleted file mode 100644
index dd288f57b..000000000
--- a/packaging/macosx/ports/_resources/port1.0/group/python-1.0.tcl
+++ /dev/null
@@ -1,289 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: python-1.0.tcl 118101 2014-03-22 15:16:34Z jmr@macports.org $
-#
-# Copyright (c) 2011 The MacPorts Project
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# 3. Neither the name of The MacPorts Project nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-
-# Usage:
-# name should be of the form py-foo for modules
-# subports pyXY-foo are declared for each XY in python.versions
-
-# for apps (i.e. not named py-foo), no subports will be defined
-# only the python.default_version will be used
-# you can change that in variants if you want
-
-# options:
-# python.versions: which versions this module supports, e.g. "26 27 31"
-# always set this (even if you have your own subport blocks)
-# python.default_version: which version will be installed if the user asks
-# for py-foo rather than pyXY-foo
-#
-# Note: setting these options requires name to be set beforehand
-
-categories python
-
-use_configure no
-# we want the default universal variant added despite not using configure
-universal_variant yes
-
-build.target build
-
-pre-destroot {
- xinstall -d -m 755 ${destroot}${prefix}/share/doc/${subport}/examples
-}
-
-options python.versions python.version python.default_version
-option_proc python.versions python_set_versions
-default python.default_version {[python_get_default_version]}
-default python.version {[python_get_version]}
-
-proc python_get_version {} {
- if {[string match py-* [option name]]} {
- return [string range [option subport] 2 3]
- } else {
- return [option python.default_version]
- }
-}
-proc python_get_default_version {} {
- global python.versions
- if {[info exists python.versions]} {
- if {[lsearch -exact ${python.versions} 27] != -1} {
- return 27
- } else {
- return [lindex ${python.versions} end]
- }
- } else {
- return 27
- }
-}
-
-proc python_set_versions {option action args} {
- if {$action ne "set"} {
- return
- }
- global name subport python._addedcode
- if {[string match py-* $name]} {
- foreach v [option $option] {
- subport py${v}[string trimleft $name py] { depends_lib port:python${v} }
- }
- if {$subport eq $name || $subport eq ""} {
- # set up py-foo as a stub port that depends on the default pyXY-foo
- fetch {}
- checksum {}
- extract {}
- supported_archs noarch
- global python.default_version python.version
- unset python.version
- depends_lib port:py${python.default_version}[string trimleft $name py]
- patch {}
- build {}
- destroot {
- system "echo $name is a stub port > ${destroot}${prefix}/share/doc/${name}/README"
- }
- } else {
- set addcode 1
- }
- } else {
- set addcode 1
- }
- if {[info exists addcode] && ![info exists python._addedcode]} {
- pre-build {
- if {${python.add_archflags}} {
- if {[variant_exists universal] && [variant_isset universal]} {
- build.env-append CFLAGS="${configure.universal_cflags}" \
- OBJCFLAGS="${configure.universal_cflags}" \
- CXXFLAGS="${configure.universal_cxxflags}" \
- LDFLAGS="${configure.universal_ldflags}"
- } else {
- build.env-append CFLAGS="${configure.cc_archflags}" \
- OBJCFLAGS="${configure.objc_archflags}" \
- CXXFLAGS="${configure.cxx_archflags}" \
- FFLAGS="${configure.f77_archflags}" \
- F90FLAGS="${configure.f90_archflags}" \
- FCFLAGS="${configure.fc_archflags}" \
- LDFLAGS="${configure.ld_archflags}"
- }
- }
- if {${python.set_compiler}} {
- foreach var {cc objc cxx fc f77 f90} {
- if {[set configure.${var}] ne ""} {
- build.env-append [string toupper $var]="[set configure.${var}]"
- }
- }
- }
- }
- post-destroot {
- if {${python.link_binaries}} {
- foreach bin [glob -nocomplain -tails -directory "${destroot}${python.prefix}/bin" *] {
- if {[catch {file type "${destroot}${prefix}/bin/${bin}${python.link_binaries_suffix}"}]} {
- ln -s "${python.prefix}/bin/${bin}" "${destroot}${prefix}/bin/${bin}${python.link_binaries_suffix}"
- }
- }
- }
- if {${python.move_binaries}} {
- foreach bin [glob -nocomplain -tails -directory "${destroot}${prefix}/bin" *] {
- move ${destroot}${prefix}/bin/${bin} \
- ${destroot}${prefix}/bin/${bin}${python.move_binaries_suffix}
- }
- }
- }
- set python._addedcode 1
- }
-}
-
-option_proc python.default_version python_set_default_version
-proc python_set_default_version {option action args} {
- if {$action ne "set"} {
- return
- }
- global name subport python.default_version
- if {[string match py-* $name]} {
- if {$subport eq $name || $subport eq ""} {
- depends_lib port:py${python.default_version}[string trimleft $name py]
- }
- } else {
- python.versions ${python.default_version}
- depends_lib-append port:python[option python.default_version]
- }
-}
-
-
-options python.branch python.prefix python.bin python.lib python.libdir \
- python.include python.pkgd
-# for pythonXY, python.branch is X.Y
-default python.branch {[string range ${python.version} 0 end-1].[string index ${python.version} end]}
-default python.prefix {[python_get_defaults prefix]}
-default python.bin {[python_get_defaults bin]}
-default python.lib {[python_get_defaults lib]}
-default python.pkgd {[python_get_defaults pkgd]}
-default python.libdir {${python.prefix}/lib/python${python.branch}}
-default python.include {[python_get_defaults include]}
-
-default build.cmd {"${python.bin} setup.py [python_get_defaults setup_args]"}
-default destroot.cmd {"${python.bin} setup.py [python_get_defaults setup_args]"}
-default destroot.destdir {"--prefix=[python_get_defaults setup_prefix] --root=${destroot}"}
-
-proc python_get_defaults {var} {
- global python.version python.branch prefix python.prefix
- switch -- $var {
- prefix {
- global build_arch frameworks_dir
- set ret "${frameworks_dir}/Python.framework/Versions/${python.branch}"
- if {${python.version} == 25 || (${python.version} == 24 &&
- ![file isfile ${ret}/include/python${python.branch}/Python.h] &&
- ([file isfile ${prefix}/include/python${python.branch}/Python.h]
- || [string match *64* $build_arch]))} {
- set ret $prefix
- }
- return $ret
- }
- bin {
- if {${python.version} != 24} {
- return "${python.prefix}/bin/python${python.branch}"
- } else {
- return "${prefix}/bin/python${python.branch}"
- }
- }
- include {
- set inc_dir "${python.prefix}/include/python${python.branch}"
- if {[file exists ${inc_dir}]} {
- return ${inc_dir}
- } else {
- # look for "${inc_dir}*" and pick the first one found;
- # make assumptions if none are found
- if {[catch {set inc_dirs [glob ${inc_dir}*]}]} {
- if {${python.version} < 30} {
- return ${inc_dir}
- } else {
- return ${inc_dir}m
- }
- } else {
- return [lindex ${inc_dirs} 0]
- }
- }
- }
- lib {
- if {${python.version} != 24 && ${python.version} != 25} {
- return "${python.prefix}/Python"
- } else {
- return "${prefix}/lib/lib${python.branch}.dylib"
- }
- }
- pkgd {
- if {${python.version} != 24} {
- return "${python.prefix}/lib/python${python.branch}/site-packages"
- } else {
- return "${prefix}/lib/python${python.branch}/site-packages"
- }
- }
- setup_args {
- if {${python.version} != 24} {
- return "--no-user-cfg"
- } else {
- return ""
- }
- }
- setup_prefix {
- if {${python.version} != 24} {
- return "${python.prefix}"
- } else {
- return "${prefix}"
- }
- }
- link_binaries {
- if {${python.version} != 24 && ${python.version} != 25} {
- return yes
- } else {
- return no
- }
- }
- move_binaries {
- if {${python.version} == 24 || ${python.version} == 25} {
- return yes
- } else {
- return no
- }
- }
- default {
- error "unknown option $var"
- }
- }
-}
-
-options python.add_archflags
-default python.add_archflags yes
-options python.set_compiler
-default python.set_compiler yes
-
-options python.link_binaries python.link_binaries_suffix
-default python.link_binaries {[python_get_defaults link_binaries]}
-default python.link_binaries_suffix {-${python.branch}}
-
-options python.move_binaries python.move_binaries_suffix
-default python.move_binaries {[python_get_defaults move_binaries]}
-default python.move_binaries_suffix {-${python.branch}}
diff --git a/packaging/macosx/ports/devel/dbus-python/Portfile b/packaging/macosx/ports/devel/dbus-python/Portfile
deleted file mode 100644
index 3242e1cdb..000000000
--- a/packaging/macosx/ports/devel/dbus-python/Portfile
+++ /dev/null
@@ -1,164 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 119928 2014-05-10 20:35:38Z devans@macports.org $
-
-PortSystem 1.0
-
-name dbus-python
-version 1.2.0
-maintainers mcalhoun openmaintainer
-license MIT
-categories devel python
-platforms darwin
-description Python bindings for the dbus message bus system.
-
-set python_versions {24 25 26 27 31 32 33}
-
-# this default version should stay synchronized with python_get_default_version
-# in the python PortGroup
-set python_default_version 27
-
-long_description \
- ${description}
-
-homepage http://www.freedesktop.org/Software/dbus/
-master_sites http://dbus.freedesktop.org/releases/dbus-python/
-
-if {${name} eq ${subport}} {
- # set up dbus-python as a stub port that depends on the default dbus-pythonXY
- fetch {}
- checksum {}
- extract {}
- supported_archs noarch
-
- depends_lib port:${name}${python_default_version}
-
- patch {}
- use_configure no
- build {}
- destroot {
- xinstall -d ${destroot}${prefix}/share/doc/${name}
- system "echo $name is a stub port > ${destroot}${prefix}/share/doc/${name}/README"
- }
-}
-
-foreach python_version ${python_versions} {
-
- set python_branch [string range ${python_version} 0 end-1].[string index ${python_version} end]
-
- subport ${name}${python_version} {
-
- checksums rmd160 cba09a1ca259bfa49c943142110a968241f40360 \
- sha256 e12c6c8b2bf3a9302f75166952cbe41d6b38c3441bbc6767dbd498942316c6df
-
- livecheck.type regex
- livecheck.url ${master_sites}?C=M&O=D
- livecheck.regex ${name}-(\\d+(?:\\.\\d+)*)
-
- # dbus-python 1.x only supports Python 2.6 and above
- if { [vercmp ${python_branch} 2.5] <= 0 } {
- version 0.84.0
-
- checksums rmd160 ec5912e28e49e89ff3f9a3a5a05292c27f11de2c \
- sha256 b85bc7aaf1a976627ca461b1ca7b0c4ddddff709f52fe44c9b2d1d7d8fac5906
-
- livecheck.regex ${name}-(0(?:\\.\\d+)*)
- }
-
- distname ${name}-${version}
-
- depends_build port:pkgconfig
-
- depends_lib \
- path:bin/dbus-daemon:dbus \
- port:dbus-glib \
- port:gettext \
- path:lib/pkgconfig/glib-2.0.pc:glib2 \
- port:libiconv \
- port:python${python_version}
-
- set python_prefix ${frameworks_dir}/Python.framework/Versions/${python_branch}
-
- configure.pre_args-replace --prefix=${prefix} --prefix=${python_prefix}
-
- configure.args \
- --docdir=${prefix}/share/doc/${subport} \
- --includedir=${python_prefix}/include/python${python_branch} \
- --disable-html-docs \
- --disable-api-docs
-
- configure.pkg_config_path ${python_prefix}/lib/pkgconfig
-
- configure.python ${prefix}/bin/python${python_branch}
-
- variant html description {Enable HTML documentation building} {}
-
- # pyXY-epydoc, which is required to build the api, is only supported on certain versions of python
- if { [lsearch -exact {25 26 27} ${python_version}] != -1 } {
- variant doc description {Enable API documentation building} {}
- }
-
- variant examples description {Install examples} {
- post-destroot {
- set docdir ${prefix}/share/doc/${subport}
- set exdir ${docdir}/examples
- xinstall -d ${destroot}${exdir}
- eval xinstall -m 644 [glob ${worksrcpath}/examples/*] ${destroot}${exdir}
- }
- }
-
- # pyXY-gobject, which is required to test, is only supported on certain versions of python
- if { [lsearch -exact {26 27 32 33 34} ${python_version}] != -1 } {
- variant test {}
-
- test.run yes
- test.target check
- }
-
- # ${python_version} and ${python_branch} do not have the right value inside variant block,
- # so put it here.
- if { [variant_isset html] || ([variant_exists doc] && [variant_isset doc]) } {
- depends_build-append port:py${python_version}-docutils
- configure.env-append RST2HTML=${prefix}/bin/rst2html-${python_branch}.py
- }
-
- if { [variant_isset html] } {
- configure.args-replace --disable-html-docs --enable-html-docs
- }
-
- # ${python_version} and ${python_branch} do not have the right value inside variant block,
- # so put it here.
- if { [variant_exists doc] && [variant_isset doc] } {
- depends_build-append port:py${python_version}-epydoc
- configure.args-replace --disable-api-docs --enable-api-docs
- configure.env-append EPYDOC=${prefix}/bin/epydoc-${python_branch}
-
- post-destroot {
- set docdir ${prefix}/share/doc/${subport}
- set apidir ${docdir}/api
- xinstall -d ${destroot}${apidir}
- eval xinstall -m 644 [glob ${worksrcpath}/api/*] ${destroot}${apidir}
- }
- }
-
- # ${python_version} and ${python_branch} do not have the right value inside variant block,
- # so put it here.
- if { [variant_exists test] } {
- if { [variant_isset test] } {
- depends_build-append port:py${python_version}-gobject
- } else {
- pre-test {
- ui_error "test variant must be activated to enable test support."
- error "Please enable test variant."
- }
- }
- }
-
- platform darwin 9 {
- post-patch {
- reinplace "s| -export-symbols-regex.*| \\\\|g" \
- ${worksrcpath}/_dbus_bindings/Makefile.in \
- ${worksrcpath}/_dbus_glib_bindings/Makefile.in
- }
- }
- }
-}
diff --git a/packaging/macosx/ports/devel/inkscape-packaging/Portfile b/packaging/macosx/ports/devel/inkscape-packaging/Portfile
deleted file mode 100644
index de5d9ef35..000000000
--- a/packaging/macosx/ports/devel/inkscape-packaging/Portfile
+++ /dev/null
@@ -1,126 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: $
-
-PortSystem 1.0
-
-name inkscape-packaging
-version 0.91
-revision 101
-
-categories devel graphics
-platforms darwin
-license GPL-2
-supported_archs noarch
-
-maintainers users.sf.net:suv-sf
-
-description Dependencies for Inkscape.app
-long_description ${description}
-
-homepage http://inkscape.org
-
-# this is a metaport - no fetch, configure and build phases
-master_sites
-distfiles
-use_configure no
-build {}
-destroot {
- # Create a dummy file so the port can be successfully activated
- xinstall -d ${destroot}${prefix}/share/doc/${name}
- set docfile [open ${destroot}${prefix}/share/doc/${name}/README.txt "w"]
- puts $docfile "Inkscape packaging ${version} (meta port for all dependencies)\n"
- close $docfile
-}
-
-# build dependencies
-depends_build port:bzr \
- port:autoconf \
- port:automake \
- port:pkgconfig \
- port:libtool \
- port:intltool \
- port:perl5
-
-# core dependencies
-depends_build-append port:popt \
- port:boehmgc \
- port:gsl \
- port:lcms2 \
- port:gtkmm \
- port:boost \
- port:ImageMagick \
- port:gtkspell2 \
- port:aspell-dict-en \
- port:poppler \
- port:potrace
-
-# ports for Inkscape.app
-depends_build-append port:gnome-icon-theme \
- port:gnome-icon-theme-symbolic \
- port:icon-naming-utils \
- port:gnome-themes-standard \
- port:gtk-engines2 \
- port:gtk2-murrine
-
-# ports for python extensions
-depends_build-append port:py27-lxml \
- port:py27-numpy \
- port:py27-Pillow \
- port:py27-uniconvertor \
- port:py27-serial \
- port:py27-pygtk
-
-if {${os.major} <= 10} {
- # ports for python extensions on Snow Leopard and Leopard
- depends_build-append port:py26-lxml \
- port:py26-numpy \
- port:py26-Pillow \
- port:py26-uniconvertor
-}
-if {${os.major} == 9} {
- # ports for python extensions build deps on Leopard
- depends_build-append port:gawk \
- port:py25-lxml \
- port:py25-numpy \
- port:py25-Pillow \
- port:py25-uniconvertor
-}
-if {${os.major} < 9} {
- # we don't support Tiger anymore
- return -code error "Mac OS X <= 10.4 not supported."
-}
-
-# optional features
-variant libwpd conflicts librevenge description {use libpwd for WPG, CDR, VSD} {
-depends_build-append port:libcdr \
- port:libvisio \
- port:libwpg
-}
-
-variant librevenge conflicts libwpd description {use librevenge for WPG, CDR, VSD} {
-depends_build-append port:libcdr-0.1 \
- port:libvisio-0.1 \
- port:libwpg-0.3
-}
-
-variant gnome_vfs description {with gnome-vfs (deprecated)} {
- depends_build-append port:gnome-vfs
-}
-
-variant gvfs description {with gvfs} {
- depends_build-append port:gvfs
-}
-
-variant dbus description {with dbus} {
- depends_build-append port:dbus \
- port:dbus-glib \
- port:dbus-python27
-}
-
-# variants
-universal_variant no
-
-default_variants-append +gnome_vfs +librevenge
-
-# livecheck
-livecheck.type none
diff --git a/packaging/macosx/ports/lang/python25/Portfile b/packaging/macosx/ports/lang/python25/Portfile
deleted file mode 100644
index a27bdaf64..000000000
--- a/packaging/macosx/ports/lang/python25/Portfile
+++ /dev/null
@@ -1,214 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 104926 2013-04-05 04:43:09Z larryv@macports.org $
-
-PortSystem 1.0
-PortGroup select 1.0
-
-name python25
-version 2.5.6
-revision 100
-
-set branch [join [lrange [split ${version} .] 0 1] .]
-categories lang
-license PSF
-platforms darwin
-maintainers nomaintainer
-
-description An interpreted, object-oriented programming language
-long_description Python is an interpreted, interactive, object-oriented \
- programming language.
-
-homepage http://www.python.org/
-master_sites http://ftp.python.org/ftp/python/${version}/
-
-distname Python-${version}
-use_bzip2 yes
-
-checksums md5 5d45979c5f30fb2dd5f067c6b06b88e4 \
- sha1 29f6dd41bf09c5e04311b367cbb7604fa016e699 \
- rmd160 92f0a955971f187a7d50c6422168202ec551bf22
-
-# patch-Lib-distutils-dist.py.diff comes from
-# <http://bugs.python.org/issue1180>
-patchfiles patch-Makefile.pre.in.diff \
- patch-Lib-cgi.py.diff \
- patch-Lib-distutils-dist.py.diff \
- patch-setup.py.diff \
- patch-configure.diff \
- patch-64bit.diff \
- patch-setup.py-disabled_modules.diff \
- patch-mac_ver.diff \
- patch-libedit.diff \
- patch-fwrapv.diff
-
-depends_lib port:gettext port:zlib port:openssl \
- port:sqlite3 port:db46 port:bzip2 \
- port:libedit port:ncurses
-depends_run port:python_select
-
-configure.args --enable-shared \
- --enable-framework=${frameworks_dir} \
- --mandir=${prefix}/share/man \
- --enable-ipv6 \
- --with-cxx=${configure.cxx}
-
-post-patch {
- reinplace "s|__PREFIX__|${prefix}|g" ${worksrcpath}/Lib/cgi.py \
- ${worksrcpath}/setup.py
- reinplace "s|/Applications/MacPython|${applications_dir}/MacPython|g" \
- ${worksrcpath}/Mac/Makefile.in \
- ${worksrcpath}/Mac/IDLE/Makefile.in \
- ${worksrcpath}/Mac/Tools/Doc/setup.py \
- ${worksrcpath}/Mac/PythonLauncher/Makefile.in \
- ${worksrcpath}/Mac/BuildScript/build-installer.py
- reinplace "s|xargs -0 rm -r|xargs -0 rm -rf|g" \
- ${worksrcpath}/Mac/PythonLauncher/Makefile.in
- reinplace "s|__BUILD_ARCH__|${build_arch}|" ${worksrcpath}/configure
- reinplace "s|__UNIVERSAL_CFLAGS__|${configure.universal_cflags}|" ${worksrcpath}/configure
- reinplace "s|__UNIVERSAL_LDFLAGS__|${configure.universal_ldflags}|" \
- ${worksrcpath}/configure \
- ${worksrcpath}/Makefile.pre.in
-
- # http://trac.macports.org/ticket/21517
- system -W ${worksrcpath} "ed - Modules/_localemodule.c < ${filespath}/_localemodule.c.ed"
- system -W ${worksrcpath} "ed - Lib/locale.py < ${filespath}/locale.py.ed"
-}
-
-build.target all
-
-# TODO: From python24, do we still need this?
-# Workaround for case-sensitive file systems
-post-build {
- if { ![file exists ${worksrcpath}/python.exe] } {
- ln -s python ${worksrcpath}/python.exe
- }
-}
-
-test.run yes
-test.target test
-
-destroot.target frameworkinstall maninstall
-
-# ensure that correct compiler is used
-build.args-append MAKE="${build.cmd}" CC="${configure.cc}"
-destroot.args-append MAKE="${destroot.cmd}" CC="${configure.cc}"
-
-select.group python
-select.file ${filespath}/python[string map {. {}} ${branch}]
-
-notes "
-To make python ${branch} the default (i.e. the version you get when you run\
-'python'), please run:
-
-sudo port select --set ${select.group} [file tail ${select.file}]
-"
-
-platform macosx {
-post-destroot {
-
- set framewpath ${frameworks_dir}/Python.framework
- set framewdir ${framewpath}/Versions/${branch}
-
- # Without this, LINKFORSHARED is set to
- # ... $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)
- # (this becomes Python.framework/Versions/2.5/Python) which doesn't
- # quite work (see ticket #15099); instead specifically list the
- # full path to the proper Python framework file (which becomes
- # ${prefix}/Library/Frameworks/Python.framework/Versions/2.5/Python)
- reinplace {s|^\(LINKFORSHARED=.*\)$(PYTHONFRAMEWORKDIR).*$|\1 $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)|} ${destroot}${framewdir}/lib/python${branch}/config/Makefile
-
- foreach dir { lib include } {
- file rename ${destroot}${framewdir}/${dir}/python${branch} ${destroot}${prefix}/${dir}
- ln -s ${prefix}/${dir}/python${branch} ${destroot}${framewdir}/${dir}/python${branch}
- }
- ln -s ${prefix}/share ${destroot}${framewdir}/share
-
- ln -s ${framewdir}/Python ${destroot}${prefix}/lib/libpython${branch}.dylib
-
- file rename ${destroot}${prefix}/share/man/man1/python.1 ${destroot}${prefix}/share/man/man1/python${branch}.1
-
- # delete symlinks without version suffix, use python_select instead to choose version
- foreach bin { python pythonw idle pydoc smtpd.py python-config } {
- file delete ${destroot}${prefix}/bin/${bin}
- }
- foreach bin [list python${branch} pythonw${branch} idle${branch} pydoc${branch} smtpd${branch}.py python${branch}-config] {
- file rename -force ${destroot}${framewdir}/bin/${bin} ${destroot}${prefix}/bin
- ln -s ${prefix}/bin/${bin} ${destroot}${framewdir}/bin/${bin}
- }
-
- foreach dir { Headers Resources Python Versions/Current } {
- file delete ${destroot}${framewpath}/${dir}
- }
-
- # Fix incorrectly-pointed libpython2.5.a symlink, see
- # http://trac.macports.org/ticket/19906
- set python_staticlink ${destroot}${prefix}/lib/python${branch}/config/libpython${branch}.a
- file delete ${python_staticlink}
- ln -s ${framewdir}/Python ${python_staticlink}
-}
-}
-
-platform darwin {
- post-configure {
- # See http://trac.macports.org/ticket/18376
- system -W ${worksrcpath} "ed - pyconfig.h < ${filespath}/pyconfig.ed"
- }
- if {${os.major} >= 10} {
- configure.cppflags-append -D_DARWIN_C_SOURCE
- patchfiles-append patch-pyconfig.h.in.diff
- }
- post-patch {
- if {![file exists /usr/lib/libSystemStubs.a]} {
- reinplace s/-lSystemStubs//g ${worksrcpath}/configure
- }
- }
- post-destroot {
- # remove -arch flags from the config
- reinplace -E {s|-arch [a-z0-9_]+||g} \
- ${destroot}${prefix}/lib/python${branch}/config/Makefile
- }
-}
-
-platform darwin 8 {
- patchfiles-append patch-FSIORefNum.diff
-}
-
-platform darwin 9 {
- configure.cppflags-append -D__DARWIN_UNIX03
-}
-
-platform puredarwin {
- patchfiles-append patch-Modules-posixmodule.c.diff
- configure.args-delete --enable-framework=${frameworks_dir}
- configure.args-append --disable-toolbox-glue --disable-framework
- destroot.target install maninstall
-
-post-build {
- # thin dynamic library to have the same arch as static lib, even after -lSystemStubs
- system "lipo ${worksrcpath}/libpython${branch}.dylib -output ${worksrcpath}/libpython${branch}.dylib -thin `lipo -info ${worksrcpath}/libpython${branch}.a | tail -n 1 | sed -e 's/.*architecture: \\(.*\\)/\\1/'`"
-}
-
-post-destroot {
- # delete symlinks without version suffix, use python_select instead to choose version
- foreach bin { python pythonw idle pydoc smtpd.py python-config } {
- file delete ${destroot}${prefix}/bin/${bin}
- }
-
- file rename ${destroot}${prefix}/share/man/man1/python.1 ${destroot}${prefix}/share/man/man1/python${branch}.1
-}
-}
-
-variant universal {
- if {${configure.sdkroot} == ""} {
- configure.args-append --enable-universalsdk=/
- } else {
- configure.args-append --enable-universalsdk=${configure.sdkroot}
- }
- post-configure {
- system -W ${worksrcpath} "ed - pyconfig.h < ${filespath}/pyconfig.h-universal.ed"
- }
-}
-
-livecheck.type regex
-livecheck.url ${homepage}download/releases/
-livecheck.regex Python (${branch}.\[0-9\]+)
diff --git a/packaging/macosx/ports/lang/python25/files/_localemodule.c.ed b/packaging/macosx/ports/lang/python25/files/_localemodule.c.ed
deleted file mode 100644
index d4617a931..000000000
--- a/packaging/macosx/ports/lang/python25/files/_localemodule.c.ed
+++ /dev/null
@@ -1,2 +0,0 @@
-g/defined(__APPLE__)/s//0/g
-w
diff --git a/packaging/macosx/ports/lang/python25/files/locale.py.ed b/packaging/macosx/ports/lang/python25/files/locale.py.ed
deleted file mode 100644
index 0bdbf3ea0..000000000
--- a/packaging/macosx/ports/lang/python25/files/locale.py.ed
+++ /dev/null
@@ -1,2 +0,0 @@
-g/'darwin', /s///
-w
diff --git a/packaging/macosx/ports/lang/python25/files/patch-64bit.diff b/packaging/macosx/ports/lang/python25/files/patch-64bit.diff
deleted file mode 100644
index 100617df6..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-64bit.diff
+++ /dev/null
@@ -1,1234 +0,0 @@
---- Include/pymactoolbox.h.orig 2004-11-05 18:02:59.000000000 +1100
-+++ Include/pymactoolbox.h 2009-09-10 18:08:58.000000000 +1000
-@@ -8,7 +8,9 @@
- #endif
-
- #include <Carbon/Carbon.h>
-+#ifndef __LP64__
- #include <QuickTime/QuickTime.h>
-+#endif /* !__LP64__ */
-
- /*
- ** Helper routines for error codes and such.
-@@ -18,8 +20,10 @@
- PyObject *PyMac_GetOSErrException(void); /* Initialize & return it */
- PyObject *PyErr_Mac(PyObject *, int); /* Exception with a mac error */
- PyObject *PyMac_Error(OSErr); /* Uses PyMac_GetOSErrException */
-+#ifndef __LP64__
- extern OSErr PyMac_GetFullPathname(FSSpec *, char *, int); /* convert
- fsspec->path */
-+#endif /* !__LP64__ */
- /*
- ** These conversion routines are defined in mactoolboxglue.c itself.
- */
-@@ -83,9 +87,10 @@
- #endif /* USE_TOOLBOX_OBJECT_GLUE */
-
- /* macfs exports */
-+#ifndef __LP64__
- int PyMac_GetFSSpec(PyObject *, FSSpec *); /* argument parser for FSSpec */
- PyObject *PyMac_BuildFSSpec(FSSpec *); /* Convert FSSpec to PyObject */
--
-+#endif /* !__LP64__ */
- int PyMac_GetFSRef(PyObject *, FSRef *); /* argument parser for FSRef */
- PyObject *PyMac_BuildFSRef(FSRef *); /* Convert FSRef to PyObject */
-
-@@ -101,39 +106,54 @@
- extern int CmpInstObj_Convert(PyObject *, ComponentInstance *);
-
- /* Ctl exports */
-+#ifndef __LP64__
- extern PyObject *CtlObj_New(ControlHandle);
- extern int CtlObj_Convert(PyObject *, ControlHandle *);
-+#endif /* !__LP64__ */
-
- /* Dlg exports */
-+#ifndef __LP64__
- extern PyObject *DlgObj_New(DialogPtr);
- extern int DlgObj_Convert(PyObject *, DialogPtr *);
- extern PyObject *DlgObj_WhichDialog(DialogPtr);
-+#endif /* !__LP64__ */
-
- /* Drag exports */
-+#ifndef __LP64__
- extern PyObject *DragObj_New(DragReference);
- extern int DragObj_Convert(PyObject *, DragReference *);
-+#endif /* !__LP64__ */
-
- /* List exports */
-+#ifndef __LP64__
- extern PyObject *ListObj_New(ListHandle);
- extern int ListObj_Convert(PyObject *, ListHandle *);
-+#endif /* !__LP64__ */
-
- /* Menu exports */
-+#ifndef __LP64__
- extern PyObject *MenuObj_New(MenuHandle);
- extern int MenuObj_Convert(PyObject *, MenuHandle *);
-+#endif /* !__LP64__ */
-
- /* Qd exports */
-+#ifndef __LP64__
- extern PyObject *GrafObj_New(GrafPtr);
- extern int GrafObj_Convert(PyObject *, GrafPtr *);
- extern PyObject *BMObj_New(BitMapPtr);
- extern int BMObj_Convert(PyObject *, BitMapPtr *);
- extern PyObject *QdRGB_New(RGBColor *);
- extern int QdRGB_Convert(PyObject *, RGBColor *);
-+#endif /* !__LP64__ */
-
- /* Qdoffs exports */
-+#ifndef __LP64__
- extern PyObject *GWorldObj_New(GWorldPtr);
- extern int GWorldObj_Convert(PyObject *, GWorldPtr *);
-+#endif /* !__LP64__ */
-
- /* Qt exports */
-+#ifndef __LP64__
- extern PyObject *TrackObj_New(Track);
- extern int TrackObj_Convert(PyObject *, Track *);
- extern PyObject *MovieObj_New(Movie);
-@@ -146,6 +166,7 @@
- extern int UserDataObj_Convert(PyObject *, UserData *);
- extern PyObject *MediaObj_New(Media);
- extern int MediaObj_Convert(PyObject *, Media *);
-+#endif /* !__LP64__ */
-
- /* Res exports */
- extern PyObject *ResObj_New(Handle);
-@@ -154,13 +175,17 @@
- extern int OptResObj_Convert(PyObject *, Handle *);
-
- /* TE exports */
-+#ifndef __LP64__
- extern PyObject *TEObj_New(TEHandle);
- extern int TEObj_Convert(PyObject *, TEHandle *);
-+#endif /* !__LP64__ */
-
- /* Win exports */
-+#ifndef __LP64__
- extern PyObject *WinObj_New(WindowPtr);
- extern int WinObj_Convert(PyObject *, WindowPtr *);
- extern PyObject *WinObj_WhichWindow(WindowPtr);
-+#endif /* !__LP64__ */
-
- /* CF exports */
- extern PyObject *CFObj_New(CFTypeRef);
---- Python/mactoolboxglue.c.orig 2006-07-12 02:44:25.000000000 +1000
-+++ Python/mactoolboxglue.c 2009-09-10 19:26:39.000000000 +1000
-@@ -105,7 +105,7 @@
- return PyErr_Mac(PyMac_GetOSErrException(), err);
- }
-
--
-+#ifndef __LP64__
- OSErr
- PyMac_GetFullPathname(FSSpec *fss, char *path, int len)
- {
-@@ -153,6 +153,7 @@
- Py_XDECREF(fs);
- return err;
- }
-+#endif /* !__LP64__ */
-
- /* Convert a 4-char string object argument to an OSType value */
- int
-@@ -417,6 +418,7 @@
- GLUE_NEW(GWorldPtr, GWorldObj_New, "Carbon.Qdoffs")
- GLUE_CONVERT(GWorldPtr, GWorldObj_Convert, "Carbon.Qdoffs")
-
-+#ifndef __LP64__
- GLUE_NEW(Track, TrackObj_New, "Carbon.Qt")
- GLUE_CONVERT(Track, TrackObj_Convert, "Carbon.Qt")
- GLUE_NEW(Movie, MovieObj_New, "Carbon.Qt")
-@@ -429,6 +431,7 @@
- GLUE_CONVERT(UserData, UserDataObj_Convert, "Carbon.Qt")
- GLUE_NEW(Media, MediaObj_New, "Carbon.Qt")
- GLUE_CONVERT(Media, MediaObj_Convert, "Carbon.Qt")
-+#endif /* !__LP64__ */
-
- GLUE_NEW(Handle, ResObj_New, "Carbon.Res")
- GLUE_CONVERT(Handle, ResObj_Convert, "Carbon.Res")
---- Modules/_ctypes/libffi/src/darwin/ffitarget.h.orig 2006-05-26 07:58:05.000000000 +1000
-+++ Modules/_ctypes/libffi/src/darwin/ffitarget.h 2009-09-10 20:15:39.000000000 +1000
-@@ -4,7 +4,7 @@
- * created by configure). This makes is possible to build a univeral binary
- * of ctypes in one go.
- */
--#if defined(__i386__)
-+#if defined(__i386__) || defined(__x86_64__)
-
- #ifndef X86_DARWIN
- #define X86_DARWIN
-@@ -13,7 +13,7 @@
-
- #include "../src/x86/ffitarget.h"
-
--#elif defined(__ppc__)
-+#elif defined(__ppc__) || defined(__ppc64__)
-
- #ifndef POWERPC_DARWIN
- #define POWERPC_DARWIN
---- Mac/Modules/res/_Resmodule.c.orig 2005-07-04 06:59:44.000000000 +1000
-+++ Mac/Modules/res/_Resmodule.c 2009-09-10 20:44:43.000000000 +1000
-@@ -414,6 +414,7 @@
- return _res;
- }
-
-+#ifndef __LP64__
- static PyObject *ResObj_as_Control(ResourceObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
-@@ -431,6 +432,7 @@
- return _res;
-
- }
-+#endif /* !__LP64__ */
-
- static PyObject *ResObj_LoadResource(ResourceObject *_self, PyObject *_args)
- {
-@@ -501,10 +503,12 @@
- PyDoc_STR("(long newSize) -> None")},
- {"GetNextFOND", (PyCFunction)ResObj_GetNextFOND, 1,
- PyDoc_STR("() -> (Handle _rv)")},
-+#ifndef __LP64__
- {"as_Control", (PyCFunction)ResObj_as_Control, 1,
- PyDoc_STR("Return this resource/handle as a Control")},
- {"as_Menu", (PyCFunction)ResObj_as_Menu, 1,
- PyDoc_STR("Return this resource/handle as a Menu")},
-+#endif /* !__LP64__ */
- {"LoadResource", (PyCFunction)ResObj_LoadResource, 1,
- PyDoc_STR("() -> None")},
- {"AutoDispose", (PyCFunction)ResObj_AutoDispose, 1,
-@@ -1152,6 +1156,7 @@
- return _res;
- }
-
-+#ifndef __LP64__
- static PyObject *Res_OpenRFPerm(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
-@@ -1287,6 +1292,7 @@
- _res = Py_None;
- return _res;
- }
-+#endif /* !__LP64__ */
-
- static PyObject *Res_InsertResourceFile(PyObject *_self, PyObject *_args)
- {
-@@ -1327,6 +1333,7 @@
- return _res;
- }
-
-+#ifndef __LP64__
- static PyObject *Res_FSpResourceFileAlreadyOpen(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
-@@ -1413,6 +1420,7 @@
- nextRefNum);
- return _res;
- }
-+#endif /* !__LP64__ */
-
- static PyObject *Res_FSOpenResFile(PyObject *_self, PyObject *_args)
- {
-@@ -1438,6 +1446,7 @@
- return _res;
- }
-
-+#ifndef __LP64__
- static PyObject *Res_FSCreateResFile(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
-@@ -1534,6 +1543,7 @@
- PyMac_BuildFSSpec, &newSpec);
- return _res;
- }
-+#endif /* !__LP64__ */
-
- static PyObject *Res_FSOpenResourceFile(PyObject *_self, PyObject *_args)
- {
-@@ -1637,6 +1647,7 @@
- PyDoc_STR("(short refNum) -> (short _rv)")},
- {"SetResFileAttrs", (PyCFunction)Res_SetResFileAttrs, 1,
- PyDoc_STR("(short refNum, short attrs) -> None")},
-+#ifndef __LP64__
- {"OpenRFPerm", (PyCFunction)Res_OpenRFPerm, 1,
- PyDoc_STR("(Str255 fileName, short vRefNum, SignedByte permission) -> (short _rv)")},
- {"HOpenResFile", (PyCFunction)Res_HOpenResFile, 1,
-@@ -1647,10 +1658,12 @@
- PyDoc_STR("(FSSpec spec, SignedByte permission) -> (short _rv)")},
- {"FSpCreateResFile", (PyCFunction)Res_FSpCreateResFile, 1,
- PyDoc_STR("(FSSpec spec, OSType creator, OSType fileType, ScriptCode scriptTag) -> None")},
-+#endif /* !__LP64__ */
- {"InsertResourceFile", (PyCFunction)Res_InsertResourceFile, 1,
- PyDoc_STR("(SInt16 refNum, RsrcChainLocation where) -> None")},
- {"DetachResourceFile", (PyCFunction)Res_DetachResourceFile, 1,
- PyDoc_STR("(SInt16 refNum) -> None")},
-+#ifndef __LP64__
- {"FSpResourceFileAlreadyOpen", (PyCFunction)Res_FSpResourceFileAlreadyOpen, 1,
- PyDoc_STR("(FSSpec resourceFile) -> (Boolean _rv, Boolean inChain, SInt16 refNum)")},
- {"FSpOpenOrphanResFile", (PyCFunction)Res_FSpOpenOrphanResFile, 1,
-@@ -1659,14 +1672,17 @@
- PyDoc_STR("() -> (SInt16 refNum)")},
- {"GetNextResourceFile", (PyCFunction)Res_GetNextResourceFile, 1,
- PyDoc_STR("(SInt16 curRefNum) -> (SInt16 nextRefNum)")},
-+#endif /* !__LP64__ */
- {"FSOpenResFile", (PyCFunction)Res_FSOpenResFile, 1,
- PyDoc_STR("(FSRef ref, SignedByte permission) -> (short _rv)")},
-+#ifndef __LP64__
- {"FSCreateResFile", (PyCFunction)Res_FSCreateResFile, 1,
- PyDoc_STR("(FSRef parentRef, Buffer nameLength) -> (FSRef newRef, FSSpec newSpec)")},
- {"FSResourceFileAlreadyOpen", (PyCFunction)Res_FSResourceFileAlreadyOpen, 1,
- PyDoc_STR("(FSRef resourceFileRef) -> (Boolean _rv, Boolean inChain, SInt16 refNum)")},
- {"FSCreateResourceFile", (PyCFunction)Res_FSCreateResourceFile, 1,
- PyDoc_STR("(FSRef parentRef, Buffer nameLength, Buffer forkNameLength) -> (FSRef newRef, FSSpec newSpec)")},
-+#endif /* !__LP64__ */
- {"FSOpenResourceFile", (PyCFunction)Res_FSOpenResourceFile, 1,
- PyDoc_STR("(FSRef ref, Buffer forkNameLength, SignedByte permissions) -> (SInt16 refNum)")},
- {"Handle", (PyCFunction)Res_Handle, 1,
---- Mac/Modules/MacOS.c.orig 2006-07-26 05:20:54.000000000 +1000
-+++ Mac/Modules/MacOS.c 2009-09-10 21:47:34.000000000 +1000
-@@ -54,7 +54,7 @@
- do_close(rfobject *self)
- {
- if (self->isclosed ) return;
-- (void)FSClose(self->fRefNum);
-+ (void)FSCloseFork(self->fRefNum);
- self->isclosed = 1;
- }
-
-@@ -68,6 +68,7 @@
- long n;
- PyObject *v;
- OSErr err;
-+ ByteCount n2;
-
- if (self->isclosed) {
- PyErr_SetString(PyExc_ValueError, "Operation on closed file");
-@@ -81,13 +82,13 @@
- if (v == NULL)
- return NULL;
-
-- err = FSRead(self->fRefNum, &n, PyString_AsString(v));
-+ err = FSReadFork(self->fRefNum, fsAtMark, 0, n, PyString_AsString(v), &n2);
- if (err && err != eofErr) {
- PyMac_Error(err);
- Py_DECREF(v);
- return NULL;
- }
-- _PyString_Resize(&v, n);
-+ _PyString_Resize(&v, n2);
- return v;
- }
-
-@@ -109,7 +110,7 @@
- }
- if (!PyArg_ParseTuple(args, "s#", &buffer, &size))
- return NULL;
-- err = FSWrite(self->fRefNum, &size, buffer);
-+ err = FSWriteFork(self->fRefNum, fsAtMark, 0, size, buffer, NULL);
- if (err) {
- PyMac_Error(err);
- return NULL;
-@@ -126,9 +127,9 @@
- static PyObject *
- rf_seek(rfobject *self, PyObject *args)
- {
-- long amount, pos;
-+ long amount;
- int whence = SEEK_SET;
-- long eof;
-+ int mode;
- OSErr err;
-
- if (self->isclosed) {
-@@ -138,35 +139,23 @@
- if (!PyArg_ParseTuple(args, "l|i", &amount, &whence))
- return NULL;
-
-- if ((err = GetEOF(self->fRefNum, &eof)))
-- goto ioerr;
--
- switch (whence) {
- case SEEK_CUR:
-- if ((err = GetFPos(self->fRefNum, &pos)))
-- goto ioerr;
-+ mode = fsFromMark;
- break;
- case SEEK_END:
-- pos = eof;
-+ mode = fsFromLEOF;
- break;
- case SEEK_SET:
-- pos = 0;
-+ mode = fsFromStart;
- break;
- default:
- PyErr_BadArgument();
- return NULL;
- }
-
-- pos += amount;
--
-- /* Don't bother implementing seek past EOF */
-- if (pos > eof || pos < 0) {
-- PyErr_BadArgument();
-- return NULL;
-- }
--
-- if ((err = SetFPos(self->fRefNum, fsFromStart, pos)) ) {
--ioerr:
-+ err = FSSetForkPosition(self->fRefNum, mode, amount);
-+ if (err != noErr) {
- PyMac_Error(err);
- return NULL;
- }
-@@ -182,7 +171,7 @@
- static PyObject *
- rf_tell(rfobject *self, PyObject *args)
- {
-- long where;
-+ long long where;
- OSErr err;
-
- if (self->isclosed) {
-@@ -191,11 +180,13 @@
- }
- if (!PyArg_ParseTuple(args, ""))
- return NULL;
-- if ((err = GetFPos(self->fRefNum, &where)) ) {
-+
-+ err = FSGetForkPosition(self->fRefNum, &where);
-+ if (err != noErr) {
- PyMac_Error(err);
- return NULL;
- }
-- return PyInt_FromLong(where);
-+ return PyLong_FromLongLong(where);
- }
-
- static char rf_close__doc__[] =
-@@ -292,17 +283,61 @@
- static PyObject *
- MacOS_GetCreatorAndType(PyObject *self, PyObject *args)
- {
-- FSSpec fss;
-- FInfo info;
- PyObject *creator, *type, *res;
- OSErr err;
--
-- if (!PyArg_ParseTuple(args, "O&", PyMac_GetFSSpec, &fss))
-+ FSRef ref;
-+ FSCatalogInfo cataloginfo;
-+ FileInfo* finfo;
-+
-+ if (!PyArg_ParseTuple(args, "O&", PyMac_GetFSRef, &ref)) {
-+#ifndef __LP64__
-+ /* This function is documented to take an FSSpec as well,
-+ * which only works in 32-bit mode.
-+ */
-+ PyErr_Clear();
-+ FSSpec fss;
-+ FInfo info;
-+
-+ if (!PyArg_ParseTuple(args, "O&", PyMac_GetFSSpec, &fss))
-+ return NULL;
-+
-+ if ((err = FSpGetFInfo(&fss, &info)) != noErr) {
-+ return PyErr_Mac(MacOS_Error, err);
-+ }
-+ creator = PyString_FromStringAndSize(
-+ (char *)&info.fdCreator, 4);
-+ type = PyString_FromStringAndSize((char *)&info.fdType, 4);
-+ res = Py_BuildValue("OO", creator, type);
-+ Py_DECREF(creator);
-+ Py_DECREF(type);
-+ return res;
-+#else /* __LP64__ */
-+ return NULL;
-+#endif /* __LP64__ */
-+ }
-+
-+ err = FSGetCatalogInfo(&ref,
-+ kFSCatInfoFinderInfo|kFSCatInfoNodeFlags, &cataloginfo,
-+ NULL, NULL, NULL);
-+ if (err != noErr) {
-+ PyErr_Mac(MacOS_Error, err);
- return NULL;
-- if ((err = FSpGetFInfo(&fss, &info)) != noErr)
-- return PyErr_Mac(MacOS_Error, err);
-- creator = PyString_FromStringAndSize((char *)&info.fdCreator, 4);
-- type = PyString_FromStringAndSize((char *)&info.fdType, 4);
-+ }
-+
-+ if ((cataloginfo.nodeFlags & kFSNodeIsDirectoryMask) != 0) {
-+ /* Directory: doesn't have type/creator info.
-+ *
-+ * The specific error code is for backward compatibility with
-+ * earlier versions.
-+ */
-+ PyErr_Mac(MacOS_Error, fnfErr);
-+ return NULL;
-+
-+ }
-+ finfo = (FileInfo*)&(cataloginfo.finderInfo);
-+ creator = PyString_FromStringAndSize((char*)&(finfo->fileCreator), 4);
-+ type = PyString_FromStringAndSize((char*)&(finfo->fileType), 4);
-+
- res = Py_BuildValue("OO", creator, type);
- Py_DECREF(creator);
- Py_DECREF(type);
-@@ -314,20 +349,66 @@
- static PyObject *
- MacOS_SetCreatorAndType(PyObject *self, PyObject *args)
- {
-- FSSpec fss;
- ResType creator, type;
-- FInfo info;
-+ FSRef ref;
-+ FileInfo* finfo;
- OSErr err;
--
-+ FSCatalogInfo cataloginfo;
-+
- if (!PyArg_ParseTuple(args, "O&O&O&",
-+ PyMac_GetFSRef, &ref, PyMac_GetOSType, &creator, PyMac_GetOSType, &type)) {
-+#ifndef __LP64__
-+ /* Try to handle FSSpec arguments, for backward compatibility */
-+ FSSpec fss;
-+ FInfo info;
-+
-+ if (!PyArg_ParseTuple(args, "O&O&O&",
- PyMac_GetFSSpec, &fss, PyMac_GetOSType, &creator, PyMac_GetOSType, &type))
-+ return NULL;
-+
-+ if ((err = FSpGetFInfo(&fss, &info)) != noErr)
-+ return PyErr_Mac(MacOS_Error, err);
-+
-+ info.fdCreator = creator;
-+ info.fdType = type;
-+
-+ if ((err = FSpSetFInfo(&fss, &info)) != noErr)
-+ return PyErr_Mac(MacOS_Error, err);
-+ Py_INCREF(Py_None);
-+ return Py_None;
-+#else /* __LP64__ */
-+ return NULL;
-+#endif /* __LP64__ */
-+ }
-+
-+ err = FSGetCatalogInfo(&ref,
-+ kFSCatInfoFinderInfo|kFSCatInfoNodeFlags, &cataloginfo,
-+ NULL, NULL, NULL);
-+ if (err != noErr) {
-+ PyErr_Mac(MacOS_Error, err);
- return NULL;
-- if ((err = FSpGetFInfo(&fss, &info)) != noErr)
-- return PyErr_Mac(MacOS_Error, err);
-- info.fdCreator = creator;
-- info.fdType = type;
-- if ((err = FSpSetFInfo(&fss, &info)) != noErr)
-- return PyErr_Mac(MacOS_Error, err);
-+ }
-+
-+ if ((cataloginfo.nodeFlags & kFSNodeIsDirectoryMask) != 0) {
-+ /* Directory: doesn't have type/creator info.
-+ *
-+ * The specific error code is for backward compatibility with
-+ * earlier versions.
-+ */
-+ PyErr_Mac(MacOS_Error, fnfErr);
-+ return NULL;
-+
-+ }
-+ finfo = (FileInfo*)&(cataloginfo.finderInfo);
-+ finfo->fileCreator = creator;
-+ finfo->fileType = type;
-+
-+ err = FSSetCatalogInfo(&ref, kFSCatInfoFinderInfo, &cataloginfo);
-+ if (err != noErr) {
-+ PyErr_Mac(MacOS_Error, fnfErr);
-+ return NULL;
-+ }
-+
- Py_INCREF(Py_None);
- return Py_None;
- }
-@@ -399,6 +480,7 @@
- return Py_BuildValue("s", buf);
- }
-
-+#ifndef __LP64__
- static char splash_doc[] = "Open a splash-screen dialog by resource-id (0=close)";
-
- static PyObject *
-@@ -470,6 +552,7 @@
- Py_INCREF(Py_None);
- return Py_None;
- }
-+#endif /* !__LP64__ */
-
- static char WMAvailable_doc[] =
- "True if this process can interact with the display."
-@@ -530,17 +613,18 @@
- {
- OSErr err;
- char *mode = "r";
-- FSSpec fss;
-- SignedByte permission = 1;
-+ FSRef ref;
-+ SInt8 permission = fsRdPerm;
- rfobject *fp;
-+ HFSUniStr255 name;
-
-- if (!PyArg_ParseTuple(args, "O&|s", PyMac_GetFSSpec, &fss, &mode))
-+ if (!PyArg_ParseTuple(args, "O&|s", PyMac_GetFSRef, &ref, &mode))
- return NULL;
- while (*mode) {
- switch (*mode++) {
- case '*': break;
-- case 'r': permission = 1; break;
-- case 'w': permission = 2; break;
-+ case 'r': permission = fsRdPerm; break;
-+ case 'w': permission = fsWrPerm; break;
- case 'b': break;
- default:
- PyErr_BadArgument();
-@@ -548,33 +632,18 @@
- }
- }
-
-- if ( (fp = newrfobject()) == NULL )
-+ err = FSGetResourceForkName(&name);
-+ if (err != noErr) {
-+ PyMac_Error(err);
- return NULL;
-+ }
-
-- err = HOpenRF(fss.vRefNum, fss.parID, fss.name, permission, &fp->fRefNum);
-+ if ( (fp = newrfobject()) == NULL )
-+ return NULL;
-+
-
-- if ( err == fnfErr ) {
-- /* In stead of doing complicated things here to get creator/type
-- ** correct we let the standard i/o library handle it
-- */
-- FILE *tfp;
-- char pathname[PATHNAMELEN];
--
-- if ( (err=PyMac_GetFullPathname(&fss, pathname, PATHNAMELEN)) ) {
-- PyMac_Error(err);
-- Py_DECREF(fp);
-- return NULL;
-- }
--
-- if ( (tfp = fopen(pathname, "w")) == NULL ) {
-- PyMac_Error(fnfErr); /* What else... */
-- Py_DECREF(fp);
-- return NULL;
-- }
-- fclose(tfp);
-- err = HOpenRF(fss.vRefNum, fss.parID, fss.name, permission, &fp->fRefNum);
-- }
-- if ( err ) {
-+ err = FSOpenFork(&ref, name.length, name.unicode, permission, &fp->fRefNum);
-+ if (err != noErr) {
- Py_DECREF(fp);
- PyMac_Error(err);
- return NULL;
-@@ -589,10 +658,12 @@
- {"SetCreatorAndType", MacOS_SetCreatorAndType, 1, setcrtp_doc},
- {"GetErrorString", MacOS_GetErrorString, 1, geterr_doc},
- {"openrf", MacOS_openrf, 1, openrf_doc},
-+#ifndef __LP64__
- {"splash", MacOS_splash, 1, splash_doc},
- {"DebugStr", MacOS_DebugStr, 1, DebugStr_doc},
-- {"GetTicks", MacOS_GetTicks, 1, GetTicks_doc},
- {"SysBeep", MacOS_SysBeep, 1, SysBeep_doc},
-+#endif /* !__LP64__ */
-+ {"GetTicks", MacOS_GetTicks, 1, GetTicks_doc},
- {"WMAvailable", MacOS_WMAvailable, 1, WMAvailable_doc},
- {NULL, NULL} /* Sentinel */
- };
---- Mac/Modules/file/_Filemodule.c.orig 2006-05-29 07:57:35.000000000 +1000
-+++ Mac/Modules/file/_Filemodule.c 2009-09-10 22:48:47.000000000 +1000
-@@ -18,9 +18,11 @@
- #include <Carbon/Carbon.h>
-
- #ifdef USE_TOOLBOX_OBJECT_GLUE
-+#ifndef __LP64__
- extern int _PyMac_GetFSSpec(PyObject *v, FSSpec *spec);
--extern int _PyMac_GetFSRef(PyObject *v, FSRef *fsr);
- extern PyObject *_PyMac_BuildFSSpec(FSSpec *spec);
-+#endif /* !__LP64__ */
-+extern int _PyMac_GetFSRef(PyObject *v, FSRef *fsr);
- extern PyObject *_PyMac_BuildFSRef(FSRef *spec);
-
- #define PyMac_GetFSSpec _PyMac_GetFSSpec
-@@ -28,20 +30,26 @@
- #define PyMac_BuildFSSpec _PyMac_BuildFSSpec
- #define PyMac_BuildFSRef _PyMac_BuildFSRef
- #else
-+#ifndef __LP64__
- extern int PyMac_GetFSSpec(PyObject *v, FSSpec *spec);
--extern int PyMac_GetFSRef(PyObject *v, FSRef *fsr);
- extern PyObject *PyMac_BuildFSSpec(FSSpec *spec);
-+#endif /* !__LP64__ */
-+extern int PyMac_GetFSRef(PyObject *v, FSRef *fsr);
- extern PyObject *PyMac_BuildFSRef(FSRef *spec);
- #endif
-
- /* Forward declarations */
-+#ifndef __LP64__
- static PyObject *FInfo_New(FInfo *itself);
--static PyObject *FSRef_New(FSRef *itself);
- static PyObject *FSSpec_New(FSSpec *itself);
-+#define FSSpec_Convert PyMac_GetFSSpec
-+#endif /* !__LP64__ */
-+static PyObject *FSRef_New(FSRef *itself);
- static PyObject *Alias_New(AliasHandle itself);
-+#ifndef __LP64__
- static int FInfo_Convert(PyObject *v, FInfo *p_itself);
-+#endif /* !__LP64__ */
- #define FSRef_Convert PyMac_GetFSRef
--#define FSSpec_Convert PyMac_GetFSSpec
- static int Alias_Convert(PyObject *v, AliasHandle *p_itself);
-
- /*
-@@ -62,6 +70,7 @@
- /*
- ** Optional fsspec and fsref pointers. None will pass NULL
- */
-+#ifndef __LP64__
- static int
- myPyMac_GetOptFSSpecPtr(PyObject *v, FSSpec **spec)
- {
-@@ -71,6 +80,7 @@
- }
- return PyMac_GetFSSpec(v, *spec);
- }
-+#endif /* !__LP64__ */
-
- static int
- myPyMac_GetOptFSRefPtr(PyObject *v, FSRef **ref)
-@@ -92,6 +102,7 @@
- return Py_BuildValue("u#", itself->unicode, itself->length);
- }
-
-+#ifndef __LP64__
- static OSErr
- _PyMac_GetFullPathname(FSSpec *fss, char *path, int len)
- {
-@@ -135,6 +146,7 @@
- }
- return 0;
- }
-+#endif /* !__LP64__ */
-
-
- static PyObject *File_Error;
-@@ -282,12 +294,28 @@
-
- static PyObject *FSCatalogInfo_get_permissions(FSCatalogInfoObject *self, void *closure)
- {
-- return Py_BuildValue("(llll)", self->ob_itself.permissions[0], self->ob_itself.permissions[1], self->ob_itself.permissions[2], self->ob_itself.permissions[3]);
-+ FSPermissionInfo* info = (FSPermissionInfo*)&(self->ob_itself.permissions);
-+ return Py_BuildValue("(llll)", info->userID, info->groupID, info->userAccess, info->mode);
- }
-
- static int FSCatalogInfo_set_permissions(FSCatalogInfoObject *self, PyObject *v, void *closure)
- {
-- return PyArg_Parse(v, "(llll)", &self->ob_itself.permissions[0], &self->ob_itself.permissions[1], &self->ob_itself.permissions[2], &self->ob_itself.permissions[3])-1;
-+ long userID;
-+ long groupID;
-+ long userAccess;
-+ long mode;
-+ int r;
-+
-+ FSPermissionInfo* info = (FSPermissionInfo*)&(self->ob_itself.permissions);
-+
-+ r = PyArg_Parse(v, "(llll)", &userID, &groupID, &userAccess, &mode);
-+ if (!r) {
-+ return -1;
-+ }
-+ info->userID = userID;
-+ info->groupID = groupID;
-+ info->userAccess = userAccess;
-+ info->mode = mode;
- return 0;
- }
-
-@@ -501,6 +529,7 @@
-
- /* ----------------------- Object type FInfo ------------------------ */
-
-+#ifndef __LP64__
- static PyTypeObject FInfo_Type;
-
- #define FInfo_Check(x) ((x)->ob_type == &FInfo_Type || PyObject_TypeCheck((x), &FInfo_Type))
-@@ -682,6 +711,7 @@
- FInfo_tp_free, /* tp_free */
- };
-
-+#endif /* !__LP64__ */
- /* --------------------- End object type FInfo ---------------------- */
-
-
-@@ -729,6 +759,7 @@
- self->ob_type->tp_free((PyObject *)self);
- }
-
-+#ifndef __LP64__
- static PyObject *Alias_ResolveAlias(AliasObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
-@@ -818,6 +849,7 @@
- wasChanged);
- return _res;
- }
-+#endif /* !__LP64__ */
-
- static PyObject *Alias_FSResolveAliasWithMountFlags(AliasObject *_self, PyObject *_args)
- {
-@@ -891,6 +923,7 @@
- }
-
- static PyMethodDef Alias_methods[] = {
-+#ifndef __LP64__
- {"ResolveAlias", (PyCFunction)Alias_ResolveAlias, 1,
- PyDoc_STR("(FSSpec fromFile) -> (FSSpec target, Boolean wasChanged)")},
- {"GetAliasInfo", (PyCFunction)Alias_GetAliasInfo, 1,
-@@ -899,6 +932,7 @@
- PyDoc_STR("(FSSpec fromFile, unsigned long mountFlags) -> (FSSpec target, Boolean wasChanged)")},
- {"FollowFinderAlias", (PyCFunction)Alias_FollowFinderAlias, 1,
- PyDoc_STR("(FSSpec fromFile, Boolean logon) -> (FSSpec target, Boolean wasChanged)")},
-+#endif /* !__LP64__ */
- {"FSResolveAliasWithMountFlags", (PyCFunction)Alias_FSResolveAliasWithMountFlags, 1,
- PyDoc_STR("(FSRef fromFile, unsigned long mountFlags) -> (FSRef target, Boolean wasChanged)")},
- {"FSResolveAlias", (PyCFunction)Alias_FSResolveAlias, 1,
-@@ -1033,6 +1067,7 @@
-
-
- /* ----------------------- Object type FSSpec ----------------------- */
-+#ifndef __LP64__
-
- static PyTypeObject FSSpec_Type;
-
-@@ -1488,6 +1523,7 @@
- FSSpec_tp_free, /* tp_free */
- };
-
-+#endif /* !__LP64__ */
- /* --------------------- End object type FSSpec --------------------- */
-
-
-@@ -1568,7 +1604,9 @@
- FSCatalogInfoBitmap whichInfo;
- FSCatalogInfo catalogInfo;
- FSRef newRef;
-+#ifndef __LP64__
- FSSpec newSpec;
-+#endif /* !__LP64__ */
- if (!PyArg_ParseTuple(_args, "u#lO&",
- &nameLength__in__, &nameLength__in_len__,
- &whichInfo,
-@@ -1580,11 +1618,20 @@
- whichInfo,
- &catalogInfo,
- &newRef,
-- &newSpec);
-+#ifndef __LP64__
-+ &newSpec
-+#else
-+ NULL
-+#endif /* !__LP64__ */
-+ );
- if (_err != noErr) return PyMac_Error(_err);
-+#ifndef __LP64__
- _res = Py_BuildValue("O&O&",
- FSRef_New, &newRef,
- FSSpec_New, &newSpec);
-+#else
-+ _res = Py_BuildValue("O&O", FSRef_New, &newRef, Py_None);
-+#endif /* !__LP64__ */
- return _res;
- }
-
-@@ -1598,7 +1645,9 @@
- FSCatalogInfoBitmap whichInfo;
- FSCatalogInfo catalogInfo;
- FSRef newRef;
-+#ifndef __LP64__
- FSSpec newSpec;
-+#endif /* !__LP64__ */
- UInt32 newDirID;
- if (!PyArg_ParseTuple(_args, "u#lO&",
- &nameLength__in__, &nameLength__in_len__,
-@@ -1611,13 +1660,25 @@
- whichInfo,
- &catalogInfo,
- &newRef,
-+#ifndef __LP64__
- &newSpec,
-+#else
-+ NULL,
-+#endif /* !__LP64__ */
- &newDirID);
- if (_err != noErr) return PyMac_Error(_err);
-+
-+#ifndef __LP64__
- _res = Py_BuildValue("O&O&l",
- FSRef_New, &newRef,
- FSSpec_New, &newSpec,
- newDirID);
-+#else
-+ _res = Py_BuildValue("O&Ol",
-+ FSRef_New, &newRef,
-+ Py_None,
-+ newDirID);
-+#endif /* !__LP64__ */
- return _res;
- }
-
-@@ -1699,7 +1760,9 @@
- FSCatalogInfoBitmap whichInfo;
- FSCatalogInfo catalogInfo;
- HFSUniStr255 outName;
-+#ifndef __LP64__
- FSSpec fsSpec;
-+#endif /* !__LP64__ */
- FSRef parentRef;
- if (!PyArg_ParseTuple(_args, "l",
- &whichInfo))
-@@ -1708,14 +1771,26 @@
- whichInfo,
- &catalogInfo,
- &outName,
-+#ifndef __LP64__
- &fsSpec,
-+#else
-+ NULL,
-+#endif /* !__LP64__ */
- &parentRef);
- if (_err != noErr) return PyMac_Error(_err);
-+#ifndef __LP64__
- _res = Py_BuildValue("O&O&O&O&",
- FSCatalogInfo_New, &catalogInfo,
- PyMac_BuildHFSUniStr255, &outName,
- FSSpec_New, &fsSpec,
- FSRef_New, &parentRef);
-+#else
-+ _res = Py_BuildValue("O&O&OO&",
-+ FSCatalogInfo_New, &catalogInfo,
-+ PyMac_BuildHFSUniStr255, &outName,
-+ Py_None,
-+ FSRef_New, &parentRef);
-+#endif /* !__LP64__ */
- return _res;
- }
-
-@@ -1784,7 +1859,7 @@
- UniCharCount forkNameLength__len__;
- int forkNameLength__in_len__;
- SInt8 permissions;
-- SInt16 forkRefNum;
-+ FSIORefNum forkRefNum;
- if (!PyArg_ParseTuple(_args, "u#b",
- &forkNameLength__in__, &forkNameLength__in_len__,
- &permissions))
-@@ -2034,7 +2109,7 @@
-
- /* --------------------- End object type FSRef ---------------------- */
-
--
-+#ifndef __LP64__
- static PyObject *File_UnmountVol(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
-@@ -2562,6 +2637,7 @@
- FSSpec_New, &spec);
- return _res;
- }
-+#endif /* !__LP64__ */
-
- static PyObject *File_FSGetForkPosition(PyObject *_self, PyObject *_args)
- {
-@@ -2785,6 +2861,7 @@
- return _res;
- }
-
-+#ifndef __LP64__
- static PyObject *File_NewAlias(PyObject *_self, PyObject *_args)
- {
- PyObject *_res = NULL;
-@@ -2933,6 +3010,7 @@
- wasAliased);
- return _res;
- }
-+#endif /* !__LP64__ */
-
- static PyObject *File_FSNewAlias(PyObject *_self, PyObject *_args)
- {
-@@ -3050,6 +3128,7 @@
- }
-
- static PyMethodDef File_methods[] = {
-+#ifndef __LP64__
- {"UnmountVol", (PyCFunction)File_UnmountVol, 1,
- PyDoc_STR("(Str63 volName, short vRefNum) -> None")},
- {"FlushVol", (PyCFunction)File_FlushVol, 1,
-@@ -3100,6 +3179,7 @@
- PyDoc_STR("(short vRefNum, long dirID, Str255 oldName, long newDirID, Str255 newName) -> None")},
- {"FSMakeFSSpec", (PyCFunction)File_FSMakeFSSpec, 1,
- PyDoc_STR("(short vRefNum, long dirID, Str255 fileName) -> (FSSpec spec)")},
-+#endif /* !__LP64__ */
- {"FSGetForkPosition", (PyCFunction)File_FSGetForkPosition, 1,
- PyDoc_STR("(SInt16 forkRefNum) -> (SInt64 position)")},
- {"FSSetForkPosition", (PyCFunction)File_FSSetForkPosition, 1,
-@@ -3124,6 +3204,7 @@
- PyDoc_STR("(UInt8 * path, FNMessage message, OptionBits flags) -> None")},
- {"FNNotifyAll", (PyCFunction)File_FNNotifyAll, 1,
- PyDoc_STR("(FNMessage message, OptionBits flags) -> None")},
-+#ifndef __LP64__
- {"NewAlias", (PyCFunction)File_NewAlias, 1,
- PyDoc_STR("(FSSpec fromFile, FSSpec target) -> (AliasHandle alias)")},
- {"NewAliasMinimalFromFullPath", (PyCFunction)File_NewAliasMinimalFromFullPath, 1,
-@@ -3136,6 +3217,7 @@
- PyDoc_STR("(FSSpec fromFile, FSSpec target, AliasHandle alias) -> (Boolean wasChanged)")},
- {"ResolveAliasFileWithMountFlagsNoUI", (PyCFunction)File_ResolveAliasFileWithMountFlagsNoUI, 1,
- PyDoc_STR("(FSSpec theSpec, Boolean resolveAliasChains, unsigned long mountFlags) -> (FSSpec theSpec, Boolean targetIsFolder, Boolean wasAliased)")},
-+#endif /* !__LP64__ */
- {"FSNewAlias", (PyCFunction)File_FSNewAlias, 1,
- PyDoc_STR("(FSRef fromFile, FSRef target) -> (AliasHandle inAlias)")},
- {"FSResolveAliasFileWithMountFlags", (PyCFunction)File_FSResolveAliasFileWithMountFlags, 1,
-@@ -3150,7 +3232,7 @@
- };
-
-
--
-+#ifndef __LP64__
- int
- PyMac_GetFSSpec(PyObject *v, FSSpec *spec)
- {
-@@ -3188,12 +3270,15 @@
- }
- return 0;
- }
-+#endif /* !__LP64__ */
-
- int
- PyMac_GetFSRef(PyObject *v, FSRef *fsr)
- {
- OSStatus err;
-+#ifndef __LP64__
- FSSpec fss;
-+#endif /* !__LP64__ */
-
- if (FSRef_Check(v)) {
- *fsr = ((FSRefObject *)v)->ob_itself;
-@@ -3211,6 +3296,7 @@
- return !err;
- }
- /* XXXX Should try unicode here too */
-+#ifndef __LP64__
- /* Otherwise we try to go via an FSSpec */
- if (FSSpec_Check(v)) {
- fss = ((FSSpecObject *)v)->ob_itself;
-@@ -3219,15 +3305,18 @@
- PyMac_Error(err);
- return 0;
- }
-+#endif /* !__LP64__ */
- PyErr_SetString(PyExc_TypeError, "FSRef, FSSpec or pathname required");
- return 0;
- }
-
-+#ifndef __LP64__
- extern PyObject *
- PyMac_BuildFSSpec(FSSpec *spec)
- {
- return FSSpec_New(spec);
- }
-+#endif /* !__LP64__ */
-
- extern PyObject *
- PyMac_BuildFSRef(FSRef *spec)
-@@ -3242,10 +3331,11 @@
- PyObject *d;
-
-
--
-+#ifndef __LP64__
- PyMac_INIT_TOOLBOX_OBJECT_NEW(FSSpec *, PyMac_BuildFSSpec);
-- PyMac_INIT_TOOLBOX_OBJECT_NEW(FSRef *, PyMac_BuildFSRef);
- PyMac_INIT_TOOLBOX_OBJECT_CONVERT(FSSpec, PyMac_GetFSSpec);
-+#endif /* !__LP64__ */
-+ PyMac_INIT_TOOLBOX_OBJECT_NEW(FSRef *, PyMac_BuildFSRef);
- PyMac_INIT_TOOLBOX_OBJECT_CONVERT(FSRef, PyMac_GetFSRef);
-
-
-@@ -3262,6 +3352,7 @@
- /* Backward-compatible name */
- Py_INCREF(&FSCatalogInfo_Type);
- PyModule_AddObject(m, "FSCatalogInfoType", (PyObject *)&FSCatalogInfo_Type);
-+#ifndef __LP64__
- FInfo_Type.ob_type = &PyType_Type;
- if (PyType_Ready(&FInfo_Type) < 0) return;
- Py_INCREF(&FInfo_Type);
-@@ -3269,6 +3360,7 @@
- /* Backward-compatible name */
- Py_INCREF(&FInfo_Type);
- PyModule_AddObject(m, "FInfoType", (PyObject *)&FInfo_Type);
-+#endif /* !__LP64__ */
- Alias_Type.ob_type = &PyType_Type;
- if (PyType_Ready(&Alias_Type) < 0) return;
- Py_INCREF(&Alias_Type);
-@@ -3276,6 +3368,7 @@
- /* Backward-compatible name */
- Py_INCREF(&Alias_Type);
- PyModule_AddObject(m, "AliasType", (PyObject *)&Alias_Type);
-+#ifndef __LP64__
- FSSpec_Type.ob_type = &PyType_Type;
- if (PyType_Ready(&FSSpec_Type) < 0) return;
- Py_INCREF(&FSSpec_Type);
-@@ -3283,6 +3376,7 @@
- /* Backward-compatible name */
- Py_INCREF(&FSSpec_Type);
- PyModule_AddObject(m, "FSSpecType", (PyObject *)&FSSpec_Type);
-+#endif /* !__LP64__ */
- FSRef_Type.ob_type = &PyType_Type;
- if (PyType_Ready(&FSRef_Type) < 0) return;
- Py_INCREF(&FSRef_Type);
-Index: Lib/plat-mac/macresource.py
-===================================================================
---- Lib/plat-mac/macresource.py (revision 74680)
-+++ Lib/plat-mac/macresource.py (revision 74681)
-@@ -79,8 +79,8 @@
- AppleSingle file"""
- try:
- refno = Res.FSpOpenResFile(pathname, 1)
-- except Res.Error, arg:
-- if arg[0] in (-37, -39):
-+ except (AttributeError, Res.Error), arg:
-+ if isinstance(arg, AttributeError) or arg[0] in (-37, -39):
- # No resource fork. We may be on OSX, and this may be either
- # a data-fork based resource file or a AppleSingle file
- # from the CVS repository.
-@@ -106,8 +106,8 @@
- try:
- refno = Res.FSpOpenResFile(pathname, 1)
- Res.CloseResFile(refno)
-- except Res.Error, arg:
-- if arg[0] in (-37, -39):
-+ except (AttributeError, Res.Error), arg:
-+ if isinstance(arg, AttributeError) or arg[0] in (-37, -39):
- # No resource fork. We may be on OSX, and this may be either
- # a data-fork based resource file or a AppleSingle file
- # from the CVS repository.
-Index: Lib/plat-mac/applesingle.py
-===================================================================
---- Lib/plat-mac/applesingle.py (revision 74680)
-+++ Lib/plat-mac/applesingle.py (revision 74681)
-@@ -119,8 +119,13 @@
- if not hasattr(infile, 'read'):
- if isinstance(infile, Carbon.File.Alias):
- infile = infile.ResolveAlias()[0]
-- if isinstance(infile, (Carbon.File.FSSpec, Carbon.File.FSRef)):
-- infile = infile.as_pathname()
-+
-+ if hasattr(Carbon.File, "FSSpec"):
-+ if isinstance(infile, (Carbon.File.FSSpec, Carbon.File.FSRef)):
-+ infile = infile.as_pathname()
-+ else:
-+ if isinstance(infile, Carbon.File.FSRef):
-+ infile = infile.as_pathname()
- infile = open(infile, 'rb')
-
- asfile = AppleSingle(infile, verbose=verbose)
-Index: Mac/scripts/BuildApplet.py
-===================================================================
---- Mac/scripts/BuildApplet.py (revision 74680)
-+++ Mac/scripts/BuildApplet.py (revision 74681)
-@@ -12,7 +12,10 @@
-
- import os
- import MacOS
--import EasyDialogs
-+try:
-+ import EasyDialogs
-+except ImportError:
-+ EasyDialogs = None
- import buildtools
- import getopt
-
-@@ -32,7 +35,10 @@
- try:
- buildapplet()
- except buildtools.BuildError, detail:
-- EasyDialogs.Message(detail)
-+ if EasyDialogs is None:
-+ print detail
-+ else:
-+ EasyDialogs.Message(detail)
-
-
- def buildapplet():
-@@ -46,6 +52,10 @@
- # Ask for source text if not specified in sys.argv[1:]
-
- if not sys.argv[1:]:
-+ if EasyDialogs is None:
-+ usage()
-+ sys.exit(1)
-+
- filename = EasyDialogs.AskFileForOpen(message='Select Python source or applet:',
- typeList=('TEXT', 'APPL'))
- if not filename:
-Index: Lib/plat-mac/buildtools.py
-===================================================================
---- Lib/plat-mac/buildtools.py (revision 74680)
-+++ Lib/plat-mac/buildtools.py (revision 74681)
-@@ -15,7 +15,10 @@
- import MacOS
- import macostools
- import macresource
--import EasyDialogs
-+try:
-+ import EasyDialogs
-+except ImportError:
-+ EasyDialogs = None
- import shutil
-
-
-@@ -67,9 +70,13 @@
- rsrcname=None, others=[], raw=0, progress="default", destroot=""):
-
- if progress == "default":
-- progress = EasyDialogs.ProgressBar("Processing %s..."%os.path.split(filename)[1], 120)
-- progress.label("Compiling...")
-- progress.inc(0)
-+ if EasyDialogs is None:
-+ print "Compiling %s"%(os.path.split(filename)[1],)
-+ process = None
-+ else:
-+ progress = EasyDialogs.ProgressBar("Processing %s..."%os.path.split(filename)[1], 120)
-+ progress.label("Compiling...")
-+ progress.inc(0)
- # check for the script name being longer than 32 chars. This may trigger a bug
- # on OSX that can destroy your sourcefile.
- if '#' in os.path.split(filename)[1]:
-@@ -119,7 +126,11 @@
- if MacOS.runtimemodel == 'macho':
- raise BuildError, "No updating yet for MachO applets"
- if progress:
-- progress = EasyDialogs.ProgressBar("Updating %s..."%os.path.split(filename)[1], 120)
-+ if EasyDialogs is None:
-+ print "Updating %s"%(os.path.split(filename)[1],)
-+ progress = None
-+ else:
-+ progress = EasyDialogs.ProgressBar("Updating %s..."%os.path.split(filename)[1], 120)
- else:
- progress = None
- if not output:
diff --git a/packaging/macosx/ports/lang/python25/files/patch-FSIORefNum.diff b/packaging/macosx/ports/lang/python25/files/patch-FSIORefNum.diff
deleted file mode 100644
index 6f8ac6608..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-FSIORefNum.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- Mac/Modules/file/_Filemodule.c.orig 2009-09-12 15:55:59.000000000 +1000
-+++ Mac/Modules/file/_Filemodule.c 2009-09-12 16:12:07.000000000 +1000
-@@ -7,6 +7,8 @@
-
- #include "pymactoolbox.h"
-
-+typedef SInt16 FSIORefNum;
-+
- /* Macro to test whether a weak-loaded CFM function exists */
- #define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL ) {\
- PyErr_SetString(PyExc_NotImplementedError, \
diff --git a/packaging/macosx/ports/lang/python25/files/patch-Lib-cgi.py.diff b/packaging/macosx/ports/lang/python25/files/patch-Lib-cgi.py.diff
deleted file mode 100644
index 8153bebbd..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-Lib-cgi.py.diff
+++ /dev/null
@@ -1,18 +0,0 @@
---- Lib/cgi.py.orig 2006-08-10 19:41:07.000000000 +0200
-+++ Lib/cgi.py 2007-08-21 15:36:54.000000000 +0200
-@@ -1,13 +1,6 @@
--#! /usr/local/bin/python
-+#! __PREFIX__/bin/python2.5
-
--# NOTE: the above "/usr/local/bin/python" is NOT a mistake. It is
--# intentionally NOT "/usr/bin/env python". On many systems
--# (e.g. Solaris), /usr/local/bin is not in $PATH as passed to CGI
--# scripts, and /usr/local/bin is the default directory where Python is
--# installed, so /usr/bin/env would be unable to find python. Granted,
--# binary installations by Linux vendors often install Python in
--# /usr/bin. So let those vendors patch cgi.py to match their choice
--# of installation.
-+# NOTE: The original #!/usr/local/bin/python patched for MacPorts installation
-
- """Support module for CGI (Common Gateway Interface) scripts.
-
diff --git a/packaging/macosx/ports/lang/python25/files/patch-Lib-distutils-dist.py.diff b/packaging/macosx/ports/lang/python25/files/patch-Lib-distutils-dist.py.diff
deleted file mode 100644
index 961a8ad28..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-Lib-distutils-dist.py.diff
+++ /dev/null
@@ -1,51 +0,0 @@
---- Lib/distutils/dist.py.orig 2005-03-23 11:54:36.000000000 -0700
-+++ Lib/distutils/dist.py 2008-07-25 21:27:15.000000000 -0600
-@@ -57,6 +57,7 @@
- ('quiet', 'q', "run quietly (turns verbosity off)"),
- ('dry-run', 'n', "don't actually do anything"),
- ('help', 'h', "show detailed help message"),
-+ ('no-user-cfg', None,'ignore pydistutils.cfg in your home directory'),
- ]
-
- # 'common_usage' is a short (2-3 line) string describing the common
-@@ -264,6 +265,12 @@
- else:
- sys.stderr.write(msg + "\n")
-
-+ # no-user-cfg is handled before other command line args
-+ # because other args override the config files, and this
-+ # one is needed before we can load the config files.
-+ # If attrs['script_args'] wasn't passed, assume false.
-+ self.want_user_cfg = '--no-user-cfg' not in (self.script_args or [])
-+
- self.finalize_options()
-
- # __init__ ()
-@@ -324,6 +331,9 @@
- Distutils __inst__.py file lives), a file in the user's home
- directory named .pydistutils.cfg on Unix and pydistutils.cfg
- on Windows/Mac, and setup.cfg in the current directory.
-+
-+ The file in the user's home directory can be disabled with the
-+ --no-user-cfg option.
- """
- files = []
- check_environ()
-@@ -343,7 +353,7 @@
- user_filename = "pydistutils.cfg"
-
- # And look for the user config file
-- if os.environ.has_key('HOME'):
-+ if self.want_user_cfg and os.environ.has_key('HOME'):
- user_file = os.path.join(os.environ.get('HOME'), user_filename)
- if os.path.isfile(user_file):
- files.append(user_file)
-@@ -353,6 +363,8 @@
- if os.path.isfile(local_file):
- files.append(local_file)
-
-+ if DEBUG:
-+ print "using config files: %s" % ', '.join(files)
- return files
-
- # find_config_files ()
diff --git a/packaging/macosx/ports/lang/python25/files/patch-Makefile.pre.in.diff b/packaging/macosx/ports/lang/python25/files/patch-Makefile.pre.in.diff
deleted file mode 100644
index e99a24741..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-Makefile.pre.in.diff
+++ /dev/null
@@ -1,49 +0,0 @@
---- Makefile.pre.in.orig 2008-09-22 10:22:44.000000000 +1000
-+++ Makefile.pre.in 2011-10-27 06:47:17.000000000 +1100
-@@ -348,8 +348,8 @@
- # Build the shared modules
- sharedmods: $(BUILDPYTHON)
- case $$MAKEFLAGS in \
-- *-s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \
-- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \
-+ *-s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q --no-user-cfg build;; \
-+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py --no-user-cfg build;; \
- esac
-
- # Build static library
-@@ -387,7 +387,7 @@
- $(RESSRCDIR)/English.lproj/InfoPlist.strings
- $(INSTALL) -d -m $(DIRMODE) $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)
- if test "${UNIVERSALSDK}"; then \
-- $(CC) -o $(LDLIBRARY) -arch i386 -arch ppc -dynamiclib \
-+ $(CC) -o $(LDLIBRARY) __UNIVERSAL_LDFLAGS__ -dynamiclib \
- -isysroot "${UNIVERSALSDK}" \
- -all_load $(LIBRARY) -Wl,-single_module \
- -install_name $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/Python \
-@@ -458,7 +458,7 @@
- $(SIGNAL_OBJS) \
- $(MODOBJS) \
- $(srcdir)/Modules/getbuildinfo.c
-- $(CC) -c $(PY_CFLAGS) -DSVNVERSION=\"`LC_ALL=C $(SVNVERSION)`\" -o $@ $(srcdir)/Modules/getbuildinfo.c
-+ $(CC) -c $(PY_CFLAGS) -DSVNVERSION="\"`LC_ALL=C $(SVNVERSION)`\"" -o $@ $(srcdir)/Modules/getbuildinfo.c
-
- Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile
- $(CC) -c $(PY_CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \
-@@ -894,7 +894,7 @@
- # Install the dynamically loadable modules
- # This goes into $(exec_prefix)
- sharedinstall:
-- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \
-+ $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py --no-user-cfg install \
- --prefix=$(prefix) \
- --install-scripts=$(BINDIR) \
- --install-platlib=$(DESTSHARED) \
-@@ -968,7 +968,7 @@
- # This installs a few of the useful scripts in Tools/scripts
- scriptsinstall:
- SRCDIR=$(srcdir) $(RUNSHARED) \
-- ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/setup.py install \
-+ ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/setup.py --no-user-cfg install \
- --prefix=$(prefix) \
- --install-scripts=$(BINDIR) \
- --root=/$(DESTDIR)
diff --git a/packaging/macosx/ports/lang/python25/files/patch-Misc-setuid-prog.c.diff b/packaging/macosx/ports/lang/python25/files/patch-Misc-setuid-prog.c.diff
deleted file mode 100644
index 0fee9e791..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-Misc-setuid-prog.c.diff
+++ /dev/null
@@ -1,16 +0,0 @@
---- Misc/setuid-prog.c.orig Sat Dec 11 14:29:22 2004
-+++ Misc/setuid-prog.c Sat Dec 11 14:30:13 2004
-@@ -70,6 +70,12 @@
- #define environ _environ
- #endif
-
-+#if defined(__APPLE__)
-+#include <sys/time.h>
-+#include <crt_externs.h>
-+#define environ (*_NSGetEnviron())
-+#endif
-+
- /* don't change def_IFS */
- char def_IFS[] = "IFS= \t\n";
- /* you may want to change def_PATH, but you should really change it in */
-
diff --git a/packaging/macosx/ports/lang/python25/files/patch-Modules-posixmodule.c.diff b/packaging/macosx/ports/lang/python25/files/patch-Modules-posixmodule.c.diff
deleted file mode 100644
index c14913cf7..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-Modules-posixmodule.c.diff
+++ /dev/null
@@ -1,21 +0,0 @@
---- Modules/posixmodule.c.orig Sat Dec 11 14:27:52 2004
-+++ Modules/posixmodule.c Sat Dec 11 14:28:17 2004
-@@ -339,7 +339,7 @@
- #endif
-
- /* Return a dictionary corresponding to the POSIX environment table */
--#ifdef WITH_NEXT_FRAMEWORK
-+#ifdef __APPLE__
- /* On Darwin/MacOSX a shared library or framework has no access to
- ** environ directly, we must obtain it with _NSGetEnviron().
- */
-@@ -357,7 +357,7 @@
- d = PyDict_New();
- if (d == NULL)
- return NULL;
--#ifdef WITH_NEXT_FRAMEWORK
-+#ifdef __APPLE__
- if (environ == NULL)
- environ = *_NSGetEnviron();
- #endif
-
diff --git a/packaging/macosx/ports/lang/python25/files/patch-configure.diff b/packaging/macosx/ports/lang/python25/files/patch-configure.diff
deleted file mode 100644
index 22d260047..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-configure.diff
+++ /dev/null
@@ -1,45 +0,0 @@
---- configure.orig 2008-12-14 01:13:52.000000000 +1100
-+++ configure 2011-05-10 16:25:02.000000000 +1000
-@@ -4534,9 +4534,11 @@
- ;;
- # is there any other compiler on Darwin besides gcc?
- Darwin*)
-- BASECFLAGS="$BASECFLAGS -Wno-long-double -no-cpp-precomp -mno-fused-madd"
-+ BASECFLAGS="$BASECFLAGS -mno-fused-madd"
- if test "${enable_universalsdk}"; then
-- BASECFLAGS="-arch ppc -arch i386 -isysroot ${UNIVERSALSDK} ${BASECFLAGS}"
-+ BASECFLAGS="__UNIVERSAL_CFLAGS__ -isysroot ${UNIVERSALSDK} ${BASECFLAGS}"
-+ else
-+ BASECFLAGS="-arch __BUILD_ARCH__ ${BASECFLAGS}"
- fi
-
- ;;
-@@ -11362,7 +11364,7 @@
- if test "${enable_universalsdk}"; then
- :
- else
-- LIBTOOL_CRUFT="${LIBTOOL_CRUFT} -arch_only `arch`"
-+ LIBTOOL_CRUFT="${LIBTOOL_CRUFT} -arch_only __BUILD_ARCH__"
- fi
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
-@@ -11374,7 +11376,7 @@
- else
- LIBTOOL_CRUFT=""
- fi
-- LIBTOOL_CRUFT=$LIBTOOL_CRUFT" -lSystem -lSystemStubs -arch_only `arch`"
-+ LIBTOOL_CRUFT=$LIBTOOL_CRUFT" -lSystem -lSystemStubs -arch_only __BUILD_ARCH__"
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
- esac
-@@ -11524,7 +11526,9 @@
- if test ${MACOSX_DEPLOYMENT_TARGET-${cur_target}} '>' 10.2
- then
- if test "${enable_universalsdk}"; then
-- LDFLAGS="-arch i386 -arch ppc -isysroot ${UNIVERSALSDK} ${LDFLAGS}"
-+ LDFLAGS="__UNIVERSAL_LDFLAGS__ -isysroot ${UNIVERSALSDK} ${LDFLAGS}"
-+ else
-+ LDFLAGS="-arch __BUILD_ARCH__ ${LDFLAGS}"
- fi
- LDSHARED='$(CC) $(LDFLAGS) -bundle -undefined dynamic_lookup'
- BLDSHARED="$LDSHARED"
diff --git a/packaging/macosx/ports/lang/python25/files/patch-fwrapv.diff b/packaging/macosx/ports/lang/python25/files/patch-fwrapv.diff
deleted file mode 100644
index 130a3ad5d..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-fwrapv.diff
+++ /dev/null
@@ -1,12 +0,0 @@
---- configure.orig 2011-11-22 09:08:58.000000000 +1100
-+++ configure 2011-11-22 09:10:56.000000000 +1100
-@@ -4428,9 +4428,7 @@
- STRICT_PROTO="-Wstrict-prototypes"
- fi
- # For gcc 4.x we need to use -fwrapv so lets check if its supported
-- if "$CC" -v --help 2>/dev/null |grep -- -fwrapv > /dev/null; then
- WRAP="-fwrapv"
-- fi
- case $ac_cv_prog_cc_g in
- yes)
- if test "$Py_DEBUG" = 'true' ; then
diff --git a/packaging/macosx/ports/lang/python25/files/patch-libedit.diff b/packaging/macosx/ports/lang/python25/files/patch-libedit.diff
deleted file mode 100644
index 99da7a9c4..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-libedit.diff
+++ /dev/null
@@ -1,132 +0,0 @@
---- configure.orig 2011-10-31 13:23:35.000000000 +1100
-+++ configure 2011-10-31 13:28:19.000000000 +1100
-@@ -20985,9 +20985,9 @@
- echo $ECHO_N "checking how to link readline libs... $ECHO_C" >&6; }
- for py_libtermcap in "" ncursesw ncurses curses termcap; do
- if test -z "$py_libtermcap"; then
-- READLINE_LIBS="-lreadline"
-+ READLINE_LIBS="-ledit"
- else
-- READLINE_LIBS="-lreadline -l$py_libtermcap"
-+ READLINE_LIBS="-ledit -l$py_libtermcap"
- fi
- LIBS="$READLINE_LIBS $LIBS_no_readline"
- cat >conftest.$ac_ext <<_ACEOF
-@@ -21060,13 +21060,13 @@
- fi
-
- # check for readline 2.1
--{ echo "$as_me:$LINENO: checking for rl_callback_handler_install in -lreadline" >&5
--echo $ECHO_N "checking for rl_callback_handler_install in -lreadline... $ECHO_C" >&6; }
-+{ echo "$as_me:$LINENO: checking for rl_callback_handler_install in -ledit" >&5
-+echo $ECHO_N "checking for rl_callback_handler_install in -ledit... $ECHO_C" >&6; }
- if test "${ac_cv_lib_readline_rl_callback_handler_install+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lreadline $READLINE_LIBS $LIBS"
-+LIBS="-ledit $READLINE_LIBS $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -21137,7 +21137,7 @@
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
--#include <readline/readline.h>
-+#include <editline/readline.h>
- _ACEOF
- if { (ac_try="$ac_cpp conftest.$ac_ext"
- case "(($ac_try" in
-@@ -21172,7 +21172,7 @@
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
--#include <readline/readline.h>
-+#include <editline/readline.h>
-
- _ACEOF
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-@@ -21188,13 +21188,13 @@
- fi
-
- # check for readline 4.0
--{ echo "$as_me:$LINENO: checking for rl_pre_input_hook in -lreadline" >&5
--echo $ECHO_N "checking for rl_pre_input_hook in -lreadline... $ECHO_C" >&6; }
-+{ echo "$as_me:$LINENO: checking for rl_pre_input_hook in -ledit" >&5
-+echo $ECHO_N "checking for rl_pre_input_hook in -ledit... $ECHO_C" >&6; }
- if test "${ac_cv_lib_readline_rl_pre_input_hook+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lreadline $READLINE_LIBS $LIBS"
-+LIBS="-ledit $READLINE_LIBS $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -21259,13 +21259,13 @@
-
-
- # check for readline 4.2
--{ echo "$as_me:$LINENO: checking for rl_completion_matches in -lreadline" >&5
--echo $ECHO_N "checking for rl_completion_matches in -lreadline... $ECHO_C" >&6; }
-+{ echo "$as_me:$LINENO: checking for rl_completion_matches in -ledit" >&5
-+echo $ECHO_N "checking for rl_completion_matches in -ledit... $ECHO_C" >&6; }
- if test "${ac_cv_lib_readline_rl_completion_matches+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lreadline $READLINE_LIBS $LIBS"
-+LIBS="-ledit $READLINE_LIBS $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -21336,7 +21336,7 @@
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
--#include <readline/readline.h>
-+#include <editline/readline.h>
- _ACEOF
- if { (ac_try="$ac_cpp conftest.$ac_ext"
- case "(($ac_try" in
-@@ -21371,7 +21371,7 @@
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
--#include <readline/readline.h>
-+#include <editline/readline.h>
-
- _ACEOF
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
---- setup.py.orig 2011-10-31 13:23:35.000000000 +1100
-+++ setup.py 2011-10-31 13:32:40.000000000 +1100
-@@ -488,7 +488,7 @@
- else:
- readline_extra_link_args = ()
-
-- readline_libs = ['readline']
-+ readline_libs = ['edit']
- if self.compiler.find_library_file(lib_dirs,
- 'ncursesw'):
- readline_libs.append('ncursesw')
---- Modules/readline.c.orig 2007-01-23 03:10:27.000000000 +1100
-+++ Modules/readline.c 2011-10-31 14:00:36.000000000 +1100
-@@ -28,8 +28,7 @@
-
- /* GNU readline definitions */
- #undef HAVE_CONFIG_H /* Else readline/chardefs.h includes strings.h */
--#include <readline/readline.h>
--#include <readline/history.h>
-+#include <editline/readline.h>
-
- #ifdef HAVE_RL_COMPLETION_MATCHES
- #define completion_matches(x, y) \
-@@ -794,7 +793,6 @@ readline_until_enter_or_signal(char *pro
- PyEval_SaveThread();
- #endif
- if (s < 0) {
-- rl_free_line_state();
- rl_cleanup_after_signal();
- rl_callback_handler_remove();
- *signal = 1;
diff --git a/packaging/macosx/ports/lang/python25/files/patch-mac_ver.diff b/packaging/macosx/ports/lang/python25/files/patch-mac_ver.diff
deleted file mode 100644
index 5350dee29..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-mac_ver.diff
+++ /dev/null
@@ -1,114 +0,0 @@
-
-# HG changeset patch
-# User Ronald Oussoren <ronaldoussoren@mac.com>
-# Date 1279889153 0
-# Node ID e267ee9760bd14a8b4270e12af982c941fa7a67d
-# Parent bdc069a1a721b28ad21849232bd5426dda871506
-Merged revisions 83085 via svnmerge from
-svn+ssh://pythondev@svn.python.org/python/branches/release27-maint
-
-................
- r83085 | ronald.oussoren | 2010-07-23 13:41:00 +0100 (Fri, 23 Jul 2010) | 12 lines
-
- Merged revisions 83075 via svnmerge from
- svn+ssh://pythondev@svn.python.org/python/branches/py3k
-
- ........
- r83075 | ronald.oussoren | 2010-07-23 12:54:59 +0100 (Fri, 23 Jul 2010) | 5 lines
-
- Fix for issue 7895. Avoid crashing the interpreter
- when calling platform.mac_ver after calling os.fork by
- reading from a system configuration file instead of
- using OSX APIs.
- ........
-................
-
-diff --git a/Lib/platform.py b/Lib/platform.py
---- Lib/platform.py
-+++ Lib/platform.py
-@@ -562,28 +562,20 @@ def _bcd2str(bcd):
-
- return hex(bcd)[2:]
-
--def mac_ver(release='',versioninfo=('','',''),machine=''):
--
-- """ Get MacOS version information and return it as tuple (release,
-- versioninfo, machine) with versioninfo being a tuple (version,
-- dev_stage, non_release_version).
--
-- Entries which cannot be determined are set to the paramter values
-- which default to ''. All tuple entries are strings.
--
-+def _mac_ver_gestalt():
-+ """
- Thanks to Mark R. Levinson for mailing documentation links and
- code examples for this function. Documentation for the
- gestalt() API is available online at:
-
- http://www.rgaros.nl/gestalt/
--
- """
- # Check whether the version info module is available
- try:
- import gestalt
- import MacOS
- except ImportError:
-- return release,versioninfo,machine
-+ return None
- # Get the infos
- sysv,sysu,sysa = _mac_ver_lookup(('sysv','sysu','sysa'))
- # Decode the infos
-@@ -619,6 +611,53 @@ def mac_ver(release='',versioninfo=('','
- machine = {0x1: '68k',
- 0x2: 'PowerPC',
- 0xa: 'i386'}.get(sysa,'')
-+
-+ return release,versioninfo,machine
-+
-+def _mac_ver_xml():
-+ fn = '/System/Library/CoreServices/SystemVersion.plist'
-+ if not os.path.exists(fn):
-+ return None
-+
-+ try:
-+ import plistlib
-+ except ImportError:
-+ return None
-+
-+ pl = plistlib.readPlist(fn)
-+ release = pl['ProductVersion']
-+ versioninfo=('', '', '')
-+ machine = os.uname()[4]
-+ if machine == 'ppc':
-+ # for compatibility with the gestalt based code
-+ machine = 'PowerPC'
-+
-+ return release,versioninfo,machine
-+
-+
-+def mac_ver(release='',versioninfo=('','',''),machine=''):
-+
-+ """ Get MacOS version information and return it as tuple (release,
-+ versioninfo, machine) with versioninfo being a tuple (version,
-+ dev_stage, non_release_version).
-+
-+ Entries which cannot be determined are set to the paramter values
-+ which default to ''. All tuple entries are strings.
-+ """
-+
-+ # First try reading the information from an XML file which should
-+ # always be present
-+ info = _mac_ver_xml()
-+ if info is not None:
-+ return info
-+
-+ # If that doesn't work for some reason fall back to reading the
-+ # information using gestalt calls.
-+ info = _mac_ver_gestalt()
-+ if info is not None:
-+ return info
-+
-+ # If that also doesn't work return the default values
- return release,versioninfo,machine
-
- def _java_getprop(name,default):
diff --git a/packaging/macosx/ports/lang/python25/files/patch-pyconfig.h.in.diff b/packaging/macosx/ports/lang/python25/files/patch-pyconfig.h.in.diff
deleted file mode 100644
index bd0ecd803..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-pyconfig.h.in.diff
+++ /dev/null
@@ -1,13 +0,0 @@
---- pyconfig.h.in.orig 2009-08-16 10:22:50.000000000 -0700
-+++ pyconfig.h.in 2009-08-16 10:23:24.000000000 -0700
-@@ -4,6 +4,10 @@
- #ifndef Py_PYCONFIG_H
- #define Py_PYCONFIG_H
-
-+// Required on Darwin 10+
-+#ifndef _DARWIN_C_SOURCE
-+#define _DARWIN_C_SOURCE
-+#endif
-
- /* Define for AIX if your compiler is a genuine IBM xlC/xlC_r and you want
- support for AIX C++ shared extension modules. */
diff --git a/packaging/macosx/ports/lang/python25/files/patch-setup.py-disabled_modules.diff b/packaging/macosx/ports/lang/python25/files/patch-setup.py-disabled_modules.diff
deleted file mode 100644
index 14d3bc582..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-setup.py-disabled_modules.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- setup.py.orig 2009-03-31 12:20:48.000000000 -0600
-+++ setup.py 2009-09-17 00:33:12.000000000 -0600
-@@ -17,7 +17,7 @@
- from distutils.command.install_lib import install_lib
-
- # This global variable is used to hold the list of modules to be disabled.
--disabled_module_list = []
-+disabled_module_list = ["_tkinter", "gdbm"]
-
- def add_dir_to_list(dirlist, dir):
- """Add the directory 'dir' to the list 'dirlist' (at the front) if
diff --git a/packaging/macosx/ports/lang/python25/files/patch-setup.py.diff b/packaging/macosx/ports/lang/python25/files/patch-setup.py.diff
deleted file mode 100644
index 2649594c8..000000000
--- a/packaging/macosx/ports/lang/python25/files/patch-setup.py.diff
+++ /dev/null
@@ -1,80 +0,0 @@
---- setup.py.orig 2008-10-16 12:58:19.000000000 -0600
-+++ setup.py 2009-06-07 20:55:17.000000000 -0600
-@@ -609,7 +609,7 @@
- # a release. Most open source OSes come with one or more
- # versions of BerkeleyDB already installed.
-
-- max_db_ver = (4, 5)
-+ max_db_ver = (4, 6)
- # NOTE: while the _bsddb.c code links against BerkeleyDB 4.6.x
- # we leave that version disabled by default as it has proven to be
- # quite a buggy library release on many platforms.
-@@ -636,6 +636,7 @@
- db_inc_paths.append('/usr/local/include/db4%d' % x)
- db_inc_paths.append('/pkg/db-4.%d/include' % x)
- db_inc_paths.append('/opt/db-4.%d/include' % x)
-+ db_inc_paths.append('__PREFIX__/include/db4%d' % x)
- # 3.x minor number specific paths
- for x in (3,):
- db_inc_paths.append('/usr/include/db3%d' % x)
-@@ -711,6 +712,7 @@
-
- # check lib directories parallel to the location of the header
- db_dirs_to_check = [
-+ os.path.join('__PREFIX__', 'lib', 'db46'),
- os.path.join(db_incdir, '..', 'lib64'),
- os.path.join(db_incdir, '..', 'lib'),
- os.path.join(db_incdir, '..', '..', 'lib64'),
-@@ -1212,13 +1214,7 @@
- def detect_tkinter(self, inc_dirs, lib_dirs):
- # The _tkinter module.
-
-- # Rather than complicate the code below, detecting and building
-- # AquaTk is a separate method. Only one Tkinter will be built on
-- # Darwin - either AquaTk, if it is found, or X11 based Tk.
- platform = self.get_platform()
-- if (platform == 'darwin' and
-- self.detect_tkinter_darwin(inc_dirs, lib_dirs)):
-- return
-
- # Assume we haven't found any of the libraries or include files
- # The versions with dots are used on Unix, and the versions without
---- setup.py.orig 2009-09-10 19:41:32.000000000 +1000
-+++ setup.py 2009-09-10 19:48:30.000000000 +1000
-@@ -1197,7 +1197,7 @@
- # For 8.4a2, the X11 headers are not included. Rather than include a
- # complicated search, this is a hard-coded path. It could bail out
- # if X11 libs are not found...
-- include_dirs.append('/usr/X11R6/include')
-+ #include_dirs.append('/usr/X11R6/include')
- frameworks = ['-framework', 'Tcl', '-framework', 'Tk']
-
- ext = Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'],
-@@ -1262,17 +1262,17 @@
- if platform == 'sunos5':
- include_dirs.append('/usr/openwin/include')
- added_lib_dirs.append('/usr/openwin/lib')
-- elif os.path.exists('/usr/X11R6/include'):
-- include_dirs.append('/usr/X11R6/include')
-- added_lib_dirs.append('/usr/X11R6/lib64')
-- added_lib_dirs.append('/usr/X11R6/lib')
-- elif os.path.exists('/usr/X11R5/include'):
-- include_dirs.append('/usr/X11R5/include')
-- added_lib_dirs.append('/usr/X11R5/lib')
-- else:
-+ #elif os.path.exists('/usr/X11R6/include'):
-+ # include_dirs.append('/usr/X11R6/include')
-+ # added_lib_dirs.append('/usr/X11R6/lib64')
-+ # added_lib_dirs.append('/usr/X11R6/lib')
-+ #elif os.path.exists('/usr/X11R5/include'):
-+ # include_dirs.append('/usr/X11R5/include')
-+ # added_lib_dirs.append('/usr/X11R5/lib')
-+ #else:
- # Assume default location for X11
-- include_dirs.append('/usr/X11/include')
-- added_lib_dirs.append('/usr/X11/lib')
-+ # include_dirs.append('/usr/X11/include')
-+ # added_lib_dirs.append('/usr/X11/lib')
-
- # If Cygwin, then verify that X is installed before proceeding
- if platform == 'cygwin':
diff --git a/packaging/macosx/ports/lang/python25/files/pyconfig.ed b/packaging/macosx/ports/lang/python25/files/pyconfig.ed
deleted file mode 100644
index 671d0d560..000000000
--- a/packaging/macosx/ports/lang/python25/files/pyconfig.ed
+++ /dev/null
@@ -1,2 +0,0 @@
-g,.*\(HAVE_POLL[_A-Z]*\).*,s,,/* #undef \1 */,
-w
diff --git a/packaging/macosx/ports/lang/python25/files/pyconfig.h-universal.ed b/packaging/macosx/ports/lang/python25/files/pyconfig.h-universal.ed
deleted file mode 100644
index 67ecc11a1..000000000
--- a/packaging/macosx/ports/lang/python25/files/pyconfig.h-universal.ed
+++ /dev/null
@@ -1,50 +0,0 @@
-/HAVE_LARGEFILE_SUPPORT/c
-#ifdef __LP64__
-/* #undef HAVE_LARGEFILE_SUPPORT */
-#else
-#define HAVE_LARGEFILE_SUPPORT 1
-#endif
-.
-/SIZEOF_LONG/c
-#ifdef __LP64__
-#define SIZEOF_LONG 8
-#else
-#define SIZEOF_LONG 4
-#endif
-.
-/SIZEOF_PTHREAD_T/c
-#ifdef __LP64__
-#define SIZEOF_PTHREAD_T 8
-#else
-#define SIZEOF_PTHREAD_T 4
-#endif
-.
-/SIZEOF_SIZE_T/c
-#ifdef __LP64__
-#define SIZEOF_SIZE_T 8
-#else
-#define SIZEOF_SIZE_T 4
-#endif
-.
-/SIZEOF_TIME_T/c
-#ifdef __LP64__
-#define SIZEOF_TIME_T 8
-#else
-#define SIZEOF_TIME_T 4
-#endif
-.
-/SIZEOF_UINTPTR_T/c
-#ifdef __LP64__
-#define SIZEOF_UINTPTR_T 8
-#else
-#define SIZEOF_UINTPTR_T 4
-#endif
-.
-/SIZEOF_VOID_P/c
-#ifdef __LP64__
-#define SIZEOF_VOID_P 8
-#else
-#define SIZEOF_VOID_P 4
-#endif
-.
-w
diff --git a/packaging/macosx/ports/lang/python25/files/python25 b/packaging/macosx/ports/lang/python25/files/python25
deleted file mode 100644
index e7ca5aed2..000000000
--- a/packaging/macosx/ports/lang/python25/files/python25
+++ /dev/null
@@ -1,13 +0,0 @@
-bin/python2.5
-bin/pythonw2.5
-bin/python2.5-config
-bin/idle2.5
-bin/pydoc2.5
-bin/smtpd2.5.py
--
--
-share/man/man1/python2.5.1.gz
-${frameworks_dir}/Python.framework/Versions/2.5
-${frameworks_dir}/Python.framework/Versions/2.5/Headers
-${frameworks_dir}/Python.framework/Versions/2.5/Resources
-${frameworks_dir}/Python.framework/Versions/2.5/Python
diff --git a/packaging/macosx/ports/lang/python26/Portfile b/packaging/macosx/ports/lang/python26/Portfile
deleted file mode 100644
index c72cd28d5..000000000
--- a/packaging/macosx/ports/lang/python26/Portfile
+++ /dev/null
@@ -1,158 +0,0 @@
-# $Id: Portfile 49077 2009-04-03 07:13:13Z erickt@macports.org $
-
-PortSystem 1.0
-PortGroup select 1.0
-
-name python26
-version 2.6.1
-revision 100
-set major [lindex [split $version .] 0]
-set branch [join [lrange [split ${version} .] 0 1] .]
-categories lang
-platforms darwin
-maintainers blb mcalhoun
-
-description An interpreted, object-oriented programming language
-long_description Python is an interpreted, interactive, object-oriented \
- programming language.
-
-homepage http://www.python.org/
-master_sites ${homepage}/ftp/python/${version}/ \
- ftp://ftp.python.org/pub/python/${version}/
-
-distname Python-${version}
-use_bzip2 yes
-
-checksums md5 e81c2f0953aa60f8062c05a4673f2be0 \
- sha1 419f0cb29e9713ea861dde8c43d107c51329e57b \
- rmd160 497dafaca9c150fca611b0175eeb13c2fc4d3e2d
-
-# patch-Lib-distutils-dist.py.diff comes from
-# <http://bugs.python.org/issue1180>
-patchfiles patch-Makefile.pre.in.diff \
- patch-setup.py.diff \
- patch-Lib-cgi.py.diff \
- patch-Lib-distutils-dist.py.diff \
- patch-Mac-IDLE-Makefile.in.diff \
- patch-Mac-Makefile.in.diff \
- patch-Mac-PythonLauncher-Makefile.in.diff \
- patch-Mac-Tools-Doc-setup.py.diff
-
-depends_lib port:gettext port:zlib port:openssl port:tk \
- port:sqlite3 port:db46 port:ncurses port:gdbm \
- port:bzip2 port:readline
-
-configure.args --enable-framework=${frameworks_dir} \
- --enable-ipv6
-
-use_parallel_build no
-
-post-patch {
- reinplace "s|@@PREFIX@@|${prefix}|g" ${worksrcpath}/Lib/cgi.py
- reinplace "s|@@APPLICATIONS_DIR@@|${applications_dir}|g" \
- ${worksrcpath}/Mac/Makefile.in ${worksrcpath}/Mac/IDLE/Makefile.in \
- ${worksrcpath}/Mac/Tools/Doc/setup.py \
- ${worksrcpath}/Mac/PythonLauncher/Makefile.in
-
- # See http://trac.macports.org/changeset/37861
- reinplace "s|xargs -0 rm -r|/usr/bin/xargs -0 /bin/rm -r|g" \
- ${worksrcpath}/Mac/PythonLauncher/Makefile.in
-}
-
-build.target all
-
-test.run yes
-test.target test
-
-destroot.target frameworkinstall maninstall
-
-# ensure that correct compiler is used
-build.args-append MAKE="${build.cmd} CC=${configure.cc}"
-destroot.args-append MAKE="${destroot.cmd} CC=${configure.cc}"
-
-select.group python
-select.file ${filespath}/python[string map {. {}} ${branch}]
-
-post-destroot {
- set framewpath ${frameworks_dir}/Python.framework
- set framewdir ${framewpath}/Versions/${branch}
-
- foreach dir { Headers Resources Python Versions/Current } {
- file delete ${destroot}${framewpath}/${dir}
- }
-
- ln -s ${framewdir}/share/man/man1/python.1 ${destroot}${prefix}/share/man/man1/python${branch}.1
-
- # Without this, LINKFORSHARED is set to
- # ... $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)
- # (this becomes Python.framework/Versions/2.6/Python) which doesn't
- # quite work (see ticket #15099); instead specifically list the
- # full path to the proper Python framework file (which becomes
- # ${prefix}/Library/Frameworks/Python.framework/Versions/2.6/Python)
- reinplace {s|^\(LINKFORSHARED=.*\)$(PYTHONFRAMEWORKDIR).*$|\1 $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)|} ${destroot}${framewdir}/lib/python${branch}/config/Makefile
-
- # The framework version.plist isn't currently being installed so
- # we'll copy ours for now (see http://trac.macports.org/ticket/18773 and
- # http://bugs.python.org/issue4937)
- xinstall -m 644 ${filespath}/version.plist \
- ${destroot}${framewdir}/Resources/version.plist
-}
-
-post-activate {
- ui_msg "\nTo fully complete your installation and make python $branch the default, please run
-\n\tsudo port install python_select \
-\n\tsudo python_select $name\n"
-}
-
-platform darwin {
- post-configure {
- # See http://trac.macports.org/ticket/18376
- system "cd ${worksrcpath} && ed - pyconfig.h < ${filespath}/pyconfig.ed"
- }
-}
-
-platform darwin 7 {
- # there is no SystemStubs on 10.3
- post-patch {
- reinplace "s|-lSystemStubs||g" ${worksrcpath}/configure \
- ${worksrcpath}/configure.in
- }
- post-configure {
- reinplace "s|-lSystemStubs||g" ${worksrcpath}/Makefile.pre.in \
- ${worksrcpath}/Makefile.pre ${worksrcpath}/Makefile
- }
- # To avoid GCC incompatibility issue. See http://nxg.me.uk/note/2004/restFP/ (by ebgssth at gmail.com, ticket #13322)
- configure.ldflags-append "-lcc_dynamic"
-}
-
-platform darwin 10 {
- configure.compiler gcc-4.2
-}
-
-variant universal {
- post-patch {
- set universal_arch_flags {}
- set arch_run_32bit {}
- foreach arch ${universal_archs} {
- lappend universal_arch_flags -arch ${arch}
- if { ${arch}=="i386" || ${arch}=="ppc" } {
- lappend arch_run_32bit -${arch}
- }
- }
- reinplace \
- "s|UNIVERSAL_ARCH_FLAGS=\".*\"|UNIVERSAL_ARCH_FLAGS=\"${universal_arch_flags}\"|" \
- ${worksrcpath}/configure
- reinplace \
- "s|ARCH_RUN_32BIT=\".*\"|ARCH_RUN_32BIT=\"arch ${arch_run_32bit}\"|" \
- ${worksrcpath}/configure
- }
- configure.args-append --enable-universalsdk=${universal_sysroot}
-}
-
-variant ucs4 description {Enable support for UCS4} {
- configure.args-append --enable-unicode=ucs4
-}
-
-#livecheck.check regex
-#livecheck.url ${homepage}download/releases/
-#livecheck.regex Python (${branch}(?:\\.\\d+)*)
diff --git a/packaging/macosx/ports/lang/python26/files/patch-Lib-cgi.py.diff b/packaging/macosx/ports/lang/python26/files/patch-Lib-cgi.py.diff
deleted file mode 100644
index fb861bc82..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-Lib-cgi.py.diff
+++ /dev/null
@@ -1,18 +0,0 @@
---- Lib/cgi.py.orig 2006-08-10 19:41:07.000000000 +0200
-+++ Lib/cgi.py 2007-08-21 15:36:54.000000000 +0200
-@@ -1,13 +1,6 @@
--#! /usr/local/bin/python
-+#! @@PREFIX@@/bin/python2.6
-
--# NOTE: the above "/usr/local/bin/python" is NOT a mistake. It is
--# intentionally NOT "/usr/bin/env python". On many systems
--# (e.g. Solaris), /usr/local/bin is not in $PATH as passed to CGI
--# scripts, and /usr/local/bin is the default directory where Python is
--# installed, so /usr/bin/env would be unable to find python. Granted,
--# binary installations by Linux vendors often install Python in
--# /usr/bin. So let those vendors patch cgi.py to match their choice
--# of installation.
-+# NOTE: /usr/local/bin/python patched for MacPorts installation
-
- """Support module for CGI (Common Gateway Interface) scripts.
-
diff --git a/packaging/macosx/ports/lang/python26/files/patch-Lib-distutils-dist.py.diff b/packaging/macosx/ports/lang/python26/files/patch-Lib-distutils-dist.py.diff
deleted file mode 100644
index 45276c555..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-Lib-distutils-dist.py.diff
+++ /dev/null
@@ -1,51 +0,0 @@
---- Lib/distutils/dist.py.orig 2008-09-03 05:13:56.000000000 -0600
-+++ Lib/distutils/dist.py 2008-10-03 18:33:47.000000000 -0600
-@@ -60,6 +60,7 @@
- ('quiet', 'q', "run quietly (turns verbosity off)"),
- ('dry-run', 'n', "don't actually do anything"),
- ('help', 'h', "show detailed help message"),
-+ ('no-user-cfg', None,'ignore pydistutils.cfg in your home directory'),
- ]
-
- # 'common_usage' is a short (2-3 line) string describing the common
-@@ -267,6 +268,12 @@
- else:
- sys.stderr.write(msg + "\n")
-
-+ # no-user-cfg is handled before other command line args
-+ # because other args override the config files, and this
-+ # one is needed before we can load the config files.
-+ # If attrs['script_args'] wasn't passed, assume false.
-+ self.want_user_cfg = '--no-user-cfg' not in (self.script_args or [])
-+
- self.finalize_options()
-
- # __init__ ()
-@@ -327,6 +334,9 @@
- Distutils __inst__.py file lives), a file in the user's home
- directory named .pydistutils.cfg on Unix and pydistutils.cfg
- on Windows/Mac, and setup.cfg in the current directory.
-+
-+ The file in the user's home directory can be disabled with the
-+ --no-user-cfg option.
- """
- files = []
- check_environ()
-@@ -347,7 +357,7 @@
-
- # And look for the user config file
- user_file = os.path.join(os.path.expanduser('~'), user_filename)
-- if os.path.isfile(user_file):
-+ if self.want_user_cfg and os.path.isfile(user_file):
- files.append(user_file)
-
- # All platforms support local setup.cfg
-@@ -355,6 +365,8 @@
- if os.path.isfile(local_file):
- files.append(local_file)
-
-+ if DEBUG:
-+ print "using config files: %s" % ', '.join(files)
- return files
-
- # find_config_files ()
diff --git a/packaging/macosx/ports/lang/python26/files/patch-Mac-IDLE-Makefile.in.diff b/packaging/macosx/ports/lang/python26/files/patch-Mac-IDLE-Makefile.in.diff
deleted file mode 100644
index bafcf4715..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-Mac-IDLE-Makefile.in.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- Mac/IDLE/Makefile.in.orig 2008-07-17 23:48:03.000000000 -0600
-+++ Mac/IDLE/Makefile.in 2008-10-04 19:50:50.000000000 -0600
-@@ -22,7 +22,7 @@
-
- BUNDLEBULDER=$(srcdir)/../../Lib/plat-mac/bundlebuilder.py
-
--PYTHONAPPSDIR=/Applications/$(PYTHONFRAMEWORK) $(VERSION)
-+PYTHONAPPSDIR=@@APPLICATIONS_DIR@@/$(PYTHONFRAMEWORK) $(VERSION)
-
- all: IDLE.app
-
diff --git a/packaging/macosx/ports/lang/python26/files/patch-Mac-Makefile.in.diff b/packaging/macosx/ports/lang/python26/files/patch-Mac-Makefile.in.diff
deleted file mode 100644
index cfa5f88ff..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-Mac-Makefile.in.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- Mac/Makefile.in.orig 2008-07-22 01:06:33.000000000 -0600
-+++ Mac/Makefile.in 2008-10-04 19:51:40.000000000 -0600
-@@ -18,7 +18,7 @@
-
- # These are normally glimpsed from the previous set
- bindir=$(prefix)/bin
--PYTHONAPPSDIR=/Applications/$(PYTHONFRAMEWORK) $(VERSION)
-+PYTHONAPPSDIR=@@APPLICATIONS_DIR@@/$(PYTHONFRAMEWORK) $(VERSION)
- APPINSTALLDIR=$(prefix)/Resources/Python.app
-
- # Variables for installing the "normal" unix binaries
diff --git a/packaging/macosx/ports/lang/python26/files/patch-Mac-PythonLauncher-Makefile.in.diff b/packaging/macosx/ports/lang/python26/files/patch-Mac-PythonLauncher-Makefile.in.diff
deleted file mode 100644
index be74da903..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-Mac-PythonLauncher-Makefile.in.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- Mac/PythonLauncher/Makefile.in.orig 2008-05-02 13:58:56.000000000 -0600
-+++ Mac/PythonLauncher/Makefile.in 2008-10-04 19:52:27.000000000 -0600
-@@ -21,7 +21,7 @@
-
- BUNDLEBULDER=$(srcdir)/../../Lib/plat-mac/bundlebuilder.py
-
--PYTHONAPPSDIR=/Applications/$(PYTHONFRAMEWORK) $(VERSION)
-+PYTHONAPPSDIR=@@APPLICATIONS_DIR@@/$(PYTHONFRAMEWORK) $(VERSION)
- OBJECTS=FileSettings.o MyAppDelegate.o MyDocument.o PreferencesWindowController.o doscript.o main.o
-
- all: Python\ Launcher.app
diff --git a/packaging/macosx/ports/lang/python26/files/patch-Mac-Tools-Doc-setup.py.diff b/packaging/macosx/ports/lang/python26/files/patch-Mac-Tools-Doc-setup.py.diff
deleted file mode 100644
index 63e4e11d2..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-Mac-Tools-Doc-setup.py.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- Mac/Tools/Doc/setup.py.diff 2008-03-29 09:24:25.000000000 -0600
-+++ Mac/Tools/Doc/setup.py 2008-10-04 19:53:40.000000000 -0600
-@@ -30,7 +30,7 @@
-
- MAJOR_VERSION='2.4'
- MINOR_VERSION='2.4.1'
--DESTDIR='/Applications/MacPython-%s/PythonIDE.app/Contents/Resources/English.lproj/PythonDocumentation' % MAJOR_VERSION
-+DESTDIR='@@APPLICATIONS_DIR@@/MacPython-%s/PythonIDE.app/Contents/Resources/English.lproj/PythonDocumentation' % MAJOR_VERSION
-
- class DocBuild(build):
- def initialize_options(self):
diff --git a/packaging/macosx/ports/lang/python26/files/patch-Makefile.pre.in.diff b/packaging/macosx/ports/lang/python26/files/patch-Makefile.pre.in.diff
deleted file mode 100644
index 60cd69706..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-Makefile.pre.in.diff
+++ /dev/null
@@ -1,31 +0,0 @@
---- Makefile.pre.in.orig 2008-06-19 20:47:03.000000000 -0600
-+++ Makefile.pre.in 2008-07-28 19:57:15.000000000 -0600
-@@ -394,8 +394,8 @@
- # Build the shared modules
- sharedmods: $(BUILDPYTHON)
- @case $$MAKEFLAGS in \
-- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \
-- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \
-+ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q --no-user-cfg build;; \
-+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py --no-user-cfg build;; \
- esac
-
- # Build static library
-@@ -993,7 +993,7 @@
- # Install the dynamically loadable modules
- # This goes into $(exec_prefix)
- sharedinstall:
-- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \
-+ $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py --no-user-cfg install \
- --prefix=$(prefix) \
- --install-scripts=$(BINDIR) \
- --install-platlib=$(DESTSHARED) \
-@@ -1073,7 +1073,7 @@
- # This installs a few of the useful scripts in Tools/scripts
- scriptsinstall:
- SRCDIR=$(srcdir) $(RUNSHARED) \
-- ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/setup.py install \
-+ ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/setup.py --no-user-cfg install \
- --prefix=$(prefix) \
- --install-scripts=$(BINDIR) \
- --root=/$(DESTDIR)
diff --git a/packaging/macosx/ports/lang/python26/files/patch-setup.py.diff b/packaging/macosx/ports/lang/python26/files/patch-setup.py.diff
deleted file mode 100644
index 3acb4ac2b..000000000
--- a/packaging/macosx/ports/lang/python26/files/patch-setup.py.diff
+++ /dev/null
@@ -1,16 +0,0 @@
---- setup.py.orig 2008-09-29 18:15:45.000000000 -0600
-+++ setup.py 2008-11-30 23:13:09.000000000 -0700
-@@ -1506,13 +1506,7 @@
- def detect_tkinter(self, inc_dirs, lib_dirs):
- # The _tkinter module.
-
-- # Rather than complicate the code below, detecting and building
-- # AquaTk is a separate method. Only one Tkinter will be built on
-- # Darwin - either AquaTk, if it is found, or X11 based Tk.
- platform = self.get_platform()
-- if (platform == 'darwin' and
-- self.detect_tkinter_darwin(inc_dirs, lib_dirs)):
-- return
-
- # Assume we haven't found any of the libraries or include files
- # The versions with dots are used on Unix, and the versions without
diff --git a/packaging/macosx/ports/lang/python26/files/pyconfig.ed b/packaging/macosx/ports/lang/python26/files/pyconfig.ed
deleted file mode 100644
index 671d0d560..000000000
--- a/packaging/macosx/ports/lang/python26/files/pyconfig.ed
+++ /dev/null
@@ -1,2 +0,0 @@
-g,.*\(HAVE_POLL[_A-Z]*\).*,s,,/* #undef \1 */,
-w
diff --git a/packaging/macosx/ports/lang/python26/files/python26 b/packaging/macosx/ports/lang/python26/files/python26
deleted file mode 100644
index 5be5fa655..000000000
--- a/packaging/macosx/ports/lang/python26/files/python26
+++ /dev/null
@@ -1,12 +0,0 @@
-bin/python2.6
-bin/pythonw2.6
-bin/python2.6-config
-bin/idle2.6
-bin/pydoc2.6
-bin/smtpd2.6.py
--
-share/man/man1/python2.6.1.gz
-${frameworks_dir}/Library/Frameworks/Python.framework/Versions/2.6
-${frameworks_dir}/Library/Frameworks/Python.framework/Versions/2.6/Headers
-${frameworks_dir}/Library/Frameworks/Python.framework/Versions/2.6/Resources
-${frameworks_dir}/Library/Frameworks/Python.framework/Versions/2.6/Python
diff --git a/packaging/macosx/ports/lang/python26/files/version.plist b/packaging/macosx/ports/lang/python26/files/version.plist
deleted file mode 100644
index acdfe5bac..000000000
--- a/packaging/macosx/ports/lang/python26/files/version.plist
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>BuildVersion</key>
- <string>1</string>
- <key>CFBundleShortVersionString</key>
- <string>2.6.1</string>
- <key>CFBundleVersion</key>
- <string>2.6.1</string>
- <key>ProjectName</key>
- <string>Python</string>
- <key>SourceVersion</key>
- <string>2.6.1</string>
-</dict>
-</plist>
diff --git a/packaging/macosx/ports/python/py-Pillow/Portfile b/packaging/macosx/ports/python/py-Pillow/Portfile
deleted file mode 100644
index 6935fab95..000000000
--- a/packaging/macosx/ports/python/py-Pillow/Portfile
+++ /dev/null
@@ -1,74 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 124123 2014-08-19 13:57:18Z stromnov@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py-Pillow
-version 2.5.3
-revision 100
-categories-append devel
-platforms darwin
-license BSD
-
-python.versions 26 27 32 33 34
-
-maintainers stromnov openmaintainer
-
-description Python Imaging Library (fork)
-
-long_description ${description}
-
-homepage http://github.com/python-imaging/Pillow
-master_sites http://pypi.python.org/packages/source/P/Pillow/
-
-distname Pillow-${version}
-
-checksums rmd160 f10cda34a62022edf3bfe626096b6bc009a74dc8 \
- sha256 62ff6c6cb88d4a1d6e856315b1691186b06cb923f18fde86d6abac9eeb9096d1
-
-if {${name} ne ${subport}} {
- use_zip yes
-
- conflicts py${python.version}-pil
-
- depends_build port:py${python.version}-setuptools
- depends_lib-append \
- port:zlib \
- port:jpeg \
- port:tiff \
- port:lcms \
- port:webp \
- port:openjpeg \
- port:freetype
-
- patchfiles patch-setup.py.diff
-
- post-patch {
- reinplace "s|@prefix@|${prefix}|g" ${worksrcpath}/setup.py
- }
-
- livecheck.type none
-} else {
- livecheck.type regex
- livecheck.url ${master_sites}
- livecheck.regex {Pillow-(\d+(?:\.\d+)*)\.[tz]}
-}
-
-variant quartz conflicts x11 tkinter {
- # tkinter doesn't build
-}
-
-variant x11 conflicts quartz {
- # tkinter does build
-}
-
-variant tkinter description {with tkinter support} {
- if {$subport != $name} {
- depends_lib-append port:py${python.version}-tkinter
- }
-}
-
-if { ![variant_isset quartz] } {
- default_variants-append +tkinter
-}
diff --git a/packaging/macosx/ports/python/py-Pillow/files/patch-setup.py.diff b/packaging/macosx/ports/python/py-Pillow/files/patch-setup.py.diff
deleted file mode 100644
index fe300cfe5..000000000
--- a/packaging/macosx/ports/python/py-Pillow/files/patch-setup.py.diff
+++ /dev/null
@@ -1,120 +0,0 @@
---- setup.py.orig 2014-07-04 17:25:36.000000000 +0200
-+++ setup.py 2014-07-04 17:33:05.000000000 +0200
-@@ -19,7 +19,7 @@
- from setuptools import Extension, setup, find_packages
-
- # monkey patch import hook. Even though flake8 says it's not used, it is.
--# comment this out to disable multi threaded builds.
-+# comment this out to disable multi threaded builds.
- import mp_compile
-
- _IMAGING = (
-@@ -200,44 +200,8 @@
- "/usr/lib", "python%s" % sys.version[:3], "config"))
-
- elif sys.platform == "darwin":
-- # attempt to make sure we pick freetype2 over other versions
-- _add_directory(include_dirs, "/sw/include/freetype2")
-- _add_directory(include_dirs, "/sw/lib/freetype2/include")
-- # fink installation directories
-- _add_directory(library_dirs, "/sw/lib")
-- _add_directory(include_dirs, "/sw/include")
-- # darwin ports installation directories
-- _add_directory(library_dirs, "/opt/local/lib")
-- _add_directory(include_dirs, "/opt/local/include")
--
-- # if Homebrew is installed, use its lib and include directories
-- import subprocess
-- try:
-- prefix = subprocess.check_output(
-- ['brew', '--prefix']
-- ).strip().decode('latin1')
-- except:
-- # Homebrew not installed
-- prefix = None
--
-- ft_prefix = None
--
-- if prefix:
-- # add Homebrew's include and lib directories
-- _add_directory(library_dirs, os.path.join(prefix, 'lib'))
-- _add_directory(include_dirs, os.path.join(prefix, 'include'))
-- ft_prefix = os.path.join(prefix, 'opt', 'freetype')
--
-- if ft_prefix and os.path.isdir(ft_prefix):
-- # freetype might not be linked into Homebrew's prefix
-- _add_directory(library_dirs, os.path.join(ft_prefix, 'lib'))
-- _add_directory(
-- include_dirs, os.path.join(ft_prefix, 'include'))
-- else:
-- # fall back to freetype from XQuartz if
-- # Homebrew's freetype is missing
-- _add_directory(library_dirs, "/usr/X11/lib")
-- _add_directory(include_dirs, "/usr/X11/include")
-+ _add_directory(library_dirs, "@prefix@/lib")
-+ _add_directory(include_dirs, "@prefix@/include")
-
- elif sys.platform.startswith("linux"):
- arch_tp = (plat.processor(), plat.architecture()[0])
-@@ -337,21 +301,6 @@
- else:
- TCL_ROOT = None
-
-- # add standard directories
--
-- # look for tcl specific subdirectory (e.g debian)
-- if _tkinter:
-- tcl_dir = "/usr/include/tcl" + TCL_VERSION
-- if os.path.isfile(os.path.join(tcl_dir, "tk.h")):
-- _add_directory(include_dirs, tcl_dir)
--
-- # standard locations
-- _add_directory(library_dirs, "/usr/local/lib")
-- _add_directory(include_dirs, "/usr/local/include")
--
-- _add_directory(library_dirs, "/usr/lib")
-- _add_directory(include_dirs, "/usr/include")
--
- # on Windows, look for the OpenJPEG libraries in the location that
- # the official installer puts them
- if sys.platform == "win32":
-@@ -410,7 +359,7 @@
- for directory in self.compiler.include_dirs:
- try:
- listdir = os.listdir(directory)
-- except Exception:
-+ except Exception:
- # WindowsError, FileNotFoundError
- continue
- for name in listdir:
-@@ -570,29 +519,7 @@
- exts.append(Extension(
- "PIL._webp", ["_webp.c"], libraries=libs, define_macros=defs))
-
-- if sys.platform == "darwin":
-- # locate Tcl/Tk frameworks
-- frameworks = []
-- framework_roots = [
-- "/Library/Frameworks",
-- "/System/Library/Frameworks"]
-- for root in framework_roots:
-- if (
-- os.path.exists(os.path.join(root, "Tcl.framework")) and
-- os.path.exists(os.path.join(root, "Tk.framework"))):
-- print("--- using frameworks at %s" % root)
-- frameworks = ["-framework", "Tcl", "-framework", "Tk"]
-- dir = os.path.join(root, "Tcl.framework", "Headers")
-- _add_directory(self.compiler.include_dirs, dir, 0)
-- dir = os.path.join(root, "Tk.framework", "Headers")
-- _add_directory(self.compiler.include_dirs, dir, 1)
-- break
-- if frameworks:
-- exts.append(Extension(
-- "PIL._imagingtk", ["_imagingtk.c", "Tk/tkImaging.c"],
-- extra_compile_args=frameworks, extra_link_args=frameworks))
-- feature.tcl = feature.tk = 1 # mark as present
-- elif feature.tcl and feature.tk:
-+ if feature.tcl and feature.tk:
- exts.append(Extension(
- "PIL._imagingtk", ["_imagingtk.c", "Tk/tkImaging.c"],
- libraries=[feature.tcl, feature.tk]))
diff --git a/packaging/macosx/ports/python/py-gobject/Portfile b/packaging/macosx/ports/python/py-gobject/Portfile
deleted file mode 100644
index 3503ef1db..000000000
--- a/packaging/macosx/ports/python/py-gobject/Portfile
+++ /dev/null
@@ -1,77 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id$
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py-gobject
-set my_name pygobject
-version 2.28.6
-revision 101
-epoch 20110613
-set branch [join [lrange [split ${version} .] 0 1] .]
-categories-append gnome
-license LGPL-2.1+
-maintainers jwa openmaintainer
-platforms darwin
-python.versions 26 27 33 34
-
-description Python bindings for GObject.
-
-long_description \
- PyGObject provides a convenient wrapper for the GObject+ library \
- for use in Python programs, and takes care of many of the boring details \
- such as managing memory and type casting. \
- When combined with PyGTK, PyORBit and gnome-python, \
- it can be used to write full featured Gnome applications.
-
-homepage http://www.pygtk.org/
-master_sites gnome:sources/${my_name}/${branch}/
-distname ${my_name}-${version}
-use_xz yes
-
-checksums rmd160 4bc5e8546a5029d3d6b154629ab3fa4023d96bef \
- sha256 fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8
-
-if {$subport ne $name} {
- depends_build-append port:pkgconfig
- depends_lib-append path:lib/pkgconfig/glib-2.0.pc:glib2 \
- port:libffi \
- port:py${python.version}-cairo \
- port:gobject-introspection
-
- patch.pre_args -p1
- patchfiles patch-pygi-info.c-p1.diff \
- 00git_class_init.patch \
- 00git_fix_qdata_warning.patch \
- 00git_gio_flag_type.patch
-
- use_configure yes
- configure.python ${python.bin}
- configure.env-append PKG_CONFIG_PATH='${python.prefix}/lib/pkgconfig'
- configure.pre_args --prefix='${python.prefix}'
- configure.args-append --disable-glibtest \
- --enable-introspection=no
- configure.cppflags-append \
- -I${python.prefix}/include \
- -I${prefix}/include/cairo
- build.cmd [portbuild::build_getmaketype]
- build.target
-
- destroot.cmd ${build.cmd}
- destroot.target install
- destroot.destdir DESTDIR=${destroot}
-
- test.run yes
- test.env PYTHONPATH=[glob -nocomplain ${worksrcpath}/build/lib*]
- test.target check
-
- post-destroot {
- set docdir ${prefix}/share/doc/${subport}
- xinstall -d ${destroot}${docdir}
- xinstall -m 0644 -W ${worksrcpath} AUTHORS COPYING ChangeLog NEWS README \
- ${destroot}${docdir}
- }
-}
-
-livecheck.type none
diff --git a/packaging/macosx/ports/python/py-gobject/files/00git_class_init.patch b/packaging/macosx/ports/python/py-gobject/files/00git_class_init.patch
deleted file mode 100644
index 01f79d6ce..000000000
--- a/packaging/macosx/ports/python/py-gobject/files/00git_class_init.patch
+++ /dev/null
@@ -1,316 +0,0 @@
-From 9456ba70fdb98b3a4eb7ee2f630182387a54ca00 Mon Sep 17 00:00:00 2001
-From: Martin Pitt <martinpitt@gnome.org>
-Date: Tue, 19 Feb 2013 15:39:56 +0100
-Subject: [PATCH] Move property and signal creation into _class_init()
-
-We must not add class interfaces after g_type_class_ref() has been called the
-first time. Move signal and property creation from pyg_type_register() into
-pyg_object_class_init(), and drop the hack of registering interfaces twice.
-
-This is a backport of commit efcb0f9fd for 2.28.x. This allows old pygtk
-applications to work with pygobject 2.28.x and glib 2.35.x.
-
-Bug: https://bugzilla.gnome.org/show_bug.cgi?id=694108
-Bug-Ubuntu: https://launchpad.net/bugs/1129309
----
- gobject/gobjectmodule.c | 177 +++++++++++++++++++-----------------------------
- 1 file changed, 70 insertions(+), 107 deletions(-)
-
-diff --git a/gobject/gobjectmodule.c b/gobject/gobjectmodule.c
-index 2a84606..91f7315 100644
---- a/gobject/gobjectmodule.c
-+++ b/gobject/gobjectmodule.c
-@@ -312,13 +312,6 @@ pyg_object_get_property (GObject *object, guint property_id,
- pyglib_gil_state_release(state);
- }
-
--static void
--pyg_object_class_init(GObjectClass *class, PyObject *py_class)
--{
-- class->set_property = pyg_object_set_property;
-- class->get_property = pyg_object_get_property;
--}
--
- typedef struct _PyGSignalAccumulatorData {
- PyObject *callable;
- PyObject *user_data;
-@@ -484,15 +477,14 @@ override_signal(GType instance_type, const gchar *signal_name)
- }
-
- static PyObject *
--add_signals (GType instance_type, PyObject *signals)
-+add_signals (GObjectClass *klass, PyObject *signals)
- {
- gboolean ret = TRUE;
-- GObjectClass *oclass;
- Py_ssize_t pos = 0;
- PyObject *key, *value, *overridden_signals = NULL;
-+ GType instance_type = G_OBJECT_CLASS_TYPE (klass);
-
- overridden_signals = PyDict_New();
-- oclass = g_type_class_ref(instance_type);
- while (PyDict_Next(signals, &pos, &key, &value)) {
- const gchar *signal_name;
- gchar *signal_name_canon, *c;
-@@ -530,7 +522,6 @@ add_signals (GType instance_type, PyObject *signals)
- if (!ret)
- break;
- }
-- g_type_class_unref(oclass);
- if (ret)
- return overridden_signals;
- else {
-@@ -800,14 +791,12 @@ pyg_param_spec_from_object (PyObject *tuple)
- }
-
- static gboolean
--add_properties (GType instance_type, PyObject *properties)
-+add_properties (GObjectClass *klass, PyObject *properties)
- {
- gboolean ret = TRUE;
-- GObjectClass *oclass;
- Py_ssize_t pos = 0;
- PyObject *key, *value;
-
-- oclass = g_type_class_ref(instance_type);
- while (PyDict_Next(properties, &pos, &key, &value)) {
- const gchar *prop_name;
- GType prop_type;
-@@ -873,7 +862,7 @@ add_properties (GType instance_type, PyObject *properties)
- Py_DECREF(slice);
-
- if (pspec) {
-- g_object_class_install_property(oclass, 1, pspec);
-+ g_object_class_install_property(klass, 1, pspec);
- } else {
- PyObject *type, *value, *traceback;
- ret = FALSE;
-@@ -883,7 +872,7 @@ add_properties (GType instance_type, PyObject *properties)
- g_snprintf(msg, 256,
- "%s (while registering property '%s' for GType '%s')",
- PYGLIB_PyUnicode_AsString(value),
-- prop_name, g_type_name(instance_type));
-+ prop_name, G_OBJECT_CLASS_NAME(klass));
- Py_DECREF(value);
- value = PYGLIB_PyUnicode_FromString(msg);
- }
-@@ -892,11 +881,63 @@ add_properties (GType instance_type, PyObject *properties)
- }
- }
-
-- g_type_class_unref(oclass);
- return ret;
- }
-
- static void
-+pyg_object_class_init(GObjectClass *class, PyObject *py_class)
-+{
-+ PyObject *gproperties, *gsignals, *overridden_signals;
-+ PyObject *class_dict = ((PyTypeObject*) py_class)->tp_dict;
-+
-+ class->set_property = pyg_object_set_property;
-+ class->get_property = pyg_object_get_property;
-+
-+ /* install signals */
-+ /* we look this up in the instance dictionary, so we don't
-+ * accidentally get a parent type's __gsignals__ attribute. */
-+ gsignals = PyDict_GetItemString(class_dict, "__gsignals__");
-+ if (gsignals) {
-+ if (!PyDict_Check(gsignals)) {
-+ PyErr_SetString(PyExc_TypeError,
-+ "__gsignals__ attribute not a dict!");
-+ return;
-+ }
-+ if (!(overridden_signals = add_signals(class, gsignals))) {
-+ return;
-+ }
-+ if (PyDict_SetItemString(class_dict, "__gsignals__",
-+ overridden_signals)) {
-+ return;
-+ }
-+ Py_DECREF(overridden_signals);
-+
-+ PyDict_DelItemString(class_dict, "__gsignals__");
-+ } else {
-+ PyErr_Clear();
-+ }
-+
-+ /* install properties */
-+ /* we look this up in the instance dictionary, so we don't
-+ * accidentally get a parent type's __gproperties__ attribute. */
-+ gproperties = PyDict_GetItemString(class_dict, "__gproperties__");
-+ if (gproperties) {
-+ if (!PyDict_Check(gproperties)) {
-+ PyErr_SetString(PyExc_TypeError,
-+ "__gproperties__ attribute not a dict!");
-+ return;
-+ }
-+ if (!add_properties(class, gproperties)) {
-+ return;
-+ }
-+ PyDict_DelItemString(class_dict, "__gproperties__");
-+ /* Borrowed reference. Py_DECREF(gproperties); */
-+ } else {
-+ PyErr_Clear();
-+ }
-+}
-+
-+static void
- pyg_register_class_init(GType gtype, PyGClassInitFunc class_init)
- {
- GSList *list;
-@@ -1068,7 +1109,7 @@ pygobject__g_instance_init(GTypeInstance *instance,
- */
- static void
- pyg_type_add_interfaces(PyTypeObject *class, GType instance_type,
-- PyObject *bases, gboolean new_interfaces,
-+ PyObject *bases,
- GType *parent_interfaces, guint n_parent_interfaces)
- {
- int i;
-@@ -1082,7 +1123,6 @@ pyg_type_add_interfaces(PyTypeObject *class, GType instance_type,
- guint k;
- PyObject *base = PyTuple_GET_ITEM(bases, i);
- GType itype;
-- gboolean is_new = TRUE;
- const GInterfaceInfo *iinfo;
- GInterfaceInfo iinfo_copy;
-
-@@ -1099,16 +1139,6 @@ pyg_type_add_interfaces(PyTypeObject *class, GType instance_type,
- if (!G_TYPE_IS_INTERFACE(itype))
- continue;
-
-- for (k = 0; k < n_parent_interfaces; ++k) {
-- if (parent_interfaces[k] == itype) {
-- is_new = FALSE;
-- break;
-- }
-- }
--
-- if ((new_interfaces && !is_new) || (!new_interfaces && is_new))
-- continue;
--
- iinfo = pyg_lookup_interface_info(itype);
- if (!iinfo) {
- gchar *error;
-@@ -1129,7 +1159,7 @@ pyg_type_add_interfaces(PyTypeObject *class, GType instance_type,
- int
- pyg_type_register(PyTypeObject *class, const char *type_name)
- {
-- PyObject *gtype, *gsignals, *gproperties, *overridden_signals;
-+ PyObject *gtype;
- GType parent_type, instance_type;
- GType *parent_interfaces;
- guint n_parent_interfaces;
-@@ -1216,88 +1246,22 @@ pyg_type_register(PyTypeObject *class, const char *type_name)
- }
-
- /*
-- * Note: Interfaces to be implemented are searched twice. First
-- * we register interfaces that are already implemented by a parent
-- * type. The second time, the remaining interfaces are
-- * registered, i.e. the ones that are not implemented by a parent
-- * type. In between these two loops, properties and signals are
-- * registered. It has to be done this way, in two steps,
-- * otherwise glib will complain. If registering all interfaces
-- * always before properties, you get an error like:
-- *
-- * ../gobject:121: Warning: Object class
-- * test_interface+MyObject doesn't implement property
-- * 'some-property' from interface 'TestInterface'
-- *
-- * If, on the other hand, you register interfaces after
-- * registering the properties, you get something like:
-- *
-- * ../gobject:121: Warning: cannot add interface type
-- * `TestInterface' to type `test_interface+MyUnknown', since
-- * type `test_interface+MyUnknown' already conforms to
-- * interface
-- *
-- * This looks like a GLib quirk, but no bug has been filed
-- * upstream. However we have a unit test for this particular
-- * problem, which can be found in test_interfaces.py, class
-- * TestInterfaceImpl.
-+ * Note, all interfaces need to be registered before the first
-+ * g_type_class_ref(), see bug #686149.
- *
- * See also comment above pyg_type_add_interfaces().
- */
-- pyg_type_add_interfaces(class, instance_type, class->tp_bases, FALSE,
-+ pyg_type_add_interfaces(class, instance_type, class->tp_bases,
- parent_interfaces, n_parent_interfaces);
-
-- /* we look this up in the instance dictionary, so we don't
-- * accidentally get a parent type's __gsignals__ attribute. */
-- gsignals = PyDict_GetItemString(class->tp_dict, "__gsignals__");
-- if (gsignals) {
-- if (!PyDict_Check(gsignals)) {
-- PyErr_SetString(PyExc_TypeError,
-- "__gsignals__ attribute not a dict!");
-- g_free(parent_interfaces);
-- return -1;
-- }
-- if (!(overridden_signals = add_signals(instance_type, gsignals))) {
-- g_free(parent_interfaces);
-- return -1;
-- }
-- if (PyDict_SetItemString(class->tp_dict, "__gsignals__",
-- overridden_signals)) {
-- g_free(parent_interfaces);
-- return -1;
-- }
-- Py_DECREF(overridden_signals);
-- } else {
-- PyErr_Clear();
-- }
-
-- /* we look this up in the instance dictionary, so we don't
-- * accidentally get a parent type's __gsignals__ attribute. */
-- gproperties = PyDict_GetItemString(class->tp_dict, "__gproperties__");
-- if (gproperties) {
-- if (!PyDict_Check(gproperties)) {
-- PyErr_SetString(PyExc_TypeError,
-- "__gproperties__ attribute not a dict!");
-- g_free(parent_interfaces);
-- return -1;
-- }
-- if (!add_properties(instance_type, gproperties)) {
-- g_free(parent_interfaces);
-- return -1;
-- }
-- PyDict_DelItemString(class->tp_dict, "__gproperties__");
-- /* Borrowed reference. Py_DECREF(gproperties); */
-- } else {
-- PyErr_Clear();
-+ gclass = g_type_class_ref(instance_type);
-+ if (PyErr_Occurred() != NULL) {
-+ g_type_class_unref(gclass);
-+ g_free(parent_interfaces);
-+ return -1;
- }
-
-- /* Register new interfaces, that are _not_ already defined by
-- * the parent type. FIXME: See above.
-- */
-- pyg_type_add_interfaces(class, instance_type, class->tp_bases, TRUE,
-- parent_interfaces, n_parent_interfaces);
--
-- gclass = g_type_class_ref(instance_type);
- if (pyg_run_class_init(instance_type, gclass, class)) {
- g_type_class_unref(gclass);
- g_free(parent_interfaces);
-@@ -1306,9 +1270,8 @@ pyg_type_register(PyTypeObject *class, const char *type_name)
- g_type_class_unref(gclass);
- g_free(parent_interfaces);
-
-- if (gsignals)
-- PyDict_DelItemString(class->tp_dict, "__gsignals__");
--
-+ if (PyErr_Occurred() != NULL)
-+ return -1;
- return 0;
- }
-
---
-1.8.1.2
-
diff --git a/packaging/macosx/ports/python/py-gobject/files/00git_fix_qdata_warning.patch b/packaging/macosx/ports/python/py-gobject/files/00git_fix_qdata_warning.patch
deleted file mode 100644
index ed4b5d2b9..000000000
--- a/packaging/macosx/ports/python/py-gobject/files/00git_fix_qdata_warning.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 42d871eb0b08ee6d55e95cc7e4b90844919555b9 Mon Sep 17 00:00:00 2001
-From: Ivan Stankovic <ivan.stankovic@avl.com>
-Date: Tue, 21 Feb 2012 12:24:58 +0100
-Subject: [PATCH 1/2] Fix set_qdata warning on accessing NULL gobject property
-
-https://bugzilla.gnome.org/show_bug.cgi?id=661155
----
- gobject/pygobject.c | 4 +++-
- 1 files changed, 3 insertions(+), 1 deletions(-)
-
-diff --git a/gobject/pygobject.c b/gobject/pygobject.c
-index 6c2f06c..70dc89a 100644
---- a/gobject/pygobject.c
-+++ b/gobject/pygobject.c
-@@ -991,7 +991,9 @@ pygobject_new(GObject *obj)
- PyObject *
- pygobject_new_sunk(GObject *obj)
- {
-- g_object_set_qdata (obj, pygobject_ref_sunk_key, GINT_TO_POINTER (1));
-+ if (obj)
-+ g_object_set_qdata (obj, pygobject_ref_sunk_key, GINT_TO_POINTER (1));
-+
- return pygobject_new_full(obj, TRUE, NULL);
- }
-
---
-1.7.9.1
-
diff --git a/packaging/macosx/ports/python/py-gobject/files/00git_gio_flag_type.patch b/packaging/macosx/ports/python/py-gobject/files/00git_gio_flag_type.patch
deleted file mode 100644
index 78e7ddfd5..000000000
--- a/packaging/macosx/ports/python/py-gobject/files/00git_gio_flag_type.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 42d01f060c5d764baa881d13c103d68897163a49 Mon Sep 17 00:00:00 2001
-From: Ryan Lortie <desrt@desrt.ca>
-Date: Mon, 12 Mar 2012 16:44:14 -0400
-Subject: gio-types.defs: change some enums to flags
-
-These flags types were originally incorrectly handled in glib as being
-enums. That bug was fixed, but they're still enums here, leading to
-warnings about the mismatch.
-
-Change them to flags.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=668522
----
- gio/gio-types.defs | 6 +++---
- 1 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/gio/gio-types.defs b/gio/gio-types.defs
-index 331e0bc..7eee5c8 100644
---- a/gio/gio-types.defs
-+++ b/gio/gio-types.defs
-@@ -526,7 +526,7 @@
- )
- )
-
--(define-enum MountMountFlags
-+(define-flags MountMountFlags
- (in-module "gio")
- (c-name "GMountMountFlags")
- (gtype-id "G_TYPE_MOUNT_MOUNT_FLAGS")
-@@ -545,7 +545,7 @@
- )
- )
-
--(define-enum DriveStartFlags
-+(define-flags DriveStartFlags
- (in-module "gio")
- (c-name "GDriveStartFlags")
- (gtype-id "G_TYPE_DRIVE_START_FLAGS")
-@@ -770,7 +770,7 @@
- )
- )
-
--(define-enum SocketMsgFlags
-+(define-flags SocketMsgFlags
- (in-module "gio")
- (c-name "GSocketMsgFlags")
- (gtype-id "G_TYPE_SOCKET_MSG_FLAGS")
---
-1.7.9.1
-
diff --git a/packaging/macosx/ports/python/py-gobject/files/patch-pygi-info.c-p1.diff b/packaging/macosx/ports/python/py-gobject/files/patch-pygi-info.c-p1.diff
deleted file mode 100644
index b5a3d519d..000000000
--- a/packaging/macosx/ports/python/py-gobject/files/patch-pygi-info.c-p1.diff
+++ /dev/null
@@ -1,28 +0,0 @@
---- a/gi/pygi-info.c.orig 2014-01-15 09:16:11.000000000 +0200
-+++ b/gi/pygi-info.c 2014-01-15 09:16:52.000000000 +0200
-@@ -162,9 +162,6 @@
- case GI_INFO_TYPE_CONSTANT:
- type = &PyGIConstantInfo_Type;
- break;
-- case GI_INFO_TYPE_ERROR_DOMAIN:
-- type = &PyGIErrorDomainInfo_Type;
-- break;
- case GI_INFO_TYPE_UNION:
- type = &PyGIUnionInfo_Type;
- break;
-@@ -481,7 +478,6 @@
- case GI_INFO_TYPE_INVALID:
- case GI_INFO_TYPE_FUNCTION:
- case GI_INFO_TYPE_CONSTANT:
-- case GI_INFO_TYPE_ERROR_DOMAIN:
- case GI_INFO_TYPE_VALUE:
- case GI_INFO_TYPE_SIGNAL:
- case GI_INFO_TYPE_PROPERTY:
-@@ -860,7 +856,6 @@
- case GI_INFO_TYPE_INVALID:
- case GI_INFO_TYPE_FUNCTION:
- case GI_INFO_TYPE_CONSTANT:
-- case GI_INFO_TYPE_ERROR_DOMAIN:
- case GI_INFO_TYPE_VALUE:
- case GI_INFO_TYPE_SIGNAL:
- case GI_INFO_TYPE_PROPERTY:
diff --git a/packaging/macosx/ports/python/py-numpy/Portfile b/packaging/macosx/ports/python/py-numpy/Portfile
deleted file mode 100644
index 0a325c8ba..000000000
--- a/packaging/macosx/ports/python/py-numpy/Portfile
+++ /dev/null
@@ -1,214 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
-# $Id: Portfile 127764 2014-11-03 14:01:21Z michaelld@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-PortGroup github 1.0
-
-github.setup numpy numpy 1.9.1 v
-name py-numpy
-categories-append math
-license BSD
-platforms darwin
-maintainers dh michaelld openmaintainer
-description The core utilities for the scientific library scipy for Python
-long_description ${description}
-
-checksums rmd160 c043ce0045166762e36c513458abc499d36bbcf5 \
- sha256 504b7cbc3b47df592d683e0f3b992cfa4d29338f8d23fca07f040164018b607f
-
-python.versions 27 32 33 34
-
-if {${name} ne ${subport}} {
-
- revision 100
-
- patchfiles patch-f2py_setup.py.diff \
- patch-fcompiler_g95.diff \
- patch-numpy_core_setup.py.diff
-
- depends_lib-append port:fftw-3 \
- port:py${python.version}-nose \
- port:py${python.version}-cython
-
- # http://trac.macports.org/ticket/34562
- destroot.env-append \
- CC="${configure.cc}" \
- CFLAGS="${configure.cflags} [get_canonical_archflags cc]" \
- CXX="${configure.cxx}" \
- CXXFLAGS="${configure.cxxflags} [get_canonical_archflags cxx]" \
- OBJC="${configure.objc}" \
- OBJCFLAGS="${configure.objcflags} [get_canonical_archflags objc]" \
- LDFLAGS="${configure.ldflags} [get_canonical_archflags ld]"
-
- build.env-append ARCHFLAGS="[get_canonical_archflags ld]"
- destroot.env-append ARCHFLAGS="[get_canonical_archflags ld]"
-
- variant atlas description {Use the MacPorts' ATLAS libraries \
- instead of Apple's Accelerate framework} {
- depends_lib-append port:atlas
-
- if {[variant_isset universal]} {
- python.set_compiler no
- }
- }
-
- # when using ATLAS (whether by default or specified by the user via
- # the +atlas variant) ...
- set gcc_version ""
- if {[variant_isset atlas]} {
-
- # see if the user has set -gcc4X to disable using MacPorts'
- # compiler; if not, either use what the user set (as +gcc4X) or
- # default to gcc48.
-
- variant gcc43 conflicts gcc44 gcc45 gcc46 gcc47 gcc48 \
- description {Use the gcc43 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.3
- }
-
- variant gcc44 conflicts gcc43 gcc45 gcc46 gcc47 gcc48 \
- description {Use the gcc44 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.4
- }
-
- variant gcc45 conflicts gcc43 gcc44 gcc46 gcc47 gcc48 \
- description {Use the gcc45 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.5
- }
-
- variant gcc46 conflicts gcc43 gcc44 gcc45 gcc47 gcc48 \
- description {Use the gcc46 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.6
- }
-
- variant gcc47 conflicts gcc43 gcc44 gcc45 gcc46 gcc48 \
- description {Use the gcc47 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.7
- }
-
- variant gcc48 conflicts gcc43 gcc44 gcc45 gcc46 gcc47 \
- description {Use the gcc48 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.8
- }
-
- if {![variant_isset gcc43] && ![variant_isset gcc44] && ![variant_isset gcc45] && ![variant_isset gcc46] && ![variant_isset gcc47]} {
- default_variants +gcc48
- }
-
- if {[variant_isset gcc43]} {
- set gcc_version "4.3"
- } elseif {[variant_isset gcc44]} {
- set gcc_version "4.4"
- } elseif {[variant_isset gcc45]} {
- set gcc_version "4.5"
- } elseif {[variant_isset gcc46]} {
- set gcc_version "4.6"
- } elseif {[variant_isset gcc47]} {
- set gcc_version "4.7"
- } elseif {[variant_isset gcc48]} {
- set gcc_version "4.8"
- }
-
- # when using non-Apple GCC for universal install, it can
- # create binaries only for the native OS architecture, at
- # either 32 or 64 bits. Restrict the supported archs
- # accordingly.
- if {${os.arch} eq "i386"} {
- supported_archs i386 x86_64
- } elseif {${os.arch} eq "powerpc"} {
- supported_archs ppc ppc64
- }
-
- # include all the correct GCC4X port
- depends_lib-append port:gcc[join [split ${gcc_version} "."] ""]
-
- # force LDFLAGS for correct linking of the linalg module
- # for non-Apple GCC compilers
- patchfiles-append patch-numpy_linalg_setup.py.diff
-
- if {${gcc_version} == ""} {
- # user specified -gcc4X but +atlas (either as default or
- # explicitly); do not allow since it might lead to
- # undetermined runtime execution.
- return -code error \
-"\n\nWhen using the +atlas variant (either as the default or setting
-explicitly), one of the +gcc4X variants must be selected.\n"
- }
- }
-
- post-patch {
- reinplace "s|@@MPORTS_PYTHON@@|${python.bin}|" \
- ${worksrcpath}/numpy/f2py/setup.py
-
- if {[variant_isset universal] && [variant_isset atlas]} {
- # Prepare wrappers
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/c-wrapper
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/f-wrapper
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/cxx-wrapper
-
- reinplace "s|@@@|${configure.cc}|" ${worksrcpath}/c-wrapper
- reinplace "s|---|\\\\.c|" ${worksrcpath}/c-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/c-wrapper
-
- reinplace "s|@@@|${configure.cxx}|" ${worksrcpath}/cxx-wrapper
- reinplace "s#---#(\\\\.C|\\\\.cpp|\\\\.cc)#" \
- ${worksrcpath}/cxx-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/cxx-wrapper
-
- reinplace "s|@@@|${configure.f90}|" ${worksrcpath}/f-wrapper
- reinplace "s|---|\\\\.f|" ${worksrcpath}/f-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/f-wrapper
-
- build.env-append CC="${worksrcpath}/c-wrapper" \
- CXX="${worksrcpath}/cxx-wrapper" \
- F77="${worksrcpath}/f-wrapper" \
- F90="${worksrcpath}/f-wrapper"
-
- destroot.env-append CC="${worksrcpath}/c-wrapper" \
- CXX="${worksrcpath}/cxx-wrapper" \
- F77="${worksrcpath}/f-wrapper" \
- F90="${worksrcpath}/f-wrapper"
- }
-
- if {[variant_isset atlas]} {
- # We must link against libSatlas or libTatlas, not libAtlas
- if {[file exists ${prefix}/lib/libtatlas.dylib]} {
- reinplace -E \
- "s|_lib_atlas = \\\['atlas'\\\]|_lib_atlas = \\\['tatlas'\\\]|" \
- ${worksrcpath}/numpy/distutils/system_info.py
- } elseif {[file exists ${prefix}/lib/libsatlas.dylib]} {
- reinplace -E \
- "s|_lib_atlas = \\\['atlas'\\\]|_lib_atlas = \\\['satlas'\\\]|" \
- ${worksrcpath}/numpy/distutils/system_info.py
- } else {
- return -code error "Unable to find Atlas dylibs. Bailing out."
- }
- }
- }
-
- livecheck.type none
-
- if {[variant_isset atlas]} {
- build.env-append ATLAS=${prefix}/lib \
- LAPACK=${prefix}/lib \
- BLAS=${prefix}/lib
- destroot.env-append ATLAS=${prefix}/lib \
- LAPACK=${prefix}/lib \
- BLAS=${prefix}/lib
- } else {
- build.env-append ATLAS=None \
- LAPACK=/usr/lib \
- BLAS=/usr/lib
- destroot.env-append ATLAS=None \
- LAPACK=/usr/lib \
- BLAS=/usr/lib
- }
-
-} else {
- livecheck none
- #livecheck.regex archive/[join ${github.tag_prefix} ""](\[\\d+(?:\\.\\d+)*"\]+)${extract.suffix}"
-}
diff --git a/packaging/macosx/ports/python/py-numpy/files/patch-f2py_setup.py.diff b/packaging/macosx/ports/python/py-numpy/files/patch-f2py_setup.py.diff
deleted file mode 100644
index 1e3164e73..000000000
--- a/packaging/macosx/ports/python/py-numpy/files/patch-f2py_setup.py.diff
+++ /dev/null
@@ -1,39 +0,0 @@
---- numpy/f2py/setup.py
-+++ numpy/f2py/setup.py
-@@ -41,21 +41,21 @@ def configuration(parent_package='',top_
- )
-
- config.make_svn_version_py()
-
- def generate_f2py_py(build_dir):
-- f2py_exe = 'f2py'+os.path.basename(sys.executable)[6:]
-+ f2py_exe = 'f2py'
- if f2py_exe[-4:]=='.exe':
- f2py_exe = f2py_exe[:-4] + '.py'
- if 'bdist_wininst' in sys.argv and f2py_exe[-3:] != '.py':
- f2py_exe = f2py_exe + '.py'
- target = os.path.join(build_dir, f2py_exe)
- if newer(__file__, target):
- log.info('Creating %s', target)
- f = open(target, 'w')
- f.write('''\
--#!%s
-+#!@@MPORTS_PYTHON@@
- # See http://cens.ioc.ee/projects/f2py2e/
- import os, sys
- for mode in ["g3-numpy", "2e-numeric", "2e-numarray", "2e-numpy"]:
- try:
- i=sys.argv.index("--"+mode)
-@@ -75,11 +75,11 @@ elif mode=="2e-numpy":
- from numpy.f2py import main
- else:
- sys.stderr.write("Unknown mode: " + repr(mode) + "\\n")
- sys.exit(1)
- main()
--'''%(sys.executable))
-+''')
- f.close()
- return target
-
- config.add_scripts(generate_f2py_py)
-
diff --git a/packaging/macosx/ports/python/py-numpy/files/patch-fcompiler_g95.diff b/packaging/macosx/ports/python/py-numpy/files/patch-fcompiler_g95.diff
deleted file mode 100644
index b95a2609a..000000000
--- a/packaging/macosx/ports/python/py-numpy/files/patch-fcompiler_g95.diff
+++ /dev/null
@@ -1,15 +0,0 @@
---- numpy/distutils/fcompiler/__init__.py
-+++ numpy/distutils/fcompiler/__init__.py
-@@ -708,11 +708,11 @@
- ('win32', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95',
- 'intelvem', 'intelem')),
- ('cygwin.*', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95')),
- ('linux.*', ('gnu95', 'intel', 'lahey', 'pg', 'absoft', 'nag', 'vast', 'compaq',
- 'intele', 'intelem', 'gnu', 'g95', 'pathf95')),
-- ('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'g95', 'pg')),
-+ ('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'pg')),
- ('sunos.*', ('sun', 'gnu', 'gnu95', 'g95')),
- ('irix.*', ('mips', 'gnu', 'gnu95',)),
- ('aix.*', ('ibm', 'gnu', 'gnu95',)),
- # os.name mappings
- ('posix', ('gnu', 'gnu95',)),
diff --git a/packaging/macosx/ports/python/py-numpy/files/patch-numpy_core_setup.py.diff b/packaging/macosx/ports/python/py-numpy/files/patch-numpy_core_setup.py.diff
deleted file mode 100644
index 1c9a09c34..000000000
--- a/packaging/macosx/ports/python/py-numpy/files/patch-numpy_core_setup.py.diff
+++ /dev/null
@@ -1,34 +0,0 @@
---- numpy/core/setup.py.orig 2014-03-25 19:03:06.000000000 -0400
-+++ numpy/core/setup.py 2014-03-25 19:03:26.000000000 -0400
-@@ -485,7 +485,14 @@
- if isinstance(d, str):
- target_f.write('#define %s\n' % (d))
- else:
-- target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ if d[0]!='SIZEOF_LONG' and d[0]!='SIZEOF_PY_INTPTR_T':
-+ target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ else:
-+ target_f.write('#ifdef __LP64__\n')
-+ target_f.write('#define %s %s\n' % (d[0], 8))
-+ target_f.write('#else\n')
-+ target_f.write('#define %s %s\n' % (d[0], 4))
-+ target_f.write('#endif\n')
-
- # define inline to our keyword, or nothing
- target_f.write('#ifndef __cplusplus\n')
-@@ -585,7 +592,14 @@
- if isinstance(d, str):
- target_f.write('#define %s\n' % (d))
- else:
-- target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ if d[0]!='NPY_SIZEOF_LONG' and d[0]!='NPY_SIZEOF_PY_INTPTR_T':
-+ target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ else:
-+ target_f.write('#ifdef __LP64__\n')
-+ target_f.write('#define %s %s\n' % (d[0], 8))
-+ target_f.write('#else\n')
-+ target_f.write('#define %s %s\n' % (d[0], 4))
-+ target_f.write('#endif\n')
-
- # Define __STDC_FORMAT_MACROS
- target_f.write("""
diff --git a/packaging/macosx/ports/python/py-numpy/files/patch-numpy_linalg_setup.py.diff b/packaging/macosx/ports/python/py-numpy/files/patch-numpy_linalg_setup.py.diff
deleted file mode 100644
index 848d46186..000000000
--- a/packaging/macosx/ports/python/py-numpy/files/patch-numpy_linalg_setup.py.diff
+++ /dev/null
@@ -1,20 +0,0 @@
---- numpy/linalg/setup.py.orig 2013-11-16 08:30:31.000000000 -0500
-+++ numpy/linalg/setup.py 2013-11-16 08:39:27.000000000 -0500
-@@ -37,7 +37,8 @@
- config.add_extension('lapack_lite',
- sources = [get_lapack_lite_sources],
- depends = ['lapack_litemodule.c'] + lapack_lite_src,
-- extra_info = lapack_info
-+ extra_info = lapack_info,
-+ extra_link_args=['-undefined dynamic_lookup -bundle']
- )
-
- # umath_linalg module
-@@ -47,6 +48,7 @@
- depends = ['umath_linalg.c.src'] + lapack_lite_src,
- extra_info = lapack_info,
- libraries = ['npymath'],
-+ extra_link_args=['-undefined dynamic_lookup -bundle']
- )
-
- return config
diff --git a/packaging/macosx/ports/python/py-numpy/files/wrapper-template b/packaging/macosx/ports/python/py-numpy/files/wrapper-template
deleted file mode 100755
index 48936d107..000000000
--- a/packaging/macosx/ports/python/py-numpy/files/wrapper-template
+++ /dev/null
@@ -1,143 +0,0 @@
-#!/bin/sh
-COMPILER='@@@'
-SUFFIX='---'
-PREFIX='&&&'
-OUTPUT_O='NO'
-OUTPUT=''
-NAMED_OUTPUT=''
-LASTFILE=''
-INTEL='NO'
-SIZE32='NO'
-SIZE64='NO'
-NEWARGS=''
-
-SKIP='NO'
-
-for arg in $@
-do
- if [ $SKIP = 'ARCH' ]; then
- # intercept -arch option and set SIZEXX
- SKIP='NO'
- if [ $arg = 'x86_64' ] || [ $arg = 'ppc64' ]; then
- SIZE64='YES'
- else
- SIZE32='YES'
- fi
-
- # which architecture are we compiling for?
- if [ $arg = 'x86_64' ] || [ $arg = 'i386' ]; then
- INTEL='YES'
- fi
-
- elif [ $arg = '-arch' ]; then
- SKIP='ARCH'
-
- elif [ $arg = '--version' ]; then
- ${COMPILER} --version
- exit 0
-
- else
- NEWARGS+="$arg "
-
- # if the -c option is given, the output is .o
- if [ $arg = '-c' ]; then
- OUTPUT_O='YES'
- fi
-
- # if the output file is given by a -o option, record it
- if [ $SKIP = 'O' ]; then
- SKIP='NO'
- NAMED_OUTPUT=$arg
- fi
-
- if [ $arg = '-o' ]; then
- SKIP='O'
- fi
-
- # Note each file ending by ${SUFFIX} and remember the last one
- # Transform them in .o
- if `echo $arg | grep -q "${SUFFIX}$"`; then
- LASTFILE=$arg
- OUTPUT+=`echo $arg | sed "s/${SUFFIX}/\.o/"`
- OUTPUT+=' '
- fi
- fi
-done
-
-# What is the output?
-
-if [ ${NAMED_OUTPUT}"X" != "X" ]; then
- OUTPUT=$NAMED_OUTPUT
-
-elif [ $OUTPUT_O = 'NO' ]; then
- # It is an executable whose is name is the LASTFILE without suffix
- OUTPUT=`echo ${LASTFILE} | sed "s/${SUFFIX}//"`
-fi
-
-# Othewise, the output is just the ${OUTPUT} variable as computed before
-
-# For some reason, -dynamiclib and -lpython2.6 are missing when linking
-# .so files. Add them, except if -bundle is set (incompatible switches)
-if [ `echo $OUTPUT | sed -E 's|.*\.||'` = "so" ] && \
- ! `echo $NEWARGS | grep -q bundle`; then
- NEWARGS="${NEWARGS} ${PREFIX}/lib/libpython2.6.dylib -dynamiclib"
-fi
-
-# Now, compile
-
-if [ $SIZE32 = 'NO' ] && [ $SIZE64 = 'NO' ]; then
- # No size indication given, just proceed with default
- if `${COMPILER} $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-elif [ $SIZE32 = 'YES' ] && [ $SIZE64 = 'NO' ]; then
- # 32-bit
- if `${COMPILER} -m32 $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-elif [ $SIZE32 = 'NO' ] && [ $SIZE64 = 'YES' ]; then
- # 64-bit
- if `${COMPILER} -m64 $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-else
- # Universal case
- if `${COMPILER} -m32 $NEWARGS`; then
- for filename in ${OUTPUT}
- do
- mv ${filename} ${filename}.32
- done
-
- if `${COMPILER} -m64 $NEWARGS`; then
- for filename in ${OUTPUT}
- do
- mv ${filename} ${filename}.64
- if [ $INTEL = 'YES' ]; then
- lipo -create -arch x86_64 ${filename}.64 \
- -arch i386 ${filename}.32 \
- -output ${filename}
- else
- lipo -create -arch ppc64 ${filename}.64 \
- -arch ppc ${filename}.32 \
- -output ${filename}
- fi
-
- rm -f ${filename}.32 ${filename}.64
- done
- else
- exit 1
- fi
- else
- exit 1
- fi
-fi
-exit 0
diff --git a/packaging/macosx/ports/python/py-sk1libs/Portfile b/packaging/macosx/ports/python/py-sk1libs/Portfile
deleted file mode 100644
index 0c152ce8c..000000000
--- a/packaging/macosx/ports/python/py-sk1libs/Portfile
+++ /dev/null
@@ -1,64 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id$
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py-sk1libs
-version 0.9.1
-revision 101
-license LGPL-2
-maintainers nomaintainer
-categories python graphics
-platforms darwin
-homepage http://sk1project.org/
-
-description Set of python non-GUI extensions for sK1 Project
-
-long_description \
- sk1libs is a set of python non-GUI extensions for sK1 Project. \
- The package includes multiplatform non-GUI extensions which are \
- usually native extensions.
-
-distname sk1libs-${version}
-# MacPorts does not properly support URLs with a get parameter.
-# Workaround for this bug: https://trac.macports.org/wiki/PortfileRecipes#fetchwithgetparams
-master_sites http://sk1project.org/dc.php?target=${distfiles}&dummy=
-
-checksums md5 e18088bbc8a105e7535a96f40b80f284 \
- sha1 dd948558128bb6547b1f277087bf3066104912da \
- rmd160 38f22205e0b5b6078e31ec6dc4c1d93845533046
-
-python.versions 25 26 27
-
-if {$subport != $name} {
-
- depends_lib-append \
- port:freetype \
- port:jpeg \
- port:lcms \
- port:zlib
-
- depends_run-append \
- port:py${python.version}-pil
-
- variant Pillow {
- depends_run-delete port:py${python.version}-pil
- depends_run-append port:py${python.version}-Pillow
- }
-
- patchfiles \
- patch-src-utils-fs.py.diff \
- patch-src-imaging-libimagingft-_imagingft.c.diff
-
- post-patch {
- reinplace "s|'/usr/include/freetype2'|'${prefix}/include/freetype2'|g" ${worksrcpath}/setup.py
- reinplace "s|__PREFIX__|${prefix}|g" ${worksrcpath}/src/utils/fs.py
- }
-}
-
-default_variants +Pillow
-
-livecheck.type regex
-livecheck.url http://sk1project.org/modules.php?name=Products&product=uniconvertor&op=download
-livecheck.regex "sk1libs-(\\d+(?:\\.\\d+)*)${extract.suffix}"
diff --git a/packaging/macosx/ports/python/py-sk1libs/files/patch-src-imaging-libimagingft-_imagingft.c.diff b/packaging/macosx/ports/python/py-sk1libs/files/patch-src-imaging-libimagingft-_imagingft.c.diff
deleted file mode 100644
index 1d69461a3..000000000
--- a/packaging/macosx/ports/python/py-sk1libs/files/patch-src-imaging-libimagingft-_imagingft.c.diff
+++ /dev/null
@@ -1,16 +0,0 @@
---- src/imaging/libimagingft/_imagingft.c.orig 2014-07-13 00:37:57.000000000 +0200
-+++ src/imaging/libimagingft/_imagingft.c 2014-07-13 00:41:08.000000000 +0200
-@@ -70,7 +70,13 @@
- const char* message;
- } ft_errors[] =
-
-+#if defined(USE_FREETYPE_2_1)
-+/* freetype 2.1 and newer */
-+#include FT_ERRORS_H
-+#else
-+/* freetype 2.0 */
- #include <freetype/fterrors.h>
-+#endif
-
- /* -------------------------------------------------------------------- */
- /* font objects */
diff --git a/packaging/macosx/ports/python/py-sk1libs/files/patch-src-utils-fs.py.diff b/packaging/macosx/ports/python/py-sk1libs/files/patch-src-utils-fs.py.diff
deleted file mode 100644
index 541935e71..000000000
--- a/packaging/macosx/ports/python/py-sk1libs/files/patch-src-utils-fs.py.diff
+++ /dev/null
@@ -1,26 +0,0 @@
---- src/utils/fs.py.orig 2010-05-23 12:46:21.000000000 +0200
-+++ src/utils/fs.py 2013-01-18 15:40:02.000000000 +0100
-@@ -220,8 +220,14 @@
- finally:
- _winreg.CloseKey( k )
- if system.get_os_family()==system.MACOSX:
-- #FIXME: It's a stub. The paths should be more exact.
-- return ['/',]
-+ return ['__PREFIX__/share/fonts',
-+ '/usr/share/fonts',
-+ '/opt/X11/lib/X11/fonts',
-+ '/System/Library/Fonts',
-+ '/Network/Library/Fonts',
-+ '/Library/Fonts',
-+ os.path.expanduser("~/Library/Fonts"),
-+ os.path.expanduser("~/.fonts")]
-
-
- DIRECTORY_OBJECT=0
-@@ -311,4 +317,4 @@
- if __name__ == '__main__':
- _test()
-
--
-\ No newline at end of file
-+
diff --git a/packaging/macosx/ports/python/py-uniconvertor/Portfile b/packaging/macosx/ports/python/py-uniconvertor/Portfile
deleted file mode 100644
index 2c4a22ca0..000000000
--- a/packaging/macosx/ports/python/py-uniconvertor/Portfile
+++ /dev/null
@@ -1,46 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id$
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py-uniconvertor
-version 1.1.5
-revision 100
-license LGPL-2 GPL-2
-maintainers nomaintainer
-categories python graphics
-platforms darwin
-homepage http://sk1project.org/modules.php?name=Products&product=uniconvertor
-
-description universal vector graphics translator.
-
-long_description \
- UniConvertor is a universal vector graphics translator. It is a command \
- line tool which uses sK1 object model to convert one format to another. \
- Supported input formats include CorelDraw v7-X4 (CDR/CDT/CCX/CDRX/CMX), \
- Adobe Illustrator v5-9 (AI), PS, EPS, CGM, WMF, XFIG, SVG, SK, SK1, AFF. \
- Supported output formats include Adobe Illustrator AI, PS, CGM, WMF, \
- SVG, SK, SK1, PDF.
-
-distname uniconvertor-${version}
-# MacPorts does not properly support URLs with a get parameter.
-# Workaround for this bug: https://trac.macports.org/wiki/PortfileRecipes#fetchwithgetparams
-master_sites http://sk1project.org/dc.php?target=${distfiles}&dummy=
-
-checksums md5 d1272315a58304ece2ff588834e23f72 \
- sha1 51ec7c4487048c3357ed95cdb4ab3524018a2c9e \
- rmd160 86211bdb7b7af7611a9db4a2e2f6101995af6850
-
-python.versions 25 26 27
-
-if {$subport != $name} {
-
- depends_lib-append \
- port:py${python.version}-sk1libs
-
-}
-
-livecheck.type regex
-livecheck.url http://sk1project.org/modules.php?name=Products&product=uniconvertor&op=download
-livecheck.regex "uniconvertor-(\\d+(?:\\.\\d+)*)${extract.suffix}"
diff --git a/packaging/macosx/ports/python/py25-Pillow/Portfile b/packaging/macosx/ports/python/py25-Pillow/Portfile
deleted file mode 100644
index aa74a06ad..000000000
--- a/packaging/macosx/ports/python/py25-Pillow/Portfile
+++ /dev/null
@@ -1,77 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 104088 2013-03-15 14:39:56Z stromnov@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py25-Pillow
-set real_name py-Pillow
-version 1.7.8
-revision 100
-categories-append devel
-platforms darwin
-license BSD
-
-python.versions 25
-python.version 25
-
-maintainers stromnov openmaintainer
-
-description Python Imaging Library (fork)
-
-long_description ${description}
-
-homepage http://github.com/python-imaging/Pillow
-master_sites http://pypi.python.org/packages/source/P/Pillow/
-
-distname Pillow-${version}
-use_zip yes
-
-checksums rmd160 e52cec02d943951a80d30b32b1764cb3ae87b283 \
- sha256 907f5342b1df1d277dcc10df2aeabc61099e5a07e0676b9fcd1bb7379890c0ee
-
-if {$subport == $name} {
- conflicts py${python.version}-pil
-
- depends_build port:py${python.version}-setuptools
- depends_lib-append \
- port:zlib \
- port:jpeg \
- port:tiff \
- port:lcms \
- port:webp \
- port:freetype
-
- patchfiles patch-setup.py-v1.7.8.diff \
- patch-_imagingft.c.diff
-
- post-patch {
- reinplace "s|@prefix@|${prefix}|g" ${worksrcpath}/setup.py
- }
-
- livecheck.type none
-#} else {
-# livecheck.type regex
-# livecheck.url ${master_sites}
-# livecheck.regex "Pillow-(\\d+(?:\\.\\d+)*)${extract.suffix}"
-}
-
-variant quartz conflicts x11 tkinter {
- # tkinter doesn't build
-}
-
-variant x11 conflicts quartz {
- # tkinter does build
-}
-
-variant tkinter description {with tkinter support} {
- if {$subport == $name} {
- depends_lib-append port:py${python.version}-tkinter
- }
-}
-
-#if { ![variant_isset quartz] } {
-# default_variants-append +tkinter
-#}
-
-default_variants -tkinter
diff --git a/packaging/macosx/ports/python/py25-Pillow/files/patch-_imagingft.c.diff b/packaging/macosx/ports/python/py25-Pillow/files/patch-_imagingft.c.diff
deleted file mode 100644
index 99f72a8c9..000000000
--- a/packaging/macosx/ports/python/py25-Pillow/files/patch-_imagingft.c.diff
+++ /dev/null
@@ -1,14 +0,0 @@
---- _imagingft.c.orig 2013-11-27 16:07:53.000000000 +0400
-+++ _imagingft.c 2013-11-27 16:12:01.000000000 +0400
-@@ -70,7 +70,11 @@
- const char* message;
- } ft_errors[] =
-
-+#if defined(USE_FREETYPE_2_1)
-+#include FT_ERRORS_H
-+#else
- #include <freetype/fterrors.h>
-+#endif
-
- /* -------------------------------------------------------------------- */
- /* font objects */
diff --git a/packaging/macosx/ports/python/py25-Pillow/files/patch-setup.py-v1.7.8.diff b/packaging/macosx/ports/python/py25-Pillow/files/patch-setup.py-v1.7.8.diff
deleted file mode 100644
index 2f4b797f6..000000000
--- a/packaging/macosx/ports/python/py25-Pillow/files/patch-setup.py-v1.7.8.diff
+++ /dev/null
@@ -1,83 +0,0 @@
---- setup.py.orig 2014-09-02 02:51:22.000000000 +0200
-+++ setup.py 2014-09-02 02:53:51.000000000 +0200
-@@ -100,18 +100,9 @@
- "/usr/lib", "python%s" % sys.version[:3], "config"))
-
- elif sys.platform == "darwin":
-- # attempt to make sure we pick freetype2 over other versions
-- _add_directory(include_dirs, "/sw/include/freetype2")
-- _add_directory(include_dirs, "/sw/lib/freetype2/include")
-- # fink installation directories
-- _add_directory(library_dirs, "/sw/lib")
-- _add_directory(include_dirs, "/sw/include")
- # darwin ports installation directories
-- _add_directory(library_dirs, "/opt/local/lib")
-- _add_directory(include_dirs, "/opt/local/include")
-- # freetype2 ships with X11
-- _add_directory(library_dirs, "/usr/X11/lib")
-- _add_directory(include_dirs, "/usr/X11/include")
-+ _add_directory(library_dirs, "@prefix@/lib")
-+ _add_directory(include_dirs, "@prefix@/include")
-
- elif sys.platform.startswith("linux"):
- if platform.processor() == "x86_64":
-@@ -126,9 +117,6 @@
- # work ;-)
- self.add_multiarch_paths()
-
-- _add_directory(library_dirs, "/usr/local/lib")
-- # FIXME: check /opt/stuff directories here?
--
- prefix = sysconfig.get_config_var("prefix")
- if prefix:
- _add_directory(library_dirs, os.path.join(prefix, "lib"))
-@@ -180,19 +168,6 @@
- #
- # add standard directories
-
-- # look for tcl specific subdirectory (e.g debian)
-- if _tkinter:
-- tcl_dir = "/usr/include/tcl" + TCL_VERSION
-- if os.path.isfile(os.path.join(tcl_dir, "tk.h")):
-- _add_directory(include_dirs, tcl_dir)
--
-- # standard locations
-- _add_directory(library_dirs, "/usr/local/lib")
-- _add_directory(include_dirs, "/usr/local/include")
--
-- _add_directory(library_dirs, "/usr/lib")
-- _add_directory(include_dirs, "/usr/include")
--
- #
- # insert new dirs *before* default libs, to avoid conflicts
- # between Python PYD stub libs and real libraries
-@@ -307,28 +282,7 @@
- exts.append(Extension(
- "_imagingcms", ["_imagingcms.c"], libraries=["lcms"] + extra))
-
-- if sys.platform == "darwin":
-- # locate Tcl/Tk frameworks
-- frameworks = []
-- framework_roots = [
-- "/Library/Frameworks",
-- "/System/Library/Frameworks"]
-- for root in framework_roots:
-- if (os.path.exists(os.path.join(root, "Tcl.framework")) and
-- os.path.exists(os.path.join(root, "Tk.framework"))):
-- print("--- using frameworks at %s" % root)
-- frameworks = ["-framework", "Tcl", "-framework", "Tk"]
-- dir = os.path.join(root, "Tcl.framework", "Headers")
-- _add_directory(self.compiler.include_dirs, dir, 0)
-- dir = os.path.join(root, "Tk.framework", "Headers")
-- _add_directory(self.compiler.include_dirs, dir, 1)
-- break
-- if frameworks:
-- exts.append(Extension(
-- "_imagingtk", ["_imagingtk.c", "Tk/tkImaging.c"],
-- extra_compile_args=frameworks, extra_link_args=frameworks))
-- feature.tcl = feature.tk = 1 # mark as present
-- elif feature.tcl and feature.tk:
-+ if feature.tcl and feature.tk:
- exts.append(Extension(
- "_imagingtk", ["_imagingtk.c", "Tk/tkImaging.c"],
- libraries=[feature.tcl, feature.tk]))
diff --git a/packaging/macosx/ports/python/py25-lxml/Portfile b/packaging/macosx/ports/python/py25-lxml/Portfile
deleted file mode 100644
index 49a753cd1..000000000
--- a/packaging/macosx/ports/python/py25-lxml/Portfile
+++ /dev/null
@@ -1,51 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 121661 2014-07-03 17:50:11Z mf2k@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py25-lxml
-version 3.3.5
-revision 0
-categories-append devel
-platforms darwin
-license BSD
-
-python.versions 25
-
-maintainers gmail.com:dbraband openmaintainer
-
-description Powerful and Pythonic XML processing library
-
-long_description lxml is a Pythonic binding for the libxml2 and \
- libxslt libraries. It is unique in that it \
- combines the speed and feature completeness of \
- these libraries with the simplicity of a native \
- Python API, mostly compatible but superior to \
- the well-known ElementTree API.
-
-homepage http://lxml.de/
-master_sites http://pypi.python.org/packages/source/l/lxml/
-
-checksums rmd160 c7ccece50f8d20f5fac44ac1bf8dc0d8a85aa0f9 \
- sha256 6ad6949dc7eea744a30fba77a968dd5910f545220e58bcc813b9df5c793e318a
-
-distname lxml-${version}
-
-if {${name} eq ${subport}} {
-
- revision 100
-
- depends_build-append \
- port:py${python.version}-setuptools
-
- depends_lib-append port:zlib \
- port:libxml2 \
- port:libxslt
-
- livecheck.type none
-} else {
- livecheck.type regex
- livecheck.url ${master_sites}
- livecheck.regex "lxml-(\\d+(?:\\.\\d+)*)${extract.suffix}"
-}
diff --git a/packaging/macosx/ports/python/py25-nose/Portfile b/packaging/macosx/ports/python/py25-nose/Portfile
deleted file mode 100644
index 62a60eec5..000000000
--- a/packaging/macosx/ports/python/py25-nose/Portfile
+++ /dev/null
@@ -1,86 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 121661 2014-07-03 17:50:11Z mf2k@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-PortGroup select 1.0
-
-set my_name nose
-name py25-${my_name}
-version 1.3.1
-categories-append www
-license LGPL-2+
-maintainers mcalhoun openmaintainer
-description A Python unittest extension.
-long_description \
- A unittest extension offering automatic test \
- suite discovery, simplified test authoring, \
- and output capture. Nose provides an alternate \
- test discovery and running process for \
- unittest, one that is intended to mimic the \
- behavior of py.test as much as is reasonably \
- possible without resorting to magic.
-
-platforms darwin
-supported_archs noarch
-
-homepage http://somethingaboutorange.com/mrl/projects/${my_name}
-master_sites http://pypi.python.org/packages/source/n/${my_name}/
-distname ${my_name}-${version}
-
-checksums md5 672398801ddf5ba745c55c6eed79c5aa \
- rmd160 7bf311d3d54f2ccb372dea331708c475b992ccec \
- sha256 85273b87ab3db9307e3b1452b071e25c1db1cc812bc337d2a97ea0b0cf2ab6ba
-
-python.versions 25
-
-# already installs version-suffixed executables
-python.link_binaries no
-python.move_binaries no
-
-depends_run-append port:nosetests_select
-if {${name} eq ${subport}} {
-
- revision 100
-
- select.group nosetests
- select.file ${filespath}/nosetests${python.version}
-
- depends_lib port:py${python.version}-setuptools
-
- post-patch {
- reinplace "s|man/man|share/man/man|" ${worksrcpath}/setup.py
-
- # One of the tests fails if this directory does not exist
- file mkdir ${worksrcpath}/functional_tests/support/empty
- }
-
- post-destroot {
- if {${python.version} == "24" || ${python.version} == "25"} {
- move ${destroot}${prefix}/share/man/man1/nosetests.1 ${destroot}${prefix}/share/man/man1/nosetests${python.branch}.1
- delete ${destroot}${prefix}/bin/nosetests
- } else {
- ln -s ${python.prefix}/bin/nosetests-${python.branch} ${destroot}${prefix}/bin/
- ln -s ${python.prefix}/share/man/man1/nosetests.1 ${destroot}${prefix}/share/man/man1/nosetests${python.branch}.1
- }
-
- xinstall -m 644 -W ${worksrcpath} \
- AUTHORS CHANGELOG NEWS README.txt \
- ${destroot}${prefix}/share/doc/${subport}
-
- file copy ${worksrcpath}/doc ${destroot}${prefix}/share/doc/${subport}/html
-
- file delete ${destroot}${prefix}/share/doc/${subport}/examples
- file copy ${worksrcpath}/examples ${destroot}${prefix}/share/doc/${subport}
- }
-
- test.run yes
- test.cmd ${python.bin} setup.py test
-
- livecheck.type none
-
-#} else {
-# livecheck.type regex
-# livecheck.url ${master_sites}
-# livecheck.regex "${my_name}-(\\d+(?:\\.\\d+)*)${extract.suffix}"
-}
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests24 b/packaging/macosx/ports/python/py25-nose/files/nosetests24
deleted file mode 100644
index d9a8f4034..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests24
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.4
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests25 b/packaging/macosx/ports/python/py25-nose/files/nosetests25
deleted file mode 100644
index 95864c283..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests25
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.5
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests26 b/packaging/macosx/ports/python/py25-nose/files/nosetests26
deleted file mode 100644
index bb670776f..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests26
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.6
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests27 b/packaging/macosx/ports/python/py25-nose/files/nosetests27
deleted file mode 100644
index 28c7bfe8c..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests27
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.7
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests31 b/packaging/macosx/ports/python/py25-nose/files/nosetests31
deleted file mode 100644
index 5ba27a4d5..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests31
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.1
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests32 b/packaging/macosx/ports/python/py25-nose/files/nosetests32
deleted file mode 100644
index 07bfb86a1..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests32
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.2
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests33 b/packaging/macosx/ports/python/py25-nose/files/nosetests33
deleted file mode 100644
index b750d806b..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests33
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.3
diff --git a/packaging/macosx/ports/python/py25-nose/files/nosetests34 b/packaging/macosx/ports/python/py25-nose/files/nosetests34
deleted file mode 100644
index 542ffc949..000000000
--- a/packaging/macosx/ports/python/py25-nose/files/nosetests34
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.4
diff --git a/packaging/macosx/ports/python/py25-numpy/Portfile b/packaging/macosx/ports/python/py25-numpy/Portfile
deleted file mode 100644
index 4575d6293..000000000
--- a/packaging/macosx/ports/python/py25-numpy/Portfile
+++ /dev/null
@@ -1,209 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
-# $Id: Portfile 113172 2013-11-11 10:24:44Z jeremyhu@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-PortGroup github 1.0
-
-github.setup numpy numpy 1.7.1 v
-name py25-numpy
-revision 1
-dist_subdir ${name}/${version}_1
-
-categories-append math
-license BSD
-platforms darwin
-maintainers dh michaelld openmaintainer
-description The core utilities for the scientific library scipy for Python
-long_description ${description}
-
-checksums rmd160 16df4216f40b22077e1f14cc41b8c8ae486b45af \
- sha256 14964724915e5fa1ed34d2cdb93eed5a86bc16edd4a1203cf521ad8bbbcb5215
-
-python.versions 25
-
-if {$subport == $name} {
-
- revision 100
-
- patchfiles patch-f2py_setup.py.diff \
- patch-numpy_distutils_fcompiler___init__.py.diff \
- patch-fcompiler_g95.diff
-
- depends_lib-append port:fftw-3 \
- port:py${python.version}-nose
-
- # http://trac.macports.org/ticket/34562
- destroot.env-append \
- CC="${configure.cc}" \
- CFLAGS="${configure.cflags} [get_canonical_archflags cc]" \
- CXX="${configure.cxx}" \
- CXXFLAGS="${configure.cxxflags} [get_canonical_archflags cxx]" \
- OBJC="${configure.objc}" \
- OBJCFLAGS="${configure.objcflags} [get_canonical_archflags objc]" \
- LDFLAGS="${configure.ldflags} [get_canonical_archflags ld]"
-
- build.env-append ARCHFLAGS="[get_canonical_archflags ld]"
- destroot.env-append ARCHFLAGS="[get_canonical_archflags ld]"
-
- variant atlas description {Use the MacPorts' ATLAS libraries \
- instead of Apple's Accelerate framework} {
- build.env-append ATLAS=${prefix}/lib \
- LAPACK=${prefix}/lib \
- BLAS=${prefix}/lib
- destroot.env-append ATLAS=${prefix}/lib \
- LAPACK=${prefix}/lib \
- BLAS=${prefix}/lib
- depends_lib-append port:atlas
-
- if {[variant_isset universal]} {
- python.set_compiler no
- }
- }
-
- # when using ATLAS (whether by default or specified by the user via
- # the +atlas variant) ...
- set gcc_version ""
- if {[variant_isset atlas]} {
-
- # see if the user has set -gcc4X to disable using MacPorts'
- # compiler; if not, either use what the user set (as +gcc4X) or
- # default to gcc47.
-
- variant gcc43 conflicts gcc44 gcc45 gcc46 gcc47 gcc48 \
- description {Use the gcc43 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.3
- }
-
- variant gcc44 conflicts gcc43 gcc45 gcc46 gcc47 gcc48 \
- description {Use the gcc44 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.4
- }
-
- variant gcc45 conflicts gcc43 gcc44 gcc46 gcc47 gcc48 \
- description {Use the gcc45 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.5
- }
-
- variant gcc46 conflicts gcc43 gcc44 gcc45 gcc47 gcc48 \
- description {Use the gcc46 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.6
- }
-
- variant gcc47 conflicts gcc43 gcc44 gcc45 gcc46 gcc48 \
- description {Use the gcc47 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.7
- }
-
- variant gcc48 conflicts gcc43 gcc44 gcc45 gcc46 gcc47 \
- description {Use the gcc48 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.8
- }
-
- if {![variant_isset gcc43] && ![variant_isset gcc44] && ![variant_isset gcc45] && ![variant_isset gcc46] && ![variant_isset gcc48]} {
- default_variants +gcc47
- }
-
- if {[variant_isset gcc43]} {
- set gcc_version "4.3"
- } elseif {[variant_isset gcc44]} {
- set gcc_version "4.4"
- } elseif {[variant_isset gcc45]} {
- set gcc_version "4.5"
- } elseif {[variant_isset gcc46]} {
- set gcc_version "4.6"
- } elseif {[variant_isset gcc47]} {
- set gcc_version "4.7"
- } elseif {[variant_isset gcc48]} {
- set gcc_version "4.8"
- }
-
- # when using non-Apple GCC for universal install, it can
- # create binaries only for the native OS architecture, at
- # either 32 or 64 bits. Restrict the supported archs
- # accordingly.
- if {${os.arch} == "i386"} {
- supported_archs i386 x86_64
- } elseif {${os.arch} == "powerpc"} {
- supported_archs ppc ppc64
- }
-
- # include all the correct GCC4X port
- depends_lib-append port:gcc[join [split ${gcc_version} "."] ""]
-
- # force LDFLAGS for correct linking of the linalg module
- # for non-Apple GCC compilers
- patchfiles-append patch-numpy_linalg_setup.py.diff
-
- if {${gcc_version} == ""} {
- # user specified -gcc4X but +atlas (either as default or
- # explicitly); do not allow since it might lead to
- # undetermined runtime execution.
- return -code error \
-"\n\nWhen using the +atlas variant (either as the default or setting
-explicitly), one of the +gcc4X variants must be selected.\n"
- }
-
- } else {
- variant universal {
- patchfiles-append patch-setup.py.diff
- }
- }
-
- post-patch {
- reinplace "s|@@MPORTS_PYTHON@@|${python.bin}|" \
- ${worksrcpath}/numpy/f2py/setup.py
-
- if {[variant_isset universal] && [variant_isset atlas]} {
- # Prepare wrappers
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/c-wrapper
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/f-wrapper
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/cxx-wrapper
-
- reinplace "s|@@@|${configure.cc}|" ${worksrcpath}/c-wrapper
- reinplace "s|---|\\\\.c|" ${worksrcpath}/c-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/c-wrapper
-
- reinplace "s|@@@|${configure.cxx}|" ${worksrcpath}/cxx-wrapper
- reinplace "s#---#(\\\\.C|\\\\.cpp|\\\\.cc)#" \
- ${worksrcpath}/cxx-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/cxx-wrapper
-
- reinplace "s|@@@|${configure.f90}|" ${worksrcpath}/f-wrapper
- reinplace "s|---|\\\\.f|" ${worksrcpath}/f-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/f-wrapper
-
- build.env-append CC="${worksrcpath}/c-wrapper" \
- CXX="${worksrcpath}/cxx-wrapper" \
- F77="${worksrcpath}/f-wrapper" \
- F90="${worksrcpath}/f-wrapper"
-
- destroot.env-append CC="${worksrcpath}/c-wrapper" \
- CXX="${worksrcpath}/cxx-wrapper" \
- F77="${worksrcpath}/f-wrapper" \
- F90="${worksrcpath}/f-wrapper"
- }
-
- if {[variant_isset atlas]} {
- # We must link against libSatlas or libTatlas, not libAtlas
- if {[file exists ${prefix}/lib/libtatlas.dylib]} {
- reinplace -E \
- "s|_lib_atlas = \\\['atlas'\\\]|_lib_atlas = \\\['tatlas'\\\]|" \
- ${worksrcpath}/numpy/distutils/system_info.py
- } elseif {[file exists ${prefix}/lib/libsatlas.dylib]} {
- reinplace -E \
- "s|_lib_atlas = \\\['atlas'\\\]|_lib_atlas = \\\['satlas'\\\]|" \
- ${worksrcpath}/numpy/distutils/system_info.py
- } else {
- return -code error "Unable to find Atlas dylibs. Bailing out."
- }
- }
- }
-
- livecheck.type none
-#} else {
-# livecheck.regex archive/[join ${github.tag_prefix} ""](\[\\d+(?:\\.\\d+)*"\]+)${extract.suffix}"
-}
diff --git a/packaging/macosx/ports/python/py25-numpy/files/patch-f2py_setup.py.diff b/packaging/macosx/ports/python/py25-numpy/files/patch-f2py_setup.py.diff
deleted file mode 100644
index 5b8f2a28f..000000000
--- a/packaging/macosx/ports/python/py25-numpy/files/patch-f2py_setup.py.diff
+++ /dev/null
@@ -1,29 +0,0 @@
---- numpy/f2py/setup.py.orig 2013-02-10 00:51:36.000000000 +0400
-+++ numpy/f2py/setup.py 2013-03-19 15:27:15.000000000 +0400
-@@ -41,7 +41,7 @@
- config.make_svn_version_py()
-
- def generate_f2py_py(build_dir):
-- f2py_exe = 'f2py'+os.path.basename(sys.executable)[6:]
-+ f2py_exe = 'f2py'
- if f2py_exe[-4:]=='.exe':
- f2py_exe = f2py_exe[:-4] + '.py'
- if 'bdist_wininst' in sys.argv and f2py_exe[-3:] != '.py':
-@@ -51,7 +51,7 @@
- log.info('Creating %s', target)
- f = open(target,'w')
- f.write('''\
--#!/usr/bin/env %s
-+#!@@MPORTS_PYTHON@@
- # See http://cens.ioc.ee/projects/f2py2e/
- import os, sys
- for mode in ["g3-numpy", "2e-numeric", "2e-numarray", "2e-numpy"]:
-@@ -75,7 +75,7 @@
- sys.stderr.write("Unknown mode: " + repr(mode) + "\\n")
- sys.exit(1)
- main()
--'''%(os.path.basename(sys.executable)))
-+''')
- f.close()
- return target
-
diff --git a/packaging/macosx/ports/python/py25-numpy/files/patch-fcompiler_g95.diff b/packaging/macosx/ports/python/py25-numpy/files/patch-fcompiler_g95.diff
deleted file mode 100644
index 2640a530b..000000000
--- a/packaging/macosx/ports/python/py25-numpy/files/patch-fcompiler_g95.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- numpy/distutils/fcompiler/__init__.py.orig 2013-03-19 13:35:03.000000000 +0400
-+++ numpy/distutils/fcompiler/__init__.py 2013-03-19 13:35:27.000000000 +0400
-@@ -708,7 +708,7 @@
- ('cygwin.*', ('gnu','intelv','absoft','compaqv','intelev','gnu95','g95')),
- ('linux.*', ('gnu95','intel','lahey','pg','absoft','nag','vast','compaq',
- 'intele','intelem','gnu','g95','pathf95')),
-- ('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'g95', 'pg')),
-+ ('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'pg')),
- ('sunos.*', ('sun','gnu','gnu95','g95')),
- ('irix.*', ('mips','gnu','gnu95',)),
- ('aix.*', ('ibm','gnu','gnu95',)),
diff --git a/packaging/macosx/ports/python/py25-numpy/files/patch-numpy_distutils_fcompiler___init__.py.diff b/packaging/macosx/ports/python/py25-numpy/files/patch-numpy_distutils_fcompiler___init__.py.diff
deleted file mode 100644
index 4f73dcfc9..000000000
--- a/packaging/macosx/ports/python/py25-numpy/files/patch-numpy_distutils_fcompiler___init__.py.diff
+++ /dev/null
@@ -1,30 +0,0 @@
---- numpy/distutils/fcompiler/__init__.py.orig 2013-10-31 13:24:12.000000000 +0400
-+++ numpy/distutils/fcompiler/__init__.py 2013-10-31 13:45:03.000000000 +0400
-@@ -815,7 +815,7 @@
- return compiler_type
-
- # Flag to avoid rechecking for Fortran compiler every time
--failed_fcompiler = False
-+failed_fcompilers = []
-
- def new_fcompiler(plat=None,
- compiler=None,
-@@ -828,7 +828,8 @@
- platform/compiler combination.
- """
- global failed_fcompiler
-- if failed_fcompiler:
-+ fcompiler_key = (plat, compiler)
-+ if fcompiler_key in failed_fcompilers:
- return None
-
- load_all_fcompiler_classes()
-@@ -848,7 +849,7 @@
- msg = msg + " Supported compilers are: %s)" \
- % (','.join(fcompiler_class.keys()))
- log.warn(msg)
-- failed_fcompiler = True
-+ failed_fcompilers.append(fcompiler_key)
- return None
-
- compiler = klass(verbose=verbose, dry_run=dry_run, force=force)
diff --git a/packaging/macosx/ports/python/py25-numpy/files/patch-numpy_linalg_setup.py.diff b/packaging/macosx/ports/python/py25-numpy/files/patch-numpy_linalg_setup.py.diff
deleted file mode 100644
index 0b06883a4..000000000
--- a/packaging/macosx/ports/python/py25-numpy/files/patch-numpy_linalg_setup.py.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- numpy/linalg/setup.py.orig 2010-09-14 11:44:21.000000000 -0400
-+++ numpy/linalg/setup.py 2010-09-14 11:45:01.000000000 -0400
-@@ -27,6 +27,7 @@
- 'zlapack_lite.c', 'dlapack_lite.c',
- 'blas_lite.c', 'dlamch.c',
- 'f2c_lite.c','f2c.h'],
-+ extra_link_args=['-undefined dynamic_lookup -bundle'],
- extra_info = lapack_info
- )
-
diff --git a/packaging/macosx/ports/python/py25-numpy/files/patch-setup.py.diff b/packaging/macosx/ports/python/py25-numpy/files/patch-setup.py.diff
deleted file mode 100644
index 04e3cdd7a..000000000
--- a/packaging/macosx/ports/python/py25-numpy/files/patch-setup.py.diff
+++ /dev/null
@@ -1,34 +0,0 @@
---- numpy/core/setup.py.orig 2009-04-05 04:09:20.000000000 -0400
-+++ numpy/core/setup.py 2009-04-08 19:53:45.000000000 -0400
-@@ -309,7 +309,14 @@
- if isinstance(d,str):
- target_f.write('#define %s\n' % (d))
- else:
-- target_f.write('#define %s %s\n' % (d[0],d[1]))
-+ if d[0]!='SIZEOF_LONG' and d[0]!='SIZEOF_PY_INTPTR_T':
-+ target_f.write('#define %s %s\n' % (d[0],d[1]))
-+ else:
-+ target_f.write('#ifdef __LP64__\n')
-+ target_f.write('#define %s %s\n' % (d[0],8))
-+ target_f.write('#else\n')
-+ target_f.write('#define %s %s\n' % (d[0],4))
-+ target_f.write('#endif\n')
-
- # define inline to our keyword, or nothing
- target_f.write('#ifndef __cplusplus\n')
-@@ -393,7 +393,14 @@
- if isinstance(d,str):
- target_f.write('#define %s\n' % (d))
- else:
-- target_f.write('#define %s %s\n' % (d[0],d[1]))
-+ if d[0]!='NPY_SIZEOF_LONG' and d[0]!='NPY_SIZEOF_PY_INTPTR_T':
-+ target_f.write('#define %s %s\n' % (d[0],d[1]))
-+ else:
-+ target_f.write('#ifdef __LP64__\n')
-+ target_f.write('#define %s %s\n' % (d[0],8))
-+ target_f.write('#else\n')
-+ target_f.write('#define %s %s\n' % (d[0],4))
-+ target_f.write('#endif\n')
-
- # define NPY_INLINE to recognized keyword
- target_f.write('#define NPY_INLINE %s\n' % inline)
diff --git a/packaging/macosx/ports/python/py25-numpy/files/wrapper-template b/packaging/macosx/ports/python/py25-numpy/files/wrapper-template
deleted file mode 100755
index 48936d107..000000000
--- a/packaging/macosx/ports/python/py25-numpy/files/wrapper-template
+++ /dev/null
@@ -1,143 +0,0 @@
-#!/bin/sh
-COMPILER='@@@'
-SUFFIX='---'
-PREFIX='&&&'
-OUTPUT_O='NO'
-OUTPUT=''
-NAMED_OUTPUT=''
-LASTFILE=''
-INTEL='NO'
-SIZE32='NO'
-SIZE64='NO'
-NEWARGS=''
-
-SKIP='NO'
-
-for arg in $@
-do
- if [ $SKIP = 'ARCH' ]; then
- # intercept -arch option and set SIZEXX
- SKIP='NO'
- if [ $arg = 'x86_64' ] || [ $arg = 'ppc64' ]; then
- SIZE64='YES'
- else
- SIZE32='YES'
- fi
-
- # which architecture are we compiling for?
- if [ $arg = 'x86_64' ] || [ $arg = 'i386' ]; then
- INTEL='YES'
- fi
-
- elif [ $arg = '-arch' ]; then
- SKIP='ARCH'
-
- elif [ $arg = '--version' ]; then
- ${COMPILER} --version
- exit 0
-
- else
- NEWARGS+="$arg "
-
- # if the -c option is given, the output is .o
- if [ $arg = '-c' ]; then
- OUTPUT_O='YES'
- fi
-
- # if the output file is given by a -o option, record it
- if [ $SKIP = 'O' ]; then
- SKIP='NO'
- NAMED_OUTPUT=$arg
- fi
-
- if [ $arg = '-o' ]; then
- SKIP='O'
- fi
-
- # Note each file ending by ${SUFFIX} and remember the last one
- # Transform them in .o
- if `echo $arg | grep -q "${SUFFIX}$"`; then
- LASTFILE=$arg
- OUTPUT+=`echo $arg | sed "s/${SUFFIX}/\.o/"`
- OUTPUT+=' '
- fi
- fi
-done
-
-# What is the output?
-
-if [ ${NAMED_OUTPUT}"X" != "X" ]; then
- OUTPUT=$NAMED_OUTPUT
-
-elif [ $OUTPUT_O = 'NO' ]; then
- # It is an executable whose is name is the LASTFILE without suffix
- OUTPUT=`echo ${LASTFILE} | sed "s/${SUFFIX}//"`
-fi
-
-# Othewise, the output is just the ${OUTPUT} variable as computed before
-
-# For some reason, -dynamiclib and -lpython2.6 are missing when linking
-# .so files. Add them, except if -bundle is set (incompatible switches)
-if [ `echo $OUTPUT | sed -E 's|.*\.||'` = "so" ] && \
- ! `echo $NEWARGS | grep -q bundle`; then
- NEWARGS="${NEWARGS} ${PREFIX}/lib/libpython2.6.dylib -dynamiclib"
-fi
-
-# Now, compile
-
-if [ $SIZE32 = 'NO' ] && [ $SIZE64 = 'NO' ]; then
- # No size indication given, just proceed with default
- if `${COMPILER} $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-elif [ $SIZE32 = 'YES' ] && [ $SIZE64 = 'NO' ]; then
- # 32-bit
- if `${COMPILER} -m32 $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-elif [ $SIZE32 = 'NO' ] && [ $SIZE64 = 'YES' ]; then
- # 64-bit
- if `${COMPILER} -m64 $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-else
- # Universal case
- if `${COMPILER} -m32 $NEWARGS`; then
- for filename in ${OUTPUT}
- do
- mv ${filename} ${filename}.32
- done
-
- if `${COMPILER} -m64 $NEWARGS`; then
- for filename in ${OUTPUT}
- do
- mv ${filename} ${filename}.64
- if [ $INTEL = 'YES' ]; then
- lipo -create -arch x86_64 ${filename}.64 \
- -arch i386 ${filename}.32 \
- -output ${filename}
- else
- lipo -create -arch ppc64 ${filename}.64 \
- -arch ppc ${filename}.32 \
- -output ${filename}
- fi
-
- rm -f ${filename}.32 ${filename}.64
- done
- else
- exit 1
- fi
- else
- exit 1
- fi
-fi
-exit 0
diff --git a/packaging/macosx/ports/python/py25-setuptools/Portfile b/packaging/macosx/ports/python/py25-setuptools/Portfile
deleted file mode 100644
index 35c528500..000000000
--- a/packaging/macosx/ports/python/py25-setuptools/Portfile
+++ /dev/null
@@ -1,58 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 123950 2014-08-16 14:24:07Z jmr@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py25-setuptools
-version 5.7
-categories-append devel
-license {PSF ZPL}
-maintainers jmr openmaintainer
-description distutils enhancement for build and distribution
-long_description \
- setuptools is a collection of enhancements to the Python distutils that \
- allow you to more easily build and distribute Python packages, \
- especially ones that have dependencies on other packages.
-
-platforms darwin
-supported_archs noarch
-
-homepage https://pypi.python.org/pypi/setuptools/
-master_sites https://pypi.python.org/packages/source/s/setuptools/
-distname setuptools-${version}
-
-checksums md5 81f980854a239d60d074d6ba052e21ed \
- rmd160 ee9eff6c77e6f27e22e2049a6685bb0e624f94b0 \
- sha256 a8bbdb2d67532c5b5cef5ba09553cea45d767378e42c7003347e53ebbe70f482
-
-python.versions 25
-python.link_binaries no
-python.move_binaries no
-
-if {$subport eq $name} {
- if {${python.version} == 25} {
- version 1.4.2
- revision 100
- distname setuptools-${version}
- checksums md5 13951be6711438073fbe50843e7f141f \
- rmd160 b48086a2aae718fe433a8c882d2d9209aa157b0a \
- sha256 263986a60a83aba790a5bffc7d009ac88114ba4e908e5c90e453b3bf2155dbbd
- }
-
- post-destroot {
- xinstall -m 755 -d ${destroot}${prefix}/share/doc/${subport}
- xinstall -m 644 -W ${worksrcpath} CHANGES.txt \
- DEVGUIDE.txt README.txt ${destroot}${prefix}/share/doc/${subport}
- if {${python.version} <= 25} {
- delete "${destroot}${prefix}/bin/easy_install"
- } else {
- ln -s "${python.prefix}/bin/easy_install-${python.branch}" "${destroot}${prefix}/bin/"
- }
- }
- livecheck.type none
-#} else {
-# livecheck.type regex
-# livecheck.url ${homepage}
-# livecheck.regex setuptools/(\\d+(\\.\\d+)+)
-}
diff --git a/packaging/macosx/ports/python/py26-cython/Portfile b/packaging/macosx/ports/python/py26-cython/Portfile
deleted file mode 100644
index 9497f5e7e..000000000
--- a/packaging/macosx/ports/python/py26-cython/Portfile
+++ /dev/null
@@ -1,85 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 125247 2014-09-11 17:01:30Z stromnov@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-PortGroup select 1.0
-
-name py26-cython
-version 0.21
-revision 0
-categories-append devel
-platforms darwin
-license Apache-2
-
-python.versions 26
-python.version 26
-
-maintainers stromnov openmaintainer
-
-description A language for writing C extension modules for Python.
-
-long_description Cython is a language that makes writing C extensions for \
- the Python language as easy as Python itself. Cython is \
- based on the well-known Pyrex, but supports more cutting \
- edge functionality and optimizations
-
-homepage http://www.cython.org/
-master_sites ${homepage}release/ \
- http://pypi.python.org/packages/source/C/Cython/
-
-distname Cython-${version}
-
-checksums rmd160 f5944014c1e4dccb8ec23af96efc05c137917371 \
- sha256 0cd5787fb3f1eaf8326b21bdfcb90aabd3eca7c214c5b7b503fbb82da97bbaa0
-
-if {${name} eq ${subport}} {
-
- revision 100
-
- # Cython 0.21 requires Python 2.6+ or 3.3+
- if {[lsearch {24 25 31 32} ${python.version}] != -1} {
- version 0.20.2
- revision 0
- distname Cython-${version}
- checksums rmd160 e78f1779077d6c8e266c9b42b85c8e9031a342d2 \
- sha256 ed13b606a2aeb5bd6c235f8ed6c9988c99d01a033d0d21d56137c13d5c7be63f
- }
-
- post-destroot {
- if {${subport} eq "py24-cython" || ${subport} eq "py25-cython"} {
- xinstall -m 644 -W ${worksrcpath}/Doc About.html FAQ.html \
- extension_types.html index.html overview.html primes.c sharing.html \
- special_methods.html ${destroot}${prefix}/share/doc/${subport}
- xinstall -m 644 -W ${worksrcpath} INSTALL.txt README.txt \
- ToDo.txt USAGE.txt ${destroot}${prefix}/share/doc/${subport}
- } else {
- xinstall -m 755 -d ${destroot}${python.prefix}/share/doc/cython
- xinstall -m 644 -W ${worksrcpath}/Doc About.html FAQ.html \
- extension_types.html index.html overview.html primes.c sharing.html \
- special_methods.html ${destroot}${python.prefix}/share/doc/cython
- xinstall -m 644 -W ${worksrcpath} INSTALL.txt README.txt\
- ToDo.txt USAGE.txt ${destroot}${python.prefix}/share/doc/cython
- }
- }
-
- depends_run port:cython_select
- test.run no
-
- select.group cython
- select.file ${filespath}/cython${python.version}
-
- notes "
-To make the Python ${python.branch} version of Cython the one that is run\
-when you execute the commands without a version suffix, e.g. 'cython', run:
-
-port select --set ${select.group} [file tail ${select.file}]
-"
-
- livecheck.type none
-} else {
- #livecheck.type regex
- #livecheck.url [lindex ${master_sites} 0]
- #livecheck.regex {Cython-(\d+(?:\.\d+)*)\.[tz]}
- livecheck.type none
-}
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython24 b/packaging/macosx/ports/python/py26-cython/files/cython24
deleted file mode 100644
index 6fa8a8026..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython24
+++ /dev/null
@@ -1,2 +0,0 @@
-bin/cython-2.4
--
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython25 b/packaging/macosx/ports/python/py26-cython/files/cython25
deleted file mode 100644
index 294a43303..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython25
+++ /dev/null
@@ -1,2 +0,0 @@
-bin/cython-2.5
--
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython26 b/packaging/macosx/ports/python/py26-cython/files/cython26
deleted file mode 100644
index 48523983b..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython26
+++ /dev/null
@@ -1,2 +0,0 @@
-${frameworks_dir}/Python.framework/Versions/2.6/bin/cython
-${frameworks_dir}/Python.framework/Versions/2.6/bin/cygdb
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython27 b/packaging/macosx/ports/python/py26-cython/files/cython27
deleted file mode 100644
index 91f8cb8fd..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython27
+++ /dev/null
@@ -1,2 +0,0 @@
-${frameworks_dir}/Python.framework/Versions/2.7/bin/cython
-${frameworks_dir}/Python.framework/Versions/2.7/bin/cygdb
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython31 b/packaging/macosx/ports/python/py26-cython/files/cython31
deleted file mode 100644
index 96c9b1b4e..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython31
+++ /dev/null
@@ -1,2 +0,0 @@
-${frameworks_dir}/Python.framework/Versions/3.1/bin/cython
-${frameworks_dir}/Python.framework/Versions/3.1/bin/cygdb
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython32 b/packaging/macosx/ports/python/py26-cython/files/cython32
deleted file mode 100644
index b31fc1fc5..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython32
+++ /dev/null
@@ -1,2 +0,0 @@
-${frameworks_dir}/Python.framework/Versions/3.2/bin/cython
-${frameworks_dir}/Python.framework/Versions/3.2/bin/cygdb
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython33 b/packaging/macosx/ports/python/py26-cython/files/cython33
deleted file mode 100644
index d19afec09..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython33
+++ /dev/null
@@ -1,2 +0,0 @@
-${frameworks_dir}/Python.framework/Versions/3.3/bin/cython
-${frameworks_dir}/Python.framework/Versions/3.3/bin/cygdb
diff --git a/packaging/macosx/ports/python/py26-cython/files/cython34 b/packaging/macosx/ports/python/py26-cython/files/cython34
deleted file mode 100644
index 487ad3299..000000000
--- a/packaging/macosx/ports/python/py26-cython/files/cython34
+++ /dev/null
@@ -1,2 +0,0 @@
-${frameworks_dir}/Python.framework/Versions/3.4/bin/cython
-${frameworks_dir}/Python.framework/Versions/3.4/bin/cygdb
diff --git a/packaging/macosx/ports/python/py26-lxml/Portfile b/packaging/macosx/ports/python/py26-lxml/Portfile
deleted file mode 100644
index 4d9f59690..000000000
--- a/packaging/macosx/ports/python/py26-lxml/Portfile
+++ /dev/null
@@ -1,52 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 121661 2014-07-03 17:50:11Z mf2k@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py26-lxml
-version 3.3.5
-revision 0
-categories-append devel
-platforms darwin
-license BSD
-
-python.versions 26
-python.version 26
-
-maintainers gmail.com:dbraband openmaintainer
-
-description Powerful and Pythonic XML processing library
-
-long_description lxml is a Pythonic binding for the libxml2 and \
- libxslt libraries. It is unique in that it \
- combines the speed and feature completeness of \
- these libraries with the simplicity of a native \
- Python API, mostly compatible but superior to \
- the well-known ElementTree API.
-
-homepage http://lxml.de/
-master_sites http://pypi.python.org/packages/source/l/lxml/
-
-checksums rmd160 c7ccece50f8d20f5fac44ac1bf8dc0d8a85aa0f9 \
- sha256 6ad6949dc7eea744a30fba77a968dd5910f545220e58bcc813b9df5c793e318a
-
-distname lxml-${version}
-
-if {${name} eq ${subport}} {
-
- revision 100
-
- depends_build-append \
- port:py${python.version}-setuptools
-
- depends_lib-append port:zlib \
- port:libxml2 \
- port:libxslt
-
- livecheck.type none
-#} else {
-# livecheck.type regex
-# livecheck.url ${master_sites}
-# livecheck.regex "lxml-(\\d+(?:\\.\\d+)*)${extract.suffix}"
-}
diff --git a/packaging/macosx/ports/python/py26-nose/Portfile b/packaging/macosx/ports/python/py26-nose/Portfile
deleted file mode 100644
index 03c74a44d..000000000
--- a/packaging/macosx/ports/python/py26-nose/Portfile
+++ /dev/null
@@ -1,87 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 121661 2014-07-03 17:50:11Z mf2k@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-PortGroup select 1.0
-
-set my_name nose
-name py26-${my_name}
-version 1.3.1
-categories-append www
-license LGPL-2+
-maintainers mcalhoun openmaintainer
-description A Python unittest extension.
-long_description \
- A unittest extension offering automatic test \
- suite discovery, simplified test authoring, \
- and output capture. Nose provides an alternate \
- test discovery and running process for \
- unittest, one that is intended to mimic the \
- behavior of py.test as much as is reasonably \
- possible without resorting to magic.
-
-platforms darwin
-supported_archs noarch
-
-homepage http://somethingaboutorange.com/mrl/projects/${my_name}
-master_sites http://pypi.python.org/packages/source/n/${my_name}/
-distname ${my_name}-${version}
-
-checksums md5 672398801ddf5ba745c55c6eed79c5aa \
- rmd160 7bf311d3d54f2ccb372dea331708c475b992ccec \
- sha256 85273b87ab3db9307e3b1452b071e25c1db1cc812bc337d2a97ea0b0cf2ab6ba
-
-python.versions 26
-python.version 26
-
-# already installs version-suffixed executables
-python.link_binaries no
-python.move_binaries no
-
-depends_run-append port:nosetests_select
-if {${name} eq ${subport}} {
-
- revision 100
-
- select.group nosetests
- select.file ${filespath}/nosetests${python.version}
-
- depends_lib port:py${python.version}-setuptools
-
- post-patch {
- reinplace "s|man/man|share/man/man|" ${worksrcpath}/setup.py
-
- # One of the tests fails if this directory does not exist
- file mkdir ${worksrcpath}/functional_tests/support/empty
- }
-
- post-destroot {
- if {${python.version} == "24" || ${python.version} == "25"} {
- move ${destroot}${prefix}/share/man/man1/nosetests.1 ${destroot}${prefix}/share/man/man1/nosetests${python.branch}.1
- delete ${destroot}${prefix}/bin/nosetests
- } else {
- ln -s ${python.prefix}/bin/nosetests-${python.branch} ${destroot}${prefix}/bin/
- ln -s ${python.prefix}/share/man/man1/nosetests.1 ${destroot}${prefix}/share/man/man1/nosetests${python.branch}.1
- }
-
- xinstall -m 644 -W ${worksrcpath} \
- AUTHORS CHANGELOG NEWS README.txt \
- ${destroot}${prefix}/share/doc/${subport}
-
- file copy ${worksrcpath}/doc ${destroot}${prefix}/share/doc/${subport}/html
-
- file delete ${destroot}${prefix}/share/doc/${subport}/examples
- file copy ${worksrcpath}/examples ${destroot}${prefix}/share/doc/${subport}
- }
-
- test.run yes
- test.cmd ${python.bin} setup.py test
-
- livecheck.type none
-
-#} else {
-# livecheck.type regex
-# livecheck.url ${master_sites}
-# livecheck.regex "${my_name}-(\\d+(?:\\.\\d+)*)${extract.suffix}"
-}
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests24 b/packaging/macosx/ports/python/py26-nose/files/nosetests24
deleted file mode 100644
index d9a8f4034..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests24
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.4
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests25 b/packaging/macosx/ports/python/py26-nose/files/nosetests25
deleted file mode 100644
index 95864c283..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests25
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.5
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests26 b/packaging/macosx/ports/python/py26-nose/files/nosetests26
deleted file mode 100644
index bb670776f..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests26
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.6
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests27 b/packaging/macosx/ports/python/py26-nose/files/nosetests27
deleted file mode 100644
index 28c7bfe8c..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests27
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-2.7
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests31 b/packaging/macosx/ports/python/py26-nose/files/nosetests31
deleted file mode 100644
index 5ba27a4d5..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests31
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.1
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests32 b/packaging/macosx/ports/python/py26-nose/files/nosetests32
deleted file mode 100644
index 07bfb86a1..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests32
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.2
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests33 b/packaging/macosx/ports/python/py26-nose/files/nosetests33
deleted file mode 100644
index b750d806b..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests33
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.3
diff --git a/packaging/macosx/ports/python/py26-nose/files/nosetests34 b/packaging/macosx/ports/python/py26-nose/files/nosetests34
deleted file mode 100644
index 542ffc949..000000000
--- a/packaging/macosx/ports/python/py26-nose/files/nosetests34
+++ /dev/null
@@ -1 +0,0 @@
-bin/nosetests-3.4
diff --git a/packaging/macosx/ports/python/py26-numpy/Portfile b/packaging/macosx/ports/python/py26-numpy/Portfile
deleted file mode 100644
index db4a511aa..000000000
--- a/packaging/macosx/ports/python/py26-numpy/Portfile
+++ /dev/null
@@ -1,214 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
-# $Id: Portfile 125483 2014-09-18 14:34:29Z michaelld@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-PortGroup github 1.0
-
-github.setup numpy numpy 1.9.0 v
-name py26-numpy
-categories-append math
-license BSD
-platforms darwin
-maintainers dh michaelld openmaintainer
-description The core utilities for the scientific library scipy for Python
-long_description ${description}
-
-checksums rmd160 836bcd7ef0f37129f06ea73b3cc27ec31035bfe0 \
- sha256 33e33768307b5f92cb098e93359e4fe97dfb9783df591ffbd44809bab7e50c0f
-
-python.versions 26
-python.version 26
-
-if {${name} eq ${subport}} {
-
- revision 100
-
- patchfiles patch-f2py_setup.py.diff \
- patch-fcompiler_g95.diff \
- patch-numpy_core_setup.py.diff
-
- depends_lib-append port:fftw-3 \
- port:py${python.version}-nose \
- port:py${python.version}-cython
-
- # http://trac.macports.org/ticket/34562
- destroot.env-append \
- CC="${configure.cc}" \
- CFLAGS="${configure.cflags} [get_canonical_archflags cc]" \
- CXX="${configure.cxx}" \
- CXXFLAGS="${configure.cxxflags} [get_canonical_archflags cxx]" \
- OBJC="${configure.objc}" \
- OBJCFLAGS="${configure.objcflags} [get_canonical_archflags objc]" \
- LDFLAGS="${configure.ldflags} [get_canonical_archflags ld]"
-
- build.env-append ARCHFLAGS="[get_canonical_archflags ld]"
- destroot.env-append ARCHFLAGS="[get_canonical_archflags ld]"
-
- variant atlas description {Use the MacPorts' ATLAS libraries \
- instead of Apple's Accelerate framework} {
- depends_lib-append port:atlas
-
- if {[variant_isset universal]} {
- python.set_compiler no
- }
- }
-
- # when using ATLAS (whether by default or specified by the user via
- # the +atlas variant) ...
- set gcc_version ""
- if {[variant_isset atlas]} {
-
- # see if the user has set -gcc4X to disable using MacPorts'
- # compiler; if not, either use what the user set (as +gcc4X) or
- # default to gcc48.
-
- variant gcc43 conflicts gcc44 gcc45 gcc46 gcc47 gcc48 \
- description {Use the gcc43 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.3
- }
-
- variant gcc44 conflicts gcc43 gcc45 gcc46 gcc47 gcc48 \
- description {Use the gcc44 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.4
- }
-
- variant gcc45 conflicts gcc43 gcc44 gcc46 gcc47 gcc48 \
- description {Use the gcc45 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.5
- }
-
- variant gcc46 conflicts gcc43 gcc44 gcc45 gcc47 gcc48 \
- description {Use the gcc46 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.6
- }
-
- variant gcc47 conflicts gcc43 gcc44 gcc45 gcc46 gcc48 \
- description {Use the gcc47 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.7
- }
-
- variant gcc48 conflicts gcc43 gcc44 gcc45 gcc46 gcc47 \
- description {Use the gcc48 compiler (enables fortran linking)} {
- configure.compiler macports-gcc-4.8
- }
-
- if {![variant_isset gcc43] && ![variant_isset gcc44] && ![variant_isset gcc45] && ![variant_isset gcc46] && ![variant_isset gcc47]} {
- default_variants +gcc48
- }
-
- if {[variant_isset gcc43]} {
- set gcc_version "4.3"
- } elseif {[variant_isset gcc44]} {
- set gcc_version "4.4"
- } elseif {[variant_isset gcc45]} {
- set gcc_version "4.5"
- } elseif {[variant_isset gcc46]} {
- set gcc_version "4.6"
- } elseif {[variant_isset gcc47]} {
- set gcc_version "4.7"
- } elseif {[variant_isset gcc48]} {
- set gcc_version "4.8"
- }
-
- # when using non-Apple GCC for universal install, it can
- # create binaries only for the native OS architecture, at
- # either 32 or 64 bits. Restrict the supported archs
- # accordingly.
- if {${os.arch} eq "i386"} {
- supported_archs i386 x86_64
- } elseif {${os.arch} eq "powerpc"} {
- supported_archs ppc ppc64
- }
-
- # include all the correct GCC4X port
- depends_lib-append port:gcc[join [split ${gcc_version} "."] ""]
-
- # force LDFLAGS for correct linking of the linalg module
- # for non-Apple GCC compilers
- patchfiles-append patch-numpy_linalg_setup.py.diff
-
- if {${gcc_version} == ""} {
- # user specified -gcc4X but +atlas (either as default or
- # explicitly); do not allow since it might lead to
- # undetermined runtime execution.
- return -code error \
-"\n\nWhen using the +atlas variant (either as the default or setting
-explicitly), one of the +gcc4X variants must be selected.\n"
- }
- }
-
- post-patch {
- reinplace "s|@@MPORTS_PYTHON@@|${python.bin}|" \
- ${worksrcpath}/numpy/f2py/setup.py
-
- if {[variant_isset universal] && [variant_isset atlas]} {
- # Prepare wrappers
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/c-wrapper
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/f-wrapper
- file copy -force ${filespath}/wrapper-template \
- ${worksrcpath}/cxx-wrapper
-
- reinplace "s|@@@|${configure.cc}|" ${worksrcpath}/c-wrapper
- reinplace "s|---|\\\\.c|" ${worksrcpath}/c-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/c-wrapper
-
- reinplace "s|@@@|${configure.cxx}|" ${worksrcpath}/cxx-wrapper
- reinplace "s#---#(\\\\.C|\\\\.cpp|\\\\.cc)#" \
- ${worksrcpath}/cxx-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/cxx-wrapper
-
- reinplace "s|@@@|${configure.f90}|" ${worksrcpath}/f-wrapper
- reinplace "s|---|\\\\.f|" ${worksrcpath}/f-wrapper
- reinplace "s|&&&|${prefix}|" ${worksrcpath}/f-wrapper
-
- build.env-append CC="${worksrcpath}/c-wrapper" \
- CXX="${worksrcpath}/cxx-wrapper" \
- F77="${worksrcpath}/f-wrapper" \
- F90="${worksrcpath}/f-wrapper"
-
- destroot.env-append CC="${worksrcpath}/c-wrapper" \
- CXX="${worksrcpath}/cxx-wrapper" \
- F77="${worksrcpath}/f-wrapper" \
- F90="${worksrcpath}/f-wrapper"
- }
-
- if {[variant_isset atlas]} {
- # We must link against libSatlas or libTatlas, not libAtlas
- if {[file exists ${prefix}/lib/libtatlas.dylib]} {
- reinplace -E \
- "s|_lib_atlas = \\\['atlas'\\\]|_lib_atlas = \\\['tatlas'\\\]|" \
- ${worksrcpath}/numpy/distutils/system_info.py
- } elseif {[file exists ${prefix}/lib/libsatlas.dylib]} {
- reinplace -E \
- "s|_lib_atlas = \\\['atlas'\\\]|_lib_atlas = \\\['satlas'\\\]|" \
- ${worksrcpath}/numpy/distutils/system_info.py
- } else {
- return -code error "Unable to find Atlas dylibs. Bailing out."
- }
- }
- }
-
- livecheck.type none
-
- if {[variant_isset atlas]} {
- build.env-append ATLAS=${prefix}/lib \
- LAPACK=${prefix}/lib \
- BLAS=${prefix}/lib
- destroot.env-append ATLAS=${prefix}/lib \
- LAPACK=${prefix}/lib \
- BLAS=${prefix}/lib
- } else {
- build.env-append ATLAS=None \
- LAPACK=/usr/lib \
- BLAS=/usr/lib
- destroot.env-append ATLAS=None \
- LAPACK=/usr/lib \
- BLAS=/usr/lib
- }
-
-#} else {
-# livecheck.regex archive/[join ${github.tag_prefix} ""](\[\\d+(?:\\.\\d+)*"\]+)${extract.suffix}"
-}
diff --git a/packaging/macosx/ports/python/py26-numpy/files/patch-f2py_setup.py.diff b/packaging/macosx/ports/python/py26-numpy/files/patch-f2py_setup.py.diff
deleted file mode 100644
index 1e3164e73..000000000
--- a/packaging/macosx/ports/python/py26-numpy/files/patch-f2py_setup.py.diff
+++ /dev/null
@@ -1,39 +0,0 @@
---- numpy/f2py/setup.py
-+++ numpy/f2py/setup.py
-@@ -41,21 +41,21 @@ def configuration(parent_package='',top_
- )
-
- config.make_svn_version_py()
-
- def generate_f2py_py(build_dir):
-- f2py_exe = 'f2py'+os.path.basename(sys.executable)[6:]
-+ f2py_exe = 'f2py'
- if f2py_exe[-4:]=='.exe':
- f2py_exe = f2py_exe[:-4] + '.py'
- if 'bdist_wininst' in sys.argv and f2py_exe[-3:] != '.py':
- f2py_exe = f2py_exe + '.py'
- target = os.path.join(build_dir, f2py_exe)
- if newer(__file__, target):
- log.info('Creating %s', target)
- f = open(target, 'w')
- f.write('''\
--#!%s
-+#!@@MPORTS_PYTHON@@
- # See http://cens.ioc.ee/projects/f2py2e/
- import os, sys
- for mode in ["g3-numpy", "2e-numeric", "2e-numarray", "2e-numpy"]:
- try:
- i=sys.argv.index("--"+mode)
-@@ -75,11 +75,11 @@ elif mode=="2e-numpy":
- from numpy.f2py import main
- else:
- sys.stderr.write("Unknown mode: " + repr(mode) + "\\n")
- sys.exit(1)
- main()
--'''%(sys.executable))
-+''')
- f.close()
- return target
-
- config.add_scripts(generate_f2py_py)
-
diff --git a/packaging/macosx/ports/python/py26-numpy/files/patch-fcompiler_g95.diff b/packaging/macosx/ports/python/py26-numpy/files/patch-fcompiler_g95.diff
deleted file mode 100644
index b95a2609a..000000000
--- a/packaging/macosx/ports/python/py26-numpy/files/patch-fcompiler_g95.diff
+++ /dev/null
@@ -1,15 +0,0 @@
---- numpy/distutils/fcompiler/__init__.py
-+++ numpy/distutils/fcompiler/__init__.py
-@@ -708,11 +708,11 @@
- ('win32', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95',
- 'intelvem', 'intelem')),
- ('cygwin.*', ('gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95')),
- ('linux.*', ('gnu95', 'intel', 'lahey', 'pg', 'absoft', 'nag', 'vast', 'compaq',
- 'intele', 'intelem', 'gnu', 'g95', 'pathf95')),
-- ('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'g95', 'pg')),
-+ ('darwin.*', ('gnu95', 'nag', 'absoft', 'ibm', 'intel', 'gnu', 'pg')),
- ('sunos.*', ('sun', 'gnu', 'gnu95', 'g95')),
- ('irix.*', ('mips', 'gnu', 'gnu95',)),
- ('aix.*', ('ibm', 'gnu', 'gnu95',)),
- # os.name mappings
- ('posix', ('gnu', 'gnu95',)),
diff --git a/packaging/macosx/ports/python/py26-numpy/files/patch-numpy_core_setup.py.diff b/packaging/macosx/ports/python/py26-numpy/files/patch-numpy_core_setup.py.diff
deleted file mode 100644
index 3aed3b18c..000000000
--- a/packaging/macosx/ports/python/py26-numpy/files/patch-numpy_core_setup.py.diff
+++ /dev/null
@@ -1,34 +0,0 @@
---- numpy/core/setup.py.orig 2014-03-25 19:03:06.000000000 -0400
-+++ numpy/core/setup.py 2014-03-25 19:03:26.000000000 -0400
-@@ -481,7 +481,14 @@
- if isinstance(d, str):
- target_f.write('#define %s\n' % (d))
- else:
-- target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ if d[0]!='SIZEOF_LONG' and d[0]!='SIZEOF_PY_INTPTR_T':
-+ target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ else:
-+ target_f.write('#ifdef __LP64__\n')
-+ target_f.write('#define %s %s\n' % (d[0], 8))
-+ target_f.write('#else\n')
-+ target_f.write('#define %s %s\n' % (d[0], 4))
-+ target_f.write('#endif\n')
-
- # define inline to our keyword, or nothing
- target_f.write('#ifndef __cplusplus\n')
-@@ -581,7 +588,14 @@
- if isinstance(d, str):
- target_f.write('#define %s\n' % (d))
- else:
-- target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ if d[0]!='NPY_SIZEOF_LONG' and d[0]!='NPY_SIZEOF_PY_INTPTR_T':
-+ target_f.write('#define %s %s\n' % (d[0], d[1]))
-+ else:
-+ target_f.write('#ifdef __LP64__\n')
-+ target_f.write('#define %s %s\n' % (d[0], 8))
-+ target_f.write('#else\n')
-+ target_f.write('#define %s %s\n' % (d[0], 4))
-+ target_f.write('#endif\n')
-
- # Define __STDC_FORMAT_MACROS
- target_f.write("""
diff --git a/packaging/macosx/ports/python/py26-numpy/files/patch-numpy_linalg_setup.py.diff b/packaging/macosx/ports/python/py26-numpy/files/patch-numpy_linalg_setup.py.diff
deleted file mode 100644
index 848d46186..000000000
--- a/packaging/macosx/ports/python/py26-numpy/files/patch-numpy_linalg_setup.py.diff
+++ /dev/null
@@ -1,20 +0,0 @@
---- numpy/linalg/setup.py.orig 2013-11-16 08:30:31.000000000 -0500
-+++ numpy/linalg/setup.py 2013-11-16 08:39:27.000000000 -0500
-@@ -37,7 +37,8 @@
- config.add_extension('lapack_lite',
- sources = [get_lapack_lite_sources],
- depends = ['lapack_litemodule.c'] + lapack_lite_src,
-- extra_info = lapack_info
-+ extra_info = lapack_info,
-+ extra_link_args=['-undefined dynamic_lookup -bundle']
- )
-
- # umath_linalg module
-@@ -47,6 +48,7 @@
- depends = ['umath_linalg.c.src'] + lapack_lite_src,
- extra_info = lapack_info,
- libraries = ['npymath'],
-+ extra_link_args=['-undefined dynamic_lookup -bundle']
- )
-
- return config
diff --git a/packaging/macosx/ports/python/py26-numpy/files/wrapper-template b/packaging/macosx/ports/python/py26-numpy/files/wrapper-template
deleted file mode 100644
index 48936d107..000000000
--- a/packaging/macosx/ports/python/py26-numpy/files/wrapper-template
+++ /dev/null
@@ -1,143 +0,0 @@
-#!/bin/sh
-COMPILER='@@@'
-SUFFIX='---'
-PREFIX='&&&'
-OUTPUT_O='NO'
-OUTPUT=''
-NAMED_OUTPUT=''
-LASTFILE=''
-INTEL='NO'
-SIZE32='NO'
-SIZE64='NO'
-NEWARGS=''
-
-SKIP='NO'
-
-for arg in $@
-do
- if [ $SKIP = 'ARCH' ]; then
- # intercept -arch option and set SIZEXX
- SKIP='NO'
- if [ $arg = 'x86_64' ] || [ $arg = 'ppc64' ]; then
- SIZE64='YES'
- else
- SIZE32='YES'
- fi
-
- # which architecture are we compiling for?
- if [ $arg = 'x86_64' ] || [ $arg = 'i386' ]; then
- INTEL='YES'
- fi
-
- elif [ $arg = '-arch' ]; then
- SKIP='ARCH'
-
- elif [ $arg = '--version' ]; then
- ${COMPILER} --version
- exit 0
-
- else
- NEWARGS+="$arg "
-
- # if the -c option is given, the output is .o
- if [ $arg = '-c' ]; then
- OUTPUT_O='YES'
- fi
-
- # if the output file is given by a -o option, record it
- if [ $SKIP = 'O' ]; then
- SKIP='NO'
- NAMED_OUTPUT=$arg
- fi
-
- if [ $arg = '-o' ]; then
- SKIP='O'
- fi
-
- # Note each file ending by ${SUFFIX} and remember the last one
- # Transform them in .o
- if `echo $arg | grep -q "${SUFFIX}$"`; then
- LASTFILE=$arg
- OUTPUT+=`echo $arg | sed "s/${SUFFIX}/\.o/"`
- OUTPUT+=' '
- fi
- fi
-done
-
-# What is the output?
-
-if [ ${NAMED_OUTPUT}"X" != "X" ]; then
- OUTPUT=$NAMED_OUTPUT
-
-elif [ $OUTPUT_O = 'NO' ]; then
- # It is an executable whose is name is the LASTFILE without suffix
- OUTPUT=`echo ${LASTFILE} | sed "s/${SUFFIX}//"`
-fi
-
-# Othewise, the output is just the ${OUTPUT} variable as computed before
-
-# For some reason, -dynamiclib and -lpython2.6 are missing when linking
-# .so files. Add them, except if -bundle is set (incompatible switches)
-if [ `echo $OUTPUT | sed -E 's|.*\.||'` = "so" ] && \
- ! `echo $NEWARGS | grep -q bundle`; then
- NEWARGS="${NEWARGS} ${PREFIX}/lib/libpython2.6.dylib -dynamiclib"
-fi
-
-# Now, compile
-
-if [ $SIZE32 = 'NO' ] && [ $SIZE64 = 'NO' ]; then
- # No size indication given, just proceed with default
- if `${COMPILER} $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-elif [ $SIZE32 = 'YES' ] && [ $SIZE64 = 'NO' ]; then
- # 32-bit
- if `${COMPILER} -m32 $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-elif [ $SIZE32 = 'NO' ] && [ $SIZE64 = 'YES' ]; then
- # 64-bit
- if `${COMPILER} -m64 $NEWARGS`; then
- exit 0
- else
- exit 1
- fi
-
-else
- # Universal case
- if `${COMPILER} -m32 $NEWARGS`; then
- for filename in ${OUTPUT}
- do
- mv ${filename} ${filename}.32
- done
-
- if `${COMPILER} -m64 $NEWARGS`; then
- for filename in ${OUTPUT}
- do
- mv ${filename} ${filename}.64
- if [ $INTEL = 'YES' ]; then
- lipo -create -arch x86_64 ${filename}.64 \
- -arch i386 ${filename}.32 \
- -output ${filename}
- else
- lipo -create -arch ppc64 ${filename}.64 \
- -arch ppc ${filename}.32 \
- -output ${filename}
- fi
-
- rm -f ${filename}.32 ${filename}.64
- done
- else
- exit 1
- fi
- else
- exit 1
- fi
-fi
-exit 0
diff --git a/packaging/macosx/ports/python/py26-setuptools/Portfile b/packaging/macosx/ports/python/py26-setuptools/Portfile
deleted file mode 100644
index b9893a4cb..000000000
--- a/packaging/macosx/ports/python/py26-setuptools/Portfile
+++ /dev/null
@@ -1,61 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 125953 2014-09-30 10:58:10Z jmr@macports.org $
-
-PortSystem 1.0
-PortGroup python 1.0
-
-name py26-setuptools
-version 6.0.2
-categories-append devel
-license {PSF ZPL}
-maintainers jmr openmaintainer
-description distutils enhancement for build and distribution
-long_description \
- setuptools is a collection of enhancements to the Python distutils that \
- allow you to more easily build and distribute Python packages, \
- especially ones that have dependencies on other packages.
-
-platforms darwin
-supported_archs noarch
-
-homepage https://pypi.python.org/pypi/setuptools/
-master_sites https://pypi.python.org/packages/source/s/setuptools/
-distname setuptools-${version}
-
-checksums md5 b79fab610e362fe8e3a9cb92fb9d95ef \
- rmd160 5040f99a8ee3cd5b4040dc1e0a4d7cd9d5e7f7b1 \
- sha256 7029f6ca93e6a78112f1f621f79cab1a611901697a4c131bc5ef2f7a429825f7
-
-python.versions 26
-python.version 26
-python.link_binaries no
-python.move_binaries no
-
-if {$subport eq $name} {
-
- revision 100
-
- if {${python.version} <= 25} {
- version 1.4.2
- distname setuptools-${version}
- checksums md5 13951be6711438073fbe50843e7f141f \
- rmd160 b48086a2aae718fe433a8c882d2d9209aa157b0a \
- sha256 263986a60a83aba790a5bffc7d009ac88114ba4e908e5c90e453b3bf2155dbbd
- }
-
- post-destroot {
- xinstall -m 755 -d ${destroot}${prefix}/share/doc/${subport}
- xinstall -m 644 -W ${worksrcpath} CHANGES.txt \
- DEVGUIDE.txt README.txt ${destroot}${prefix}/share/doc/${subport}
- if {${python.version} <= 25} {
- delete "${destroot}${prefix}/bin/easy_install"
- } else {
- ln -s "${python.prefix}/bin/easy_install-${python.branch}" "${destroot}${prefix}/bin/"
- }
- }
- livecheck.type none
-#} else {
-# livecheck.type regex
-# livecheck.url ${homepage}
-# livecheck.regex setuptools/(\\d+(\\.\\d+)+)
-}
diff --git a/packaging/mkNEWS b/packaging/mkNEWS
index 7e17e9013..7e17e9013 100644..100755
--- a/packaging/mkNEWS
+++ b/packaging/mkNEWS
diff --git a/packaging/snappy/snapcraft.sh b/packaging/snappy/snapcraft.sh
new file mode 100755
index 000000000..7e12fe964
--- /dev/null
+++ b/packaging/snappy/snapcraft.sh
@@ -0,0 +1,6 @@
+#!/bin/sh -e
+
+export INKSCAPE_PORTABLE_PROFILE_DIR="${SNAP_USER_DATA}"
+export INKSCAPE_LOCALEDIR="${SNAP}/share/locale/"
+
+exec $@
diff --git a/packaging/win32/MessageBox.txt b/packaging/win32/MessageBox.txt
deleted file mode 100644
index c2aa963d6..000000000
--- a/packaging/win32/MessageBox.txt
+++ /dev/null
@@ -1,186 +0,0 @@
-Customisable MessageBox Plug-In (v0.98 beta 3)
-
-[ Archive Page: http://nsis.sourceforge.net/archive/??? ]
-
---------------
-
-The Customisable MessageBox plug-in allows you to use a MessageBox in your installer which can be altered to how you want it to be. You can control:
- * the number of buttons shown
- * the text each button shows
- * a standard or customisable icon ( flexible so you can use the installer or other files )
- * a fully working 'forth' button!
-
-The plug-in uses a few tricks to allow for the messagebox functionality to be altered so that the button text can finally be altered making [ Yes | Yes to All | No | No to All ] ( and anything else you care for ) possible.
-
-Also with the changes made it is now possible to have a functional 'forth' button - yes you read correctly! When using the function just pass in four button texts and you will see the forth button - simple really :o)
-
-There is only the one function to show the messagebox so enjoy.
-
-[ As of v0.98 beta the parameters of calling the function have changed, check out usage for the revised options - thanks to n0On3 for the suggestions. ]
-
-
-Usage
------
-
-messagebox::show styles caption ( module_name, icon_id ) text but1 [ but2 but3 but4 ]
-
-styles - messagebox styles ( supports most of the windows messagebox styles )
-
-caption - the text to be used for the dialog title ( or the installer title if not specified )
-
-module_name - sets the name of the file ( usually a dll or exe file ) that contains the custom icon to be used - if 0 is passed then the installer will be used
-
-icon_id - the id of the icon group to be used for the custom icon
-
-text - the text to be shown by the messagebox
-
-but1 - specified text or name id to use ie IDYES, IDNO, etc ( there must always be at least one button )
-
-but2, but3, but4 - optional buttons which follow the same way as for but1
-
-
-When passing in options, you should use a "" pair for options you pass in to ensure the strings are correctly read. It is not necessary to do so for the predefined button texts
-e.g. "IDCANCEL" is the same as IDCANCEL.
-
-See Example.nsi for an example ;o) ( bit hacked at the moment due to testing but shows most things )
-
-
-Return Values
------
-
-To get the return value use Pop $0 immediately after the function has been used incase other functions alter the value.
-
-If there were no problems then the function will return the number of the button pressed working from the left being 'button 1'.
-i.e.
- if you have [ yes | no | abort ] and 'no' is selected then the return value will be '2'
-
-If an error happens then the messagebox will return 0.
-
-If there are no buttons passed then the function will return '-1'.
-
-
-Some More Info
-----------------
-
-If you pass an empty string for the caption ( "" ) then the installer title text will be used instead (stripping back the current section name as NSIS messageboxes do).
-If the installer is run silently then the title will be blank if setting the caption option to "" ( as NSIS messageboxes do ). This is because when the installer is silent it does not have a visible window and so will not have a window title ( had not taken this into account initially, oops - fixed from v0.98 beta 3 ).
-
-When you want to use a custom icon, setting module to '0' will look for the icon in the installer otherwise it will search the file specified.
-e.g.
- "0,103" will load the installer icon ( well in testing it does :o) )
- "shell32.dll,24" will load the help file icon from the shell32.dll ( as long as the file exists! )
-
-If the module passed is not valid then the usericon style will not be used ( you may receive a windows message informing of this ).
-
-If the icon is not valid then the messagebox will just show a blank area where the icon would be displayed assuming that the value of module is valid.
-
-If a usericon is specified then if there are any of the messagebox icon styles passed in, these will be ignored. This allows an icon to appear otherwise internal style conflicts will prevent any icon being shown.
-
-If you want to display the standard button texts then pass the following strings in for the necessary button:
-
- IDOK - Ok
- IDCANCEL - Cancel
- IDABORT - Abort
- IDRETRY - Retry
- IDIGNORE - Ignore
- IDYES - Yes
- IDNO - No
- IDHELP - Help / 4th button
- IDTRYAGAIN - Try Again
- IDCONTINUE - Continue
-
-When the function is processing the passed button texts to use, if a duplicate of the predefined texts (above) happen then the only the first instance will be allowed
-e.g.
- IDYES "ah go on if you dare" IDYES -> [ YES | ah go on if you dare ]
-
-Each button will be resized if needed to allow the text to fit correctly in the button without being clipped. If the text is still too long for the messagebox width ( limited to 80% of the screen width ) then buttons will be resized and clipping of the button text may happen again ( this will be fixed in v1.0 ).
-
-
-Final Notes
--------
-
-I have no idea how the code will work with international text (since i just use plain text in the code) so if you try it in a multilanguage setup then let me know how it reacts or if there are any issues with the function's display.
-
-The predefined button texts are hard coded and cannot be altered. To alter the default texts involves passing in the language button text as a custom button text.
-
-The button resizing code is not complete at the moment ( as can be clearly seen from the first messagebox ) when it detects that the width of the messagebox is at the 80% screen width. Issues are that the buttons are not correctly resized to ensure that they appear correctly ( as is the case with the second messagebox ). This is more down to fiddling with the button widths after the initial processing but will be fixed soon :o)
-
-
-Credits
--------
-
-Coded by Darren Owen, aka DrO (Sept 2003)
-
-n0On3 - Idea request and helpful feedback ( the simplified function use over previous versions :o) )
-
-A plugin from me to you :o)
-
-
-Version History
--------
-
-v0.1
-* Initial release of the function
-* Basic support to show that the button text can be altered on the messagebox
-* Inital support for controlling the number of buttons shown
-
-v0.5
-* Setting of text of only the buttons wanted ( "/but? blah" )
-* Now if a string is not passed then the text will not be set (broken in the v0.1 release)
-* Altered a lot of internal workings to allow for more customising of the MessageBox
-* Better support for the number of buttons to show
-* The functional '4th' button - making use of the 'Help' button to act as a real button
-* Fixed a number of crash issues due to buffer sizes and a few other bugs, etc
-
-v0.8
-* A lot of changes made :o)
-* Improved internal handling so that now button text is set correctly either when the number of buttons is set or user styles are set so now "/but2 blah" will always set the second buttons text and not just a few cases as beforehand
-* Altered the order of the parameters from earlier versions to make some internals easier to do :o)
-* The 4th / Help button will now close the MessageBox in ALL cases - would not close correctly if there was not a 'cancel' button in earlier versions
-* Buffers are now allocated to the NSIS buffer sizes passed to the dll on use for better compatibility between dll and installer
-* When the button numbers are set, the function will map the returned value now to the button selected instead of the normal wndows defined return value
-* some other bits and bobs that i've forgotten on the way
-
-v0.9
-* Added in support for displaying custom icons on the messagebox ( along with standard icons which can be shown ) either in the installer or from other files
-* Altered the example script to show off some more bits of what it can do
-
-v0.95 beta
-* Added in support for resizing of buttons based on the text set into the button ( use the /trim before the text to be set )
-* Messagebox is now limited to approximately 80% of the screen size ( as the messagebox normally does )
-* The resizing of button texts will also update the width of the text width to ensure it keeps to the size of the messagebox
-* Support is not complete for /trim ( still need to update the graduating of the width increment )
-* When the 80% width is reached, currently buttons will disappear off the messagebox ( handling for a double height button will come to cope with this soon )
-* Altered the example script to show off some more bits of what it can do
-
-v0.98 beta
-* Removed the passing in of a hwnd parameter - is always owned by the installer
-* Altered the custom icon option to be a single parameter now in the form 'module,id' where module can be 0 to use the installer
-* All return values are now mapped to the button number pressed ie 1,2,etc
-* Now the number of buttons to show is based on the button string texts passed in to the function :o)
-* Altered the order of parameters to work in a top to bottom order with respect to the messagebox layout and to match closer to the NSIS setup
-[ a good suggestion from n0On3 - nice ]
-- now goes: style title usericon text but1 [ but2 but3 but4 ]
-* Altered the button texts to be set in the order passed and will also convert the default ids too! eg IDYES -> "Yes", IDIGNORE -> "Ignore"
-* Fixed the graduating of the button trim feature to appear 'natural'
-[ adds approxiamately 3 character widths either side when the text won't fit fully in the button ]
-* Fixed a few bugs in the code introduced in the changes made
-* Support for MB_DEFBUTTON? is broken when a button has to be resized ( will fix this soon - already worked out how to but not why this happens )
-
-v0.98 beta 2
-* Fixed the MB_DEFBUTTON? issue ( needed to prevent the wm_active message being handled )
-* Verified the installer will show icons correctly if the installer is run silently ( no code changes were made )
-* Added in checking of the defined buttons to ensure that duplicates are not allowed (only the first occurrance is allowed)
-* Checked that all strings are verified for having data before being used
-* A few code tidy-ups introduced to the code
-* Typo fix in the example
-* Added in stripping out of the icon definitions if a user icon is specified (otherwise no icon will appear!)
-* Updated the readme file to reflect the changes made to the plug-in's functionality since v0.98 beta and to clarify things in better detail now ( i hope )
-* Added in a reference to the archive page for the plugin ( will upload majority of this file to the archive )
-* All internal buffers are now set to the buffer size passed into the plugin when it is called and altered how they are referenced
-* Fixed how the module string is cleared, should fix a potential crash issue i hope
-* Partially fixed the resizing of the text area when using long button strings to correctly limit out when the 80% limit is reached ( fine when now icon is used at the moment )
-* Added a silent installer option to the example script, just !define SILENT to get the silent version (should show that the function works fine either in a normal or silent installer)
-
-v0.98 beta 3
-* Fixed a crash when a silent installer is run ( pointed out by n0On3 ) - not checking the string length when getting the installer title if ""is the pased caption value, doh! \ No newline at end of file
diff --git a/packaging/win32/RequireLatestNSIS.nsh b/packaging/win32/RequireLatestNSIS.nsh
deleted file mode 100644
index f859ec7ad..000000000
--- a/packaging/win32/RequireLatestNSIS.nsh
+++ /dev/null
@@ -1,9 +0,0 @@
-!if ${NSIS_VERSION} = v2.45
- !error "There is a bug in !searchparse which makes this script not compile in NSIS 2.45. Please upgrade to NSIS 2.46 or later and try again."
-!else
- !echo "(If you get a compile error with !searchparse, please upgrade to NSIS 2.46 or later and try again.)"
-!endif
-!searchparse ${NSIS_VERSION} "v" V
-!if ${V} < 2.46
- !error "You only have NSIS ${V}, but NSIS 2.46 or later is required for proper Windows 7 support. Please upgrade to NSIS 2.46 or later and try again."
-!endif
diff --git a/packaging/win32/VersionCompleteXXXX.nsh b/packaging/win32/VersionCompleteXXXX.nsh
deleted file mode 100644
index e4c6961cd..000000000
--- a/packaging/win32/VersionCompleteXXXX.nsh
+++ /dev/null
@@ -1,47 +0,0 @@
-; See http://nsis.sourceforge.net/VersionCompleteXXXX for documentation
-!macro VersionCompleteXXXN _INPUT_VALUE _OUTPUT_SYMBOL _REVISION
- !searchparse /noerrors ${_INPUT_VALUE} "" _VERSION_1 "." _VERSION_2 "." _VERSION_3 "." _VERSION_4
- !if `${_VERSION_1}` == ``
- !undef _VERSION_1
- !define _VERSION_1 0
- !endif
- !if `${_VERSION_2}` == ``
- !undef _VERSION_2
- !define _VERSION_2 0
- !endif
- !if `${_VERSION_3}` == ``
- !undef _VERSION_3
- !define _VERSION_3 0
- !endif
- !define ${_OUTPUT_SYMBOL} ${_VERSION_1}.${_VERSION_2}.${_VERSION_3}.${_REVISION}
- !undef _VERSION_1
- !undef _VERSION_2
- !undef _VERSION_3
- !undef _VERSION_4
-!macroend
-!define VersionCompleteXXXN `!insertmacro VersionCompleteXXXN`
-!macro VersionCompleteXXXX _INPUT_VALUE _OUTPUT_SYMBOL
- !searchparse /noerrors ${_INPUT_VALUE} "" _VERSION_1 "." _VERSION_2 "." _VERSION_3 "." _VERSION_4
- !if `${_VERSION_1}` == ``
- !undef _VERSION_1
- !define _VERSION_1 0
- !endif
- !if `${_VERSION_2}` == ``
- !undef _VERSION_2
- !define _VERSION_2 0
- !endif
- !if `${_VERSION_3}` == ``
- !undef _VERSION_3
- !define _VERSION_3 0
- !endif
- !if `${_VERSION_4}` == ``
- !undef _VERSION_4
- !define _VERSION_4 0
- !endif
- !define ${_OUTPUT_SYMBOL} ${_VERSION_1}.${_VERSION_2}.${_VERSION_3}.${_VERSION_4}
- !undef _VERSION_1
- !undef _VERSION_2
- !undef _VERSION_3
- !undef _VERSION_4
-!macroend
-!define VersionCompleteXXXX `!insertmacro VersionCompleteXXXX`
diff --git a/packaging/win32/inkscape.nsi b/packaging/win32/inkscape.nsi
index d1bcb7216..525df2294 100755..100644
--- a/packaging/win32/inkscape.nsi
+++ b/packaging/win32/inkscape.nsi
@@ -2,13 +2,13 @@
; ==========================
; This file generates the Inkscape installer, which is currently the
; preferred deployment method on Windows.
-; 1. Install NSIS 2.46 or later on Windows (2.45 has a !searchparse bug
-; which breaks it and earlier doesn't support Windows 7 properly, and
-; cross-compilation probably won't work due to some !system magic)
+; 1. Install NSIS 3.0 or later (http://nsis.sourceforge.net/)
; 2. Compile Inkscape (http://wiki.inkscape.org/wiki/index.php/Win32Port)
-; 3. Compile this file with NSIS. There should be no need to set version
-; numbers in this file as it gets them from the Bazaar branch info and
-; ..\..\src\inkscape-version.cpp. However, if the version number comes
+; 3. Compile this file with NSIS.
+;
+; There should be no need to set version numbers in this file as it
+; gets them from the Bazaar branch info and inkscape.rc or
+; inkscape-version.cpp respectively. However, if the version number comes
; out wrong or this script didn't compile properly then you can define
; INKSCAPE_VERSION by uncommenting the next line and setting the correct
; value:
@@ -18,47 +18,48 @@
!define RELEASE_REVISION 1
; There should never be any need for packagers to touch anything below
-; this line. That's my job - Chris Morgan
+; this line. Otherwise file a bug or write to the mailing list.
+
+
+; Define this to make it build quickly, not including any of the files or code in the sections,
+; for quick testing of features of the installer and development thereof.
+;!define DUMMYINSTALL
+
; Installer code {{{1
-; Compression and admin requirement {{{2
+; Unicode, compression and admin requirement {{{2
+Unicode true
SetCompressor /SOLID lzma
SetCompressorDictSize 32
RequestExecutionLevel admin
; Include required files {{{2
-!include RequireLatestNSIS.nsh
-!include ifexist.nsh
-!include VersionCompleteXXXX.nsh
!include LogicLib.nsh
!include Sections.nsh
-
-!macro !redef VAR VAL
- !define _!redef_${VAR} `${VAL}`
- !ifdef ${VAR}
- !undef ${VAR}
- !endif
- !define ${VAR} `${VAL}`
- !undef _!redef_${VAR}
-!macroend
-!define !redef `!insertmacro !redef`
+!include macros\ifexist.nsh
+!include macros\RequireLatestNSIS.nsh
+!include macros\SHMessageBoxCheck.nsh
+!include macros\VersionCompleteXXXX.nsh
+!include languages\_language_lists.nsh
; Advanced Uninstall Log {{{3
; We're abusing this script terribly and it's time to fix the broken uninstaller.
; However, for the moment, this is what we're using.
!define INSTDIR_REG_ROOT HKLM
!define INSTDIR_REG_KEY "${UNINST_KEY}"
-!include AdvUninstLog.nsh
-!insertmacro INTERACTIVE_UNINSTALL
+!include macros\AdvUninstLog.nsh
+;!insertmacro INTERACTIVE_UNINSTALL ; not needed anymore since we have our own uninstall logic; conflicts with other macros
; Initialise NSIS plug-ins {{{3
-; The plugins used are md5dll and messagebox
-!addplugindir .
+; The plugin used is md5dll
+!addplugindir plugins
; FileFunc bits and pieces {{{3
!include FileFunc.nsh
!insertmacro GetParameters
+!insertmacro GetSize
!insertmacro GetOptions
+!insertmacro Locate
!insertmacro un.GetParent
; User interface {{{3
@@ -70,6 +71,7 @@ RequestExecutionLevel admin
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP header.bmp
!define MUI_WELCOMEFINISHPAGE_BITMAP welcomefinish.bmp
+!define MUI_UNWELCOMEFINISHPAGE_BITMAP welcomefinish.bmp
!define MUI_COMPONENTSPAGE_SMALLDESC
; Pages {{{4
@@ -83,11 +85,12 @@ LicenseForceSelection off
!define MUI_LICENSEPAGE_TEXT_BOTTOM "$(LICENSE_BOTTOM_TEXT)"
!insertmacro MUI_PAGE_LICENSE ..\..\Copying
; Components page {{{6
+!define MUI_PAGE_CUSTOMFUNCTION_SHOW SortTranslationsSection
!insertmacro MUI_PAGE_COMPONENTS
-; InstType "$(Full)"
-; InstType "$(Optimal)"
-; InstType "$(Minimal)"
-; Directory page {{{6
+InstType "$(Full)"
+InstType "$(Optimal)"
+InstType "$(Minimal)"
+;Directory page {{{6
!insertmacro MUI_PAGE_DIRECTORY
; Instfiles page {{{6
!insertmacro MUI_PAGE_INSTFILES
@@ -103,6 +106,7 @@ ShowUninstDetails hide
!insertmacro MUI_UNPAGE_FINISH
; Localization {{{3
+!define LANGFILE_LANGDLL_FMT "%ENGNAME% / %NATIVENAME%" ; include English name in language selection dialog
; See also the "Languages sections" SectionGroup lower down.
!insertmacro MUI_RESERVEFILE_LANGDLL
;TODO: check if `!insertmacro LANGFILE "English" "English"`-style lines are needed (don't think it should be due to MUI_LANGUAGE)
@@ -111,45 +115,51 @@ ShowUninstDetails hide
!verbose 3
!insertmacro MUI_LANGUAGE "English"
!insertmacro LANGFILE_INCLUDE "languages\English.nsh"
-!macro INKLANGFILE _LANG
- !insertmacro MUI_LANGUAGE "${_LANG}"
- !insertmacro LANGFILE_INCLUDE_WITHDEFAULT "languages\${_LANG}.nsh" "languages\English.nsh"
+!insertmacro LANGFILE_INCLUDE "languages\English_languageNames.nsh"
+!macro INKLANGFILE LocaleName LocaleID
+ !insertmacro MUI_LANGUAGE "${LocaleName}"
+ !insertmacro LANGFILE_INCLUDE_WITHDEFAULT "languages\${LocaleName}.nsh" "languages\English.nsh"
+ !insertmacro LANGFILE_INCLUDE_WITHDEFAULT "languages\${LocaleName}_languageNames.nsh" "languages\English_languageNames.nsh"
!macroend
-!insertmacro INKLANGFILE Breton
-!insertmacro INKLANGFILE Catalan
-!insertmacro INKLANGFILE Czech
-!insertmacro INKLANGFILE Danish
-!insertmacro INKLANGFILE Dutch
-!insertmacro INKLANGFILE Finnish
-!insertmacro INKLANGFILE French
-!insertmacro INKLANGFILE Galician
-!insertmacro INKLANGFILE German
-!insertmacro INKLANGFILE Greek
-!insertmacro INKLANGFILE Indonesian
-!insertmacro INKLANGFILE Icelandic
-!insertmacro INKLANGFILE Italian
-!insertmacro INKLANGFILE Japanese
-!insertmacro INKLANGFILE Polish
-!insertmacro INKLANGFILE PortugueseBR
-!insertmacro INKLANGFILE Romanian
-!insertmacro INKLANGFILE Russian
-!insertmacro INKLANGFILE Slovak
-!insertmacro INKLANGFILE Slovenian
-!insertmacro INKLANGFILE Spanish
-!insertmacro INKLANGFILE SimpChinese
-!insertmacro INKLANGFILE TradChinese
-!insertmacro INKLANGFILE Ukrainian
+; include list of available installer translations from /languages/_language_lists.nsh
+!insertmacro INSTALLER_TRANSLATIONS INKLANGFILE
!verbose pop
ReserveFile inkscape.nsi.uninstall
-ReserveFile "${NSISDIR}\Plugins\UserInfo.dll"
+ReserveFile /plugin UserInfo.dll
!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
; #######################################
; SETTINGS
; #######################################
+; Find inkscape distribution directory (uncomment line below to manually define)
+;!define INKSCAPE_DIST_DIR ..\..\inkscape
+!ifdef INKSCAPE_DIST_DIR
+ ${!defineifexist} ${INKSCAPE_DIST_DIR}\inkscape.exe FOUND 1
+ !ifndef FOUND
+ !error "inkscape.exe not found in INKSCAPE_DIST_DIR ('${INKSCAPE_DIST_DIR}')"
+ !endif
+!endif
+!ifndef INKSCAPE_DIST_DIR
+ ${!defineifexist} ..\..\inkscape\inkscape.exe INKSCAPE_DIST_DIR ..\..\inkscape ; btool default
+!endif
+!ifndef INKSCAPE_DIST_DIR
+ ${!defineifexist} ..\..\build\inkscape\inkscape.exe INKSCAPE_DIST_DIR ..\..\build\inkscape ; cmake default
+!endif
+!ifndef INKSCAPE_DIST_DIR
+ !error "Couldn't find inkscape distribution directory in neither ..\..\inkscape nor ..\..\build\inkscape"
+!endif
+!echo `Bundling compiled Inkscape files from ${INKSCAPE_DIST_DIR}`
+
; Product details (version, name, registry keys etc.) {{{2
+; Try to find version number in inkscape.rc first (e.g. 0.92pre1) {{{3
+!ifndef INKSCAPE_VERSION
+ !searchparse /noerrors /file ..\..\src\inkscape.rc `VALUE "ProductVersion", "` INKSCAPE_VERSION `"`
+ !ifdef INKSCAPE_VERSION
+ !echo `Got version number from ..\..\src\inkscape.rc: ${INKSCAPE_VERSION}`
+ !endif
+!endif
; Find the version number in inkscape-version.cpp (e.g. 0.47+devel) {{{3
!ifndef INKSCAPE_VERSION
; Official release format (no newlines)
@@ -158,15 +168,29 @@ ReserveFile "${NSISDIR}\Plugins\UserInfo.dll"
; Other format; sorry, it has to be done in two steps.
!searchparse /noerrors /file ..\..\src\inkscape-version.cpp `char const *version_string = "` INKSCAPE_VERSION `";`
!searchparse /noerrors `${INKSCAPE_VERSION}` `` INKSCAPE_VERSION ` r` BZR_REVISION
- !ifndef INKSCAPE_VERSION
- !error "INKSCAPE_VERSION not defined and unable to get version number from ..\..\src\inkscape-version.cpp!"
- !endif
+ !endif
+ !ifdef INKSCAPE_VERSION
+ !echo `Got version number from ..\..\src\inkscape-version.cpp: ${INKSCAPE_VERSION}`
!endif
!endif
-!echo `Got version number from ..\..\src\inkscape-version.cpp: ${INKSCAPE_VERSION}`
+!ifndef INKSCAPE_VERSION
+ !error "INKSCAPE_VERSION not defined and unable to get version number from either ..\..\src\inkscape.rc or ..\..\src\inkscape-version.cpp!"
+!endif
!define FILENAME Inkscape-${INKSCAPE_VERSION}
!define BrandingText `Inkscape ${INKSCAPE_VERSION}`
+; Detect architecture of the build
+${!ifexist} ${INKSCAPE_DIST_DIR}\gspawn-win32-helper.exe
+ !define BITNESS 32
+!endif
+${!ifexist} ${INKSCAPE_DIST_DIR}\gspawn-win64-helper.exe
+ !define BITNESS 64
+ !define /redef FILENAME `${FILENAME}-x64` ; add architecture to filename for 64-bit builds
+!endif
+!ifndef BITNESS
+ !error "Could not detect architecture (BITNESS) of the Inkscape build"
+!endif
+
; Check for the Bazaar revision number for lp:inkscape {{{3
${!ifexist} ..\..\.bzr\branch\last-revision
!if `${BZR_REVISION}` == ``
@@ -195,31 +219,30 @@ ${!ifexist} ..\..\.bzr\branch\last-revision
; Handle display version number and complete X.X version numbers into X.X.X.X {{{3
!ifdef DEVEL & BZR_REVISION
- ${!redef} FILENAME `${FILENAME}-r${BZR_REVISION}`
- ${!redef} BrandingText `${BrandingText} r${BZR_REVISION}`
+ !define /redef FILENAME `${FILENAME}-r${BZR_REVISION}`
+ !define /redef BrandingText `${BrandingText} r${BZR_REVISION}`
!define VERSION_X.X.X.X_REVISION ${BZR_REVISION}
; Handle the installer revision number {{{4
!else ifdef RELEASE_REVISION
- ${!redef} FILENAME `${FILENAME}-${RELEASE_REVISION}`
+ !define /redef FILENAME `${FILENAME}-${RELEASE_REVISION}`
; If we wanted the branding text to be like "Inkscape 0.48pre1 r9505" this'd do it.
;!ifdef BZR_REVISION
- ; ${!redef} BrandingText `${BrandingText} r${BZR_REVISION}`
+ ; !define /redef BrandingText `${BrandingText} r${BZR_REVISION}`
;!endif
!if `${RELEASE_REVISION}` != `1`
- ${!redef} BrandingText `${BrandingText}, revision ${RELEASE_REVISION}`
+ !define /redef BrandingText `${BrandingText}, revision ${RELEASE_REVISION}`
!endif
!define VERSION_X.X.X.X_REVISION ${RELEASE_REVISION}
!else
!define VERSION_X.X.X.X_REVISION 0
!endif
-${VersionCompleteXXXN} ${INKSCAPE_VERSION_NUMBER} VERSION_X.X.X.X ${VERSION_X.X.X.X_REVISION}
+${VersionCompleteXXXRevision} ${INKSCAPE_VERSION_NUMBER} VERSION_X.X.X.X ${VERSION_X.X.X.X_REVISION}
; Product definitions {{{3
!define PRODUCT_NAME "Inkscape" ; TODO: fix up the language files to not use this and kill this line
!define INSTDIR_KEY "Software\Microsoft\Windows\CurrentVersion\App Paths\inkscape.exe"
!define UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\Inkscape"
-;!define DUMMYINSTALL ; Define this to make it build quickly, not including any of the files or code in the sections, for quick testing of features of the installer and development thereof.
!define _FILENAME ${FILENAME}.exe
!undef FILENAME
!define FILENAME ${_FILENAME}
@@ -230,19 +253,22 @@ Name `Inkscape`
Caption `Inkscape - $(CaptionDescription)`
BrandingText `${BrandingText}`
OutFile `${FILENAME}`
-InstallDir "$PROGRAMFILES\Inkscape"
+!if ${BITNESS} = 32
+ InstallDir "$PROGRAMFILES32\Inkscape"
+!else
+ InstallDir "$PROGRAMFILES64\Inkscape"
+!endif
InstallDirRegKey HKLM "${INSTDIR_KEY}" ""
; Version information {{{3
VIProductVersion ${VERSION_X.X.X.X}
-VIAddVersionKey ProductName Inkscape
-VIAddVersionKey Comments "Licensed under the GNU GPL"
-VIAddVersionKey CompanyName inkscape.org
-VIAddVersionKey LegalCopyright "© 2015 Inkscape"
-VIAddVersionKey FileDescription Inkscape
-VIAddVersionKey FileVersion ${VERSION_X.X.X.X}
-VIAddVersionKey ProductVersion ${VERSION_X.X.X.X}
-VIAddVersionKey InternalName Inkscape
+VIAddVersionKey /LANG=0 ProductName "Inkscape"
+VIAddVersionKey /LANG=0 Comments "Licensed under the GNU GPL"
+VIAddVersionKey /LANG=0 CompanyName "Inkscape Project"
+VIAddVersionKey /LANG=0 LegalCopyright "© 2016 Inkscape Project"
+VIAddVersionKey /LANG=0 FileDescription "Inkscape Vector Graphics Editor"
+VIAddVersionKey /LANG=0 FileVersion ${VERSION_X.X.X.X}
+VIAddVersionKey /LANG=0 ProductVersion ${VERSION_X.X.X.X}
; Variables {{{2
Var askMultiUser
@@ -265,8 +291,15 @@ Var CMDARGS
ReadRegStr $2 HKU "$1\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" AppData
${IfThen} $2 == "" ${|} ${Continue} ${|}
DetailPrint "Removing $2\Inkscape"
+
Delete $2\Inkscape\preferences.xml
Delete $2\Inkscape\extension-errors.log
+
+ RMDir $2\Inkscape\extensions
+ RMDir $2\Inkscape\icons
+ RMDir $2\Inkscape\keys
+ RMDir $2\Inkscape\palettes
+ RMDir $2\Inkscape\templates
RMDir $2\Inkscape
${Loop}
!macroend
@@ -290,72 +323,77 @@ Section -removeInkscape ; Hidden, mandatory section to clean a previous installa
!endif
SectionEnd ; -removeInkscape }}}
-Section $(Core) SecCore ; Mandatory Inkscape core files section {{{
+Section "$(Core)" SecCore ; Mandatory Inkscape core files section {{{
SectionIn 1 2 3 RO
!ifndef DUMMYINSTALL
DetailPrint "Installing Inkscape core files..."
+
SetOutPath $INSTDIR
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- SetOverwrite on
- SetAutoClose false
-
- File /a ..\..\inkscape\ink*.exe
- File /a ..\..\inkscape\inkscape.com
- File /a ..\..\inkscape\AUTHORS
- File /a ..\..\inkscape\COPYING
- File /a ..\..\inkscape\COPYING.LIB
- File /a ..\..\inkscape\NEWS
- File /a ..\..\inkscape\gspawn-win32-helper.exe
- File /a ..\..\inkscape\gspawn-win32-helper-console.exe
- File /nonfatal /a ..\..\inkscape\HACKING.txt
- File /a ..\..\inkscape\README
- File /nonfatal /a ..\..\inkscape\README.txt
- File /a ..\..\inkscape\TRANSLATORS
- File /nonfatal /a /r ..\..\inkscape\data
- File /nonfatal /a /r ..\..\inkscape\doc
- File /nonfatal /a /r ..\..\inkscape\plugins
- File /nonfatal /a /r /x *.??*.???* /x examples /x tutorials ..\..\inkscape\share
+ File /a ${INKSCAPE_DIST_DIR}\ink*.exe
+ File /nonfatal /a ${INKSCAPE_DIST_DIR}\inkscape.com ; not created as of Inkscape 0.92pre1
+ File /a ${INKSCAPE_DIST_DIR}\AUTHORS
+ File /a ${INKSCAPE_DIST_DIR}\COPYING
+ File /a ${INKSCAPE_DIST_DIR}\GPL2.txt
+ File /a ${INKSCAPE_DIST_DIR}\GPL3.txt
+ File /a ${INKSCAPE_DIST_DIR}\LGPL2.1.txt
+ File /a ${INKSCAPE_DIST_DIR}\NEWS
+ File /a ${INKSCAPE_DIST_DIR}\gspawn-win${BITNESS}-helper.exe
+ File /a ${INKSCAPE_DIST_DIR}\gspawn-win${BITNESS}-helper-console.exe
+ File /a ${INKSCAPE_DIST_DIR}\README
+ File /a ${INKSCAPE_DIST_DIR}\TRANSLATORS
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- ; this files are added because it slips through the filter
- SetOutPath $INSTDIR\share\branding
+
+ SetOutPath $INSTDIR\data
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /a ..\..\inkscape\share\branding\draw-freely.ru.svg
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\data\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\share\icons
+ SetOutPath $INSTDIR\doc
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /a ..\..\inkscape\share\icons\inkscape.file.png
- File /a ..\..\inkscape\share\icons\inkscape.file.svg
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\doc\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\share\extensions
+ SetOutPath $INSTDIR\plugins
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /a ..\..\inkscape\share\extensions\inkscape.extension.rng
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\plugins\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\share\extensions\test
+ SetOutPath $INSTDIR\modules
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /a ..\..\inkscape\share\extensions\test\inkwebjs-move.test.svg
- File /a ..\..\inkscape\share\extensions\test\test_template.py.txt
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\modules\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\modules
+
+ ;exclude everything from /share for which we have separate sections below
+ SetOutPath $INSTDIR\share
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\modules\*.*
+ File /nonfatal /a /r /x *.??*.???* /x examples /x extensions /x locale /x tutorials ${INKSCAPE_DIST_DIR}\share\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\python
+ ; this files are added because it slips through the filter
+ SetOutPath $INSTDIR\share\icons
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\python\*.*
+ File /a ${INKSCAPE_DIST_DIR}\share\icons\inkscape.file.png
+ File /a ${INKSCAPE_DIST_DIR}\share\icons\inkscape.file.svg
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+ SetOutPath $INSTDIR\share\templates
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /a ${INKSCAPE_DIST_DIR}\share\templates\default.en_US.svg
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
!endif
SectionEnd ; SecCore }}}
-Section $(GTKFiles) SecGTK ; Mandatory GTK files section {{{
+Section "$(GTKFiles)" SecGTK ; Mandatory GTK files section {{{
SectionIn 1 2 3 RO
!ifndef DUMMYINSTALL
DetailPrint "Installing GTK files..."
SetOutPath $INSTDIR
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- SetOverwrite on
- File /a /r ..\..\inkscape\*.dll
- File /a /r /x locale ..\..\inkscape\lib
- File /a /r ..\..\inkscape\etc
+ File /a /r /x python ${INKSCAPE_DIST_DIR}\*.dll
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+ SetOutPath $INSTDIR\lib
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /a /r /x locale /x aspell-0.60 ${INKSCAPE_DIST_DIR}\lib\*.*
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+ SetOutPath $INSTDIR\etc
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /a /r ${INKSCAPE_DIST_DIR}\etc\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
!endif
SectionEnd ; SecGTK }}}
@@ -367,7 +405,7 @@ Section -SetCurrentUserOnly ; Set the installation to "current user" only by def
!endif
SectionEnd ; -SetCurrentUserOnly }}}
-Section $(Alluser) SecAlluser ; Then offer the user the option to make it global (default) {{{
+Section "$(Alluser)" SecAlluser ; Then offer the user the option to make it global (default) {{{
SectionIn 1 2 3
!ifndef DUMMYINSTALL
; disable this option in Win95/Win98/WinME
@@ -377,21 +415,39 @@ Section $(Alluser) SecAlluser ; Then offer the user the option to make it global
!endif
SectionEnd ; SecAllUser }}}
+Section /o "$(DeletePrefs)" SecPrefs ; Delete user preferences before installation {{{
+!ifndef DUMMYINSTALL
+ !insertmacro delprefs
+!endif
+SectionEnd ; SecPrefs }}}
+
SectionGroup "$(Shortcuts)" SecShortcuts ; Create shortcuts for the user {{{
-Section $(Desktop) SecDesktop ; Desktop shortcut {{{
+Section "$(Startmenu)" SecStartMenu ; Start menu shortcut {{{
+ SectionIn 1 2 3
!ifndef DUMMYINSTALL
+ SetOutPath $INSTDIR
+ CreateShortcut $SMPROGRAMS\Inkscape.lnk $INSTDIR\inkscape.exe
+!endif
+SectionEnd ; SecStartMenu }}}
+
+Section "$(Desktop)" SecDesktop ; Desktop shortcut {{{
+ SectionIn 1 2 3
+!ifndef DUMMYINSTALL
+ SetOutPath $INSTDIR
CreateShortCut $DESKTOP\Inkscape.lnk $INSTDIR\inkscape.exe
!endif
SectionEnd ; SecDesktop }}}
-Section $(Quicklaunch) SecQuickLaunch ; Quick Launch shortcut {{{
+Section "$(Quicklaunch)" SecQuickLaunch ; Quick Launch shortcut {{{
+ SectionIn 1 2 3
!ifndef DUMMYINSTALL
+ SetOutPath $INSTDIR
${IfThen} $QUICKLAUNCH != $TEMP ${|} CreateShortCut $QUICKLAUNCH\Inkscape.lnk $INSTDIR\inkscape.exe ${|}
!endif
SectionEnd ; SecQuickLaunch }}}
-Section $(SVGWriter) SecSVGWriter ; Register Inkscape as the default application for .svg[z] {{{
+Section "$(SVGWriter)" SecSVGWriter ; Register Inkscape as the default application for .svg[z] {{{
SectionIn 1 2 3
!ifndef DUMMYINSTALL
DetailPrint "Associating SVG files with Inkscape"
@@ -409,7 +465,7 @@ Section $(SVGWriter) SecSVGWriter ; Register Inkscape as the default application
!endif
SectionEnd ; SecSVGWriter }}}
-Section $(ContextMenu) SecContextMenu ; Put Inkscape in the .svg[z] context menus (but not as default) {{{
+Section "$(ContextMenu)" SecContextMenu ; Put Inkscape in the .svg[z] context menus (but not as default) {{{
SectionIn 1 2 3
!ifndef DUMMYINSTALL
DetailPrint "Adding Inkscape to SVG file context menu"
@@ -433,152 +489,122 @@ SectionEnd ; SecContextMenu }}}
SectionGroupEnd ; SecShortcuts }}}
-Section /o "$(DeletePrefs)" SecPrefs ; Delete user preferences before installation {{{
+Section "$(Python)" SecPython ; Python distribution {{{
+ SectionIn 1 2
!ifndef DUMMYINSTALL
- !insertmacro delprefs
+ DetailPrint "Installing Python..."
+ SetOutPath $INSTDIR\python
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\python\*.*
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
!endif
-SectionEnd ; SecPrefs }}}
+SectionEnd ; SecPython }}}
SectionGroup "$(Addfiles)" SecAddfiles ; Additional files {{{
-Section $(Examples) SecExamples ; Install example SVG files {{{
+Section "$(Extensions)" SecExtensions ; Extensions {{{
SectionIn 1 2
!ifndef DUMMYINSTALL
- SetOutPath $INSTDIR\share
+ DetailPrint "Installing extensions..."
+ SetOutPath $INSTDIR\share\extensions
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r /x *.??*.???* ..\..\inkscape\share\examples
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\share\extensions\*.*
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+!endif
+SectionEnd ; SecExtensions }}}
+
+Section "$(Examples)" SecExamples ; Install example SVG files {{{
+ SectionIn 1 2
+!ifndef DUMMYINSTALL
+ DetailPrint "Installing examples..."
+ SetOutPath $INSTDIR\share\examples
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r /x *.??*.???* ${INKSCAPE_DIST_DIR}\share\examples\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
!endif
SectionEnd ; SecExamples }}}
-Section $(Tutorials) SecTutorials ; Install tutorials {{{
+Section "$(Tutorials)" SecTutorials ; Install tutorials {{{
SectionIn 1 2
!ifndef DUMMYINSTALL
- SetOutPath $INSTDIR\share
+ DetailPrint "Installing tutorials..."
+ SetOutPath $INSTDIR\share\tutorials
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r /x *.??*.???* ..\..\inkscape\share\tutorials
+ File /nonfatal /a /r /x *.??*.???* ${INKSCAPE_DIST_DIR}\share\tutorials\*.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
!endif
SectionEnd ; SecTutorials }}}
+Section "$(Dictionaries)" SecDictionaries ; Aspell dictionaries {{{
+ SectionIn 1 2
+!ifndef DUMMYINSTALL
+ DetailPrint "Installing dictionaries..."
+ SetOutPath $INSTDIR\lib\aspell-0.60
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\lib\aspell-0.60\*.*
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+!endif
+SectionEnd ; SecDictionaries }}}
+
SectionGroupEnd ; SecAddfiles }}}
SectionGroup "$(Languages)" SecLanguages ; Languages sections {{{
!macro Language SecName lng ; A macro to create each section {{{
- Section /o "$(lng_${lng}) (${lng})" Sec${SecName}
- ;SectionIn 1 2 3
+ Section /o "$(lng_${lng})" Sec${SecName}
+ SectionIn 1 ; flags will be adjusted below, see LanguageAutoSelect in .onInit
!ifndef DUMMYINSTALL
- SetOutPath $INSTDIR
- !insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a ..\..\inkscape\*.${lng}.txt ; FIXME: remove this? No such files.
- !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\locale
- !insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\locale\${lng}
- !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\lib\locale
- !insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\lib\locale\${lng}
- !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\share\clipart
- !insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\share\clipart\*.${lng}.svg
- !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- ; the keyboard tables
- SetOutPath $INSTDIR\share\screens
+ DetailPrint "Installing translations and translated content for ${SecName} (${lng}) locale..."
+ ; locale folders (/locale, /share/locale /lib/locale)
+ ${!defineifexist} ${INKSCAPE_DIST_DIR}\locale EXISTS 1
+ !ifdef EXISTS
+ !undef EXISTS
+ SetOutPath $INSTDIR\locale\${lng}
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\locale\${lng}\*.*
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+ !endif
+ ${!defineifexist} ${INKSCAPE_DIST_DIR}\share\locale EXISTS 1
+ !ifdef EXISTS
+ !undef EXISTS
+ SetOutPath $INSTDIR\share\locale\${lng}
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\share\locale\${lng}\*.*
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+ !endif
+ ${!defineifexist} ${INKSCAPE_DIST_DIR}\lib\locale EXISTS 1
+ !ifdef EXISTS
+ !undef EXISTS
+ SetOutPath $INSTDIR\lib\locale\${lng}
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\lib\locale\${lng}\*.*
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+ !endif
+
+ ; localized documentation, templates and tutorials
+ SetOutPath $INSTDIR\doc
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\share\screens\*.${lng}.svg
+ File /nonfatal /a ${INKSCAPE_DIST_DIR}\doc\*.${lng}.html ; keys.${lng}.html
+ File /nonfatal /a ${INKSCAPE_DIST_DIR}\doc\*.${lng}.txt ; HACKING.${lng}.html
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\share\templates
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\share\templates\*.${lng}.svg
- !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
- SetOutPath $INSTDIR\doc
- !insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a /r ..\..\inkscape\doc\keys.${lng}.xml
- File /nonfatal /a /r ..\..\inkscape\doc\keys.${lng}.html
+ File /nonfatal /a /r ${INKSCAPE_DIST_DIR}\share\templates\*.${lng}.svg
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SectionGetFlags ${SecTutorials} $R1
IntOp $R1 $R1 & ${SF_SELECTED}
${If} $R1 >= ${SF_SELECTED}
SetOutPath $INSTDIR\share\tutorials
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
- File /nonfatal /a ..\..\inkscape\share\tutorials\*.${lng}.*
+ File /nonfatal /a ${INKSCAPE_DIST_DIR}\share\tutorials\*.${lng}.*
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
${EndIf}
!endif
SectionEnd
!macroend ; Language }}}
- ; Now create each section with the Language macro {{{
- !insertmacro Language Amharic am
- !insertmacro Language Arabic ar
- !insertmacro Language Azerbaijani az
- !insertmacro Language Byelorussian be
- !insertmacro Language Bulgarian bg
- !insertmacro Language Bengali bn
- !insertmacro Language BengaliBangladesh bn_BD
- !insertmacro Language Breton br
- !insertmacro Language Catalan ca
- !insertmacro Language CatalanValencia ca@valencia
- !insertmacro Language Czech cs
- !insertmacro Language Danish da
- !insertmacro Language German de
- !insertmacro Language Dzongkha dz
- !insertmacro Language Greek el
- !insertmacro Language EnglishAustralian en_AU
- !insertmacro Language EnglishCanadian en_CA
- !insertmacro Language EnglishBritain en_GB
- !insertmacro Language EnglishPiglatin en_US@piglatin
- !insertmacro Language Esperanto eo
- !insertmacro Language Spanish es
- !insertmacro Language SpanishMexico es_MX
- !insertmacro Language Estonian et
- !insertmacro Language Basque eu
- !insertmacro Language Farsi fa
- !insertmacro Language French fr
- !insertmacro Language Finnish fi
- !insertmacro Language Irish ga
- !insertmacro Language Galician gl
- !insertmacro Language Hebrew he
- !insertmacro Language Croatian hr
- !insertmacro Language Hungarian hu
- !insertmacro Language Armenian hy
- !insertmacro Language Indonesian id
- !insertmacro Language Icelandic is
- !insertmacro Language Italian it
- !insertmacro Language Japanese ja
- !insertmacro Language Khmer km
- !insertmacro Language Korean ko
- !insertmacro Language Lithuanian lt
- !insertmacro Language Latvian lv
- !insertmacro Language Mongolian mn
- !insertmacro Language Macedonian mk
- !insertmacro Language NorwegianBokmal nb
- !insertmacro Language Nepali ne
- !insertmacro Language Dutch nl
- !insertmacro Language NorwegianNynorsk nn
- !insertmacro Language Panjabi pa
- !insertmacro Language Polish pl
- !insertmacro Language Portuguese pt
- !insertmacro Language PortugueseBrazil pt_BR
- !insertmacro Language Romanian ro
- !insertmacro Language Russian ru
- !insertmacro Language Kinyarwanda rw
- !insertmacro Language Slovak sk
- !insertmacro Language Slovenian sl
- !insertmacro Language Albanian sq
- !insertmacro Language Serbian sr
- !insertmacro Language SerbianLatin sr@latin
- !insertmacro Language Swedish sv
- !insertmacro Language Telugu te
- !insertmacro Language Thai th
- !insertmacro Language Turkish tr
- !insertmacro Language Ukrainian uk
- !insertmacro Language Vietnamese vi
- !insertmacro Language SimpChinese zh_CN
- !insertmacro Language TradChinese zh_TW
- ; }}}
+ ; Now create each section with the Language macro.
+ ; include list of available inkscape translations from /languages/_language_lists.nsh
+ !insertmacro INKSCAPE_TRANSLATIONS Language
SectionGroupEnd ; SecLanguages }}}
Section -FinalizeInstallation ; Hidden, mandatory section to finalize installation {{{
@@ -592,9 +618,6 @@ Section -FinalizeInstallation ; Hidden, mandatory section to finalize installati
WriteRegStr SHCTX "${INSTDIR_KEY}" askMultiUser $askMultiUser
WriteRegStr SHCTX "${INSTDIR_KEY}" User $User
- ; start menu entries
- CreateShortcut $SMPROGRAMS\Inkscape.lnk $INSTDIR\inkscape.exe
-
; uninstall settings
; WriteUninstaller $INSTDIR\uninst.exe
WriteRegExpandStr SHCTX "${UNINST_KEY}" UninstallString ${UNINST_EXE}
@@ -603,9 +626,16 @@ Section -FinalizeInstallation ; Hidden, mandatory section to finalize installati
WriteRegStr SHCTX "${UNINST_KEY}" DisplayName "Inkscape ${INKSCAPE_VERSION}"
WriteRegStr SHCTX "${UNINST_KEY}" DisplayIcon $INSTDIR\Inkscape.exe,0
WriteRegStr SHCTX "${UNINST_KEY}" DisplayVersion ${INKSCAPE_VERSION}
+ WriteRegStr SHCTX "${UNINST_KEY}" Publisher "Inkscape Project"
+ WriteRegStr SHCTX "${UNINST_KEY}" URLInfoAbout "https://inkscape.org"
+
WriteRegDWORD SHCTX "${UNINST_KEY}" NoModify 1
WriteRegDWORD SHCTX "${UNINST_KEY}" NoRepair 1
+ ${GetSize} "$INSTDIR" "/S=0K" $0 $1 $2
+ IntFmt $0 "0x%08X" $0
+ WriteRegDWORD SHCTX "${UNINST_KEY}" EstimatedSize "$0"
+
;create/update log always within .onInstSuccess function
!insertmacro UNINSTALL.LOG_UPDATE_INSTALL
@@ -613,12 +643,16 @@ Section -FinalizeInstallation ; Hidden, mandatory section to finalize installati
ClearErrors
FileOpen $0 $INSTDIR\Uninstall.dat r
FileOpen $9 $INSTDIR\Uninstall.log w
+ FileRead $0 $1 ; read first line (which is the header)
${IfNot} ${Errors}
${Do}
ClearErrors
FileRead $0 $1
${IfThen} ${Errors} ${|} ${ExitDo} ${|}
- StrCpy $1 $1 -2
+ StrCpy $1 $1 -2 ; strip \r\n from path
+ ${If} ${FileExists} $1\*.* ; ignore directories
+ ${Continue}
+ ${EndIf}
md5dll::GetMD5File /NOUNLOAD $1
Pop $2
${IfThen} $2 != "" ${|} FileWrite $9 "$2 $1$\r$\n" ${|}
@@ -627,7 +661,7 @@ Section -FinalizeInstallation ; Hidden, mandatory section to finalize installati
FileClose $0
FileClose $9
; Not needed any more
- Delete $INSTDIR\Uninstall.dat
+ ; Delete $INSTDIR\Uninstall.dat ; actually this is checked for in UNINSTALL.LOG_PREPARE_INSTALL, so keep it for now...
!endif
SectionEnd ; -FinalizeInstallation }}}
@@ -636,18 +670,79 @@ SectionEnd ; -FinalizeInstallation }}}
!insertmacro MUI_DESCRIPTION_TEXT ${SecGTK} "$(GTKFilesDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecShortcuts} "$(ShortcutsDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecAlluser} "$(AlluserDesc)"
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecStartMenu} "$(StartmenuDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecDesktop} "$(DesktopDesc)"
- !insertmacro MUI_DESCRIPTION_TEXT ${SecQuicklaunch} "$(QuicklaunchDesc)"
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecQuickLaunch} "$(QuicklaunchDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecSVGWriter} "$(SVGWriterDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecContextMenu} "$(ContextMenuDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecPrefs} "$(DeletePrefsDesc)"
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecPython} "$(PythonDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecAddfiles} "$(AddfilesDesc)"
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecExtensions} "$(ExtensionsDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecExamples} "$(ExamplesDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecTutorials} "$(TutorialsDesc)"
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecDictionaries} "$(DictionariesDesc)"
!insertmacro MUI_DESCRIPTION_TEXT ${SecLanguages} "$(LanguagesDesc)"
!insertmacro MUI_FUNCTION_DESCRIPTION_END ; Section descriptions }}}
+Function SortTranslationsSection ; sorts the available translations in the component dialog alphabetically
+ ; originally from http://nsis.sourceforge.net/Sorting_Components
+
+ ; defines
+ !define TVGN_ROOT 0
+ !define TVGN_NEXT 1
+ !define TVGN_NEXTVISIBLE 6
+
+ !define TVIF_TEXT 1
+
+ !define TVM_GETNEXTITEM 4362
+ !define TVM_GETITEMA 4364
+ !define TVM_GETITEMW 4414
+ !define TVM_GETITEM 4414
+ !define TVM_SORTCHILDREN 4371
+
+ !define TVITEM '(i, i, i, i, i, i, i, i, i, i)'
+
+ ; get the window handle and search for the tree view control
+ FindWindow $0 "#32770" "" $HWNDPARENT
+ GetDlgItem $0 $0 1032
+
+ ; find the first tree item
+ SendMessage $0 ${TVM_GETNEXTITEM} ${TVGN_ROOT} 0 $1
+
+ ; allocate a string in memory to store the section name
+ System::Alloc ${NSIS_MAX_STRLEN}
+ Pop $2
+
+ ; loop through all tree view items until the one containing the translations is found
+ loopSections:
+ ; allocate a TVITEM (https://msdn.microsoft.com/en-us/library/windows/desktop/bb773456.aspx) structure in memory
+ System::Call '*${TVITEM}(${TVIF_TEXT}, r1,,, r2, ${NSIS_MAX_STRLEN},,,,) i .r3'
+ ; send TVM_GETITEM message (https://msdn.microsoft.com/de-de/library/windows/desktop/bb773596.aspx)
+ ; which stores information on the current tree item in the structure
+ SendMessage $0 ${TVM_GETITEM} 0 $3
+ ; read the string pointed to by pszText (which is the displayed text of the tree item)
+ System::Call '*$2(&t${NSIS_MAX_STRLEN} .r4)'
+ ; check if this matches the localized string for "Translations", i.e. the Section we're looking for
+ StrCmp $4 "$(Languages)" 0 +2
+ Goto foundSection
+
+ ; send TVM_GETNEXTITEM message (https://msdn.microsoft.com/de-de/library/windows/desktop/bb773622.aspx)
+ ; will return 0 if the last item was reached (if this happens something went wrong and we did not find the translations section)
+ SendMessage $0 ${TVM_GETNEXTITEM} ${TVGN_NEXTVISIBLE} $1 $1
+ StrCmp 0 $1 doneSections loopSections
+
+ ; sort the children of the translations section alphabetically
+ foundSection:
+ SendMessage $0 ${TVM_SORTCHILDREN} 0 $1
+
+ doneSections:
+ System::Free $2
+ System::Free $3
+FunctionEnd
+
+
Function .onInit ; initialise the installer {{{2
; This code will be executed before the sections, but due to the
; language code in the sections it must come after it in the code.
@@ -655,41 +750,21 @@ Function .onInit ; initialise the installer {{{2
; Language detection {{{
!insertmacro MUI_LANGDLL_DISPLAY
- !macro LanguageAutoSelect SecName LocaleID
+ !macro LanguageAutoSelect LocaleName LocaleID
${If} $LANGUAGE = ${LocaleID}
- SectionGetFlags ${Sec${SecName}} $0
- IntOp $0 $0 | ${SF_SELECTED}
- SectionSetFlags ${Sec${SecName}} $0
+ SectionSetInstTypes ${Sec${LocaleName}} 3 ; this equals binary "011" (which flags the default for sections 1 and 2 but not 3)
+ ; and is equivalent to "SectionIn 1 2"
${EndIf}
!macroend
+ ; include list for installer autoselection from /languages/_language_lists.nsh
; No need for English to be detected as it's the default
- !insertmacro LanguageAutoSelect PortugueseBrazil 1046
- !insertmacro LanguageAutoSelect Breton 1150
- !insertmacro LanguageAutoSelect Catalan 1027
- !insertmacro LanguageAutoSelect Czech 1029
- !insertmacro LanguageAutoSelect Danish 1030
- !insertmacro LanguageAutoSelect Dutch 1043
- !insertmacro LanguageAutoSelect Finnish 1035
- !insertmacro LanguageAutoSelect French 1036
- !insertmacro LanguageAutoSelect Galician 1110
- !insertmacro LanguageAutoSelect German 1031
- !insertmacro LanguageAutoSelect Greek 1032
- !insertmacro LanguageAutoSelect Indonesian 1057
- !insertmacro LanguageAutoSelect Icelandic 861
- !insertmacro LanguageAutoSelect Italian 1040
- !insertmacro LanguageAutoSelect Japanese 1041
- !insertmacro LanguageAutoSelect Polish 1045
- !insertmacro LanguageAutoSelect Romanian 1048
- !insertmacro LanguageAutoSelect Russian 1049
- !insertmacro LanguageAutoSelect Slovak 1051
- !insertmacro LanguageAutoSelect Slovenian 1060
- !insertmacro LanguageAutoSelect Spanish 1034
- !insertmacro LanguageAutoSelect SimpChinese 2052
- !insertmacro LanguageAutoSelect TradChinese 1028
- !insertmacro LanguageAutoSelect Ukrainian 1058
+ !insertmacro INSTALLER_TRANSLATIONS LanguageAutoSelect
; End of language detection }}}
+ ; ser the second InstType ("Optimal") as default
+ SetCurInstType 1
+
!insertmacro UNINSTALL.LOG_PREPARE_INSTALL ; prepare advanced uninstallation log script
;Extract InstallOptions INI files
@@ -738,7 +813,11 @@ Function .onInit ; initialise the installer {{{2
; Request uninstallation of an old Inkscape installation {{{
ReadRegStr $R0 HKLM "${UNINST_KEY}" UninstallString
- ${IfThen} $R0 == "" ${|} ReadRegStr $R0 HKCU "${UNINST_KEY}" UninstallString ${|}
+ ReadRegStr $R1 HKLM "${UNINST_KEY}" DisplayName
+ ${If} $R0 == ""
+ ReadRegStr $R0 HKCU "${UNINST_KEY}" UninstallString
+ ReadRegStr $R1 HKCU "${UNINST_KEY}" DisplayName
+ ${EndIf}
${If} $R0 != ""
${AndIf} ${Cmd} ${|} MessageBox MB_YESNO|MB_ICONEXCLAMATION "$(WANT_UNINSTALL_BEFORE)" /SD IDNO IDYES ${|}
ExecWait $R0
@@ -750,100 +829,39 @@ Function .onInit ; initialise the installer {{{2
!verbose 3
${GetParameters} $CMDARGS
- !macro Parameter key Section
+ !macro Parameter Section key
${GetOptions} $CMDARGS /${key}= $1
${If} $1 == OFF
- SectionGetFlags ${Section} $0
+ SectionGetFlags ${Sec${Section}} $0
IntOp $2 ${SF_SELECTED} ~
IntOp $0 $0 & $2
- SectionSetFlags ${Section} $0
+ SectionSetFlags ${Sec${Section}} $0
${EndIf}
${If} $1 == ON
- SectionGetFlags ${Section} $0
+ SectionGetFlags ${Sec${Section}} $0
IntOp $0 $0 | ${SF_SELECTED}
- SectionSetFlags ${Section} $0
+ SectionSetFlags ${Sec${Section}} $0
${EndIf}
!macroend
- !insertmacro Parameter GTK ${SecGTK}
- !insertmacro Parameter SHORTCUTS ${secShortcuts}
- !insertmacro Parameter ALLUSER ${SecAlluser}
- !insertmacro Parameter DESKTOP ${SecDesktop}
- !insertmacro Parameter QUICKLAUNCH ${SecQUICKlaunch}
- !insertmacro Parameter SVGEDITOR ${SecSVGWriter}
- !insertmacro Parameter CONTEXTMENUE ${SecContextMenu}
- !insertmacro Parameter PREFERENCES ${SecPrefs}
- !insertmacro Parameter ADDFILES ${SecAddfiles}
- !insertmacro Parameter EXAMPLES ${SecExamples}
- !insertmacro Parameter TUTORIALS ${SecTutorials}
- !insertmacro Parameter LANGUAGES ${SecLanguages}
- !insertmacro Parameter am ${SecAmharic}
- !insertmacro Parameter ar ${SecArabic}
- !insertmacro Parameter az ${SecAzerbaijani}
- !insertmacro Parameter be ${SecByelorussian}
- !insertmacro Parameter bg ${SecBulgarian}
- !insertmacro Parameter bn ${SecBengali}
- !insertmacro Parameter bn_BD ${SecBengaliBangladesh}
- !insertmacro Parameter br ${SecBreton}
- !insertmacro Parameter ca ${SecCatalan}
- !insertmacro Parameter ca@valencia ${SecCatalanValencia}
- !insertmacro Parameter cs ${SecCzech}
- !insertmacro Parameter da ${SecDanish}
- !insertmacro Parameter de ${SecGerman}
- !insertmacro Parameter dz ${SecDzongkha}
- !insertmacro Parameter el ${SecGreek}
- !insertmacro Parameter en_AU ${SecEnglishAustralian}
- !insertmacro Parameter en_CA ${SecEnglishCanadian}
- !insertmacro Parameter en_GB ${SecEnglishBritain}
- !insertmacro Parameter en_US@piglatin ${SecEnglishPiglatin}
- !insertmacro Parameter eo ${SecEsperanto}
- !insertmacro Parameter es ${SecSpanish}
- !insertmacro Parameter es_MX ${SecSpanishMexico}
- !insertmacro Parameter et ${SecEstonian}
- !insertmacro Parameter eu ${SecBasque}
- !insertmacro Parameter fa ${SecFarsi}
- !insertmacro Parameter fi ${SecFinnish}
- !insertmacro Parameter fr ${SecFrench}
- !insertmacro Parameter ga ${SecIrish}
- !insertmacro Parameter gl ${SecGalician}
- !insertmacro Parameter he ${SecHebrew}
- !insertmacro Parameter hr ${SecCroatian}
- !insertmacro Parameter hu ${SecHungarian}
- !insertmacro Parameter hy ${SecArmenian}
- !insertmacro Parameter id ${SecIndonesian}
- !insertmacro Parameter is ${SecIcelandic}
- !insertmacro Parameter it ${SecItalian}
- !insertmacro Parameter ja ${SecJapanese}
- !insertmacro Parameter km ${SecKhmer}
- !insertmacro Parameter ko ${SecKorean}
- !insertmacro Parameter lt ${SecLithuanian}
- !insertmacro Parameter lv ${SecLatvian}
- !insertmacro Parameter mk ${SecMacedonian}
- !insertmacro Parameter mn ${SecMongolian}
- !insertmacro Parameter nb ${SecNorwegianBokmal}
- !insertmacro Parameter ne ${SecNepali}
- !insertmacro Parameter nl ${SecDutch}
- !insertmacro Parameter nn ${SecNorwegianNynorsk}
- !insertmacro Parameter pa ${SecPanjabi}
- !insertmacro Parameter pl ${SecPolish}
- !insertmacro Parameter pt ${SecPortuguese}
- !insertmacro Parameter pt_BR ${SecPortugueseBrazil}
- !insertmacro Parameter ro ${SecRomanian}
- !insertmacro Parameter ru ${SecRussian}
- !insertmacro Parameter rw ${SecKinyarwanda}
- !insertmacro Parameter sk ${SecSlovak}
- !insertmacro Parameter sl ${SecSlovenian}
- !insertmacro Parameter sq ${SecAlbanian}
- !insertmacro Parameter sr ${SecSerbian}
- !insertmacro Parameter sr@latin ${SecSerbianLatin}
- !insertmacro Parameter sv ${SecSwedish}
- !insertmacro Parameter te ${SecTelugu}
- !insertmacro Parameter th ${SecThai}
- !insertmacro Parameter tr ${SecTurkish}
- !insertmacro Parameter uk ${SecUkrainian}
- !insertmacro Parameter vi ${SecVietnamese}
- !insertmacro Parameter zh_CN ${SecSimpChinese}
- !insertmacro Parameter zh_TW ${SecTradChinese}
+ !insertmacro Parameter GTK GTK
+ !insertmacro Parameter Shortcuts SHORTCUTS
+ !insertmacro Parameter Alluser ALLUSER
+ !insertmacro Parameter Desktop DESKTOP
+ !insertmacro Parameter QuickLaunch QUICKLAUNCH
+ !insertmacro Parameter SVGWriter SVGEDITOR
+ !insertmacro Parameter ContextMenu CONTEXTMENUE
+ !insertmacro Parameter Prefs PREFERENCES
+ !insertmacro Parameter Python PYTHON
+ !insertmacro Parameter Addfiles ADDFILES
+ !insertmacro Parameter Extensions EXTENSIONS
+ !insertmacro Parameter Examples EXAMPLES
+ !insertmacro Parameter Tutorials TUTORIALS
+ !insertmacro Parameter Dictionaries DICTIONARIES
+ !insertmacro Parameter Languages LANGUAGES
+
+ ; include list of available inkscape translations for parameter generation from /languages/_language_lists.nsh
+ !insertmacro INKSCAPE_TRANSLATIONS Parameter
ClearErrors
${GetOptions} $CMDARGS /? $1
@@ -860,15 +878,21 @@ Function .onInit ; initialise the installer {{{2
/SVGEDITOR=(OFF/ON): default SVG editor$\r$\n \
/CONTEXTMENUE=(OFF/ON): context menue integration$\r$\n \
/PREFERENCES=(OFF/ON): delete users preference files$\r$\n \
+ /PYTHON=(OFF/ON): python distribution$\r$\n \
/ADDFILES=(OFF/ON): additional files$\r$\n \
+ /EXTENSIONS=(OFF/ON): extensions$\r$\n \
/EXAMPLES=(OFF/ON): examples$\r$\n \
/TUTORIALS=(OFF/ON): tutorials$\r$\n \
+ /DICTIONARIES=(OFF/ON): dictionaries$\r$\n \
/LANGUAGES=(OFF/ON): translated menues, examples, etc.$\r$\n \
/[locale code]=(OFF/ON): e.g am, es, es_MX as in Inkscape supported"
Abort
- !verbose pop
- ${EndIf} ; }}}
+ ${EndIf}
+ !verbose pop ; }}}
FunctionEnd ; .onInit }}}
+
+
+
; Uninstaller code {{{1
Function un.onInit ; initialise uninstaller {{{
;begin uninstall, could be added on top of uninstall section instead
@@ -912,6 +936,7 @@ Function un.onInit ; initialise uninstaller {{{
FunctionEnd ; un.onInit }}}
Function un.CustomPageUninstall ; {{{
+ SetShellVarContext current
!insertmacro MUI_HEADER_TEXT "$(UInstOpt)" "$(UInstOpt1)"
!insertmacro MUI_INSTALLOPTIONS_WRITE inkscape.nsi.uninstall "Field 1" Text "$APPDATA\Inkscape\"
!insertmacro MUI_INSTALLOPTIONS_WRITE inkscape.nsi.uninstall "Field 2" Text "$(PurgePrefs)"
@@ -922,6 +947,7 @@ FunctionEnd ; un.CustomPageUninstall }}}
Section Uninstall ; do the uninstalling {{{
!ifndef DUMMYINSTALL
; remove personal settings
+ SetShellVarContext current
Delete $APPDATA\Inkscape\extension-errors.log
${If} $MultiUser = 0
DetailPrint "Purging personal settings in $APPDATA\Inkscape"
@@ -980,16 +1006,16 @@ Section Uninstall ; do the uninstalling {{{
RMDir $SMPROGRAMS\Inkscape
InitPluginsDir
- SetPluginUnload manual
ClearErrors
- FileOpen $0 $INSTDIR\uninstall.log r
+ FileOpen $9 $INSTDIR\uninstall.log r
${If} ${Errors} ;else uninstallnotfound
MessageBox MB_OK|MB_ICONEXCLAMATION "$(UninstallLogNotFound)" /SD IDOK
${Else}
+ ${SHMessageBoxCheckInit} "inkscape_uninstall_other_files"
${Do}
ClearErrors
- FileRead $0 $1
+ FileRead $9 $1
${IfThen} ${Errors} ${|} ${ExitDo} ${|}
; cat the line into md5 and filename
StrLen $2 $1
@@ -997,31 +1023,23 @@ Section Uninstall ; do the uninstalling {{{
StrCpy $3 $1 32
StrCpy $filename $1 $2-36 34 ;remove trailing CR/LF
StrCpy $filename $filename -2
- ; $3 = MD5 when installed, then deletion choice
; $filename = file
- ; $5 = MD5 now
- ; $6 = always/never remove files touched by user
+ ; $0 = shall file be deleted?
+ ; $3 = MD5 when installed
+ ; $4 = MD5 now
${If} ${FileExists} $filename
- ${If} $6 == always
- StrCpy $3 2
+ md5dll::GetMD5File /NOUNLOAD $filename
+ Pop $4 ;md5 of file
+ ${If} $3 == $4
+ StrCpy $0 ${IDYES}
${Else}
- md5dll::GetMD5File /NOUNLOAD $filename
- Pop $5 ;md5 of file
- ${If} $3 == $5
- StrCpy $3 1 ; yes
- ${ElseIf} $6 != never
- ; the md5 sums does not match so we ask
- messagebox::show MB_DEFBUTTON3|MB_TOPMOST "" 0,103 \
- "$(FileChanged)" "$(Yes)" "$(AlwaysYes)" "$(No)" "$(AlwaysNo)"
- Pop $3
- ${IfThen} $3 = 2 ${|} StrCpy $6 always ${|}
- ${IfThen} $3 = 4 ${|} StrCpy $6 never ${|}
- ${EndIf}
+ ; the md5 sums does not match so we ask
+ ${SHMessageBoxCheck} "$(MUI_UNTEXT_CONFIRM_TITLE)" "$(FileChanged)" ${MB_YESNO}|${MB_ICONQUESTION}
+ Pop $0
${EndIf}
- ${If} $3 = 1 ; yes
- ${OrIf} $3 = 2 ; always
+ ${If} $0 = ${IDYES}
; Remove File
ClearErrors
Delete $filename
@@ -1036,22 +1054,39 @@ Section Uninstall ; do the uninstalling {{{
${EndIf}
${EndIf}
${Loop}
+ ${SHMessageBoxCheckCleanup}
${EndIf}
- FileClose $0
+ FileClose $9
+ ; remove Python cache files that may have been created
+ loopFiles:
+ StrCpy $R1 0
+ ${Locate} "$INSTDIR" "/L=F /M=*.pyc" "un.DeleteFile"
+ StrCmp $R1 0 0 loopFiles
+ ; remove empty directories
+ loopDirs:
+ StrCpy $R1 0
+ ${Locate} "$INSTDIR" "/L=DE" "un.DeleteDir"
+ StrCmp $R1 0 0 loopDirs
+ ; remove the uninstaller and installation directory itself
+ Delete $INSTDIR\uninstall.dat
Delete $INSTDIR\uninstall.log
Delete $INSTDIR\uninstall.exe
- ; remove empty directories
- RMDir $INSTDIR\lib\locale
- RMDir $INSTDIR\lib
- RMDir $INSTDIR\data
- RMDir $INSTDIR\doc
- RMDir $INSTDIR\modules
- RMDir $INSTDIR\plugins
RMDir $INSTDIR
- SetAutoClose false
!endif
SectionEnd ; Uninstall }}}
; }}}
+Function un.DeleteFile
+ Delete $R9
+ IntOp $R1 $R1 + 1
+ Push 0 # required by ${Locate}!
+FunctionEnd
+
+Function un.DeleteDir
+ RMDir $R9
+ IntOp $R1 $R1 + 1
+ Push 0 # required by ${Locate}!
+FunctionEnd
+
; This file has been optimised for use in Vim with folding.
; (If you can't cope, :set nofoldenable) vim:fen:fdm=marker
diff --git a/packaging/win32/languages/Breton.nsh b/packaging/win32/languages/Breton.nsh
index c73ced5aa..a28687a1f 100644
--- a/packaging/win32/languages/Breton.nsh
+++ b/packaging/win32/languages/Breton.nsh
@@ -1,116 +1,54 @@
-;Language: Breton (1150, CP1252)
+;Language: Breton (1150)
;By matiphas@free.fr
${LangFileString} CaptionDescription "Embanner sturiadel SVG dieub"
-${LangFileString} LICENSE_BOTTOM_TEXT "Skignet eo $(^Name) dindan al lañvaz foran hollek (GPL) GNU. Pourchaset eo al lañvaz amañ evit reiñ keloù deoc'h nemetken. $_CLICK"
-${LangFileString} DIFFERENT_USER "Staliet eo bet Inkscape gant an arveriad $0.$\r$\nMar kendalc'hot gant ar staliañ e vo siek marteze !$\r$\nEn em gennaskit evel $0 ha klaskit en-dro."
-${LangFileString} WANT_UNINSTALL_BEFORE "Staliet eo bet $R1 endeo. $\nFellout a ra deoc'h dilemel ar staliadenn gent a-raok staliañ $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nKlikañ war OK evit kenderc'hel pe CANCEL evit dilezel."
-${LangFileString} NO_ADMIN "N'hoc'h eus ket brientoù an ardoer.$\r$\nSiek e c'hallfe bezañ staliadenn Inkscape evit an holl arveriaded.$\r$\nDigevaskit, mar plij, an dibarzh 'evit an holl arveriaded'."
+${LangFileString} LICENSE_BOTTOM_TEXT "Skignet eo $(^Name) dindan al lañvaz foran hollek (GPL) GNU. Pourchaset eo al lañvaz amañ evit reiñ keloù deoc'h nemetken. $_CLICK"
+${LangFileString} DIFFERENT_USER "Staliet eo bet Inkscape gant an arveriad $0.$\r$\nMar kendalc'hot gant ar staliañ e vo siek marteze !$\r$\nEn em gennaskit evel $0 ha klaskit en-dro."
+${LangFileString} WANT_UNINSTALL_BEFORE "Staliet eo bet $R1 endeo. $\nFellout a ra deoc'h dilemel ar staliadenn gent a-raok staliañ $(^Name) ?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nKlikañ war OK evit kenderc'hel pe CANCEL evit dilezel."
+${LangFileString} NO_ADMIN "N'hoc'h eus ket brientoù an ardoer.$\r$\nSiek e c'hallfe bezañ staliadenn Inkscape evit an holl arveriaded.$\r$\nDigevaskit, mar plij, an dibarzh 'evit an holl arveriaded'."
${LangFileString} NOT_SUPPORTED "N'eo ket skoret Inkscape gant Windows 95/98/ME!$\r$\nKit war al lec'hienn gefridiel evit gouzout hiroc'h."
${LangFileString} Full "Klok"
${LangFileString} Optimal "Gwellek"
${LangFileString} Minimal "Izek"
${LangFileString} Core "Embanner SVG Inkscape (ret)"
-${LangFileString} CoreDesc "Restroù rekis Inkscape ha dlloù"
+${LangFileString} CoreDesc "Restroù rekis Inkscape ha dlloù"
${LangFileString} GTKFiles "Amva GTK+ (ret)"
-${LangFileString} GTKFilesDesc "Ur voestad binvioù liessavelennoù evit ketalioù kevregat, arveret gant Inkscape"
-${LangFileString} Shortcuts "Berradennoù"
-${LangFileString} ShortcutsDesc "Berradennoù evit loc'hañ Inkscape"
+${LangFileString} GTKFilesDesc "Ur voestad binvioù liessavelennoù evit ketalioù kevregat, arveret gant Inkscape"
+${LangFileString} Shortcuts "Berradennoù"
+${LangFileString} ShortcutsDesc "Berradennoù evit loc'hañ Inkscape"
${LangFileString} Alluser "Evit an holl arveriaded"
-${LangFileString} AlluserDesc "Staliañ ar meziant-mañ evit holl arveriaded an urzhiataer-mañ"
+${LangFileString} AlluserDesc "Staliañ ar meziant-mañ evit holl arveriaded an urzhiataer-mañ"
${LangFileString} Desktop "Burev"
-${LangFileString} DesktopDesc "Krouiñ ur verradenn davit Inkscape war ar burev"
-${LangFileString} Startmenu "Lañser Loc'hañ"
-${LangFileString} StartmenuDesc "Krouiñ un enankad Inkscape war al lañser Loc'hañ"
-${LangFileString} Quicklaunch "Loc'hañ trumm"
-${LangFileString} QuicklaunchDesc " Krouiñ ur verradenn davit Inkscape er varrennad loc'hañ trumm"
-${LangFileString} SVGWriter "Digeriñ ar restroù SVG gant Inkscape"
-${LangFileString} SVGWriterDesc "Dibab Inkscape evel embanner dre ziouer evit ar restroù SVG"
-${LangFileString} ContextMenu "Lañser kemperzhel"
-${LangFileString} ContextMenuDesc "Ouzhpennañ Inkscape war lañser kemperzhel ar restroù SVG"
-${LangFileString} DeletePrefs "Diverkañ ar gwellvezioù personel"
-${LangFileString} DeletePrefsDesc "Diverkañ ar gwellvezioù personel chomet gant ar staliadurioù kent"
-${LangFileString} Addfiles "Restroù ouzhpenn"
-${LangFileString} AddfilesDesc "Restroù ouzhpenn"
-${LangFileString} Examples "Skouerioù"
-${LangFileString} ExamplesDesc "Skouerioù arver eus Inkscape"
-${LangFileString} Tutorials "Skridoù kelenn"
-${LangFileString} TutorialsDesc " Skridoù kelenn diwar-benn arver Inkscape"
-${LangFileString} Languages "Troidigezhioù"
-${LangFileString} LanguagesDesc "Staliañ troidigezhioù evit Inkscape"
-${LangFileString} lng_am "Amhareg"
-${LangFileString} lng_ar "Arabeg"
-${LangFileString} lng_az "Azerbaidjaneg"
-${LangFileString} lng_be "Bieloruseg"
-${LangFileString} lng_bg "Bulgareg"
-${LangFileString} lng_bn "Bengalieg"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Brezhoneg"
-${LangFileString} lng_ca "Katalaneg"
-${LangFileString} lng_ca@valencia "Katalaneg Valensia"
-${LangFileString} lng_cs "Tchekeg"
-${LangFileString} lng_da "Daneg"
-${LangFileString} lng_de "Alamaneg"
-${LangFileString} lng_dz "Dzongkheg"
-${LangFileString} lng_el "Gresianeg"
-${LangFileString} lng_en "Saozneg"
-${LangFileString} lng_en_AU "Saozneg Australia"
-${LangFileString} lng_en_CA "Saozneg Kanada"
-${LangFileString} lng_en_GB "Saozneg Breizh-Veur"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spagnoleg"
-${LangFileString} lng_es_MX "Spagnoleg Mec'hiko"
-${LangFileString} lng_et "Estoneg"
-${LangFileString} lng_eu "Euskareg"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finneg"
-${LangFileString} lng_fr "Galleg"
-${LangFileString} lng_he "Hebraeg"
-${LangFileString} lng_ga "Iwerzhoneg"
-${LangFileString} lng_gl "Galisianeg"
-${LangFileString} lng_hr "Kroateg"
-${LangFileString} lng_hu "Hungareg"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indoneseg"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italianeg"
-${LangFileString} lng_ja "Japoneg"
-${LangFileString} lng_km "Khmereg"
-${LangFileString} lng_ko "Koreaneg"
-${LangFileString} lng_lt "Lituaneg"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Makédonieg"
-${LangFileString} lng_mn "Mongoleg"
-${LangFileString} lng_ne "Nepalieg"
-${LangFileString} lng_nb "Norvegeg Bokmal"
-${LangFileString} lng_nl "Nederlandeg"
-${LangFileString} lng_nn "Norvegeg Ninorsk"
-${LangFileString} lng_pa "Pendjabeg"
-${LangFileString} lng_pl "Poloneg"
-${LangFileString} lng_pt "Portugaleg"
-${LangFileString} lng_pt_BR "Portugaleg Brazil"
-${LangFileString} lng_ro "Romanieg"
-${LangFileString} lng_ru "Ruseg"
-${LangFileString} lng_rw "Kinyarwandeg"
-${LangFileString} lng_sk "Sloveg"
-${LangFileString} lng_sl "Sloveneg"
-${LangFileString} lng_sq "Albaneg"
-${LangFileString} lng_sr "Serbeg"
-${LangFileString} lng_sr@latin "Serbeg skrivet mod latin"
-${LangFileString} lng_sv "Swedeg"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thaieg"
-${LangFileString} lng_tr "Turkeg"
-${LangFileString} lng_uk "Ukrenieg"
-${LangFileString} lng_vi "Vietnameg"
-${LangFileString} lng_zh_CN "Sineg eeunaet"
-${LangFileString} lng_zh_TW "Sineg hengounel"
-${LangFileString} UInstOpt "Dibarzhioù distaliañ"
-${LangFileString} UInstOpt1 "Dibabit e-touez an dibarzhioù ouzhpenn"
-${LangFileString} PurgePrefs "Mirout ar gwellvezioù personel"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log n'eo ket bet kavet !$\r$\nMar plij, distaliit dre skarzhañ ar c'havlec'hiad $INSTDIR hoc'h unan !"
-${LangFileString} FileChanged "Kemmet eo bet ar restr $filename goude ar staliañ.$\r$\nFellout a ra deoc'h diverkañ ar restr-mañ ?"
+${LangFileString} DesktopDesc "Krouiñ ur verradenn davit Inkscape war ar burev"
+${LangFileString} Startmenu "Lañser Loc'hañ"
+${LangFileString} StartmenuDesc "Krouiñ un enankad Inkscape war al lañser Loc'hañ"
+${LangFileString} Quicklaunch "Loc'hañ trumm"
+${LangFileString} QuicklaunchDesc " Krouiñ ur verradenn davit Inkscape er varrennad loc'hañ trumm"
+${LangFileString} SVGWriter "Digeriñ ar restroù SVG gant Inkscape"
+${LangFileString} SVGWriterDesc "Dibab Inkscape evel embanner dre ziouer evit ar restroù SVG"
+${LangFileString} ContextMenu "Lañser kemperzhel"
+${LangFileString} ContextMenuDesc "Ouzhpennañ Inkscape war lañser kemperzhel ar restroù SVG"
+${LangFileString} DeletePrefs "Diverkañ ar gwellvezioù personel"
+${LangFileString} DeletePrefsDesc "Diverkañ ar gwellvezioù personel chomet gant ar staliadurioù kent"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "Restroù ouzhpenn"
+${LangFileString} AddfilesDesc "Restroù ouzhpenn"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "Skouerioù"
+${LangFileString} ExamplesDesc "Skouerioù arver eus Inkscape"
+${LangFileString} Tutorials "Skridoù kelenn"
+${LangFileString} TutorialsDesc " Skridoù kelenn diwar-benn arver Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Troidigezhioù"
+${LangFileString} LanguagesDesc "Staliañ troidigezhioù evit Inkscape"
+${LangFileString} UInstOpt "Dibarzhioù distaliañ"
+${LangFileString} UInstOpt1 "Dibabit e-touez an dibarzhioù ouzhpenn"
+${LangFileString} PurgePrefs "Mirout ar gwellvezioù personel"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log n'eo ket bet kavet !$\r$\nMar plij, distaliit dre skarzhañ ar c'havlec'hiad $INSTDIR hoc'h unan !"
+${LangFileString} FileChanged "Kemmet eo bet ar restr $filename goude ar staliañ.$\r$\nFellout a ra deoc'h diverkañ ar restr-mañ ?"
${LangFileString} Yes "Ya"
${LangFileString} AlwaysYes "respont YA atav"
${LangFileString} No "Ket"
diff --git a/packaging/win32/languages/Breton_languageNames.nsh b/packaging/win32/languages/Breton_languageNames.nsh
new file mode 100644
index 000000000..3b88398b9
--- /dev/null
+++ b/packaging/win32/languages/Breton_languageNames.nsh
@@ -0,0 +1,94 @@
+### Breton (br) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Breton.nsh'
+${LangFileString} lng_am "Amharieg (am)"
+${LangFileString} lng_ar "Arabeg (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azerbaijanieg (az)"
+${LangFileString} lng_be "Belarusianeg (be)"
+${LangFileString} lng_bg "Bulgarieg (bg)"
+${LangFileString} lng_bn "Bengalieg (bn)"
+${LangFileString} lng_bn_BD "Bengalieg/Bangladech (bn_BD)"
+${LangFileString} lng_br "Brezhoneg (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Katalaneg (ca)"
+${LangFileString} lng_ca@valencia "Katalaneg Valensia (ca@valencia)"
+${LangFileString} lng_cs "Tchekeg (cs)"
+${LangFileString} lng_da "Daneg (da)"
+${LangFileString} lng_de "Alamaneg (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkheg (dz)"
+${LangFileString} lng_el "Gresianeg (el)"
+${LangFileString} lng_en "Saozneg (en)"
+${LangFileString} lng_en_AU "Saozneg/Aostalia (en_AU)"
+${LangFileString} lng_en_CA "Saozneg/Kanada (en_CA)"
+${LangFileString} lng_en_GB "Saozneg/Breizh-Veur (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spagnoleg (es)"
+${LangFileString} lng_es_MX "Spagnoleg/Mec'hiko (es_MX)"
+${LangFileString} lng_et "Estonieg (et)"
+${LangFileString} lng_eu "Euskareg (eu)"
+${LangFileString} lng_fa "Farsieg (fa)"
+${LangFileString} lng_fi "Finneg (fi)"
+${LangFileString} lng_fr "Galleg (fr)"
+${LangFileString} lng_ga "Iwerzhoneg (ga)"
+${LangFileString} lng_gl "Galisieg (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebraeg (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Kroateg (hr)"
+${LangFileString} lng_hu "Hungareg (hu)"
+${LangFileString} lng_hy "Armenieg (hy)"
+${LangFileString} lng_id "Indonezieg (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italianeg (it)"
+${LangFileString} lng_ja "Japoneg (ja)"
+${LangFileString} lng_km "Khmereg (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Koreeg (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Lituanieg (lt)"
+${LangFileString} lng_lv "Letoneg (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Makedonieg (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolieg (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norwegeg mod Bokmål (nb)"
+${LangFileString} lng_ne "Nepalegi (ne)"
+${LangFileString} lng_nl "Izelvroeg (nl)"
+${LangFileString} lng_nn "Norwegeg mod Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Penjabeg (pa)"
+${LangFileString} lng_pl "Pologneg (pl)"
+${LangFileString} lng_pt "Portugaleg (pt)"
+${LangFileString} lng_pt_BR "Portuguese/Brazil (pt_BR)"
+${LangFileString} lng_ro "Romanieg (ro)"
+${LangFileString} lng_ru "Rusianeg (ru)"
+${LangFileString} lng_rw "Kinyarwandeg (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Sloveg (sk)"
+${LangFileString} lng_sl "Slovenieg (sl)"
+${LangFileString} lng_sq "Albanieg (sq)"
+${LangFileString} lng_sr "Serbeg (sr)"
+${LangFileString} lng_sr@latin "Serbeg dre skritur Latin (sr@latin)"
+${LangFileString} lng_sv "Swedeg (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugueg (te)"
+${LangFileString} lng_th "Thaieg (th)"
+${LangFileString} lng_tr "Turkeg (tr)"
+${LangFileString} lng_uk "Ukrainieg (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnameg (vi)"
+${LangFileString} lng_zh_CN "Sineg/Sina (zh_CN)"
+${LangFileString} lng_zh_TW "Sineg/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Catalan.nsh b/packaging/win32/languages/Catalan.nsh
index 7f3a967df..c163ad260 100644
--- a/packaging/win32/languages/Catalan.nsh
+++ b/packaging/win32/languages/Catalan.nsh
@@ -1,117 +1,55 @@
-;Language: Catalan (1027, CP1252)
+;Language: Catalan (1027)
;By Xavier Conde Rueda <xavi.conde@gmail.com>, inkscape@softcatalana.net
-${LangFileString} CaptionDescription "Editor de gràfics vectorials escalables de codi obert"
-${LangFileString} LICENSE_BOTTOM_TEXT "L'$(^Name) s'ha alliberat sota la Llicència Pública General de GNU (GPL). La llicència es proporciona aquí només per raons informatives. $_CLICK"
-${LangFileString} DIFFERENT_USER "L'usuari $0.$\r ha instal·lat l'Inkscape.$\nSi continueu, és possible que no acabeu correctament.$\r$\nEntreu com a $0 i proveu de nou."
-${LangFileString} WANT_UNINSTALL_BEFORE "Ja s'ha instal·lat $R1. $\nVoleu suprimir la versió anterior abans d'instal·lar $(^Name)?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nPremeu D'acord per continuar, o Cancel·la per a interrompre."
-${LangFileString} NO_ADMIN "No teniu privilegis d'administrador.$\r$\nÉs possible que la instal·lació per a tots els usuaris no es completi correctament.$\r$\nInhabiliteu l'opció 'per a tots els usuaris'."
-${LangFileString} NOT_SUPPORTED "L'Inkscape no funciona correctament sobre Windows 95/98/ME.$\r$\nConsulteu el lloc web per a obtenir informació detallada."
+${LangFileString} CaptionDescription "Editor de gràfics vectorials escalables de codi obert"
+${LangFileString} LICENSE_BOTTOM_TEXT "L'$(^Name) s'ha alliberat sota la Llicència Pública General de GNU (GPL). La llicència es proporciona aquí només per raons informatives. $_CLICK"
+${LangFileString} DIFFERENT_USER "L'usuari $0.$\r ha instal·lat l'Inkscape.$\nSi continueu, és possible que no acabeu correctament.$\r$\nEntreu com a $0 i proveu de nou."
+${LangFileString} WANT_UNINSTALL_BEFORE "Ja s'ha instal·lat $R1. $\nVoleu suprimir la versió anterior abans d'instal·lar $(^Name)?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nPremeu D'acord per continuar, o Cancel·la per a interrompre."
+${LangFileString} NO_ADMIN "No teniu privilegis d'administrador.$\r$\nÉs possible que la instal·lació per a tots els usuaris no es completi correctament.$\r$\nInhabiliteu l'opció 'per a tots els usuaris'."
+${LangFileString} NOT_SUPPORTED "L'Inkscape no funciona correctament sobre Windows 95/98/ME.$\r$\nConsulteu el lloc web per a obtenir informació detallada."
${LangFileString} Full "Completa"
-${LangFileString} Optimal "Òptima"
-${LangFileString} Minimal "Mínima"
+${LangFileString} Optimal "Ã’ptima"
+${LangFileString} Minimal "Mínima"
${LangFileString} Core "L'editor SVG Inkscape (requerit)"
${LangFileString} CoreDesc "Fitxers i dlls per a l'Inkscape"
-${LangFileString} GTKFiles "Entorn d'execució GTK+ (requerit)"
-${LangFileString} GTKFilesDesc "Un joc d'eines d'interfícies gràfiques multi-plataforma, usat per l'Inkscape"
+${LangFileString} GTKFiles "Entorn d'execució GTK+ (requerit)"
+${LangFileString} GTKFilesDesc "Un joc d'eines d'interfícies gràfiques multi-plataforma, usat per l'Inkscape"
${LangFileString} Shortcuts "Dreceres"
${LangFileString} ShortcutsDesc "Dreceres per a iniciar l'Inkscape"
${LangFileString} Alluser "Per a tots els usuaris"
-${LangFileString} AlluserDesc "Instal·la aquesta aplicació per a tots els usuaris que fan servir aquest ordinador"
+${LangFileString} AlluserDesc "Instal·la aquesta aplicació per a tots els usuaris que fan servir aquest ordinador"
${LangFileString} Desktop "Escriptori"
${LangFileString} DesktopDesc "Crea una drecera cap a l'Inkscape a l'escriptori"
-${LangFileString} Startmenu "Menú Inicia"
-${LangFileString} StartmenuDesc "Crea una entrada de menú per a l'Inkscape"
-${LangFileString} Quicklaunch "Inici ràpid"
-${LangFileString} QuicklaunchDesc "Crea una drecera cap a l'Inkscape a la barra d'eines d'Inici ràpid"
+${LangFileString} Startmenu "Menú Inicia"
+${LangFileString} StartmenuDesc "Crea una entrada de menú per a l'Inkscape"
+${LangFileString} Quicklaunch "Inici ràpid"
+${LangFileString} QuicklaunchDesc "Crea una drecera cap a l'Inkscape a la barra d'eines d'Inici ràpid"
${LangFileString} SVGWriter "Obre els fitxers SVG amb l'Inkscape"
${LangFileString} SVGWriterDesc "Seleciona l'Inkscape com a editor predeterminat per als fitxers SVG"
-${LangFileString} ContextMenu "Menú contextual"
-${LangFileString} ContextMenuDesc "Afegeix l'Inkscape al menú contextual per als fitxers SVG"
-${LangFileString} DeletePrefs "Suprimeix les preferències personals"
-${LangFileString} DeletePrefsDesc "Suprimeix les preferències personals d'anteriors instal·lacions"
+${LangFileString} ContextMenu "Menú contextual"
+${LangFileString} ContextMenuDesc "Afegeix l'Inkscape al menú contextual per als fitxers SVG"
+${LangFileString} DeletePrefs "Suprimeix les preferències personals"
+${LangFileString} DeletePrefsDesc "Suprimeix les preferències personals d'anteriors instal·lacions"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Fitxers addicionals"
${LangFileString} AddfilesDesc "Fitxers addicionals"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Exemples"
-${LangFileString} ExamplesDesc "Exemples d'ús de l'Inkscape"
+${LangFileString} ExamplesDesc "Exemples d'ús de l'Inkscape"
${LangFileString} Tutorials "Tutorials"
-${LangFileString} TutorialsDesc "Tutorials d'ús de l'Inkscape"
+${LangFileString} TutorialsDesc "Tutorials d'ús de l'Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Traduccions"
-${LangFileString} LanguagesDesc "Instal·la més traduccions per a l'Inkscape"
-${LangFileString} lng_am "Amharic"
-${LangFileString} lng_ar "Arabic"
-${LangFileString} lng_az "Azerbaijani"
-${LangFileString} lng_be "Biel·lorús"
-${LangFileString} lng_bg "Búlgar"
-${LangFileString} lng_bn "Bengalí"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Breton"
-${LangFileString} lng_ca "Català"
-${LangFileString} lng_ca@valencia "Català valencià"
-${LangFileString} lng_cs "Txec"
-${LangFileString} lng_da "Danès"
-${LangFileString} lng_de "Alemany"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Grec"
-${LangFileString} lng_en "Anglès"
-${LangFileString} lng_en_AU "Anglès d'Austràlia"
-${LangFileString} lng_en_CA "Anglès del Canadà"
-${LangFileString} lng_en_GB "Anglès britànic"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Espanyol"
-${LangFileString} lng_es_MX "Espanyol mexicà"
-${LangFileString} lng_et "Estonià"
-${LangFileString} lng_eu "Basc"
-${LangFileString} lng_fi "Finès"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fr "Francès"
-${LangFileString} lng_ga "Irlandès"
-${LangFileString} lng_gl "Gallec"
-${LangFileString} lng_he "Hebreu"
-${LangFileString} lng_id "Indonesi"
-${LangFileString} lng_hr "Croat"
-${LangFileString} lng_hu "Hongarès"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italià"
-${LangFileString} lng_ja "Japonès"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Coreà"
-${LangFileString} lng_lt "Lituà"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedoni"
-${LangFileString} lng_mn "Mongol"
-${LangFileString} lng_ne "Nepalí"
-${LangFileString} lng_nb "Noruec Bokmål"
-${LangFileString} lng_nl "Holandès"
-${LangFileString} lng_nn "Noruec Nynorsk"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polonès"
-${LangFileString} lng_pt "Portuguès"
-${LangFileString} lng_pt_BR "Portuguès brasiler"
-${LangFileString} lng_ro "Romanès"
-${LangFileString} lng_ru "Rus"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Eslovac"
-${LangFileString} lng_sl "Esloveni"
-${LangFileString} lng_sq "Albanès"
-${LangFileString} lng_sr "Serbi"
-${LangFileString} lng_sr@latin "Serbi en alfabet llatí"
-${LangFileString} lng_sv "Suec"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Turc"
-${LangFileString} lng_uk "Ucraïnès"
-${LangFileString} lng_vi "Vietnamese"
-${LangFileString} lng_zh_CN "Xinès simplificat"
-${LangFileString} lng_zh_TW "Xinès tradicional"
-${LangFileString} UInstOpt "Opcions de desinstal·lació"
+${LangFileString} LanguagesDesc "Instal·la més traduccions per a l'Inkscape"
+${LangFileString} UInstOpt "Opcions de desinstal·lació"
${LangFileString} UInstOpt1 "Seleccioneu les vostres opcions addicionals"
-${LangFileString} PurgePrefs "Conserva les preferències personals"
-${LangFileString} UninstallLogNotFound "No s'ha trobat $INSTDIR\uninstall.log.$\r$\nPer a desinstal·lar, haureu de netejar la carpeta $INSTDIR vosaltres mateixos!"
-${LangFileString} FileChanged "El fitxer $filename s'ha canviat després de la instal·lació.$\r$\nEncara voleu esborrar aquest fitxer?"
-${LangFileString} Yes "Sí"
-${LangFileString} AlwaysYes "Sí a tot"
+${LangFileString} PurgePrefs "Conserva les preferències personals"
+${LangFileString} UninstallLogNotFound "No s'ha trobat $INSTDIR\uninstall.log.$\r$\nPer a desinstal·lar, haureu de netejar la carpeta $INSTDIR vosaltres mateixos!"
+${LangFileString} FileChanged "El fitxer $filename s'ha canviat després de la instal·lació.$\r$\nEncara voleu esborrar aquest fitxer?"
+${LangFileString} Yes "Sí"
+${LangFileString} AlwaysYes "Sí a tot"
${LangFileString} No "No"
${LangFileString} AlwaysNo "No a tot"
diff --git a/packaging/win32/languages/Catalan_languageNames.nsh b/packaging/win32/languages/Catalan_languageNames.nsh
new file mode 100644
index 000000000..db7430072
--- /dev/null
+++ b/packaging/win32/languages/Catalan_languageNames.nsh
@@ -0,0 +1,94 @@
+### Catalan (ca) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Catalan.nsh'
+${LangFileString} lng_am "Amhàric (am)"
+${LangFileString} lng_ar "Àrab (ar)"
+${LangFileString} lng_as "Assamès (as)"
+${LangFileString} lng_az "Àzeri (az)"
+${LangFileString} lng_be "Bielorús (be)"
+${LangFileString} lng_bg "Búlgar (bg)"
+${LangFileString} lng_bn "Bengalí (bn)"
+${LangFileString} lng_bn_BD "Bengalí/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretó (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Català (ca)"
+${LangFileString} lng_ca@valencia "Català de València (ca@valencia)"
+${LangFileString} lng_cs "Txec (cs)"
+${LangFileString} lng_da "Danès (da)"
+${LangFileString} lng_de "Alemany (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Grec (el)"
+${LangFileString} lng_en "Anglès (en)"
+${LangFileString} lng_en_AU "Anglès d'Austràlia (en_AU)"
+${LangFileString} lng_en_CA "Anglès del Canadà (en_CA)"
+${LangFileString} lng_en_GB "Anglès de Gran Bretanya (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Espanyol (es)"
+${LangFileString} lng_es_MX "Espanyol de Mèxic (es_MX)"
+${LangFileString} lng_et "Estonià (et)"
+${LangFileString} lng_eu "Basc (eu)"
+${LangFileString} lng_fa "Persa (fa)"
+${LangFileString} lng_fi "Finès (fi)"
+${LangFileString} lng_fr "Francès (fr)"
+${LangFileString} lng_ga "Irlandès (ga)"
+${LangFileString} lng_gl "Gallec (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebreu (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croat (hr)"
+${LangFileString} lng_hu "Hongarès (hu)"
+${LangFileString} lng_hy "Armeni (hy)"
+${LangFileString} lng_id "Indonesi (id)"
+${LangFileString} lng_is "Islandès (is)"
+${LangFileString} lng_it "Italià (it)"
+${LangFileString} lng_ja "Japonès (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kanarès (kn)"
+${LangFileString} lng_ko "Coreà (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani amb alfabet llatí (kok@latin)"
+${LangFileString} lng_ks@aran "Caixmiri en l'escriptura perso-àrab (ks@aran)"
+${LangFileString} lng_ks@deva "Caixmiri en l'escriptura devanagari (ks@deva)"
+${LangFileString} lng_lt "Lituà (lt)"
+${LangFileString} lng_lv "Letó (lt)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedoni (mk)"
+${LangFileString} lng_ml "Malaiàlam (ml)"
+${LangFileString} lng_mn "Mongol (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri amb alfabet bengalí (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Bokmål noruec (nb)"
+${LangFileString} lng_ne "Nepalès (ne)"
+${LangFileString} lng_nl "Holandès (nl)"
+${LangFileString} lng_nn "Nynorsk noruec (nn)"
+${LangFileString} lng_or "Oriya (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polonès (pl)"
+${LangFileString} lng_pt "Portuguès (pt)"
+${LangFileString} lng_pt_BR "Portuguès del Brasil (pt_BR)"
+${LangFileString} lng_ro "Romanès (ro)"
+${LangFileString} lng_ru "Rus (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sànscrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali amb alfabet devanagari (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi amb alfabet devanagari (sd@deva)"
+${LangFileString} lng_sk "Eslovac (sk)"
+${LangFileString} lng_sl "Eslovè (sl)"
+${LangFileString} lng_sq "Albanès (sq)"
+${LangFileString} lng_sr "Serbi (sr)"
+${LangFileString} lng_sr@latin "Serbi amb alfabet llatí (sr@latin)"
+${LangFileString} lng_sv "Suec (sv)"
+${LangFileString} lng_ta "Tàmil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Tai (th)"
+${LangFileString} lng_tr "Turc (tr)"
+${LangFileString} lng_uk "Ucraïnès (uk)"
+${LangFileString} lng_ur "Urdú (ur)"
+${LangFileString} lng_vi "Vietnamita (vi)"
+${LangFileString} lng_zh_CN "Xinès de Xina (zh_CN)"
+${LangFileString} lng_zh_TW "Xinès de Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Czech.nsh b/packaging/win32/languages/Czech.nsh
index 50c830a82..e02c3ed5d 100644
--- a/packaging/win32/languages/Czech.nsh
+++ b/packaging/win32/languages/Czech.nsh
@@ -1,114 +1,52 @@
-;Language: Czech (1029, CP1250)
-;By Michal Kraus <Michal.Kraus@wige-mic.cz>, Josef Vybíral <josef.vybiral@gmail.com>
-${LangFileString} CaptionDescription "Open Source Editor Škálovatelné Vektorové Grafiky(SVG)"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) je vydáván pod General Public License (GPL). Licenèní ujednání je zde pouze z informaèních dùvodù. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape byl nainstalován uživatelem $0.$\r$\nInstalace nemusí být dokonèena správnì pokud v ní budete pokraèovat!$\r$\nProsím pøihlaste se jako $0 a spuste instalaci znovu."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 je již nainstalován. $\nChcete pøed instalací odstranit pøedchozí verzi $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nStisknìte OK pro pokraèování, CANCEL pro pøerušení."
-${LangFileString} NO_ADMIN "Nemáte administrátorská oprávnìní.$\r$\nInstalace Inkscape pro všechny uživatele nemusí být úspìšnì dokonèena.$\r$\nZrušte oznaèení volby 'Pro všechny uživatele'."
-${LangFileString} NOT_SUPPORTED "Inkscape nebìží na Windows 95/98/ME!$\r$\nPro podrobnìjší informace se prosím obrate na oficiální webové stránky."
-${LangFileString} Full "Plná"
-${LangFileString} Optimal "Optimální"
-${LangFileString} Minimal "Minimální"
-${LangFileString} Core "Inkscape SVG editor (vyžadováno)"
+;Language: Czech (1029)
+;By Michal Kraus <Michal.Kraus@wige-mic.cz>, Josef Vybíral <josef.vybiral@gmail.com>
+${LangFileString} CaptionDescription "Open Source Editor Škálovatelné Vektorové Grafiky(SVG)"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) je vydáván pod General Public License (GPL). LicenÄní ujednání je zde pouze z informaÄních důvodů. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape byl nainstalován uživatelem $0.$\r$\nInstalace nemusí být dokonÄena správnÄ› pokud v ní budete pokraÄovat!$\r$\nProsím pÅ™ihlaste se jako $0 a spusÅ¥te instalaci znovu."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 je již nainstalován. $\nChcete před instalací odstranit předchozí verzi $(^Name) ?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nStisknÄ›te OK pro pokraÄování, CANCEL pro pÅ™eruÅ¡ení."
+${LangFileString} NO_ADMIN "Nemáte administrátorská oprávnÄ›ní.$\r$\nInstalace Inkscape pro vÅ¡echny uživatele nemusí být úspěšnÄ› dokonÄena.$\r$\nZruÅ¡te oznaÄení volby 'Pro vÅ¡echny uživatele'."
+${LangFileString} NOT_SUPPORTED "Inkscape neběží na Windows 95/98/ME!$\r$\nPro podrobnější informace se prosím obraťte na oficiální webové stránky."
+${LangFileString} Full "Plná"
+${LangFileString} Optimal "Optimální"
+${LangFileString} Minimal "Minimální"
+${LangFileString} Core "Inkscape SVG editor (vyžadováno)"
${LangFileString} CoreDesc "Soubory a knihovny Inkscape"
-${LangFileString} GTKFiles "GTK+ bìhové prostøedí (vyžadováno)"
-${LangFileString} GTKFilesDesc "Multiplatformní sada uživatelského rozhraní, použitého v Inkscape"
-${LangFileString} Shortcuts "Zástupci"
-${LangFileString} ShortcutsDesc "Zástupci pro spuštìní Inkscape"
-${LangFileString} Alluser "pro všechny uživatele"
-${LangFileString} AlluserDesc "Instalovat aplikaci pro kohokoliv, kdo používá tento poèítaè.(všichni uživatelé)"
+${LangFileString} GTKFiles "GTK+ běhové prostředí (vyžadováno)"
+${LangFileString} GTKFilesDesc "Multiplatformní sada uživatelského rozhraní, použitého v Inkscape"
+${LangFileString} Shortcuts "Zástupci"
+${LangFileString} ShortcutsDesc "Zástupci pro spuštění Inkscape"
+${LangFileString} Alluser "pro všechny uživatele"
+${LangFileString} AlluserDesc "Instalovat aplikaci pro kohokoliv, kdo používá tento poÄítaÄ.(vÅ¡ichni uživatelé)"
${LangFileString} Desktop "Plocha"
-${LangFileString} DesktopDesc "Vytvoøit zástupce Inkscape na ploše"
-${LangFileString} Startmenu "Nabídka Start"
-${LangFileString} StartmenuDesc "Vytvoøit pro Inkscape položku v nabídce Start"
-${LangFileString} Quicklaunch "Panel rychlého spuštìní"
-${LangFileString} QuicklaunchDesc "Vytvoøit pro Inkscape zástupce na panelu rychlého spuštìní"
-${LangFileString} SVGWriter "Otvírat SVG soubory v Inkscape"
-${LangFileString} SVGWriterDesc "Vybrat Inkscape jako výchozí editor pro SVG soubory"
-${LangFileString} ContextMenu "Kontextová nabídka"
-${LangFileString} ContextMenuDesc "Pøidat Inkscape do kontextové nabídky pro SVG soubory"
-${LangFileString} DeletePrefs "Smazat osobní nastavení"
-${LangFileString} DeletePrefsDesc "Smazat osobní nastavení pøedchozí instalace"
-${LangFileString} Addfiles "Další soubory"
-${LangFileString} AddfilesDesc "Další soubory"
-${LangFileString} Examples "Pøíklady"
-${LangFileString} ExamplesDesc "Pøíklady použití Inkscape"
-${LangFileString} Tutorials "Prùvodci"
-${LangFileString} TutorialsDesc "Prùvodci funkcemi Inkscape"
-${LangFileString} Languages "Jazykové sady"
-${LangFileString} LanguagesDesc "Nainstalovat další jazykové sady Inkscape"
-${LangFileString} lng_am "Amharic"
-${LangFileString} lng_ar "Arabic"
-${LangFileString} lng_az "Azerbajdžánština"
-${LangFileString} lng_be "Bìloruština"
-${LangFileString} lng_bg "Bulgarian"
-${LangFileString} lng_bn "Bengali"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Breton"
-${LangFileString} lng_ca "Katalánština"
-${LangFileString} lng_ca@valencia "Valencian Catalan"
-${LangFileString} lng_cs "Èeština"
-${LangFileString} lng_da "Dánština"
-${LangFileString} lng_de "Nìmèina"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Øeètina"
-${LangFileString} lng_en "Anglièina"
-${LangFileString} lng_en_AU "Australian English"
-${LangFileString} lng_en_CA "Kanadská Angliètina"
-${LangFileString} lng_en_GB "Britská Angliètina"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Španìlština"
-${LangFileString} lng_es_MX "Mexická Španìlština"
-${LangFileString} lng_et "Estonština"
-${LangFileString} lng_eu "Basque"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finština"
-${LangFileString} lng_fr "Francouzština"
-${LangFileString} lng_ga "Irština"
-${LangFileString} lng_gl "Galician"
-${LangFileString} lng_he "Hebrew"
-${LangFileString} lng_hr "Chorvatština"
-${LangFileString} lng_hu "Maïarština"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonesian"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italština"
-${LangFileString} lng_ja "Japonština"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Korejština"
-${LangFileString} lng_lt "Litevština"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Makedonština"
-${LangFileString} lng_mn "Mongolština"
-${LangFileString} lng_ne "Nepálština"
-${LangFileString} lng_nb "Norština Bokmal"
-${LangFileString} lng_nl "Holandština"
-${LangFileString} lng_nn "Norština Nynorsk"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polština"
-${LangFileString} lng_pt "Portugalština"
-${LangFileString} lng_pt_BR "Brazilská Portugalština"
-${LangFileString} lng_ro "Romanian"
-${LangFileString} lng_ru "Ruština"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slovenština"
-${LangFileString} lng_sl "Slovinština"
-${LangFileString} lng_sq "Albánština"
-${LangFileString} lng_sr "Srbština"
-${LangFileString} lng_sr@latin "Srbština v latince"
-${LangFileString} lng_sv "Švédština"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Tureètina"
-${LangFileString} lng_uk "Ukrajinština"
-${LangFileString} lng_vi "Vietnamština"
-${LangFileString} lng_zh_CN "Zjednodušená Èínština"
-${LangFileString} lng_zh_TW "Tradièní Èínština"
-${LangFileString} UInstOpt "Volby pro odinstalování"
-${LangFileString} UInstOpt1 "Vyberte prosím další nastavení"
-${LangFileString} PurgePrefs "Ponechat osobní nastavení"
+${LangFileString} DesktopDesc "Vytvořit zástupce Inkscape na ploše"
+${LangFileString} Startmenu "Nabídka Start"
+${LangFileString} StartmenuDesc "Vytvořit pro Inkscape položku v nabídce Start"
+${LangFileString} Quicklaunch "Panel rychlého spuštění"
+${LangFileString} QuicklaunchDesc "Vytvořit pro Inkscape zástupce na panelu rychlého spuštění"
+${LangFileString} SVGWriter "Otvírat SVG soubory v Inkscape"
+${LangFileString} SVGWriterDesc "Vybrat Inkscape jako výchozí editor pro SVG soubory"
+${LangFileString} ContextMenu "Kontextová nabídka"
+${LangFileString} ContextMenuDesc "Přidat Inkscape do kontextové nabídky pro SVG soubory"
+${LangFileString} DeletePrefs "Smazat osobní nastavení"
+${LangFileString} DeletePrefsDesc "Smazat osobní nastavení předchozí instalace"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "Další soubory"
+${LangFileString} AddfilesDesc "Další soubory"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "Příklady"
+${LangFileString} ExamplesDesc "Příklady použití Inkscape"
+${LangFileString} Tutorials "Průvodci"
+${LangFileString} TutorialsDesc "Průvodci funkcemi Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Jazykové sady"
+${LangFileString} LanguagesDesc "Nainstalovat další jazykové sady Inkscape"
+${LangFileString} UInstOpt "Volby pro odinstalování"
+${LangFileString} UInstOpt1 "Vyberte prosím další nastavení"
+${LangFileString} PurgePrefs "Ponechat osobní nastavení"
${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log not found!$\r$\nPlease uninstall by clearing directory $INSTDIR yourself!"
${LangFileString} FileChanged "The file $filename has been changed after installation.$\r$\nDo you still want to delete that file?"
${LangFileString} Yes "Yes"
diff --git a/packaging/win32/languages/Czech_languageNames.nsh b/packaging/win32/languages/Czech_languageNames.nsh
new file mode 100644
index 000000000..83fc5ad66
--- /dev/null
+++ b/packaging/win32/languages/Czech_languageNames.nsh
@@ -0,0 +1,94 @@
+### Czech (cs) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Czech.nsh'
+${LangFileString} lng_am "amharština (am)"
+${LangFileString} lng_ar "arabština (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "azerbajdžánština (az)"
+${LangFileString} lng_be "běloruština (be)"
+${LangFileString} lng_bg "bulharština (bg)"
+${LangFileString} lng_bn "bengálština (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "bretonština (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "katalánština (ca)"
+${LangFileString} lng_ca@valencia "valencijská katalánština (ca@valencia)"
+${LangFileString} lng_cs "ÄeÅ¡tina (cs)"
+${LangFileString} lng_da "dánština (da)"
+${LangFileString} lng_de "nÄ›mÄina (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkä (dz)"
+${LangFileString} lng_el "Å™eÄtina (el)"
+${LangFileString} lng_en "English (en)"
+${LangFileString} lng_en_AU "angliÄtina (Austrálie) (en_AU)"
+${LangFileString} lng_en_CA "angliÄtina (Kanada) (en_CA)"
+${LangFileString} lng_en_GB "angliÄtina (Spojené království) (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "španělština (es)"
+${LangFileString} lng_es_MX "španělština (Mexiko) (es_MX)"
+${LangFileString} lng_et "estonština (et)"
+${LangFileString} lng_eu "Basque (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "finština (fi)"
+${LangFileString} lng_fr "francouzština (fr)"
+${LangFileString} lng_ga "irština (ga)"
+${LangFileString} lng_gl "galicijština (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "hebrejština (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "chorvatština (hr)"
+${LangFileString} lng_hu "maÄarÅ¡tina (hu)"
+${LangFileString} lng_hy "arménština (hy)"
+${LangFileString} lng_id "indonéština (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italian (it)"
+${LangFileString} lng_ja "japonština (ja)"
+${LangFileString} lng_km "khmerština (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "korejština (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "litevština (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "makedonština (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "mongolština (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norwegian Bokmål (nb)"
+${LangFileString} lng_ne "Nepali (ne)"
+${LangFileString} lng_nl "nizozemština (nl)"
+${LangFileString} lng_nn "norský nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "paňdžábština (pa)"
+${LangFileString} lng_pl "polština (pl)"
+${LangFileString} lng_pt "portugalština (pt)"
+${LangFileString} lng_pt_BR "portugalština (Brazílie) (pt_BR)"
+${LangFileString} lng_ro "rumunština (ro)"
+${LangFileString} lng_ru "ruština (ru)"
+${LangFileString} lng_rw "rwandština (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "slovenština (sk)"
+${LangFileString} lng_sl "slovinština (sl)"
+${LangFileString} lng_sq "albánština (sq)"
+${LangFileString} lng_sr "srbština (sr)"
+${LangFileString} lng_sr@latin "srbština (latinka) (sr@latin)"
+${LangFileString} lng_sv "švédština (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "thajština (th)"
+${LangFileString} lng_tr "tureÄtina (tr)"
+${LangFileString} lng_uk "ukrajinština (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "vietnamština (vi)"
+${LangFileString} lng_zh_CN "ÄínÅ¡tina (Čína) (zh_CN)"
+${LangFileString} lng_zh_TW "ÄínÅ¡tina (Taiwan) (zh_TW)"
diff --git a/packaging/win32/languages/Danish.nsh b/packaging/win32/languages/Danish.nsh
index e3f4bb246..881536844 100644
--- a/packaging/win32/languages/Danish.nsh
+++ b/packaging/win32/languages/Danish.nsh
@@ -1,115 +1,54 @@
-;Language: Danish (1030, CP1252)
+;Language: Danish (1030)
;By scootergrisen
-${LangFileString} CaptionDescription "Open source skalérbar vektor redigeringsprogram"
+${LangFileString} CaptionDescription "Open source skalérbar vektor redigeringsprogram"
${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) er udgivet under GNU General Public License (GPL). Licensen leveres her kun til orientering. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape er blevet installeret af brugeren $0.$\r$\nHvis du fortsætter lykkedes det måske ikke fuldt ud!$\r$\nLog venligst på som $0 og prøv igen."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 er allerede installeret. $\nVil du fjerne den tidligere version inden $(^Name) installeres?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nTryk på OK for at fortsætte eller tryk på ANNULLER for at afbryde."
-${LangFileString} NO_ADMIN "Du har ikke administratortilladelser.$\r$\nInstallationen af Inkscape for alle brugere lykkedes måske ikke fuldt ud.$\r$\nFravælg indstillingen 'Installér for alle brugere'."
-${LangFileString} NOT_SUPPORTED "Inkscape er kendt for ikke at køre under Windows 95/98/ME!$\r$\nSe venligst det officielle websted for detaljeret information."
+${LangFileString} DIFFERENT_USER "Inkscape er blevet installeret af brugeren $0.$\r$\nHvis du fortsætter lykkedes det måske ikke fuldt ud!$\r$\nLog venligst ind som $0 og prøv igen."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 er allerede blevet installeret. $\nVil du fjerne den tidligere version inden $(^Name) installeres?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nTryk på OK for at fortsætte eller tryk på ANNULLER for at afbryde."
+${LangFileString} NO_ADMIN "Du har ikke administratortilladelser.$\r$\nInstallation af Inkscape for alle brugere lykkedes måske ikke fuldt ud.$\r$\nFravælg valgmuligheden 'Installér for alle brugere'."
+${LangFileString} NOT_SUPPORTED "Inkscape kan ikke køre under Windows 95/98/ME!$\r$\nSe venligst det officielle websted for detaljeret information."
${LangFileString} Full "Fuld"
${LangFileString} Optimal "Optimal"
${LangFileString} Minimal "Minimal"
-${LangFileString} Core "Inkscape SVG-redigering (påkrævet)"
-${LangFileString} CoreDesc "Grundlæggende Inkscape-filer og dll'er"
-${LangFileString} GTKFiles "GTK+ Runtime Environment (påkrævet)"
-${LangFileString} GTKFilesDesc "Multi-platform GUI toolkit, anvendes af Inkscape"
+${LangFileString} Core "Inkscape SVG-redigering (påkrævet)"
+${LangFileString} CoreDesc "Grundlæggende Inkscape-filer og dll'er"
+${LangFileString} GTKFiles "GTK+ Runtime Environment (påkrævet)"
+${LangFileString} GTKFilesDesc "Et multi-platform GUI-værktøjskit, bruges af Inkscape"
${LangFileString} Shortcuts "Genveje"
${LangFileString} ShortcutsDesc "Genveje til at starte Inkscape"
-${LangFileString} Alluser "Installér for alle brugere"
-${LangFileString} AlluserDesc "Installér programmet for alle der bruger denne computer (alle brugere)"
+${LangFileString} Alluser "Installér for alle brugere"
+${LangFileString} AlluserDesc "Installér dette program for alle der bruger denne computer (alle brugere)"
${LangFileString} Desktop "Skrivebord"
-${LangFileString} DesktopDesc "Opret en genvej til Inkscape på skrivebordet"
+${LangFileString} DesktopDesc "Opret en genvej til Inkscape på skrivebordet"
${LangFileString} Startmenu "Menuen Start"
-${LangFileString} StartmenuDesc "Opret en post til Inkscape i menuen Start"
+${LangFileString} StartmenuDesc "Opret en genvej til Inkscape i menuen Start"
${LangFileString} Quicklaunch "Hurtig start"
-${LangFileString} QuicklaunchDesc "Opret en genvej til Inkscape på værktøjslinjen Hurtig start"
-${LangFileString} SVGWriter "Åbn SVG-filer med Inkscape"
-${LangFileString} SVGWriterDesc "Vælg Inkscape som standardredigeringsprogram for SVG-filer"
+${LangFileString} QuicklaunchDesc "Opret en genvej til Inkscape på værktøjslinjen Hurtig start"
+${LangFileString} SVGWriter "Ã…bn SVG-filer med Inkscape"
+${LangFileString} SVGWriterDesc "Vælg Inkscape som standard redigeringsprogram for SVG-filer"
${LangFileString} ContextMenu "Genvejsmenu"
-${LangFileString} ContextMenuDesc "Tilføj Inkscape i genvejsmenuen for SVG-filer"
-${LangFileString} DeletePrefs "Slet personlige indstillinger"
-${LangFileString} DeletePrefsDesc "Slet personlige indstillinger efterladt fra tidligere installationer"
+${LangFileString} ContextMenuDesc "Tilføj Inkscape i genvejsmenuen for SVG-filer"
+${LangFileString} DeletePrefs "Slet personlige præferencer"
+${LangFileString} DeletePrefsDesc "Slet personlige præferencer efterladt fra tidligere installationer"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "En fortolker til Python-programmeringssproget og Python-moduler krævet til at køre Inkscape-udvidelser."
${LangFileString} Addfiles "Yderligere filer"
${LangFileString} AddfilesDesc "Yderligere filer"
+${LangFileString} Extensions "Udvidelser"
+${LangFileString} ExtensionsDesc "Inkscape-udvidelser (inklusiv mange import- og eksport-plugins)"
${LangFileString} Examples "Eksempler"
-${LangFileString} ExamplesDesc "Eksempler på brug af Inkscape"
+${LangFileString} ExamplesDesc "Eksempler på brug af Inkscape"
${LangFileString} Tutorials "Vejledninger"
${LangFileString} TutorialsDesc "Vejledninger i brug af Inkscape"
-${LangFileString} Languages "Oversættelser"
-${LangFileString} LanguagesDesc "Installér diverse oversættelser til Inkscape"
-${LangFileString} lng_am "Amharisk"
-${LangFileString} lng_ar "Arabisk"
-${LangFileString} lng_az "Aserbajdsjansk"
-${LangFileString} lng_be "Hviderussisk"
-${LangFileString} lng_bg "Bulgarsk"
-${LangFileString} lng_bn "Bengalsk"
-${LangFileString} lng_bn_BD "Bengalsk (Bangladesh)"
-${LangFileString} lng_br "Bretonsk"
-${LangFileString} lng_ca "Katalansk"
-${LangFileString} lng_ca@valencia "Valenciansk (Katalansk)"
-${LangFileString} lng_cs "Tjekkisk"
-${LangFileString} lng_da "Dansk"
-${LangFileString} lng_de "Tysk"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Græsk"
-${LangFileString} lng_en "Engelsk"
-${LangFileString} lng_en_AU "Australsk-engelsk"
-${LangFileString} lng_en_CA "Canadisk-engelsk"
-${LangFileString} lng_en_GB "Britisk-engelsk"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spansk"
-${LangFileString} lng_es_MX "Spansk mexicansk"
-${LangFileString} lng_et "Estisk"
-${LangFileString} lng_eu "Baskisk"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finsk"
-${LangFileString} lng_fr "Fransk"
-${LangFileString} lng_ga "Irsk"
-${LangFileString} lng_gl "Galicisk"
-${LangFileString} lng_he "Hebraisk"
-${LangFileString} lng_hr "Kroatisk"
-${LangFileString} lng_hu "Ungarsk"
-${LangFileString} lng_hy "Armensk"
-${LangFileString} lng_id "Indonesisk"
-${LangFileString} lng_it "Italiensk"
-${LangFileString} lng_ja "Japansk"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Koreansk"
-${LangFileString} lng_lt "Litauisk"
-${LangFileString} lng_lv "Lettisk"
-${LangFileString} lng_mk "Makedonsk"
-${LangFileString} lng_mn "Mongolsk"
-${LangFileString} lng_ne "Nepalesisk"
-${LangFileString} lng_nb "Norsk (bogmål)"
-${LangFileString} lng_nl "Nederlandsk"
-${LangFileString} lng_nn "Norsk (nynorsk)"
-${LangFileString} lng_pa "Punjabisk"
-${LangFileString} lng_pl "Polsk"
-${LangFileString} lng_pt "Portugisisk"
-${LangFileString} lng_pt_BR "Brasiliansk-portugisisk"
-${LangFileString} lng_ro "Rumænsk"
-${LangFileString} lng_ru "Russisk"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slovakisk"
-${LangFileString} lng_sl "Slovensk"
-${LangFileString} lng_sq "Albansk"
-${LangFileString} lng_sr "Serbisk"
-${LangFileString} lng_sr@latin "Serbisk i latin skrift"
-${LangFileString} lng_sv "Svensk"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Tyrkisk"
-${LangFileString} lng_uk "Ukrainsk"
-${LangFileString} lng_vi "Vietnamesisk"
-${LangFileString} lng_zh_CN "Forenklet kinesisk"
-${LangFileString} lng_zh_TW "Traditionel kinesisk"
-${LangFileString} UInstOpt "Afinstallationsindstillinger"
-${LangFileString} UInstOpt1 "Foretag venligst dine valg af yderligere indstillinger"
-${LangFileString} PurgePrefs "Behold personlige indstillinger"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ikke fundet!$\r$\nAfinstallér venligst ved at rydde mappen $INSTDIR manuelt!"
-${LangFileString} FileChanged "Filen $filename er blevet ændret efter installationen.$\r$\nVil du stadig slette filen?"
+${LangFileString} Dictionaries "Ordbøger"
+${LangFileString} DictionariesDesc "Ordbøger til nogle almene sprog til stavekontrol i Inkscape"
+${LangFileString} Languages "Oversættelser"
+${LangFileString} LanguagesDesc "Installér diverse oversættelser til Inkscape"
+${LangFileString} UInstOpt "Valgmuligheder for afinstallation"
+${LangFileString} UInstOpt1 "Foretag venligst dine valg af yderligere valgmuligheder"
+${LangFileString} PurgePrefs "Behold personlige præferencer"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ikke fundet!$\r$\nAfinstallér venligst ved at rydde mappen $INSTDIR manuelt!"
+${LangFileString} FileChanged "Filen $filename er blevet ændret efter installationen.$\r$\nVil du stadig slette filen?"
${LangFileString} Yes "Ja"
${LangFileString} AlwaysYes "svar altid Ja"
${LangFileString} No "Nej"
diff --git a/packaging/win32/languages/Danish_languageNames.nsh b/packaging/win32/languages/Danish_languageNames.nsh
new file mode 100644
index 000000000..4e7368910
--- /dev/null
+++ b/packaging/win32/languages/Danish_languageNames.nsh
@@ -0,0 +1,94 @@
+### Danish (da) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Danish.nsh'
+${LangFileString} lng_am "Amharic (am)"
+${LangFileString} lng_ar "Arabic (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azerbaijani (az)"
+${LangFileString} lng_be "Belarusian (be)"
+${LangFileString} lng_bg "Bulgarian (bg)"
+${LangFileString} lng_bn "Bengali (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Breton (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalan (ca)"
+${LangFileString} lng_ca@valencia "Valencian Catalan (ca@valencia)"
+${LangFileString} lng_cs "Czech (cs)"
+${LangFileString} lng_da "Dansk (da)"
+${LangFileString} lng_de "German (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Greek (el)"
+${LangFileString} lng_en "Engelsk (en)"
+${LangFileString} lng_en_AU "English/Australia (en_AU)"
+${LangFileString} lng_en_CA "English/Canada (en_CA)"
+${LangFileString} lng_en_GB "English/Great Britain (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spanish (es)"
+${LangFileString} lng_es_MX "Spanish/Mexico (es_MX)"
+${LangFileString} lng_et "Estonian (et)"
+${LangFileString} lng_eu "Basque (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "Finnish (fi)"
+${LangFileString} lng_fr "French (fr)"
+${LangFileString} lng_ga "Irish (ga)"
+${LangFileString} lng_gl "Galician (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebrew (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croatian (hr)"
+${LangFileString} lng_hu "Hungarian (hu)"
+${LangFileString} lng_hy "Armenian (hy)"
+${LangFileString} lng_id "Indonesian (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italian (it)"
+${LangFileString} lng_ja "Japanese (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Korean (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Lithuanian (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedonian (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolian (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norwegian Bokmål (nb)"
+${LangFileString} lng_ne "Nepali (ne)"
+${LangFileString} lng_nl "Dutch (nl)"
+${LangFileString} lng_nn "Norwegian Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polish (pl)"
+${LangFileString} lng_pt "Portuguese (pt)"
+${LangFileString} lng_pt_BR "Portuguese/Brazil (pt_BR)"
+${LangFileString} lng_ro "Romanian (ro)"
+${LangFileString} lng_ru "Russian (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Slovak (sk)"
+${LangFileString} lng_sl "Slovenian (sl)"
+${LangFileString} lng_sq "Albanian (sq)"
+${LangFileString} lng_sr "Serbian (sr)"
+${LangFileString} lng_sr@latin "Serbian in Latin script (sr@latin)"
+${LangFileString} lng_sv "Swedish (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Thai (th)"
+${LangFileString} lng_tr "Turkish (tr)"
+${LangFileString} lng_uk "Ukrainian (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamese (vi)"
+${LangFileString} lng_zh_CN "Chinese/China (zh_CN)"
+${LangFileString} lng_zh_TW "Chinese/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Dutch.nsh b/packaging/win32/languages/Dutch.nsh
index 6ee5a6875..4031edf81 100644
--- a/packaging/win32/languages/Dutch.nsh
+++ b/packaging/win32/languages/Dutch.nsh
@@ -1,12 +1,12 @@
-;Language: Dutch (1033, ANSI)
+;Language: Dutch (1033)
;By Adib Taraben <theadib@gmail.com>
${LangFileString} CaptionDescription "Open Source Scalable Vector Graphics Editor"
${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) wordt beschikbaar gesteld onder de GNU General Public License (GPL). De licentie is hierboven ter info weergegeven. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape werd geïnstalleerd door de gebruiker $0.$\r$\nIndien je voortgaat, kan je het mogelijk niet succesvol beëindigen!$\r$\nLog aub. in als $0 en probeer opnieuw."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 werd reeds geïnstalleerd. $\nWil je de vorige versie verwijderen voor de installatie van $(^Name)?"
+${LangFileString} DIFFERENT_USER "Inkscape werd geïnstalleerd door de gebruiker $0.$\r$\nIndien je voortgaat, kan je het mogelijk niet succesvol beëindigen!$\r$\nLog aub. in als $0 en probeer opnieuw."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 werd reeds geïnstalleerd. $\nWil je de vorige versie verwijderen voor de installatie van $(^Name)?"
${LangFileString} OK_CANCEL_DESC "$\n$\nDruk op OK om door te gaan en ANNULEREN om te stoppen."
${LangFileString} NO_ADMIN "Je hebt geen beheerdersbevoegdheden.$\r$\nHet installeren van Inkscape voor alle gebruikers is wellicht niet mogelijk.$\r$\nDesactiveer de optie 'Installeren voor alle gebruikers'."
-${LangFileString} NOT_SUPPORTED "Het is bekend dat Inkscape niet draait onder Windows 95/98/ME!$\r$\nKijk aub. de officiële website na voor gedetailleerde informatie."
+${LangFileString} NOT_SUPPORTED "Het is bekend dat Inkscape niet draait onder Windows 95/98/ME!$\r$\nKijk aub. de officiële website na voor gedetailleerde informatie."
${LangFileString} Full "Volledig"
${LangFileString} Optimal "Optimaal"
${LangFileString} Minimal "Minimaal"
@@ -30,86 +30,24 @@ ${LangFileString} ContextMenu "Contextmenu"
${LangFileString} ContextMenuDesc "Inkscape toevoegen aan het contextmenu voor SVG-bestanden"
${LangFileString} DeletePrefs "Persoonlijke voorkeuren verwijderen"
${LangFileString} DeletePrefsDesc "Persoonlijke voorkeuren van vorige installaties verwijderen"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Additionele bestanden"
${LangFileString} AddfilesDesc "Additionele bestanden"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Voorbeelden"
${LangFileString} ExamplesDesc "Voorbeelden van het gebruik van Inkscape"
${LangFileString} Tutorials "Handleidingen"
${LangFileString} TutorialsDesc "Handleidingen over het gebruik van Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Vertalingen"
${LangFileString} LanguagesDesc "Diverse vertalingen voor Inkscape installeren"
-${LangFileString} lng_am "Amhaars"
-${LangFileString} lng_ar "Arabisch"
-${LangFileString} lng_az "Azeri"
-${LangFileString} lng_be "Wit-Russisch"
-${LangFileString} lng_bg "Bulgaars"
-${LangFileString} lng_bn "Bengaals"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Bretoens"
-${LangFileString} lng_ca "Catalaans"
-${LangFileString} lng_ca@valencia "Catalaans/Valencia"
-${LangFileString} lng_cs "Tsjechisch"
-${LangFileString} lng_da "Deens"
-${LangFileString} lng_de "Duits"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Grieks"
-${LangFileString} lng_en "Engels"
-${LangFileString} lng_en_AU "Engels/Australië"
-${LangFileString} lng_en_CA "Engels/Canada"
-${LangFileString} lng_en_GB "Engels/Groot-Brittannië"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spaans"
-${LangFileString} lng_es_MX "Spaans/Mexico"
-${LangFileString} lng_et "Ests"
-${LangFileString} lng_eu "Baskisch"
-${LangFileString} lng_fa "Perzisch"
-${LangFileString} lng_fi "Fins"
-${LangFileString} lng_fr "Frans"
-${LangFileString} lng_ga "Iers"
-${LangFileString} lng_gl "Galisisch"
-${LangFileString} lng_he "Hebreeuws"
-${LangFileString} lng_hr "Kroatisch"
-${LangFileString} lng_hu "Hongaars"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonesisch"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italiaans"
-${LangFileString} lng_ja "Japans"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Koreaans"
-${LangFileString} lng_lt "Litouws"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedonisch"
-${LangFileString} lng_mn "Mongools"
-${LangFileString} lng_ne "Nepalees"
-${LangFileString} lng_nb "Noors Bokmål"
-${LangFileString} lng_nl "Nederlands"
-${LangFileString} lng_nn "Noors Nynorsk"
-${LangFileString} lng_pa "Punjabi"
-${LangFileString} lng_pl "Pools"
-${LangFileString} lng_pt "Portugees"
-${LangFileString} lng_pt_BR "Portugees/Brazilië"
-${LangFileString} lng_ro "Roemeens"
-${LangFileString} lng_ru "Russisch"
-${LangFileString} lng_rw "Rwandees"
-${LangFileString} lng_sk "Slovaaks"
-${LangFileString} lng_sl "Sloveens"
-${LangFileString} lng_sq "Albanees"
-${LangFileString} lng_sr "Servisch"
-${LangFileString} lng_sr@latin "Servisch in Latijnse karakters"
-${LangFileString} lng_sv "Zweeds"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Turks"
-${LangFileString} lng_uk "Oekraïens"
-${LangFileString} lng_vi "Vietnamees"
-${LangFileString} lng_zh_CN "Vereenvoudigd Chinees"
-${LangFileString} lng_zh_TW "Traditioneel Chinees"
-${LangFileString} UInstOpt "Deïnstallatieopties"
+${LangFileString} UInstOpt "Deïnstallatieopties"
${LangFileString} UInstOpt1 "Maak alstublief je keuzes voor additionele opties"
${LangFileString} PurgePrefs "Persoonlijke voorkeuren behouden"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log niet gevonden!$\r$\nDeïnstalleer alstublief door zelf de map $INSTDIR leeg te maken!"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log niet gevonden!$\r$\nDeïnstalleer alstublief door zelf de map $INSTDIR leeg te maken!"
${LangFileString} FileChanged "Het bestand $filename is gewijzigd na installatie.$\r$\nWil je nog steeds dat bestand verwijderen?"
${LangFileString} Yes "Ja"
${LangFileString} AlwaysYes "altijd Ja antwoorden"
diff --git a/packaging/win32/languages/Dutch_languageNames.nsh b/packaging/win32/languages/Dutch_languageNames.nsh
new file mode 100644
index 000000000..146f855b3
--- /dev/null
+++ b/packaging/win32/languages/Dutch_languageNames.nsh
@@ -0,0 +1,94 @@
+### Dutch (nl) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Dutch.nsh'
+${LangFileString} lng_am "Amhaars (am)"
+${LangFileString} lng_ar "Arabisch (ar)"
+${LangFileString} lng_as "Assamees (as)"
+${LangFileString} lng_az "Azerbeidzjaans (az)"
+${LangFileString} lng_be "Wit-Russisch (be)"
+${LangFileString} lng_bg "Bulgaars (bg)"
+${LangFileString} lng_bn "Bengaals (bn)"
+${LangFileString} lng_bn_BD "Bengaals/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretoens (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalaans (ca)"
+${LangFileString} lng_ca@valencia "Catalaans/Valencia (ca@valencia)"
+${LangFileString} lng_cs "Tsjechisch (cs)"
+${LangFileString} lng_da "Deens (da)"
+${LangFileString} lng_de "Duits (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Grieks (el)"
+${LangFileString} lng_en "English (en)"
+${LangFileString} lng_en_AU "Engels/Australië (en_AU)"
+${LangFileString} lng_en_CA "Engels/Canada (en_CA)"
+${LangFileString} lng_en_GB "Engels/Groot-Brittannië (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spaans (es)"
+${LangFileString} lng_es_MX "Spaans/Mexico (es_MX)"
+${LangFileString} lng_et "Ests (et)"
+${LangFileString} lng_eu "Baskisch (eu)"
+${LangFileString} lng_fa "Perzisch (fa)"
+${LangFileString} lng_fi "Fins (fi)"
+${LangFileString} lng_fr "Frans (fr)"
+${LangFileString} lng_ga "Iers (ga)"
+${LangFileString} lng_gl "Galisisch (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebreeuws (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Kroatisch (hr)"
+${LangFileString} lng_hu "Hongaars (hu)"
+${LangFileString} lng_hy "Armeens (hy)"
+${LangFileString} lng_id "Indonesisch (id)"
+${LangFileString} lng_is "Ijslands (is)"
+${LangFileString} lng_it "Italiaans (it)"
+${LangFileString} lng_ja "Japans (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Koreaans (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latijnse karakters (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari schrift (ks@deva)"
+${LangFileString} lng_lt "Litouws (lt)"
+${LangFileString} lng_lv "Lets (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedonisch (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongools (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengaals schrift (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Noors Bokmål (nb)"
+${LangFileString} lng_ne "Nepalees (ne)"
+${LangFileString} lng_nl "Nederlands (nl)"
+${LangFileString} lng_nn "Noors Nynorsk (nn)"
+${LangFileString} lng_or "Oriya (or)"
+${LangFileString} lng_pa "Punjabi (pa)"
+${LangFileString} lng_pl "Pools (pl)"
+${LangFileString} lng_pt "Portugees (pt)"
+${LangFileString} lng_pt_BR "Portugees/Brazillië (pt_BR)"
+${LangFileString} lng_ro "Roemeens (ro)"
+${LangFileString} lng_ru "Russisch (ru)"
+${LangFileString} lng_rw "Rwandees (rw)"
+${LangFileString} lng_sa "Sanskriet (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari schrift (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari schrift (sd@deva)"
+${LangFileString} lng_sk "Slowaaks (sk)"
+${LangFileString} lng_sl "Sloveens (sl)"
+${LangFileString} lng_sq "Albanees (sq)"
+${LangFileString} lng_sr "Servisch (sr)"
+${LangFileString} lng_sr@latin "Servisch in Latijnse karakters (sr@latin)"
+${LangFileString} lng_sv "Zweeds (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Thai (th)"
+${LangFileString} lng_tr "Turks (tr)"
+${LangFileString} lng_uk "Oekraïens (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamees (vi)"
+${LangFileString} lng_zh_CN "Chinees/China (zh_CN)"
+${LangFileString} lng_zh_TW "Chinees/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/English.nsh b/packaging/win32/languages/English.nsh
index 856adbcde..6c6700caa 100644
--- a/packaging/win32/languages/English.nsh
+++ b/packaging/win32/languages/English.nsh
@@ -1,4 +1,4 @@
-;Language: English (1033, ANSI)
+;Language: English (1033)
;By Adib Taraben <theadib@gmail.com>
${LangFileString} CaptionDescription "Open Source Scalable Vector Graphics Editor"
${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) is released under the GNU General Public License (GPL). The license is provided here for information purposes only. $_CLICK"
@@ -11,7 +11,7 @@ ${LangFileString} Full "Full"
${LangFileString} Optimal "Optimal"
${LangFileString} Minimal "Minimal"
${LangFileString} Core "Inkscape SVG Editor (required)"
-${LangFileString} CoreDesc "Core Inkscape files and dlls"
+${LangFileString} CoreDesc "Inkscape core files and DLLs"
${LangFileString} GTKFiles "GTK+ Runtime Environment (required)"
${LangFileString} GTKFilesDesc "A multi-platform GUI toolkit, used by Inkscape"
${LangFileString} Shortcuts "Shortcuts"
@@ -30,82 +30,20 @@ ${LangFileString} ContextMenu "Context Menu"
${LangFileString} ContextMenuDesc "Add Inkscape into the Context Menu for SVG files"
${LangFileString} DeletePrefs "Delete personal preferences"
${LangFileString} DeletePrefsDesc "Delete personal preferences leftover from previous installations"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Additional Files"
${LangFileString} AddfilesDesc "Additional Files"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Examples"
${LangFileString} ExamplesDesc "Examples using Inkscape"
${LangFileString} Tutorials "Tutorials"
${LangFileString} TutorialsDesc "Tutorials using Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Translations"
-${LangFileString} LanguagesDesc "Install various translations for Inkscape"
-${LangFileString} lng_am "Amharic"
-${LangFileString} lng_ar "Arabic"
-${LangFileString} lng_az "Azerbaijani"
-${LangFileString} lng_be "Byelorussian"
-${LangFileString} lng_bg "Bulgarian"
-${LangFileString} lng_bn "Bengali"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Breton"
-${LangFileString} lng_ca "Catalan"
-${LangFileString} lng_ca@valencia "Valencian Catalan"
-${LangFileString} lng_cs "Czech"
-${LangFileString} lng_da "Danish"
-${LangFileString} lng_de "German"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Greek"
-${LangFileString} lng_en "English"
-${LangFileString} lng_en_AU "Australian English"
-${LangFileString} lng_en_CA "Canadian English"
-${LangFileString} lng_en_GB "British English"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spanish"
-${LangFileString} lng_es_MX "Mexican Spanish"
-${LangFileString} lng_et "Estonian"
-${LangFileString} lng_eu "Basque"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finnish"
-${LangFileString} lng_fr "French"
-${LangFileString} lng_ga "Irish"
-${LangFileString} lng_gl "Galician"
-${LangFileString} lng_he "Hebrew"
-${LangFileString} lng_hr "Croatian"
-${LangFileString} lng_hu "Hungarian"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonesian"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italian"
-${LangFileString} lng_ja "Japanese"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Korean"
-${LangFileString} lng_lt "Lithuanian"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedonian"
-${LangFileString} lng_mn "Mongolian"
-${LangFileString} lng_ne "Nepali"
-${LangFileString} lng_nb "Norwegian Bokmål"
-${LangFileString} lng_nl "Dutch"
-${LangFileString} lng_nn "Norwegian Nynorsk"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polish"
-${LangFileString} lng_pt "Portuguese"
-${LangFileString} lng_pt_BR "Brazilian Portuguese"
-${LangFileString} lng_ro "Romanian"
-${LangFileString} lng_ru "Russian"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slovak"
-${LangFileString} lng_sl "Slovenian"
-${LangFileString} lng_sq "Albanian"
-${LangFileString} lng_sr "Serbian"
-${LangFileString} lng_sr@latin "Serbian in Latin script"
-${LangFileString} lng_sv "Swedish"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Turkish"
-${LangFileString} lng_uk "Ukrainian"
-${LangFileString} lng_vi "Vietnamese"
-${LangFileString} lng_zh_CN "Simplifed Chinese"
-${LangFileString} lng_zh_TW "Traditional Chinese"
+${LangFileString} LanguagesDesc "Translations and localized content for Inkscape"
${LangFileString} UInstOpt "Uninstallation Options"
${LangFileString} UInstOpt1 "Please make your choices for additional options"
${LangFileString} PurgePrefs "Keep personal Preferences"
diff --git a/packaging/win32/languages/English_languageNames.nsh b/packaging/win32/languages/English_languageNames.nsh
new file mode 100644
index 000000000..ce6f9e225
--- /dev/null
+++ b/packaging/win32/languages/English_languageNames.nsh
@@ -0,0 +1,94 @@
+### English (en) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'English.nsh'
+${LangFileString} lng_am "Amharic (am)"
+${LangFileString} lng_ar "Arabic (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azerbaijani (az)"
+${LangFileString} lng_be "Belarusian (be)"
+${LangFileString} lng_bg "Bulgarian (bg)"
+${LangFileString} lng_bn "Bengali (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Breton (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalan (ca)"
+${LangFileString} lng_ca@valencia "Valencian Catalan (ca@valencia)"
+${LangFileString} lng_cs "Czech (cs)"
+${LangFileString} lng_da "Danish (da)"
+${LangFileString} lng_de "German (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Greek (el)"
+${LangFileString} lng_en "English (en)"
+${LangFileString} lng_en_AU "English/Australia (en_AU)"
+${LangFileString} lng_en_CA "English/Canada (en_CA)"
+${LangFileString} lng_en_GB "English/Great Britain (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spanish (es)"
+${LangFileString} lng_es_MX "Spanish/Mexico (es_MX)"
+${LangFileString} lng_et "Estonian (et)"
+${LangFileString} lng_eu "Basque (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "Finnish (fi)"
+${LangFileString} lng_fr "French (fr)"
+${LangFileString} lng_ga "Irish (ga)"
+${LangFileString} lng_gl "Galician (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebrew (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croatian (hr)"
+${LangFileString} lng_hu "Hungarian (hu)"
+${LangFileString} lng_hy "Armenian (hy)"
+${LangFileString} lng_id "Indonesian (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italian (it)"
+${LangFileString} lng_ja "Japanese (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Korean (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Lithuanian (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedonian (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolian (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norwegian Bokmål (nb)"
+${LangFileString} lng_ne "Nepali (ne)"
+${LangFileString} lng_nl "Dutch (nl)"
+${LangFileString} lng_nn "Norwegian Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polish (pl)"
+${LangFileString} lng_pt "Portuguese (pt)"
+${LangFileString} lng_pt_BR "Portuguese/Brazil (pt_BR)"
+${LangFileString} lng_ro "Romanian (ro)"
+${LangFileString} lng_ru "Russian (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Slovak (sk)"
+${LangFileString} lng_sl "Slovenian (sl)"
+${LangFileString} lng_sq "Albanian (sq)"
+${LangFileString} lng_sr "Serbian (sr)"
+${LangFileString} lng_sr@latin "Serbian in Latin script (sr@latin)"
+${LangFileString} lng_sv "Swedish (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Thai (th)"
+${LangFileString} lng_tr "Turkish (tr)"
+${LangFileString} lng_uk "Ukrainian (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamese (vi)"
+${LangFileString} lng_zh_CN "Chinese/China (zh_CN)"
+${LangFileString} lng_zh_TW "Chinese/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Finnish.nsh b/packaging/win32/languages/Finnish.nsh
index fc5d0be9b..492f2633e 100644
--- a/packaging/win32/languages/Finnish.nsh
+++ b/packaging/win32/languages/Finnish.nsh
@@ -1,117 +1,55 @@
-;Language: Finnish (1035, CP1252)
+;Language: Finnish (1035)
;By Riku Leino <tsoots@gmail.com>
-${LangFileString} CaptionDescription "Avoimen lähdekoodin SVG-muokkain"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) on julkaistu GNU General Public License (GPL) -lisenssillä. $_CLICK"
-${LangFileString} DIFFERENT_USER "Käyttäjä $0.$\r$\n on asentanut Inkscapen\nJos jatkat, asennus saattaa epäonnistua.!$\r$\nKirjaudu sisään käyttäjänä $0 ja yritä uudestaan."
+${LangFileString} CaptionDescription "Avoimen lähdekoodin SVG-muokkain"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) on julkaistu GNU General Public License (GPL) -lisenssillä. $_CLICK"
+${LangFileString} DIFFERENT_USER "Käyttäjä $0.$\r$\n on asentanut Inkscapen\nJos jatkat, asennus saattaa epäonnistua.!$\r$\nKirjaudu sisään käyttäjänä $0 ja yritä uudestaan."
${LangFileString} WANT_UNINSTALL_BEFORE "$R1 on jo asennettu. $\nHaluatko poistaa edellisen version ennen asennusta $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nPaina OK jatkaaksi tai Peruuta keskeyttääksesi."
-${LangFileString} NO_ADMIN "Sinulla ei ole pääkäyttäjän oikeuksia.$\r$\nInkscapen asennus kaikille käyttäjille saattaa epäonnistua.$\r$\nÄlä käytä kaikille käyttäjille -ominaisuutta."
-${LangFileString} NOT_SUPPORTED "Inkscape ei toimi käyttöjärjestelmissä Windows 95/98/ME!$\r$\nLisätietoja saat ohjelman kotisivulta."
-${LangFileString} Full "Täysi"
+${LangFileString} OK_CANCEL_DESC "$\n$\nPaina OK jatkaaksi tai Peruuta keskeyttääksesi."
+${LangFileString} NO_ADMIN "Sinulla ei ole pääkäyttäjän oikeuksia.$\r$\nInkscapen asennus kaikille käyttäjille saattaa epäonnistua.$\r$\nÄlä käytä kaikille käyttäjille -ominaisuutta."
+${LangFileString} NOT_SUPPORTED "Inkscape ei toimi käyttöjärjestelmissä Windows 95/98/ME!$\r$\nLisätietoja saat ohjelman kotisivulta."
+${LangFileString} Full "Täysi"
${LangFileString} Optimal "Oletus"
-${LangFileString} Minimal "Vähäisin"
+${LangFileString} Minimal "Vähäisin"
${LangFileString} Core "Inkscape SVG-muokkain (pakollinen)"
${LangFileString} CoreDesc "Inkscape tiedostot ja dll-kirjastot"
-${LangFileString} GTKFiles "GTK+-ajoympäristö (pakollinen)"
-${LangFileString} GTKFilesDesc "Usealla alustalla toimiva käyttöliittymäkehys, jota Inkscape käyttää"
+${LangFileString} GTKFiles "GTK+-ajoympäristö (pakollinen)"
+${LangFileString} GTKFilesDesc "Usealla alustalla toimiva käyttöliittymäkehys, jota Inkscape käyttää"
${LangFileString} Shortcuts "Pikakuvakkeet"
-${LangFileString} ShortcutsDesc "Pikakuvakkeet Inkscapen käynnistämiseksi"
-${LangFileString} Alluser "kaikille käyttäjille"
-${LangFileString} AlluserDesc "Asenna Inkscape kaikille tämän tietokoneen käyttäjille"
-${LangFileString} Desktop "Työpöytä"
-${LangFileString} DesktopDesc "Luo Inkscape-pikakuvake työpöydälle"
-${LangFileString} Startmenu "Käynnistä-valikko"
-${LangFileString} StartmenuDesc "Lisää Inkscape Käynnistä-valikkoon"
-${LangFileString} Quicklaunch "Pikakäynnistys"
-${LangFileString} QuicklaunchDesc "Lisää Inkscape pikakäynnistysriville"
+${LangFileString} ShortcutsDesc "Pikakuvakkeet Inkscapen käynnistämiseksi"
+${LangFileString} Alluser "kaikille käyttäjille"
+${LangFileString} AlluserDesc "Asenna Inkscape kaikille tämän tietokoneen käyttäjille"
+${LangFileString} Desktop "Työpöytä"
+${LangFileString} DesktopDesc "Luo Inkscape-pikakuvake työpöydälle"
+${LangFileString} Startmenu "Käynnistä-valikko"
+${LangFileString} StartmenuDesc "Lisää Inkscape Käynnistä-valikkoon"
+${LangFileString} Quicklaunch "Pikakäynnistys"
+${LangFileString} QuicklaunchDesc "Lisää Inkscape pikakäynnistysriville"
${LangFileString} SVGWriter "Avaa SVG-tiedostot Inkscapella"
${LangFileString} SVGWriterDesc "Tee Inkscapesta oletusmuokkain SVG-tiedostoille"
${LangFileString} ContextMenu "Kontekstivalikko"
-${LangFileString} ContextMenuDesc "Lisää Inkscape SVG-tiedostojen pikavalikkoon"
+${LangFileString} ContextMenuDesc "Lisää Inkscape SVG-tiedostojen pikavalikkoon"
${LangFileString} DeletePrefs "Poista asetukset"
${LangFileString} DeletePrefsDesc "Poista edelliseen versioon tehdyt asetukset"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Valinnaiset tiedostot"
${LangFileString} AddfilesDesc "Valinnaiset tiedostot"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Esimerkit"
${LangFileString} ExamplesDesc "Inkscapen avulla tehdyt esimerkit"
${LangFileString} Tutorials "Ohjeet"
-${LangFileString} TutorialsDesc "Inkscapen käyttöä opettavat ohjeet (englanniksi)"
-${LangFileString} Languages "Käännökset"
-${LangFileString} LanguagesDesc "Asenna Inkscapen käännökset"
-${LangFileString} lng_am "amhari"
-${LangFileString} lng_ar "Arabic"
-${LangFileString} lng_az "azerbaid?ani"
-${LangFileString} lng_be "valkovenäjä"
-${LangFileString} lng_bg "bulgaria"
-${LangFileString} lng_bn "Bengali"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Breton"
-${LangFileString} lng_ca "katalaani"
-${LangFileString} lng_ca@valencia "Valencian Catalan"
-${LangFileString} lng_cs "t?ekki"
-${LangFileString} lng_da "tanska"
-${LangFileString} lng_de "saksa"
-${LangFileString} lng_dz "dzongkha"
-${LangFileString} lng_el "kreikka"
-${LangFileString} lng_en "englanti"
-${LangFileString} lng_en_AU "Australian English"
-${LangFileString} lng_en_CA "Kanadan englanti"
-${LangFileString} lng_en_GB "Britti-englanti"
-${LangFileString} lng_en_US@piglatin "kontin kieli (en)"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "espanja"
-${LangFileString} lng_es_MX "Meksikon espanja"
-${LangFileString} lng_et "eesti"
-${LangFileString} lng_eu "Basque"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "suomi"
-${LangFileString} lng_fr "ranska"
-${LangFileString} lng_ga "iiri"
-${LangFileString} lng_gl "galicia"
-${LangFileString} lng_he "Hebrew"
-${LangFileString} lng_hr "kroatia"
-${LangFileString} lng_hu "unkari"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonesian"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "italia"
-${LangFileString} lng_ja "japani"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "korea"
-${LangFileString} lng_lt "liettua"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "makedonia"
-${LangFileString} lng_mn "mongolia"
-${LangFileString} lng_ne "nepali"
-${LangFileString} lng_nb "kirjanorja"
-${LangFileString} lng_nl "hollanti"
-${LangFileString} lng_nn "nykynorja"
-${LangFileString} lng_pa "punjabi"
-${LangFileString} lng_pl "puola"
-${LangFileString} lng_pt "portugali"
-${LangFileString} lng_pt_BR "Brasilian portugali"
-${LangFileString} lng_ro "Romanian"
-${LangFileString} lng_ru "venäjä"
-${LangFileString} lng_rw "ruanda"
-${LangFileString} lng_sk "slovakki"
-${LangFileString} lng_sl "sloveeni"
-${LangFileString} lng_sq "albania"
-${LangFileString} lng_sr "serbia"
-${LangFileString} lng_sr@latin "serbia (latin)"
-${LangFileString} lng_sv "ruotsi"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "thai"
-${LangFileString} lng_tr "turkki"
-${LangFileString} lng_uk "ukraina"
-${LangFileString} lng_vi "vietnami"
-${LangFileString} lng_zh_CN "yksinkertaistettu kiina"
-${LangFileString} lng_zh_TW "perinteinen kiina"
+${LangFileString} TutorialsDesc "Inkscapen käyttöä opettavat ohjeet (englanniksi)"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Käännökset"
+${LangFileString} LanguagesDesc "Asenna Inkscapen käännökset"
${LangFileString} UInstOpt "Ohjelman poiston asetukset"
${LangFileString} UInstOpt1 "Valitse haluamasi asetukset ohjelman poistamiseksi"
-${LangFileString} PurgePrefs "Säilytä omat asetukset"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ei löytynyt!$\r$\nPoista tyhjentämällä asennuskansio $INSTDIR!"
-${LangFileString} FileChanged "Tiedosto $filename on muuttunut asennuksen jälkeen.$\r$\nPoistetaanko se siitä huolimatta?"
-${LangFileString} Yes "Kyllä"
-${LangFileString} AlwaysYes "Kyllä kaikkiin"
+${LangFileString} PurgePrefs "Säilytä omat asetukset"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ei löytynyt!$\r$\nPoista tyhjentämällä asennuskansio $INSTDIR!"
+${LangFileString} FileChanged "Tiedosto $filename on muuttunut asennuksen jälkeen.$\r$\nPoistetaanko se siitä huolimatta?"
+${LangFileString} Yes "Kyllä"
+${LangFileString} AlwaysYes "Kyllä kaikkiin"
${LangFileString} No "Ei"
${LangFileString} AlwaysNo "Ei kaikkiin"
diff --git a/packaging/win32/languages/Finnish_languageNames.nsh b/packaging/win32/languages/Finnish_languageNames.nsh
new file mode 100644
index 000000000..b0c5a18ee
--- /dev/null
+++ b/packaging/win32/languages/Finnish_languageNames.nsh
@@ -0,0 +1,94 @@
+### Finnish (fi) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Finnish.nsh'
+${LangFileString} lng_am "Amharic (am)"
+${LangFileString} lng_ar "Arabia (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azerbaijani (az)"
+${LangFileString} lng_be "Valkovenäjä (be)"
+${LangFileString} lng_bg "Bulgaria (bg)"
+${LangFileString} lng_bn "Bengali (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Breton (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalan (ca)"
+${LangFileString} lng_ca@valencia "Valencian Catalan (ca@valencia)"
+${LangFileString} lng_cs "Tsekki (cs)"
+${LangFileString} lng_da "Tanska (da)"
+${LangFileString} lng_de "Saksa (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Kreikka (el)"
+${LangFileString} lng_en "Englanti (en)"
+${LangFileString} lng_en_AU "Englanti/Australia (en_AU)"
+${LangFileString} lng_en_CA "Englanti/Kanada (en_CA)"
+${LangFileString} lng_en_GB "Englanti/Iso Britannia (en_GB)"
+${LangFileString} lng_en_US@piglatin "Siansaksa (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Espanja (es)"
+${LangFileString} lng_es_MX "Espanja/Meksiko (es_MX)"
+${LangFileString} lng_et "Viro (et)"
+${LangFileString} lng_eu "Basque (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "Suomi (fi)"
+${LangFileString} lng_fr "Ranska (fr)"
+${LangFileString} lng_ga "Irlanti (ga)"
+${LangFileString} lng_gl "Galician (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Heprea (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Kroatia (hr)"
+${LangFileString} lng_hu "Unkari (hu)"
+${LangFileString} lng_hy "Armenia (hy)"
+${LangFileString} lng_id "Indonesa (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italia (it)"
+${LangFileString} lng_ja "Japani (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Korea (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Liettua (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Makedonia (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolia (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norja Bokmål (nb)"
+${LangFileString} lng_ne "Nepali (ne)"
+${LangFileString} lng_nl "Hollanti (nl)"
+${LangFileString} lng_nn "Norja Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Puola (pl)"
+${LangFileString} lng_pt "Portugali (pt)"
+${LangFileString} lng_pt_BR "Portugali/Brasilia (pt_BR)"
+${LangFileString} lng_ro "Romania (ro)"
+${LangFileString} lng_ru "Venäjä (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Slovakia (sk)"
+${LangFileString} lng_sl "Slovenia (sl)"
+${LangFileString} lng_sq "Albania (sq)"
+${LangFileString} lng_sr "Serbia (sr)"
+${LangFileString} lng_sr@latin "Serbia/Latin (sr@latin)"
+${LangFileString} lng_sv "Ruotsi (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Thai (th)"
+${LangFileString} lng_tr "Turkki (tr)"
+${LangFileString} lng_uk "Ukraina (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnami (vi)"
+${LangFileString} lng_zh_CN "Kiina (zh_CN)"
+${LangFileString} lng_zh_TW "Kiina/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/French.nsh b/packaging/win32/languages/French.nsh
index 7d14f19e3..e7349853d 100644
--- a/packaging/win32/languages/French.nsh
+++ b/packaging/win32/languages/French.nsh
@@ -1,117 +1,55 @@
-;Language: French (1036, CP1252)
-;By matiphas@free.fr, Nicolas Dufour <nicoduf@yahoo.fr>
-${LangFileString} CaptionDescription "Éditeur vectoriel SVG libre"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) est diffusé sous la licence publique générale (GPL) GNU. La licence est fournie ici pour information uniquement. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape a déjà été installé par l'utilisateur $0.$\r$\nSi vous continuez, l'installation pourrait devenir défectueuse!$\r$\nVeuillez, svp, vous connecter en tant que $0 et essayer de nouveau."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 a déjà été installé. $\nVoulez-vous supprimer la version précédente avant l'installation d' $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nCliquer sur OK pour continuer ou CANCEL pour annuler."
-${LangFileString} NO_ADMIN "Vous n'avez pas les privilèges d'administrateur.$\r$\nL'installation d'Inkscape pour tous les utilisateurs pourrait devenir défectueuse.$\r$\nVeuillez décocher l'option 'pour tous les utilisateurs'."
-${LangFileString} NOT_SUPPORTED "Inkscape n'est pas exécutable sur Windows 95/98/ME!$\r$\nVeuillez, svp, consulter les sites web officiels pour plus d'information."
-${LangFileString} Full "Complète"
+;Language: French (1036)
+;By matiphas@free.fr, Nicolas Dufour <nicoduf@yahoo.fr>, Sylvain Chiron <chironsylvain@orange.fr>
+${LangFileString} CaptionDescription "Éditeur vectoriel SVG libre"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) est mis à disposition sous les termes de la licence publique générale (GPL) GNU. La licence est fournie ici pour information uniquement. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape a déjà été installé par l'utilisateur $0.$\r$\nSi vous continuez, l'installation pourrait devenir défectueuse !$\r$\nVeuillez vous connecter en tant que $0 et essayer à nouveau."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 a déjà été installé. $\nVoulez-vous supprimer la version précédente avant l'installation d'$(^Name) ?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nCliquer sur OK pour continuer ou sur CANCEL pour annuler."
+${LangFileString} NO_ADMIN "Vous n'avez pas les privilèges d'administration.$\r$\nL'installation d'Inkscape pour tous les utilisateurs pourrait devenir défectueuse.$\r$\nVeuillez décocher l'option « pour tous les utilisateurs »."
+${LangFileString} NOT_SUPPORTED "Inkscape n'est pas exécutable sur Windows 95/98/Me !$\r$\nVeuillez consulter le site web officiel pour plus d'informations."
+${LangFileString} Full "Complète"
${LangFileString} Optimal "Optimale"
${LangFileString} Minimal "Minimale"
-${LangFileString} Core "Editeur SVG Inkscape (nécessaire)"
-${LangFileString} CoreDesc "Fichiers indispensables d'Inkscape et dlls"
-${LangFileString} GTKFiles "Environnement GTK+ (nécessaire)"
-${LangFileString} GTKFilesDesc "Une boîte à outils multi-plateformes pour interfaces graphiques, utilisée par Inkscape"
+${LangFileString} Core "Éditeur SVG Inkscape (nécessaire)"
+${LangFileString} CoreDesc "Fichiers indispensables d'Inkscape et bibliothèques dynamiques"
+${LangFileString} GTKFiles "Environnement GTK+ (nécessaire)"
+${LangFileString} GTKFilesDesc "Une boîte à outils multi-plateforme pour interfaces graphiques, utilisée par Inkscape"
${LangFileString} Shortcuts "Raccourcis"
-${LangFileString} ShortcutsDesc "Raccourcis pour démarrer Inkscape"
+${LangFileString} ShortcutsDesc "Raccourcis pour démarrer Inkscape"
${LangFileString} Alluser "Pour tous les utilisateurs"
-${LangFileString} AlluserDesc "Installer cette application pour tous les utilisateurs de cet ordinateurs"
+${LangFileString} AlluserDesc "Installer cette application pour tous les utilisateurs de cet ordinateur"
${LangFileString} Desktop "Bureau"
-${LangFileString} DesktopDesc "Créer un raccourci vers Inkscape sur le bureau"
-${LangFileString} Startmenu "Menu démarrer"
-${LangFileString} StartmenuDesc "Créer une entrée Inkscape dans le menu démarrer"
-${LangFileString} Quicklaunch "Lancement rapide"
-${LangFileString} QuicklaunchDesc "Créer un raccourci vers Inkscape dans la barre de lancement rapide"
+${LangFileString} DesktopDesc "Créer un raccourci vers Inkscape sur le bureau"
+${LangFileString} Startmenu "Menu Démarrer"
+${LangFileString} StartmenuDesc "Créer une entrée Inkscape dans le menu Démarrer"
+${LangFileString} Quicklaunch "Barre des tâches"
+${LangFileString} QuicklaunchDesc "Créer un raccourci vers Inkscape dans la barre des tâches"
${LangFileString} SVGWriter "Ouvrir les fichiers SVG avec Inkscape"
-${LangFileString} SVGWriterDesc "Choisir Inkscape comme éditeur par défaut pour les fichiers SVG"
+${LangFileString} SVGWriterDesc "Choisir Inkscape comme éditeur par défaut pour les fichiers SVG"
${LangFileString} ContextMenu "Menu contextuel"
${LangFileString} ContextMenuDesc "Ajouter Inkscape dans le menu contextuel des fichiers SVG"
-${LangFileString} DeletePrefs "Effacer les préférences personnelles"
-${LangFileString} DeletePrefsDesc "Effacer les préférences personnelles laissées par les précédentes installations"
+${LangFileString} DeletePrefs "Effacer les préférences personnelles"
+${LangFileString} DeletePrefsDesc "Effacer les préférences personnelles laissées par les précédentes installations"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Fichiers additionnels"
${LangFileString} AddfilesDesc "Fichiers additionnels"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Exemples"
-${LangFileString} ExamplesDesc "Examples d'utilisation d'Inkscape"
+${LangFileString} ExamplesDesc "Exemples d'utilisation d'Inkscape"
${LangFileString} Tutorials "Didacticiels"
${LangFileString} TutorialsDesc "Didacticiels sur l'utilisation d'Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Traductions"
-${LangFileString} LanguagesDesc "Installer des traductions pour Inkscape"
-${LangFileString} lng_am "Amharique"
-${LangFileString} lng_ar "Arabe"
-${LangFileString} lng_az "Azéri"
-${LangFileString} lng_be "Biélorusse"
-${LangFileString} lng_bg "Bulgare"
-${LangFileString} lng_bn "Bengali"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Breton"
-${LangFileString} lng_ca "Catalan"
-${LangFileString} lng_ca@valencia "Catalan Valencien"
-${LangFileString} lng_cs "Tchèque"
-${LangFileString} lng_da "Danois"
-${LangFileString} lng_de "Allemand"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Grec"
-${LangFileString} lng_en "Anglais"
-${LangFileString} lng_en_AU "Anglais (Australie)"
-${LangFileString} lng_en_CA "Anglais (Canada)"
-${LangFileString} lng_en_GB "Anglais (Grande Bretagne)"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Espagnol"
-${LangFileString} lng_es_MX "Espagnol (Mexique)"
-${LangFileString} lng_et "Estonien"
-${LangFileString} lng_eu "Basque"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finnois"
-${LangFileString} lng_fr "Français"
-${LangFileString} lng_he "Hébreu"
-${LangFileString} lng_ga "Irlandais"
-${LangFileString} lng_gl "Galicien"
-${LangFileString} lng_hr "Croatian"
-${LangFileString} lng_hu "Hongrois"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonésien"
-${LangFileString} lng_is "Islandais"
-${LangFileString} lng_it "Italien"
-${LangFileString} lng_ja "Japonais"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Coréen"
-${LangFileString} lng_lt "Lituanien"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macédonien"
-${LangFileString} lng_mn "Mongol"
-${LangFileString} lng_ne "Népalais"
-${LangFileString} lng_nb "Norvégien Bokmal"
-${LangFileString} lng_nl "Néerlandais"
-${LangFileString} lng_nn "Norvégien Nynorsk"
-${LangFileString} lng_pa "Pendjabi"
-${LangFileString} lng_pl "Polonais"
-${LangFileString} lng_pt "Portugais"
-${LangFileString} lng_pt_BR "Portugais (Brésil)"
-${LangFileString} lng_ro "Roumain"
-${LangFileString} lng_ru "Russe"
-${LangFileString} lng_rw "Kinyarouandais"
-${LangFileString} lng_sk "Slovaque"
-${LangFileString} lng_sl "Slovène"
-${LangFileString} lng_sq "Albanian"
-${LangFileString} lng_sr "Serbe"
-${LangFileString} lng_sr@latin "Serbe (notation latine)"
-${LangFileString} lng_sv "Suédois"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thaï"
-${LangFileString} lng_tr "Turc"
-${LangFileString} lng_uk "Ukrainien"
-${LangFileString} lng_vi "Vietnamien"
-${LangFileString} lng_zh_CN "Chinois"
-${LangFileString} lng_zh_TW "Chinois (Taïwan)"
-${LangFileString} UInstOpt "Options de désinstallation"
+${LangFileString} LanguagesDesc "Installer les traductions d'Inkscape"
+${LangFileString} UInstOpt "Options de désinstallation"
${LangFileString} UInstOpt1 "Choisissez parmi les options additionnelles"
-${LangFileString} PurgePrefs "Conserver les préférences personnelles"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log introuvable !$\r$\nVeuillez procéder à la désinstallation en nettoyant le dossier $INSTDIR manuellement."
-${LangFileString} FileChanged "Le fichier $filename a été modifié après l'installation.$\r$\nSouhaitez-vous vraiment le supprimer ?"
+${LangFileString} PurgePrefs "Conserver les préférences personnelles"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log introuvable !$\r$\nVeuillez procéder à la désinstallation en nettoyant le dossier $INSTDIR manuellement."
+${LangFileString} FileChanged "Le fichier $filename a été modifié après l'installation.$\r$\nVoulez-vous vraiment le supprimer ?"
${LangFileString} Yes "Oui"
-${LangFileString} AlwaysYes "toujours répondre Oui"
+${LangFileString} AlwaysYes "toujours répondre Oui"
${LangFileString} No "Non"
-${LangFileString} AlwaysNo "toujours répondre Non"
+${LangFileString} AlwaysNo "toujours répondre Non"
diff --git a/packaging/win32/languages/French_languageNames.nsh b/packaging/win32/languages/French_languageNames.nsh
new file mode 100644
index 000000000..00dbda62a
--- /dev/null
+++ b/packaging/win32/languages/French_languageNames.nsh
@@ -0,0 +1,94 @@
+### French (fr) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'French.nsh'
+${LangFileString} lng_am "Amharique (am)"
+${LangFileString} lng_ar "Arabe (ar)"
+${LangFileString} lng_as "Assamais (as)"
+${LangFileString} lng_az "Azéri (az)"
+${LangFileString} lng_be "Biélorusse (be)"
+${LangFileString} lng_bg "Bulgare (bg)"
+${LangFileString} lng_bn "Bengali (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Breton (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalan (ca)"
+${LangFileString} lng_ca@valencia "Catalan valencien (ca@valencia)"
+${LangFileString} lng_cs "Tchèque (cs)"
+${LangFileString} lng_da "Danois (da)"
+${LangFileString} lng_de "Allemand (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Grec (el)"
+${LangFileString} lng_en "Anglais (en)"
+${LangFileString} lng_en_AU "Anglais/Australie (en_AU)"
+${LangFileString} lng_en_CA "Anglais/Canada (en_CA)"
+${LangFileString} lng_en_GB "Anglais/Grande-Bretagne (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Espéranto (eo)"
+${LangFileString} lng_es "Espagnol (es)"
+${LangFileString} lng_es_MX "Espagnol/Mexique (es_MX)"
+${LangFileString} lng_et "Estonien (et)"
+${LangFileString} lng_eu "Basque (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "Finnois (fi)"
+${LangFileString} lng_fr "Français (fr)"
+${LangFileString} lng_ga "Irlandais (ga)"
+${LangFileString} lng_gl "Galicien (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hébreu (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croate (hr)"
+${LangFileString} lng_hu "Hongrois (hu)"
+${LangFileString} lng_hy "Arménien (hy)"
+${LangFileString} lng_id "Indonésien (id)"
+${LangFileString} lng_is "Islandais (is)"
+${LangFileString} lng_it "Italien (it)"
+${LangFileString} lng_ja "Japonais (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Coréen (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani, alphabet latin (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri, écriture perso-arabe (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri, écriture dévanagarie (ks@deva)"
+${LangFileString} lng_lt "Lituanien (lt)"
+${LangFileString} lng_lv "Letton (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macédonien (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongol (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri, écriture bengalie (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norvégien Bokmål (nb)"
+${LangFileString} lng_ne "Népalais (ne)"
+${LangFileString} lng_nl "Néerlandais (nl)"
+${LangFileString} lng_nn "Norvégien Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polonais (pl)"
+${LangFileString} lng_pt "Portugais (pt)"
+${LangFileString} lng_pt_BR "Portugais/Brésil (pt_BR)"
+${LangFileString} lng_ro "Roumain (ro)"
+${LangFileString} lng_ru "Russe (ru)"
+${LangFileString} lng_rw "Kinyarouanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali, écriture dévanagarie (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi, écriture dévanagarie (sd@deva)"
+${LangFileString} lng_sk "Slovaque (sk)"
+${LangFileString} lng_sl "Slovène (sl)"
+${LangFileString} lng_sq "Albanais (sq)"
+${LangFileString} lng_sr "Serbe (sr)"
+${LangFileString} lng_sr@latin "Serbe, alphabet latin (sr@latin)"
+${LangFileString} lng_sv "Suédois (sv)"
+${LangFileString} lng_ta "Tamoul (ta)"
+${LangFileString} lng_te "Télougou (te)"
+${LangFileString} lng_th "Thaï (th)"
+${LangFileString} lng_tr "Turc (tr)"
+${LangFileString} lng_uk "Ukrainien (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamien (vi)"
+${LangFileString} lng_zh_CN "Chinois/Chine (zh_CN)"
+${LangFileString} lng_zh_TW "Chinois/Taïwan (zh_TW)"
diff --git a/packaging/win32/languages/Galician.nsh b/packaging/win32/languages/Galician.nsh
index d151c552e..f107118b1 100644
--- a/packaging/win32/languages/Galician.nsh
+++ b/packaging/win32/languages/Galician.nsh
@@ -1,117 +1,55 @@
-;Language: Galician (1110, CP1252)
+;Language: Galician (1110)
;By Leandro Regueiro leandro.regueiro@gmail.com
-${LangFileString} CaptionDescription "Editor de Gráficos Vectoriais Escalables (SVG) de Código Aberto"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) publícase baixo GNU General Public License (GPL). A licenza amósase aquí só para informalo. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape foi instalado polo usuario $0.$\r$\nSe continua pode que non consiga rematar a instalación con éxito!$\r$\nEntre no sistema coma $0 e ténteo de novo."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 xa foi instalado. $\nDesexa eliminar a versión anterior antes de instalar $(^Name) ?"
+${LangFileString} CaptionDescription "Editor de Gráficos Vectoriais Escalables (SVG) de Código Aberto"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) publícase baixo GNU General Public License (GPL). A licenza amósase aquí só para informalo. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape foi instalado polo usuario $0.$\r$\nSe continua pode que non consiga rematar a instalación con éxito!$\r$\nEntre no sistema coma $0 e ténteo de novo."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 xa foi instalado. $\nDesexa eliminar a versión anterior antes de instalar $(^Name) ?"
${LangFileString} OK_CANCEL_DESC "$\n$\nPrema Aceptar para continuar ou prema CANCELAR para abortar."
-${LangFileString} NO_ADMIN "Non ten privilexios de administrador.$\r$\nPode que non consiga rematar con éxito a instalación de Inkscape para tódolos usuarios.$\r$\nDesmarque a opción 'para tódolos usuarios'."
-${LangFileString} NOT_SUPPORTED "Sábese que Inkscape non funciona en Windows 95/98/ME!$\r$\nConsulte o sitio web oficial para obter información máis detallada."
+${LangFileString} NO_ADMIN "Non ten privilexios de administrador.$\r$\nPode que non consiga rematar con éxito a instalación de Inkscape para tódolos usuarios.$\r$\nDesmarque a opción 'para tódolos usuarios'."
+${LangFileString} NOT_SUPPORTED "Sábese que Inkscape non funciona en Windows 95/98/ME!$\r$\nConsulte o sitio web oficial para obter información máis detallada."
${LangFileString} Full "Completa"
-${LangFileString} Optimal "Óptima"
-${LangFileString} Minimal "Mínima"
+${LangFileString} Optimal "Óptima"
+${LangFileString} Minimal "Mínima"
${LangFileString} Core "Editor de SVG Inkscape (requirido)"
-${LangFileString} CoreDesc "Ficheiros básicos de Inkscape e dlls"
-${LangFileString} GTKFiles "Ambiente de Execución GTK+ (requirido)"
+${LangFileString} CoreDesc "Ficheiros básicos de Inkscape e dlls"
+${LangFileString} GTKFiles "Ambiente de Execución GTK+ (requirido)"
${LangFileString} GTKFilesDesc "Un toolkit GUI multiplataforma, usado por Inkscape"
${LangFileString} Shortcuts "Accesos Directos"
${LangFileString} ShortcutsDesc "Accesos directos para iniciar Inkscape"
-${LangFileString} Alluser "para tódolos usuarios"
-${LangFileString} AlluserDesc "Instalar esta aplicación para tódolos que usan este ordenador (tódolos usuarios)"
+${LangFileString} Alluser "para tódolos usuarios"
+${LangFileString} AlluserDesc "Instalar esta aplicación para tódolos que usan este ordenador (tódolos usuarios)"
${LangFileString} Desktop "Escritorio"
${LangFileString} DesktopDesc "Crear un acceso directo para Inkscape no Escritorio"
-${LangFileString} Startmenu "Menú Inicio"
-${LangFileString} StartmenuDesc "Crear unha entrada no Menú Inicio para Inkscape"
-${LangFileString} Quicklaunch "Inicio Rápido"
-${LangFileString} QuicklaunchDesc "Crear un acceso directo para Inkscape na barra de Inicio Rápido"
+${LangFileString} Startmenu "Menú Inicio"
+${LangFileString} StartmenuDesc "Crear unha entrada no Menú Inicio para Inkscape"
+${LangFileString} Quicklaunch "Inicio Rápido"
+${LangFileString} QuicklaunchDesc "Crear un acceso directo para Inkscape na barra de Inicio Rápido"
${LangFileString} SVGWriter "Abrir ficheiros SVG con Inkscape"
${LangFileString} SVGWriterDesc "Seleccionar Inkscape coma o editor predeterminado para os ficheiros SVG"
-${LangFileString} ContextMenu "Menú Contextual"
-${LangFileString} ContextMenuDesc "Engadir Inkscape ó Menú Contextual dos ficheiros SVG"
-${LangFileString} DeletePrefs "Eliminar as configuracións persoais"
-${LangFileString} DeletePrefsDesc "Eliminar as configuracións persoais de instalacións anteriores"
+${LangFileString} ContextMenu "Menú Contextual"
+${LangFileString} ContextMenuDesc "Engadir Inkscape ó Menú Contextual dos ficheiros SVG"
+${LangFileString} DeletePrefs "Eliminar as configuracións persoais"
+${LangFileString} DeletePrefsDesc "Eliminar as configuracións persoais de instalacións anteriores"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Ficheiros Adicionais"
${LangFileString} AddfilesDesc "Ficheiros Adicionais"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Exemplos"
${LangFileString} ExamplesDesc "Exemplos de uso de Inkscape"
${LangFileString} Tutorials "Titoriais"
${LangFileString} TutorialsDesc "Titoriais de Inkscape"
-${LangFileString} Languages "Traducións"
-${LangFileString} LanguagesDesc "Instala varias traducións de Inkscape"
-${LangFileString} lng_am "Amhárico"
-${LangFileString} lng_ar "Arabic"
-${LangFileString} lng_az "Azerí"
-${LangFileString} lng_be "Bielorruso"
-${LangFileString} lng_bg "Búlgaro"
-${LangFileString} lng_bn "Bengalí"
-${LangFileString} lng_br "Breton"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_ca "Catalán"
-${LangFileString} lng_ca@valencia "Catalán Valenciano"
-${LangFileString} lng_cs "Checo"
-${LangFileString} lng_da "Danés"
-${LangFileString} lng_de "Alemán"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Grego"
-${LangFileString} lng_en "Inglés"
-${LangFileString} lng_en_AU "Inglés Australiano"
-${LangFileString} lng_en_CA "Inglés Canadense"
-${LangFileString} lng_en_GB "Inglés Británico"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Español"
-${LangFileString} lng_es_MX "Español Mexicano"
-${LangFileString} lng_et "Estonio"
-${LangFileString} lng_eu "Éuscaro "
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finés"
-${LangFileString} lng_fr "Francés"
-${LangFileString} lng_ga "Gaélico Irlandés"
-${LangFileString} lng_gl "Galego"
-${LangFileString} lng_he "Hebreo"
-${LangFileString} lng_hr "Croata"
-${LangFileString} lng_hu "Húngaro"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonesio"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italiano"
-${LangFileString} lng_ja "Xaponés"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Coreano"
-${LangFileString} lng_lt "Lituano"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedonio"
-${LangFileString} lng_mn "Mongol"
-${LangFileString} lng_ne "Nepalí"
-${LangFileString} lng_nb "Noruegués Bokmål"
-${LangFileString} lng_nl "Neerlandés"
-${LangFileString} lng_nn "Noruegués Nynorsk"
-${LangFileString} lng_pa "Punjabi"
-${LangFileString} lng_pl "Polaco"
-${LangFileString} lng_pt "Portugués"
-${LangFileString} lng_pt_BR "Portugués Brasileiro"
-${LangFileString} lng_ro "Romanés"
-${LangFileString} lng_ru "Ruso"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Eslovaco"
-${LangFileString} lng_sl "Eslovenio"
-${LangFileString} lng_sq "Albanés"
-${LangFileString} lng_sr "Serbio"
-${LangFileString} lng_sr@latin "Serbio con alfabeto Latino"
-${LangFileString} lng_sv "Sueco"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Tailandés"
-${LangFileString} lng_tr "Turco"
-${LangFileString} lng_uk "Ucraíno"
-${LangFileString} lng_vi "Vietnamita"
-${LangFileString} lng_zh_CN "Chinés Simplificado"
-${LangFileString} lng_zh_TW "Chinés Tradicional"
-${LangFileString} UInstOpt "Opcións de Desinstalación"
-${LangFileString} UInstOpt1 "Escolla as opcións adicionais"
-${LangFileString} PurgePrefs "Conservar a Configuración persoal"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Traducións"
+${LangFileString} LanguagesDesc "Instala varias traducións de Inkscape"
+${LangFileString} UInstOpt "Opcións de Desinstalación"
+${LangFileString} UInstOpt1 "Escolla as opcións adicionais"
+${LangFileString} PurgePrefs "Conservar a Configuración persoal"
${LangFileString} UninstallLogNotFound "Non se atopou $INSTDIR\uninstall.log!$\r$\nDesinstale baleirando vostede mesmo o directorio $INSTDIR!"
-${LangFileString} FileChanged "O ficheiro $filename cambiou despois da instalación.$\r$\nAinda desexa eliminar ese ficheiro?"
-${LangFileString} Yes "Sí"
-${LangFileString} AlwaysYes "sempre responder Sí"
+${LangFileString} FileChanged "O ficheiro $filename cambiou despois da instalación.$\r$\nAinda desexa eliminar ese ficheiro?"
+${LangFileString} Yes "Sí"
+${LangFileString} AlwaysYes "sempre responder Sí"
${LangFileString} No "Non"
${LangFileString} AlwaysNo "sempre responder Non"
diff --git a/packaging/win32/languages/Galician_languageNames.nsh b/packaging/win32/languages/Galician_languageNames.nsh
new file mode 100644
index 000000000..34c67228c
--- /dev/null
+++ b/packaging/win32/languages/Galician_languageNames.nsh
@@ -0,0 +1,94 @@
+### Galician (gl) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Galician.nsh'
+${LangFileString} lng_am "Amharic (am)"
+${LangFileString} lng_ar "Ãrabe (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Acerí (az)"
+${LangFileString} lng_be "Bieloruso (be)"
+${LangFileString} lng_bg "Búlgaro (bg)"
+${LangFileString} lng_bn "Bengalí (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretón (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalán (ca)"
+${LangFileString} lng_ca@valencia "Catalán de Valencia (ca@valencia)"
+${LangFileString} lng_cs "Checo (cs)"
+${LangFileString} lng_da "Dinamarqués (da)"
+${LangFileString} lng_de "Alemán (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Grego (el)"
+${LangFileString} lng_en "Inglés (en)"
+${LangFileString} lng_en_AU "Inglés de Australia (en_AU)"
+${LangFileString} lng_en_CA "Inglés de Canadá (en_CA)"
+${LangFileString} lng_en_GB "Inglés de Gran Bretaña (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Castelán (es)"
+${LangFileString} lng_es_MX "Castelán de México (es_MX)"
+${LangFileString} lng_et "Estonio (et)"
+${LangFileString} lng_eu "Éuscaro (eu)"
+${LangFileString} lng_fa "Persa (fa)"
+${LangFileString} lng_fi "Finlandés (fi)"
+${LangFileString} lng_fr "Francés (fr)"
+${LangFileString} lng_ga "Irlandés (ga)"
+${LangFileString} lng_gl "Galego (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebreo (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croata (hr)"
+${LangFileString} lng_hu "Húngaro (hu)"
+${LangFileString} lng_hy "Armenio (hy)"
+${LangFileString} lng_id "Indonesio (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italiano (it)"
+${LangFileString} lng_ja "Xaponés (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Coreano (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Lituano (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedonio (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongol (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Noruegués, Bokmål (nb)"
+${LangFileString} lng_ne "Nepalí (ne)"
+${LangFileString} lng_nl "Holandés (nl)"
+${LangFileString} lng_nn "Noruegués, Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polaco (pl)"
+${LangFileString} lng_pt "Portugués (pt)"
+${LangFileString} lng_pt_BR "Portugués brasileiro (pt_BR)"
+${LangFileString} lng_ro "Romanés (ro)"
+${LangFileString} lng_ru "Ruso (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Eslovaco (sk)"
+${LangFileString} lng_sl "Esloveno (sl)"
+${LangFileString} lng_sq "Albanés (sq)"
+${LangFileString} lng_sr "Serbio (sr)"
+${LangFileString} lng_sr@latin "Serbio en alfabeto latino (sr@latin)"
+${LangFileString} lng_sv "Sueco (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Tailandés (th)"
+${LangFileString} lng_tr "Turco (tr)"
+${LangFileString} lng_uk "Ucraíno (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamita (vi)"
+${LangFileString} lng_zh_CN "Chinés de China (zh_CN)"
+${LangFileString} lng_zh_TW "Chinés de Taiwán (zh_TW)"
diff --git a/packaging/win32/languages/German.nsh b/packaging/win32/languages/German.nsh
index 7c5438b79..bb0f8ec00 100644
--- a/packaging/win32/languages/German.nsh
+++ b/packaging/win32/languages/German.nsh
@@ -1,116 +1,54 @@
-;Language: German (1031, CP1252)
+;Language: German (1031)
;By Adib Taraben <theadib@gmail.com>
-${LangFileString} CaptionDescription "Open Source SVG-Vektorillustrator"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) wird unter der GNU General Public License (GPL) veröffentlicht. Die Lizenz dient hier nur der Information. $_CLICK"
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 wurde bereits installiert. $\nSoll die vorhergehende Version vor dem Installieren von $(^Name) zuerst deinstalliert werden?"
+${LangFileString} CaptionDescription "Open-Source-Vektorgrafikeditor"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) wird unter der GNU General Public License (GPL) veröffentlicht. Die Lizenz dient hier nur der Information. $_CLICK"
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 wurde bereits installiert. $\nSoll die vorherige Version vor dem Installieren von $(^Name) zuerst deinstalliert werden?"
${LangFileString} OK_CANCEL_DESC "$\n$\nOK um fortzufahren oder Abbrechen zum sofortigen Beenden."
-${LangFileString} DIFFERENT_USER "Inkscape wurde durch den Benutzer $0 installiert.$\r$\nWenn Sie fortfahren kann die Aktion möglicherweise nicht korrekt abgeschlossen werden!$\r$\nBitte melden Sie sich als $0 an und versuchen Sie es erneut."
-${LangFileString} NO_ADMIN "Sie sind nicht Computeradministrator.$\r$\nDas Installieren für alle Benutzer kann möglicherweise nicht korrekt abgeschlossen werden.$\r$\nBitte deselektieren Sie die Option 'für Alle Benutzer'."
-${LangFileString} NOT_SUPPORTED "Es ist bekannt, dass Inkscape unter Windows 95/98/ME nicht oder nicht stabil läuft!$\r$\nBitte prüfen Sie die offizielle Webseite für detaillierte Informationen."
-${LangFileString} Full "Komplett"
+${LangFileString} DIFFERENT_USER "Inkscape wurde bereits durch den Benutzer $0 installiert.$\r$\nWenn Sie fortfahren kann die Aktion möglicherweise nicht korrekt abgeschlossen werden!$\r$\nBitte melden Sie sich als $0 an und versuchen Sie es erneut."
+${LangFileString} NO_ADMIN "Sie sind nicht Computeradministrator.$\r$\nDas Installieren für alle Benutzer kann möglicherweise nicht korrekt abgeschlossen werden.$\r$\nBitte wählen Sie die Option 'Für alle Benutzer' ab."
+${LangFileString} NOT_SUPPORTED "Es ist bekannt, dass Inkscape unter Windows 95/98/ME nicht oder nicht stabil läuft!$\r$\nBitte prüfen Sie die offizielle Webseite für detaillierte Informationen."
+${LangFileString} Full "Vollständig"
${LangFileString} Optimal "Optimal"
${LangFileString} Minimal "Minimal"
-${LangFileString} Core "Inkscape Vektorillustrator (erforderlich)"
-${LangFileString} CoreDesc "Inkscape Basis-Dateien und -DLLs"
-${LangFileString} GTKFiles "GTK+ Runtime Umgebung (erforderlich)"
-${LangFileString} GTKFilesDesc "Ein Multi-Plattform GUI Toolkit, verwendet von Inkscape"
-${LangFileString} Shortcuts "Verknüpfungen"
-${LangFileString} ShortcutsDesc "Verknüpfungen zum Start von Inkscape"
-${LangFileString} Alluser "für Alle Benutzer"
-${LangFileString} AlluserDesc "Installiert diese Anwendung für alle Benutzer dieses Computers (all users)"
-${LangFileString} Startmenu "Startmenü"
-${LangFileString} StartmenuDesc "Erstellt einen Eintrag für Inkscape im Startmenü"
+${LangFileString} Core "Inkscape-Vektorgrafikeditor (erforderlich)"
+${LangFileString} CoreDesc "Inkscape-Basisdateien und -DLLs"
+${LangFileString} GTKFiles "GTK+-Laufzeitumgebung (erforderlich)"
+${LangFileString} GTKFilesDesc "Ein Multi-Plattform-GUI-Toolkit, verwendet von Inkscape"
+${LangFileString} Shortcuts "Verknüpfungen"
+${LangFileString} ShortcutsDesc "Verknüpfungen zum Start von Inkscape"
+${LangFileString} Alluser "Für alle Benutzer"
+${LangFileString} AlluserDesc "Installiert diese Anwendung für alle Benutzer dieses Computers (all users)"
+${LangFileString} Startmenu "Startmenü"
+${LangFileString} StartmenuDesc "Erstellt einen Eintrag für Inkscape im Startmenü"
${LangFileString} Desktop "Desktop"
-${LangFileString} DesktopDesc "Erstellt eine Verknüpfung zu Inkscape auf dem Desktop"
+${LangFileString} DesktopDesc "Erstellt eine Verknüpfung zu Inkscape auf dem Desktop"
${LangFileString} Quicklaunch "Schnellstartleiste"
-${LangFileString} QuicklaunchDesc "Erstellt eine Verknüpfung zu Inkscape auf der Schnellstartleiste"
-${LangFileString} SVGWriter "Öffne SVG Dateien mit Inkscape"
-${LangFileString} SVGWriterDesc "Wählen Sie Inkscape als Standardanwendung für SVG Dateien"
-${LangFileString} ContextMenu "Kontext-Menü"
-${LangFileString} ContextMenuDesc "Fügt Inkscape in das Kontext-Menü für SVG Dateien ein"
-${LangFileString} DeletePrefs "Persönliche Inkscape-Vorgaben löschen"
-${LangFileString} DeletePrefsDesc "Löscht verbliebene persönliche Inkscape-Vorgaben einer vorhergehenden Version"
-${LangFileString} Addfiles "weitere Dateien"
-${LangFileString} AddfilesDesc "weitere Dateien"
+${LangFileString} QuicklaunchDesc "Erstellt eine Verknüpfung zu Inkscape in der Schnellstartleiste"
+${LangFileString} SVGWriter "SVG-Dateien mit Inkscape öffnen"
+${LangFileString} SVGWriterDesc "Inkscape als Standardanwendung für SVG-Dateien festlegen"
+${LangFileString} ContextMenu "Kontextmenü"
+${LangFileString} ContextMenuDesc "Fügt Inkscape in das Kontextmenü von SVG-Dateien ein"
+${LangFileString} DeletePrefs "Persönliche Inkscape-Einstellungen löschen"
+${LangFileString} DeletePrefsDesc "Löscht verbliebene persönliche Inkscape-Einstellungen einer vorherigen Installation"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "Ein Interpreter für die Programmiersprache Python und Python-Module zum Ausführen von Erweiterungen."
+${LangFileString} Addfiles "Zusätzliche Dateien"
+${LangFileString} AddfilesDesc "Zusätzliche Dateien"
+${LangFileString} Extensions "Erweiterungen"
+${LangFileString} ExtensionsDesc "Inkscape-Erweiterungen (inklusive vieler Import- und Exportplugins)"
${LangFileString} Examples "Beispiele"
-${LangFileString} ExamplesDesc "Beispiele mit Inkscape"
+${LangFileString} ExamplesDesc "Beispieldateien, die mit Inkscape erstellt wurden"
${LangFileString} Tutorials "Tutorials"
-${LangFileString} TutorialsDesc "Tutorials für die Benutzung mit Inkscape"
-${LangFileString} Languages "Übersetzungen"
-${LangFileString} LanguagesDesc "Installiert verschiedene Übersetzungen für Inkscape"
-${LangFileString} lng_am "Amharisch"
-${LangFileString} lng_ar "Arabisch"
-${LangFileString} lng_az "Aserbaidschanisch"
-${LangFileString} lng_be "Weißrussisch"
-${LangFileString} lng_bg "Bulgarisch"
-${LangFileString} lng_bn "Bengalisch"
-${LangFileString} lng_bn_BD "Bangladesch Bengalisch"
-${LangFileString} lng_br "Bretonisch"
-${LangFileString} lng_ca "Katalanisch"
-${LangFileString} lng_ca@valencia "Valencianisch Katalanisch"
-${LangFileString} lng_cs "Tschechisch"
-${LangFileString} lng_da "Dänisch"
-${LangFileString} lng_de "Deutsch"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Griechisch"
-${LangFileString} lng_en "Englisch"
-${LangFileString} lng_en_AU "Australisch Englisch"
-${LangFileString} lng_en_CA "Kanadisch Englisch"
-${LangFileString} lng_en_GB "Britisch Englisch"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spanisch"
-${LangFileString} lng_es_MX "Spanisch-Mexio"
-${LangFileString} lng_et "Estonisch"
-${LangFileString} lng_eu "Baskisch"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finnisch"
-${LangFileString} lng_fr "Französisch"
-${LangFileString} lng_ga "Irisch"
-${LangFileString} lng_gl "Galizisch"
-${LangFileString} lng_he "Hebräisch"
-${LangFileString} lng_hr "Kroatisch"
-${LangFileString} lng_hu "Ungarisch"
-${LangFileString} lng_hy "Armenisch"
-${LangFileString} lng_id "Indonesian"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italienisch"
-${LangFileString} lng_ja "Japanisch"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Koreanisch"
-${LangFileString} lng_lt "Litauisch"
-${LangFileString} lng_lv "Lettisch"
-${LangFileString} lng_mn "Mongolisch"
-${LangFileString} lng_mk "Mazedonisch"
-${LangFileString} lng_ne "Nepalisch"
-${LangFileString} lng_nb "Norwegisch-Bokmal"
-${LangFileString} lng_nl "Holländisch"
-${LangFileString} lng_nn "Nynorsk-Norwegisch"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polnisch"
-${LangFileString} lng_pt "Portugiesisch"
-${LangFileString} lng_pt_BR "Portugiesisch Brazilien"
-${LangFileString} lng_ro "Rumänisch"
-${LangFileString} lng_ru "Russisch"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slowakisch"
-${LangFileString} lng_sl "Slowenisch"
-${LangFileString} lng_sq "Albanisch"
-${LangFileString} lng_sr "Serbisch"
-${LangFileString} lng_sr@latin "Serbisch mit lat. Buchstaben"
-${LangFileString} lng_sv "Schwedisch"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Türkisch"
-${LangFileString} lng_uk "Ukrainisch"
-${LangFileString} lng_vi "Vietnamesisch"
-${LangFileString} lng_zh_CN "Chinesisch (vereinfacht)"
-${LangFileString} lng_zh_TW "Chinesisch (traditionell)"
-${LangFileString} UInstOpt "Deinstallations Optionen"
-${LangFileString} UInstOpt1 "Bitte wählen Sie die optionalen Deinstalltionsparameter"
-${LangFileString} PurgePrefs "behalte persönliche Inkscape-Vorgaben"
-${LangFileString} UninstallLogNotFound "Datei $INSTDIR\uninstall.log nicht gefunden!$\r$\nBitte deinstallieren Sie selbst durch Löschen von $INSTDIR!"
-${LangFileString} FileChanged "Die Datei $filename wurde nach der Installation geändert.$\r$\nMöchten Sie trotzden diese Datei löschen?"
+${LangFileString} TutorialsDesc "Tutorials für die Benutzung von Inkscape"
+${LangFileString} Dictionaries "Wörterbücher"
+${LangFileString} DictionariesDesc "Wörterbücher für einige gängige Sprachen zur Rechtschreibprüfung in Inkscape"
+${LangFileString} Languages "Übersetzungen"
+${LangFileString} LanguagesDesc "Übersetzungen und sprachspezifische Inhalte für Inkscape"
+${LangFileString} UInstOpt "Deinstallations-Optionen"
+${LangFileString} UInstOpt1 "Bitte wählen Sie die optionalen Deinstallationsparameter"
+${LangFileString} PurgePrefs "Persönliche Inkscape-Einstellungen behalten"
+${LangFileString} UninstallLogNotFound "Datei $INSTDIR\uninstall.log nicht gefunden!$\r$\nBitte deinstallieren Sie selbst durch Löschen von $INSTDIR!"
+${LangFileString} FileChanged "Die Datei $filename wurde nach der Installation geändert.$\r$\nMöchten Sie diese Datei trotzdem löschen?"
${LangFileString} Yes "Ja"
${LangFileString} AlwaysYes "immer mit Ja antworten"
${LangFileString} No "Nein"
diff --git a/packaging/win32/languages/German_languageNames.nsh b/packaging/win32/languages/German_languageNames.nsh
new file mode 100644
index 000000000..15cb3e103
--- /dev/null
+++ b/packaging/win32/languages/German_languageNames.nsh
@@ -0,0 +1,94 @@
+### German (de) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'German.nsh'
+${LangFileString} lng_am "Amharisch (am)"
+${LangFileString} lng_ar "Arabisch (ar)"
+${LangFileString} lng_as "Assamesisch (as)"
+${LangFileString} lng_az "Aserbeidschanisch (az)"
+${LangFileString} lng_be "Belorussisch (be)"
+${LangFileString} lng_bg "Bulgarisch (bg)"
+${LangFileString} lng_bn "Bengalesisch (bn)"
+${LangFileString} lng_bn_BD "Bengalesisch (bn_BD)"
+${LangFileString} lng_br "Bretonisch (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Katalanisch (ca)"
+${LangFileString} lng_ca@valencia "Valencianisches Katalan (ca@valencia)"
+${LangFileString} lng_cs "Tschechisch (cs)"
+${LangFileString} lng_da "Dänisch (da)"
+${LangFileString} lng_de "Deutsch (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Griechisch (el)"
+${LangFileString} lng_en "Englisch (en)"
+${LangFileString} lng_en_AU "Englisch/Australien (en_AU)"
+${LangFileString} lng_en_CA "Englisch/Kanada (en_CA)"
+${LangFileString} lng_en_GB "Englisch/Großbritannien (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spanisch (es)"
+${LangFileString} lng_es_MX "Spanisch/Mexico (es_MX)"
+${LangFileString} lng_et "Estnisch (et)"
+${LangFileString} lng_eu "Baskisch (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "Finnisch (fi)"
+${LangFileString} lng_fr "Französisch (fr)"
+${LangFileString} lng_ga "Irisch (ga)"
+${LangFileString} lng_gl "Galizisch (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebräisch (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Kroatisch (hr)"
+${LangFileString} lng_hu "Ungarisch (hu)"
+${LangFileString} lng_hy "Armenisch (hy)"
+${LangFileString} lng_id "Indonesisch (id)"
+${LangFileString} lng_is "Isländisch (is)"
+${LangFileString} lng_it "Italienisch (it)"
+${LangFileString} lng_ja "Japanisch (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Koreanisch (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in lateinischer Schrift (sr@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in erweiterter arabischer Schrift (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari-Schrift (ks@deva)"
+${LangFileString} lng_lt "Litauisch (lt)"
+${LangFileString} lng_lv "Lettisch (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Mazedonisch (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolisch (mn)"
+${LangFileString} lng_mni "Meitei (mni)"
+${LangFileString} lng_mni@beng "Manipuri in bengalischer Schrift (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norwegisch/Bokmål (nb)"
+${LangFileString} lng_ne "Nepalesisch (ne)"
+${LangFileString} lng_nl "Niderländisch (nl)"
+${LangFileString} lng_nn "Norwegisch/Nynorsk (nn)"
+${LangFileString} lng_or "Orya (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polnisch (pl)"
+${LangFileString} lng_pt "Portugisisch(pt)"
+${LangFileString} lng_pt_BR "Portugisisch/Brasilien (pt_BR)"
+${LangFileString} lng_ro "Rumänisch (ro)"
+${LangFileString} lng_ru "Russisch (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari-Schrift (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari-Schrift (sd@deva)"
+${LangFileString} lng_sk "Slovakisch (sk)"
+${LangFileString} lng_sl "Slovenisch (sl)"
+${LangFileString} lng_sq "Albanisch (sq)"
+${LangFileString} lng_sr "Serbisch (sr)"
+${LangFileString} lng_sr@latin "Serbisch in lateinischer Schrift (sr@latin)"
+${LangFileString} lng_sv "Schwedisch (sv)"
+${LangFileString} lng_ta "Tamilisch (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Thai (th)"
+${LangFileString} lng_tr "Türkisch (tr)"
+${LangFileString} lng_uk "Ukrainisch (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamesisch (vi)"
+${LangFileString} lng_zh_CN "Chinesisch/china (zh_CN)"
+${LangFileString} lng_zh_TW "Chinesisch/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Greek.nsh b/packaging/win32/languages/Greek.nsh
index c8955aa63..2f07e36b1 100644
--- a/packaging/win32/languages/Greek.nsh
+++ b/packaging/win32/languages/Greek.nsh
@@ -1,117 +1,55 @@
-;Language: ÅëëçíéêÜ (1032, CP1253)
-;By Dimitris Spingos (ÄçìÞôñçò Óðßããïò) <dmtrs32@gmail.com>
-${LangFileString} CaptionDescription "ÅðåîåñãáóôÞò ãñáöéêþí êëéìáêþóéìùí äéáíõóìÜôùí áíïéêôïý êþäéêá"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) åêäßäåôáé ìå ôç ãåíéêÞ Üäåéá ÷ñÞóçò (GPL). Ç Üäåéá ðáñÝ÷åôáé åäþ ìüíï ãéá ëüãïõò ðëçñïöüñçóçò. $_CLICK"
-${LangFileString} DIFFERENT_USER "Ôï Inkscape åãêáôáóôÜèçêå áðü ôï ÷ñÞóôç $0.$\r$\nÅÜí óõíå÷ßóåôå ßóùò äåí ïëïêëçñþóåôå ìå åðéôõ÷ßá!$\r$\nÐáñáêáëþ óõíäåèåßôå ùò $0 êáé îáíáðñïóðáèÞóôå."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 Ý÷åé Þäç åãêáôáóôáèåß. $\nÈÝëåôå íá áðåãêáôáóôÞóåôå ôçí ðñïçãïýìåíç Ýêäïóç ðñéí ôçí åãêáôÜóôáóç $(^Name);"
-${LangFileString} OK_CANCEL_DESC "$\n$\nÐáôÞóôå ÅÍÔÁÎÅÉ ãéá óõíÝ÷éóç Þ ðáôÞóôå ÁÊÕÑÙÓÇ ãéá åãêáôÜëåéøç."
-${LangFileString} NO_ADMIN "Äåí Ý÷åôå äéêáéþìáôá äéá÷åéñéóôÞ.$\r$\nÇ åãêáôÜóôáóç ôïõ Inkscape ãéá üëïõò ôïõò ÷ñÞóôåò ßóùò íá ìçí ïëïêëçñùèåß ìå åðéôõ÷ßá.$\r$\nÁðïåðéëÝîôå ôï 'ÅãêáôÜóôáóç ãéá üëïõò ôïõò ÷ñÞóôåò'."
-${LangFileString} NOT_SUPPORTED "Ôï Inkscape äåí ôñÝ÷åé óå Windows 95/98/ME!$\r$\nÐáñáêáëþ åëÝãîôå ôïí åðßóçìï éóôüôïðï ãéá ëåðôïìåñåßò ðëçñïöïñßåò."
-${LangFileString} Full "ÐëÞñçò"
-${LangFileString} Optimal "ÂÝëôéóôç"
-${LangFileString} Minimal "ÅëÜ÷éóôç"
-${LangFileString} Core "ÅðåîåñãáóôÞò Inkscape SVG (áðáéôåßôáé)"
-${LangFileString} CoreDesc "Áñ÷åßá ðõñÞíá Inkscape êáé dlls"
-${LangFileString} GTKFiles "GTK+ Runtime Environment (áðáéôåßôáé)"
-${LangFileString} GTKFilesDesc "Ìéá åñãáëåéïèÞêç GUI ðïëëáðëïý ëïãéóìéêïý, ÷ñçóéìïðïéåßôáé áðü ôï Inkscape"
-${LangFileString} Shortcuts "Óõíôïìåýóåéò"
-${LangFileString} ShortcutsDesc "Óõíôïìåýóåéò ãéá åêêßíçóç ôïõ Inkscape"
-${LangFileString} Alluser "ÅãêáôÜóôáóç ãéá üëïõò ôïõò ÷ñÞóôåò"
-${LangFileString} AlluserDesc "ÅãêáôÜóôáóç áõôÞò ôçò åöáñìïãÞò ãéá ïðïéïíäÞðïôå ÷ñçóéìïðïéåß áõôüí ôïí õðïëïãéóôÞ (üëïé ïé ÷ñÞóôåò)"
-${LangFileString} Desktop "ÅðéöÜíåéá åñãáóßáò"
-${LangFileString} DesktopDesc "Äçìéïõñãßá ìéáò óõíôüìåõóçò ôïõ Inkscape óôçí åðéöÜíåéá åñãáóßáò"
-${LangFileString} Startmenu "Ìåíïý Ýíáñîçò"
-${LangFileString} StartmenuDesc "Äçìéïõñãßá åéóüäïõ ìåíïý Ýíáñîçò ãéá ôï Inkscape"
-${LangFileString} Quicklaunch "ÃñÞãïñç åêêßíçóç"
-${LangFileString} QuicklaunchDesc "Äçìéïõñãßá ìéáò óõíôüìåõóçò ôïõ Inkscape óôç ãñáììÞ åñãáëåßùí ãñÞãïñçò åêêßíçóçò"
-${LangFileString} SVGWriter "¢íïéãìá áñ÷åßùí SVG ìå ôï Inkscape"
-${LangFileString} SVGWriterDesc "ÅðéëïãÞ ôïõ Inkscape ùò ðñïåðéëåãìÝíïõ åðåîåñãáóôÞ ãéá áñ÷åßá SVG"
-${LangFileString} ContextMenu "Èåìáôéêü ìåíïý"
-${LangFileString} ContextMenuDesc "ÐñïóèÞêç ôïõ Inkscape óôï èåìáôéêü ìåíïý ãéá áñ÷åßá SVG"
-${LangFileString} DeletePrefs "ÄéáãñáöÞ ðñïóùðéêþí ðñïôéìÞóåùí"
-${LangFileString} DeletePrefsDesc "ÄéáãñáöÞ ðñïóùðéêþí ðñïôéìÞóåùí ðïõ áðÝìåéíáí áðü ðñïçãïýìåíåò åãêáôáóôÜóåéò"
-${LangFileString} Addfiles "Ðñüóèåôá áñ÷åßá"
-${LangFileString} AddfilesDesc "Ðñüóèåôá áñ÷åßá"
-${LangFileString} Examples "Ðáñáäåßãìáôá"
-${LangFileString} ExamplesDesc "Ðáñáäåßãìáôá ÷ñÞóçò ôïõ Inkscape"
-${LangFileString} Tutorials "ÌáèÞìáôá"
-${LangFileString} TutorialsDesc "ÌáèÞìáôá ÷ñÞóçò ôïõ Inkscape"
-${LangFileString} Languages "ÌåôáöñÜóåéò"
-${LangFileString} LanguagesDesc "ÅãêáôÜóôáóç ðïéêßëùí ìåôáöñÜóåùí ãéá ôï Inkscape"
-${LangFileString} lng_am "Áì÷áñéêÜ"
-${LangFileString} lng_ar "ÁñáâéêÜ"
-${LangFileString} lng_az "ÁæÝñéêá"
-${LangFileString} lng_be "Ëåõêïñþóéêá"
-${LangFileString} lng_bg "ÂïõëãáñéêÜ"
-${LangFileString} lng_bn "ÌðåíãêÜëé"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "ÂñåôïíéêÜ"
-${LangFileString} lng_ca "ÊáôáëáíéêÜ"
-${LangFileString} lng_ca@valencia "ÊáôáëáíéêÜ ÂáëÝíèéáò"
-${LangFileString} lng_cs "ÔóÝ÷éêá"
-${LangFileString} lng_da "ÄáíÝæéêá"
-${LangFileString} lng_de "ÃåñìáíéêÜ"
-${LangFileString} lng_dz "Íôæüíãêá"
-${LangFileString} lng_el "ÅëëçíéêÜ"
-${LangFileString} lng_en "ÁããëéêÜ"
-${LangFileString} lng_en_AU "ÁããëéêÜ Áõóôñáëßáò"
-${LangFileString} lng_en_CA "ÁããëéêÜ ÊáíáäÜ"
-${LangFileString} lng_en_GB "ÁããëéêÜ Âñåôáíßáò"
-${LangFileString} lng_en_US@piglatin "Pig ËáôéíéêÜ"
-${LangFileString} lng_eo "ÅóðåñÜíôï"
-${LangFileString} lng_es "ÉóðáíéêÜ"
-${LangFileString} lng_es_MX "ÉóðáíéêÜ Ìåîéêïý"
-${LangFileString} lng_et "ÅóèïíéêÜ"
-${LangFileString} lng_eu "ÂáóêéêÜ"
-${LangFileString} lng_fa "Öáñóß"
-${LangFileString} lng_fi "ÖéíëáíäéêÜ"
-${LangFileString} lng_fr "ÃáëëéêÜ"
-${LangFileString} lng_ga "ÉñëáíäéêÜ"
-${LangFileString} lng_gl "ÃáëéêéáíéêÜ"
-${LangFileString} lng_he "ÅâñáúêÜ"
-${LangFileString} lng_hr "ÊñïáôéêÜ"
-${LangFileString} lng_hu "ÏõããñéêÜ"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "ÉíäïíçóéáêÜ"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "ÉôáëéêÜ"
-${LangFileString} lng_ja "ÃéáðùíÝæéêá"
-${LangFileString} lng_km "×ìåñ"
-${LangFileString} lng_ko "ÊïñåáôéêÜ"
-${LangFileString} lng_lt "ËéèïõáíéêÜ"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "ÌáêåäïíéêÜ"
-${LangFileString} lng_mn "ÌïããïëéêÜ"
-${LangFileString} lng_ne "ÍåðáëéêÜ"
-${LangFileString} lng_nb "ÍïñâçãéêÜ Bokmål"
-${LangFileString} lng_nl "ÏëëáíäéêÜ"
-${LangFileString} lng_nn "ÍïñâçãéêÜ Nynorsk"
-${LangFileString} lng_pa "ÐáíôæÜìðéêá"
-${LangFileString} lng_pl "ÐïëùíéêÜ"
-${LangFileString} lng_pt "ÐïñôïãáëéêÜ"
-${LangFileString} lng_pt_BR "ÐïñôïãáëéêÜ Âñáæéëßáò"
-${LangFileString} lng_ro "ÑïõìÜíéêá"
-${LangFileString} lng_ru "Ñþóéêá"
-${LangFileString} lng_rw "ÊßíéáñïõÜíôá"
-${LangFileString} lng_sk "ÓëïâÜêéêá"
-${LangFileString} lng_sl "ÓëïâÝíéêá"
-${LangFileString} lng_sq "ÁëâáíéêÜ"
-${LangFileString} lng_sr "ÓÝñâéêá"
-${LangFileString} lng_sr@latin "ÓÝñâéêá óå ëáôéíéêÞ ãñáöÞ"
-${LangFileString} lng_sv "ÓïõçäéêÜ"
-${LangFileString} lng_te "Ôåëïýãêïõ"
-${LangFileString} lng_th "ÔÜé"
-${LangFileString} lng_tr "Ôïýñêéêá"
-${LangFileString} lng_uk "ÏõêñáíéêÜ"
-${LangFileString} lng_vi "ÂéåôíáìÝæéêá"
-${LangFileString} lng_zh_CN "ÁðëïðïéçìÝíá êéíÝæéêá"
-${LangFileString} lng_zh_TW "ÐáñáäïóéáêÜ êéíÝæéêá"
-${LangFileString} UInstOpt "ÅðéëïãÝò áðåãêáôÜóôáóçò"
-${LangFileString} UInstOpt1 "Ðáñáêáëþ äéáëÝîôå ãéá ðñüóèåôåò åðéëïãÝò"
-${LangFileString} PurgePrefs "ÄéáôÞñçóç ðñïóùðéêþí ðñïôéìÞóåùí"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log äåí âñÝèçêå!$\r$\nÐáñáêáëþ áðåãêáôáóôÞóôå êáèáñßæïíôáò ôïí êáôÜëïãï $INSTDIR ìüíïé óáò!"
-${LangFileString} FileChanged "Ôï áñ÷åßï $filename Üëëáîå ìåôÜ ôçí åãêáôÜóôáóç.$\r$\nÈÝëåôå áêüìá íá äéáãñÜøåôå áõôü ôï áñ÷åßï;"
-${LangFileString} Yes "Íáé"
-${LangFileString} AlwaysYes "áðáíôÞóôå ðÜíôá Íáé"
-${LangFileString} No "¼÷é"
-${LangFileString} AlwaysNo "áðáíôÞóôå ðÜíôá ¼÷é"
+;Language: Ελληνικά (1032)
+;By Dimitris Spingos (ΔημήτÏης Σπίγγος) <dmtrs32@gmail.com>
+${LangFileString} CaptionDescription "ΕπεξεÏγαστής γÏαφικών κλιμακώσιμων διανυσμάτων Î±Î½Î¿Î¹ÎºÏ„Î¿Ï ÎºÏŽÎ´Î¹ÎºÎ±"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) εκδίδεται με τη γενική άδεια χÏήσης (GPL). Η άδεια παÏέχεται εδώ μόνο για λόγους πληÏοφόÏησης. $_CLICK"
+${LangFileString} DIFFERENT_USER "Το Inkscape εγκαταστάθηκε από το χÏήστη $0.$\r$\nΕάν συνεχίσετε ίσως δεν ολοκληÏώσετε με επιτυχία!$\r$\nΠαÏακαλώ συνδεθείτε ως $0 και ξαναπÏοσπαθήστε."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 έχει ήδη εγκατασταθεί. $\nΘέλετε να απεγκαταστήσετε την Ï€ÏοηγοÏμενη έκδοση Ï€Ïιν την εγκατάσταση $(^Name);"
+${LangFileString} OK_CANCEL_DESC "$\n$\nΠατήστε ΕÎΤΑΞΕΙ για συνέχιση ή πατήστε ΑΚΥΡΩΣΗ για εγκατάλειψη."
+${LangFileString} NO_ADMIN "Δεν έχετε δικαιώματα διαχειÏιστή.$\r$\nΗ εγκατάσταση του Inkscape για όλους τους χÏήστες ίσως να μην ολοκληÏωθεί με επιτυχία.$\r$\nΑποεπιλέξτε το 'Εγκατάσταση για όλους τους χÏήστες'."
+${LangFileString} NOT_SUPPORTED "Το Inkscape δεν Ï„Ïέχει σε Windows 95/98/ME!$\r$\nΠαÏακαλώ ελέγξτε τον επίσημο ιστότοπο για λεπτομεÏείς πληÏοφοÏίες."
+${LangFileString} Full "ΠλήÏης"
+${LangFileString} Optimal "Βέλτιστη"
+${LangFileString} Minimal "Ελάχιστη"
+${LangFileString} Core "ΕπεξεÏγαστής Inkscape SVG (απαιτείται)"
+${LangFileString} CoreDesc "ΑÏχεία πυÏήνα Inkscape και dlls"
+${LangFileString} GTKFiles "GTK+ Runtime Environment (απαιτείται)"
+${LangFileString} GTKFilesDesc "Μια εÏγαλειοθήκη GUI Ï€Î¿Î»Î»Î±Ï€Î»Î¿Ï Î»Î¿Î³Î¹ÏƒÎ¼Î¹ÎºÎ¿Ï, χÏησιμοποιείται από το Inkscape"
+${LangFileString} Shortcuts "ΣυντομεÏσεις"
+${LangFileString} ShortcutsDesc "ΣυντομεÏσεις για εκκίνηση του Inkscape"
+${LangFileString} Alluser "Εγκατάσταση για όλους τους χÏήστες"
+${LangFileString} AlluserDesc "Εγκατάσταση αυτής της εφαÏμογής για οποιονδήποτε χÏησιμοποιεί αυτόν τον υπολογιστή (όλοι οι χÏήστες)"
+${LangFileString} Desktop "Επιφάνεια εÏγασίας"
+${LangFileString} DesktopDesc "ΔημιουÏγία μιας συντόμευσης του Inkscape στην επιφάνεια εÏγασίας"
+${LangFileString} Startmenu "ÎœÎµÎ½Î¿Ï Î­Î½Î±Ïξης"
+${LangFileString} StartmenuDesc "ΔημιουÏγία εισόδου Î¼ÎµÎ½Î¿Ï Î­Î½Î±Ïξης για το Inkscape"
+${LangFileString} Quicklaunch "ΓÏήγοÏη εκκίνηση"
+${LangFileString} QuicklaunchDesc "ΔημιουÏγία μιας συντόμευσης του Inkscape στη γÏαμμή εÏγαλείων γÏήγοÏης εκκίνησης"
+${LangFileString} SVGWriter "ʼνοιγμα αÏχείων SVG με το Inkscape"
+${LangFileString} SVGWriterDesc "Επιλογή του Inkscape ως Ï€Ïοεπιλεγμένου επεξεÏγαστή για αÏχεία SVG"
+${LangFileString} ContextMenu "Θεματικό μενοÏ"
+${LangFileString} ContextMenuDesc "ΠÏοσθήκη του Inkscape στο θεματικό Î¼ÎµÎ½Î¿Ï Î³Î¹Î± αÏχεία SVG"
+${LangFileString} DeletePrefs "ΔιαγÏαφή Ï€Ïοσωπικών Ï€Ïοτιμήσεων"
+${LangFileString} DeletePrefsDesc "ΔιαγÏαφή Ï€Ïοσωπικών Ï€Ïοτιμήσεων που απέμειναν από Ï€ÏοηγοÏμενες εγκαταστάσεις"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "ΠÏόσθετα αÏχεία"
+${LangFileString} AddfilesDesc "ΠÏόσθετα αÏχεία"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "ΠαÏαδείγματα"
+${LangFileString} ExamplesDesc "ΠαÏαδείγματα χÏήσης του Inkscape"
+${LangFileString} Tutorials "Μαθήματα"
+${LangFileString} TutorialsDesc "Μαθήματα χÏήσης του Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "ΜεταφÏάσεις"
+${LangFileString} LanguagesDesc "Εγκατάσταση ποικίλων μεταφÏάσεων για το Inkscape"
+${LangFileString} UInstOpt "Επιλογές απεγκατάστασης"
+${LangFileString} UInstOpt1 "ΠαÏακαλώ διαλέξτε για Ï€Ïόσθετες επιλογές"
+${LangFileString} PurgePrefs "ΔιατήÏηση Ï€Ïοσωπικών Ï€Ïοτιμήσεων"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log δεν βÏέθηκε!$\r$\nΠαÏακαλώ απεγκαταστήστε καθαÏίζοντας τον κατάλογο $INSTDIR μόνοι σας!"
+${LangFileString} FileChanged "Το αÏχείο $filename άλλαξε μετά την εγκατάσταση.$\r$\nΘέλετε ακόμα να διαγÏάψετε αυτό το αÏχείο;"
+${LangFileString} Yes "Îαι"
+${LangFileString} AlwaysYes "απαντήστε πάντα Îαι"
+${LangFileString} No "Όχι"
+${LangFileString} AlwaysNo "απαντήστε πάντα Όχι"
diff --git a/packaging/win32/languages/Greek_languageNames.nsh b/packaging/win32/languages/Greek_languageNames.nsh
new file mode 100644
index 000000000..2ff2827a7
--- /dev/null
+++ b/packaging/win32/languages/Greek_languageNames.nsh
@@ -0,0 +1,94 @@
+### Greek (el) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Greek.nsh'
+${LangFileString} lng_am "ΑμχαÏικά (am)"
+${LangFileString} lng_ar "ΑÏαβικά (ar)"
+${LangFileString} lng_as "Ασαμικά (as)"
+${LangFileString} lng_az "ΑζέÏικα (az)"
+${LangFileString} lng_be "ΛευκοÏώσικα (be)"
+${LangFileString} lng_bg "ΒουλγαÏικά (bg)"
+${LangFileString} lng_bn "Μπενγκάλι (bn)"
+${LangFileString} lng_bn_BD "Μπεγκάλι/Μπανγκλαντές (bn_BD)"
+${LangFileString} lng_br "Î’Ïετονικά (br)"
+${LangFileString} lng_brx "Μπόντο (brx)"
+${LangFileString} lng_ca "Καταλανικά (ca)"
+${LangFileString} lng_ca@valencia "Καταλανικά Βαλένθιας (ca@valencia)"
+${LangFileString} lng_cs "Τσέχικα (cs)"
+${LangFileString} lng_da "Δανέζικα (da)"
+${LangFileString} lng_de "ΓεÏμανικά (de)"
+${LangFileString} lng_doi "ÎτόγκÏι (doi)"
+${LangFileString} lng_dz "Îτζόγκα (dz)"
+${LangFileString} lng_el "Ελληνικά (el)"
+${LangFileString} lng_en "Αγγλικά (ΑμεÏικής)"
+${LangFileString} lng_en_AU "Αγγλικά/ΑυστÏαλία (en_AU)"
+${LangFileString} lng_en_CA "Αγγλικά/Καναδάς (en_CA)"
+${LangFileString} lng_en_GB "Αγγλικά/Μεγάλη Î’Ïετανία (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "ΕσπεÏάντο (eo)"
+${LangFileString} lng_es "Ισπανικά (es)"
+${LangFileString} lng_es_MX "Ισπανικά/Μέξικο (es_MX)"
+${LangFileString} lng_et "Εσθονικά (et)"
+${LangFileString} lng_eu "Βασκικά (eu)"
+${LangFileString} lng_fa "ΦαÏσί (fa)"
+${LangFileString} lng_fi "Φινλανδικά (fi)"
+${LangFileString} lng_fr "Γαλλικά (fr)"
+${LangFileString} lng_ga "ΙÏλανδική (ga)"
+${LangFileString} lng_gl "Γαλικία (gl)"
+${LangFileString} lng_gu "ΓκουαÏάτι (gu)"
+${LangFileString} lng_he "ΕβÏαϊκά (he)"
+${LangFileString} lng_hi "Χίντι (hi)"
+${LangFileString} lng_hr "ΚÏοατικά (hr)"
+${LangFileString} lng_hu "ΟυγγÏικά (hu)"
+${LangFileString} lng_hy "ΑÏμένικα (hy)"
+${LangFileString} lng_id "Ινδονησιακά (id)"
+${LangFileString} lng_is "Ισλανδικά (is)"
+${LangFileString} lng_it "Ιταλικά (it)"
+${LangFileString} lng_ja "Γιαπωνέζικα (ja)"
+${LangFileString} lng_km "Î§Î¼ÎµÏ (km)"
+${LangFileString} lng_kn "Κανάντα (kn)"
+${LangFileString} lng_ko "ΚοÏεάτικα (ko)"
+${LangFileString} lng_kok "Κονκανικά (kok)"
+${LangFileString} lng_kok@latin "Κονκανικά με λατινική γÏαφή (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "ΚασμιÏικά με γÏαφή ντεβάνγκαÏι (ks@deva)"
+${LangFileString} lng_lt "Λιθουανικά (lt)"
+${LangFileString} lng_lv "Λιθουανικά (lv)"
+${LangFileString} lng_mai "Μαιτίλι (mai)"
+${LangFileString} lng_mk "Μακεδονικά (mk)"
+${LangFileString} lng_ml "Μαγιαλαμικά (ml)"
+${LangFileString} lng_mn "Μογγολικά (mn)"
+${LangFileString} lng_mni "ΜανιπουÏικά (mni)"
+${LangFileString} lng_mni@beng "ΜανιπουÏικά με γÏαφή Βεγγάλης (mni@beng)"
+${LangFileString} lng_mr "ΜαÏαθικά (mr)"
+${LangFileString} lng_nb "ÎοÏβηγικά BokmÃ¥l (nb)"
+${LangFileString} lng_ne "Îεπαλικά (ne)"
+${LangFileString} lng_nl "Ολλανδικά (nl)"
+${LangFileString} lng_nn "ÎοÏβηγικά Nynorsk (nn)"
+${LangFileString} lng_or "Όντια (or)"
+${LangFileString} lng_pa "Πουντζάμπι (pa)"
+${LangFileString} lng_pl "Πολωνικά (pl)"
+${LangFileString} lng_pt "ΠοÏτογαλικά (pt)"
+${LangFileString} lng_pt_BR "ΠοÏτογαλικά/Î’Ïαζιλίας (pt_BR)"
+${LangFileString} lng_ro "Ρουμανικά (ro)"
+${LangFileString} lng_ru "Ρωσικά (ru)"
+${LangFileString} lng_rw "ΚινιαÏουάντα (rw)"
+${LangFileString} lng_sa "ΣανσκÏιτικά (sa)"
+${LangFileString} lng_sat "Σανταλικά (sat)"
+${LangFileString} lng_sat@deva "Σανταλικά με γÏαφή ντεβαναγκάÏι (sat@deva)"
+${LangFileString} lng_sd "Σίντι (sd)"
+${LangFileString} lng_sd@deva "Σίντι με γÏαφή ντεβαναγκάÏι (sd@deva)"
+${LangFileString} lng_sk "Σλοβακικά (sk)"
+${LangFileString} lng_sl "Σλοβένικα (sl)"
+${LangFileString} lng_sq "Αλβανικά (sq)"
+${LangFileString} lng_sr "ΣεÏβικά/Λατινικά (sr)"
+${LangFileString} lng_sr@latin "ΣεÏβικά σε λατινική γÏαφή (sr@latin)"
+${LangFileString} lng_sv "Σουηδικά (sv)"
+${LangFileString} lng_ta "Ταμίλ (ta)"
+${LangFileString} lng_te "ΤελοÏγκου (te)"
+${LangFileString} lng_th "Μπατ Ταϊλάνδης (th)"
+${LangFileString} lng_tr "ΤουÏκικά (tr)"
+${LangFileString} lng_uk "ΟυκÏανικά (uk)"
+${LangFileString} lng_ur "ΟÏÏντου (ur)"
+${LangFileString} lng_vi "Βιετναμέζικα (vi)"
+${LangFileString} lng_zh_CN "Κινέζικα/Κίνα (zh_CN)"
+${LangFileString} lng_zh_TW "Κινέζικα/Ταϊβάν (zh_TW)"
diff --git a/packaging/win32/languages/Hebrew.nsh b/packaging/win32/languages/Hebrew.nsh
index 7c677f714..ecc94c3fe 100644
--- a/packaging/win32/languages/Hebrew.nsh
+++ b/packaging/win32/languages/Hebrew.nsh
@@ -1,117 +1,55 @@
-;Language: Hebrew (1037, CP1255)
+;Language: Hebrew (1037)
;By Yaron Shahrabani <sh.yaron@gmail.com>
-${LangFileString} CaptionDescription "òåøê âøôé÷ú å÷èåøéí ðîúçú á÷åã ôúåç"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) îåôöú úçú úðàé äøéùéåï äöéáåøé äëììé ùì GNU (GPL). äøéùéåï îñåô÷ ëàï ìöåøëé îéãò áìáã. $_CLICK"
-${LangFileString} DIFFERENT_USER "àéð÷ñ÷ééô äåú÷ðä òìÎéãé äîùúîù $0.$\r$\nàí ääú÷ðä úéîùê éúëï ùìà úåùìí ëøàåé!$\r$\nðà ìäéëðñ áúåø $0 åìðñåú ùåá."
-${LangFileString} WANT_UNINSTALL_BEFORE "äúëðéú $R1 ëáø äåú÷ðä. $\näàí ìäñéø àú äâøñä ä÷åãîú áèøí äú÷ðú $(^Name)?"
-${LangFileString} OK_CANCEL_DESC "$\n$\néù ììçåõ òì àéùåø ëãé ìäîùéê àå òì áéèåì ëãé ìöàú."
-${LangFileString} NO_ADMIN "àéï ìê äøùàåú ðéäåìéåú.$\r$\näú÷ðú àéð÷ñ÷ééô ìëì äîùúîùéí ìà úåùìí ëøàåé.$\r$\néù ìáèì àú äñéîåï ùìéã äàôùøåú 'äú÷ðä ìëì äîùúîùéí'."
-${LangFileString} NOT_SUPPORTED "éãåò ëé ìàéð÷ñ÷ééô éù àôùøåú ìôòåì òì âáé Windows 95/98/ME!$\r$\nðà ìäñúëì áàúø äøùîé ì÷áìú ôøèéí ðåñôéí."
-${LangFileString} Full "îìàä"
-${LangFileString} Optimal "îéèáéú"
-${LangFileString} Minimal "îéðéîìéú"
-${LangFileString} Core "òåøê äÎSVN àéð÷ñ÷ééô (ðãøù)"
-${LangFileString} CoreDesc "÷åáöé ìéáä åÎdlls ùì àéð÷ñ÷ééô"
-${LangFileString} GTKFiles "ñáéáú ääôòìä GTK+ (ðãøùú)"
-${LangFileString} GTKFilesDesc "òøëú îðù÷ âøôé ìîâååï ôìèôåøîåú, áùéîåù àéð÷ñ÷ééô"
-${LangFileString} Shortcuts "÷éöåøé ãøê"
-${LangFileString} ShortcutsDesc "÷éöåøé ãøê ìäôòìú àéð÷ñ÷ééô"
-${LangFileString} Alluser "äú÷ðä òáåø ëì äîùúîùéí"
-${LangFileString} AlluserDesc "äú÷ðú ééùåí æä ìèåáú ëì îé ùîùúîù áîçùá (ëì äîùúîùéí)"
-${LangFileString} Desktop "ùåìçï òáåãä"
-${LangFileString} DesktopDesc "éöéøú ÷éöåø ãøê ìàéð÷ñ÷ééô òì ùåìçï äòáåãä"
-${LangFileString} Startmenu "úôøéè äúçìä"
-${LangFileString} StartmenuDesc "éöéøú øùåîä ìàéð÷ñ÷ééô áúôøéè ääúçìä"
-${LangFileString} Quicklaunch "äôòìä îäéøä"
-${LangFileString} QuicklaunchDesc "éöéøú ÷éöåø ãøê ìàéð÷ñ÷ééô áñøâì ääôòìä äîäéøä"
-${LangFileString} SVGWriter "ôúéçú ÷åáöé SVG òí àéð÷ñ÷ééô"
-${LangFileString} SVGWriterDesc "áçéøú àéð÷ñ÷ééô ëòåøê áøøú äîçãì ì÷åáöé SVG"
-${LangFileString} ContextMenu "úôøéè ä÷ùø"
-${LangFileString} ContextMenuDesc "äåñôú àéð÷ñ÷ééô ìúôøéè ää÷ùø ùì ÷åáöé SVG"
-${LangFileString} DeletePrefs "îçé÷ú äòãôåú àéùéåú"
-${LangFileString} DeletePrefsDesc "îçé÷ú ùééøé äòãôåú àéùéåú îäú÷ðåú ÷åãîåú"
-${LangFileString} Addfiles "÷áöéí ðåñôéí"
-${LangFileString} AddfilesDesc "÷áöéí ðåñôéí"
-${LangFileString} Examples "ãåâîàåú"
-${LangFileString} ExamplesDesc "ãåâîàåú ìùéîåù áàéð÷ñ÷ééô"
-${LangFileString} Tutorials "îãøéëéí"
-${LangFileString} TutorialsDesc "îãøéëéí ìùéîåù áàéð÷ñ÷ééô"
-${LangFileString} Languages "úøâåîéí"
-${LangFileString} LanguagesDesc "äú÷ðú îâååï úøâåîéí ìàéð÷ñ÷ééô"
-${LangFileString} lng_am "àîäøéú"
-${LangFileString} lng_ar "òøáéú"
-${LangFileString} lng_az "àæøéú"
-${LangFileString} lng_be "áìøåñéú"
-${LangFileString} lng_bg "áåìâøéú"
-${LangFileString} lng_bn "áðâìéú"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "áøèåðéú"
-${LangFileString} lng_ca "÷èìàðéú"
-${LangFileString} lng_ca@valencia "÷èìàðéú åìðñéú"
-${LangFileString} lng_cs "ö×ëéú"
-${LangFileString} lng_da "ãðéú"
-${LangFileString} lng_de "âøîðéú"
-${LangFileString} lng_dz "ãæåðâ÷ä"
-${LangFileString} lng_el "éååðéú"
-${LangFileString} lng_en "àðâìéú"
-${LangFileString} lng_en_AU "àðâìéú àåñèøìéú"
-${LangFileString} lng_en_CA "àðâìéú ÷ðãéú"
-${LangFileString} lng_en_GB "àðâìéú áøéèéú"
-${LangFileString} lng_en_US@piglatin "ìèéðéú çæéøéú"
-${LangFileString} lng_eo "àñôøðèå"
-${LangFileString} lng_es "ñôøãéú"
-${LangFileString} lng_es_MX "ñôøãéú î÷ñé÷ðéú"
-${LangFileString} lng_et "àñèåðéú"
-${LangFileString} lng_eu "áñ÷éú"
-${LangFileString} lng_fa "ôøñéú"
-${LangFileString} lng_fi "ôéðéú"
-${LangFileString} lng_fr "öøôúéú"
-${LangFileString} lng_ga "àéøéú"
-${LangFileString} lng_gl "âìéñéú"
-${LangFileString} lng_he "òáøéú"
-${LangFileString} lng_hr "÷øåàèéú"
-${LangFileString} lng_hu "äåðâøéú"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "àéðãåðæéú"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "àéèì÷éú"
-${LangFileString} lng_ja "éôðéú"
-${LangFileString} lng_km "÷îøéú"
-${LangFileString} lng_ko "÷åøéàðéú"
-${LangFileString} lng_lt "ìéèàéú"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "î÷ãåðéú"
-${LangFileString} lng_mn "îåðâåìéú"
-${LangFileString} lng_ne "ðôàìéú"
-${LangFileString} lng_nb "ðåøáâéú áå÷îåìéú"
-${LangFileString} lng_nl "Dutch"
-${LangFileString} lng_nn "ðåøáâéú ðéðåøù÷éú"
-${LangFileString} lng_pa "ôðâ×àáé"
-${LangFileString} lng_pl "ôåìðéú"
-${LangFileString} lng_pt "ôåøèåâìéú"
-${LangFileString} lng_pt_BR "ôåøèåâìéú áøéæìàéú"
-${LangFileString} lng_ro "øåîðéú"
-${LangFileString} lng_ru "øåñéú"
-${LangFileString} lng_rw "÷éðéÇøåàðãä"
-${LangFileString} lng_sk "ñìåá÷éú"
-${LangFileString} lng_sl "ñìåáðéú"
-${LangFileString} lng_sq "àìáðéú"
-${LangFileString} lng_sr "ñøáéú"
-${LangFileString} lng_sr@latin "ñøáéú áëúá ìèéðé"
-${LangFileString} lng_sv "ùáãéú"
-${LangFileString} lng_te "èìåâå"
-${LangFileString} lng_th "úàé"
-${LangFileString} lng_tr "èåø÷éú"
-${LangFileString} lng_uk "àå÷øàéðéú"
-${LangFileString} lng_vi "åééèðàîéú"
-${LangFileString} lng_zh_CN "ñéðéú îôåùèú"
-${LangFileString} lng_zh_TW "ñéðéú îñåøúéú"
-${LangFileString} UInstOpt "àôùøåéåú äñøä"
-${LangFileString} UInstOpt1 "ðà ìáçåø îäøùéîä ëãé ìäùúîù áàôùøåéåú ðåñôåú"
-${LangFileString} PurgePrefs "ùîéøú ääòãôåú äàéùéåú"
-${LangFileString} UninstallLogNotFound "ä÷åáõ $INSTDIR\uninstall.log ìà ðîöà!$\r$\nðà ìäñéø òì éãé ôéðåé äúé÷ééä $INSTDIR áòöîê!"
-${LangFileString} FileChanged "ä÷åáõ $filename äùúðä ìàçø ääú÷ðä.$\r$\näàí ìîçå÷ àú ä÷åáõ áëì æàú?"
-${LangFileString} Yes "ëï"
-${LangFileString} AlwaysYes "úîéã ìòðåú ëï"
-${LangFileString} No "ìà"
-${LangFileString} AlwaysNo "úîéã ìòðåú ìà"
+${LangFileString} CaptionDescription "עורך גרפיקת ×•×§×˜×•×¨×™× × ×ž×ª×—×ª בקוד פתוח"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) מופצת תחת תנ××™ הרישיון הציבורי הכללי של GNU (GPL). הרישיון מסופק ×›×ן לצורכי מידע בלבד. $_CLICK"
+${LangFileString} DIFFERENT_USER "×ינקסקייפ הותקנה על־ידי המשתמש $0.$\r$\n×× ×”×”×ª×§× ×” תימשך יתכן ×©×œ× ×ª×•×©×œ× ×›×¨×וי!$\r$\n× × ×œ×”×™×›× ×¡ בתור $0 ולנסות שוב."
+${LangFileString} WANT_UNINSTALL_BEFORE "התכנית $R1 כבר הותקנה. $\n×”×× ×œ×”×¡×™×¨ ×ת הגרסה הקודמת ×‘×˜×¨× ×”×ª×§× ×ª $(^Name)?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nיש ללחוץ על ×ישור כדי להמשיך ×ו על ביטול כדי לצ×ת."
+${LangFileString} NO_ADMIN "×ין לך הרש×ות ניהוליות.$\r$\nהתקנת ×ינקסקייפ לכל ×”×ž×©×ª×ž×©×™× ×œ× ×ª×•×©×œ× ×›×¨×וי.$\r$\nיש לבטל ×ת הסימון שליד ×”×פשרות 'התקנה לכל המשתמשי×'."
+${LangFileString} NOT_SUPPORTED "ידוע ×›×™ ל×ינקסקייפ יש ×פשרות לפעול על גבי Windows 95/98/ME!$\r$\n× × ×œ×”×¡×ª×›×œ ב×תר הרשמי לקבלת ×¤×¨×˜×™× × ×•×¡×¤×™×."
+${LangFileString} Full "מל××”"
+${LangFileString} Optimal "מיטבית"
+${LangFileString} Minimal "מינימלית"
+${LangFileString} Core "עורך ×”Ö¾SVN ×ינקסקייפ (נדרש)"
+${LangFileString} CoreDesc "קובצי ליבה ו־dlls של ×ינקסקייפ"
+${LangFileString} GTKFiles "סביבת ההפעלה GTK+ (נדרשת)"
+${LangFileString} GTKFilesDesc "ערכת מנשק גרפי למגוון פלטפורמות, בשימוש ×ינקסקייפ"
+${LangFileString} Shortcuts "קיצורי דרך"
+${LangFileString} ShortcutsDesc "קיצורי דרך להפעלת ×ינקסקייפ"
+${LangFileString} Alluser "התקנה עבור כל המשתמשי×"
+${LangFileString} AlluserDesc "התקנת ×™×™×©×•× ×–×” לטובת כל מי שמשתמש במחשב (כל המשתמשי×)"
+${LangFileString} Desktop "שולחן עבודה"
+${LangFileString} DesktopDesc "יצירת קיצור דרך ל×ינקסקייפ על שולחן העבודה"
+${LangFileString} Startmenu "תפריט התחלה"
+${LangFileString} StartmenuDesc "יצירת רשומה ל×ינקסקייפ בתפריט ההתחלה"
+${LangFileString} Quicklaunch "הפעלה מהירה"
+${LangFileString} QuicklaunchDesc "יצירת קיצור דרך ל×ינקסקייפ בסרגל ההפעלה המהירה"
+${LangFileString} SVGWriter "פתיחת קובצי SVG ×¢× ×ינקסקייפ"
+${LangFileString} SVGWriterDesc "בחירת ×ינקסקייפ כעורך בררת המחדל לקובצי SVG"
+${LangFileString} ContextMenu "תפריט הקשר"
+${LangFileString} ContextMenuDesc "הוספת ×ינקסקייפ לתפריט ההקשר של קובצי SVG"
+${LangFileString} DeletePrefs "מחיקת העדפות ×ישיות"
+${LangFileString} DeletePrefsDesc "מחיקת שיירי העדפות ×ישיות מהתקנות קודמות"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "×§×‘×¦×™× × ×•×¡×¤×™×"
+${LangFileString} AddfilesDesc "×§×‘×¦×™× × ×•×¡×¤×™×"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "דוגמ×ות"
+${LangFileString} ExamplesDesc "דוגמ×ות לשימוש ב×ינקסקייפ"
+${LangFileString} Tutorials "מדריכי×"
+${LangFileString} TutorialsDesc "×ž×“×¨×™×›×™× ×œ×©×™×ž×•×© ב×ינקסקייפ"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "תרגומי×"
+${LangFileString} LanguagesDesc "התקנת מגוון ×ª×¨×’×•×ž×™× ×œ×ינקסקייפ"
+${LangFileString} UInstOpt "×פשרויות הסרה"
+${LangFileString} UInstOpt1 "× × ×œ×‘×—×•×¨ מהרשימה כדי להשתמש ב×פשרויות נוספות"
+${LangFileString} PurgePrefs "שמירת ההעדפות ×”×ישיות"
+${LangFileString} UninstallLogNotFound "הקובץ $INSTDIR\uninstall.log ×œ× × ×ž×¦×!$\r$\n× × ×œ×”×¡×™×¨ על ידי פינוי התיקייה $INSTDIR בעצמך!"
+${LangFileString} FileChanged "הקובץ $filename השתנה ל×חר ההתקנה.$\r$\n×”×× ×œ×ž×—×•×§ ×ת הקובץ בכל ×–×ת?"
+${LangFileString} Yes "כן"
+${LangFileString} AlwaysYes "תמיד לענות כן"
+${LangFileString} No "ל×"
+${LangFileString} AlwaysNo "תמיד לענות ל×"
diff --git a/packaging/win32/languages/Hebrew_languageNames.nsh b/packaging/win32/languages/Hebrew_languageNames.nsh
new file mode 100644
index 000000000..210a6b63d
--- /dev/null
+++ b/packaging/win32/languages/Hebrew_languageNames.nsh
@@ -0,0 +1,94 @@
+### Hebrew (he) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Hebrew.nsh'
+${LangFileString} lng_am "×מהרית (am)"
+${LangFileString} lng_ar "ערבית (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "×זרבייג׳נית (az)"
+${LangFileString} lng_be "בלרוסית (be)"
+${LangFileString} lng_bg "בולגרית (bg)"
+${LangFileString} lng_bn "בנג×לית (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "ברטון (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "קטלונית (ca)"
+${LangFileString} lng_ca@valencia "קטלונית ולסי×נית (ca@valencia)"
+${LangFileString} lng_cs "צ׳כית (cs)"
+${LangFileString} lng_da "דנית (da)"
+${LangFileString} lng_de "גרמנית (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "דזונקה (dz)"
+${LangFileString} lng_el "יוונית (el)"
+${LangFileString} lng_en "×נגלית (en)"
+${LangFileString} lng_en_AU "×נגלית/×וסטרליה (en_AU)"
+${LangFileString} lng_en_CA "×נגלית/קנדה (en_CA)"
+${LangFileString} lng_en_GB "×נגלית/×נגליה (en_GB)"
+${LangFileString} lng_en_US@piglatin "לטינית חזירית (en_US@piglatin)"
+${LangFileString} lng_eo "×ספרנטו (eo)"
+${LangFileString} lng_es "ספרדית (es)"
+${LangFileString} lng_es_MX "ספרדית/מקסיקו (es_MX)"
+${LangFileString} lng_et "×סטונית (et)"
+${LangFileString} lng_eu "בסקית (eu)"
+${LangFileString} lng_fa "פרסית (fa)"
+${LangFileString} lng_fi "פינית (fi)"
+${LangFileString} lng_fr "צרפתית (fr)"
+${LangFileString} lng_ga "×ירית (ga)"
+${LangFileString} lng_gl "גליסית (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "עברית (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "קרו×טית (hr)"
+${LangFileString} lng_hu "הונגרית (hu)"
+${LangFileString} lng_hy "×רמנית (hy)"
+${LangFileString} lng_id "×ינדונזית (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "×יטלקית (it)"
+${LangFileString} lng_ja "יפנית (ja)"
+${LangFileString} lng_km "ח׳מר (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "קורי×נית (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "ליט×ית (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "מקדונית (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "מונגולית (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "נורבגית בוקמול (nb)"
+${LangFileString} lng_ne "נפ×לית (ne)"
+${LangFileString} lng_nl "הולנדית (nl)"
+${LangFileString} lng_nn "נורבגית נינורשק (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "פנג׳בית (pa)"
+${LangFileString} lng_pl "פולנית (pl)"
+${LangFileString} lng_pt "פורטוגזית (pt)"
+${LangFileString} lng_pt_BR "פורטוגזית/ברזיל (pt_BR)"
+${LangFileString} lng_ro "רומנית (ro)"
+${LangFileString} lng_ru "רוסית (ru)"
+${LangFileString} lng_rw "×§×™× ×™×רוונדה (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "סלובקית (sk)"
+${LangFileString} lng_sl "סלובנית (sl)"
+${LangFileString} lng_sq "×לבנית (sq)"
+${LangFileString} lng_sr "סרבית (sr)"
+${LangFileString} lng_sr@latin "סרבית בכתב לטיני (sr@latin)"
+${LangFileString} lng_sv "שבדית (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "ת×ילנדית (th)"
+${LangFileString} lng_tr "טורקית (tr)"
+${LangFileString} lng_uk "×וקר×ינית (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "וייטנ×מית (vi)"
+${LangFileString} lng_zh_CN "סינית/סין (zh_CN)"
+${LangFileString} lng_zh_TW "סינית/טייוו×ן (zh_TW)"
diff --git a/packaging/win32/languages/Icelandic.nsh b/packaging/win32/languages/Icelandic.nsh
index c84251e20..f5f3bb253 100644
--- a/packaging/win32/languages/Icelandic.nsh
+++ b/packaging/win32/languages/Icelandic.nsh
@@ -1,118 +1,56 @@
-;Language: Icelandic (861, CP1252)
+;Language: Icelandic (1039)
;By Adib Taraben <theadib@gmail.com>
-;Translation by Sveinn í Felli <sv1@fellsnet.is>
-${LangFileString} CaptionDescription "Opinð og frjálst teikniforrit fyrir vigramyndir (Scalable Vector Graphics)"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) er gefið út með GNU General Public License (GPL) notkunarleyfinu. Notkunarleyfið er haft hér með eingöngu til upplýsingar. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape hefur þegar verið sett upp af notandanum $0.$\r$\nEf þú heldur áfram gæti verið að uppsetningin heppnaðist ekki!$\r$\nSkráðu þig inn sem $0 og reyndu aftur."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 hefur þegar verið sett upp. $\nViltu fjarlægja fyrri útgáfuna áður en þú setur upp $(^Name)?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nÝttu á 'Í lagi / OK' til að halda áfram eða á 'Hætta við / CANCEL' til að hætta við."
-${LangFileString} NO_ADMIN "Þú ert ekki með kerfisstjóraréttindi.$\r$\nUppsetning Inkscape fyrir alla notendur er ekki líkleg til að heppnast.$\r$\nTaktu hakið úr 'Setja upp fyrir alla notendur' valkostinum."
-${LangFileString} NOT_SUPPORTED "Inkscape keyrir ekki í Windows 95/98/ME!$\r$\nSkoðaðu opinberu heimasíðuna til að sjá ítarlegri upplýsingar."
+;Translation by Sveinn í Felli <sv1@fellsnet.is>
+${LangFileString} CaptionDescription "Opinð og frjálst teikniforrit fyrir vigramyndir (Scalable Vector Graphics)"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) er gefið út með GNU General Public License (GPL) notkunarleyfinu. Notkunarleyfið er haft hér með eingöngu til upplýsingar. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape hefur þegar verið sett upp af notandanum $0.$\r$\nEf þú heldur áfram gæti verið að uppsetningin heppnaðist ekki!$\r$\nSkráðu þig inn sem $0 og reyndu aftur."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 hefur þegar verið sett upp. $\nViltu fjarlægja fyrri útgáfuna áður en þú setur upp $(^Name)?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nÃttu á 'à lagi / OK' til að halda áfram eða á 'Hætta við / CANCEL' til að hætta við."
+${LangFileString} NO_ADMIN "Þú ert ekki með kerfisstjóraréttindi.$\r$\nUppsetning Inkscape fyrir alla notendur er ekki líkleg til að heppnast.$\r$\nTaktu hakið úr 'Setja upp fyrir alla notendur' valkostinum."
+${LangFileString} NOT_SUPPORTED "Inkscape keyrir ekki í Windows 95/98/ME!$\r$\nSkoðaðu opinberu heimasíðuna til að sjá ítarlegri upplýsingar."
${LangFileString} Full "Full"
-${LangFileString} Optimal "Bestuð"
-${LangFileString} Minimal "Lágmarks"
+${LangFileString} Optimal "Bestuð"
+${LangFileString} Minimal "Lágmarks"
${LangFileString} Core "Inkscape SVG ritillinn (krafist)"
-${LangFileString} CoreDesc "Kjarni Inkscape skráa og dll aðgerðasöfn"
+${LangFileString} CoreDesc "Kjarni Inkscape skráa og dll aðgerðasöfn"
${LangFileString} GTKFiles "GTK+ keyrsluumhverfi (krafist)"
-${LangFileString} GTKFilesDesc "Fjölkerfa myndrænt GUI tólasett, notað af Inkscape"
-${LangFileString} Shortcuts "Flýtileiðir"
-${LangFileString} ShortcutsDesc "Flýtileiðir til að ræsa Inkscape"
+${LangFileString} GTKFilesDesc "Fjölkerfa myndrænt GUI tólasett, notað af Inkscape"
+${LangFileString} Shortcuts "Flýtileiðir"
+${LangFileString} ShortcutsDesc "Flýtileiðir til að ræsa Inkscape"
${LangFileString} Alluser "Setja upp fyrir alla notendur"
-${LangFileString} AlluserDesc "Setja þetta forrit upp fyrir alla sem nota þessa tölvu (allir notendur)"
-${LangFileString} Desktop "Skjáborð"
-${LangFileString} DesktopDesc "Búa til flýtileið fyrir Inkscape á skjáborðinu (Desktop)"
-${LangFileString} Startmenu "Aðalvalmynd"
-${LangFileString} StartmenuDesc "Búa til færslu í aðalvalmynd (Start Menu) fyrir Inkscape"
-${LangFileString} Quicklaunch "Flýtiræsing"
-${LangFileString} QuicklaunchDesc "Búa til flýtileið fyrir Inkscape á flýtiræsistikunni (Quick Launch)"
-${LangFileString} SVGWriter "Opna SVG skrár með Inkscape"
-${LangFileString} SVGWriterDesc "Velja Inkscape sem sjálfgefið forrit til að vinna með SVG skrár"
+${LangFileString} AlluserDesc "Setja þetta forrit upp fyrir alla sem nota þessa tölvu (allir notendur)"
+${LangFileString} Desktop "Skjáborð"
+${LangFileString} DesktopDesc "Búa til flýtileið fyrir Inkscape á skjáborðinu (Desktop)"
+${LangFileString} Startmenu "Aðalvalmynd"
+${LangFileString} StartmenuDesc "Búa til færslu í aðalvalmynd (Start Menu) fyrir Inkscape"
+${LangFileString} Quicklaunch "Flýtiræsing"
+${LangFileString} QuicklaunchDesc "Búa til flýtileið fyrir Inkscape á flýtiræsistikunni (Quick Launch)"
+${LangFileString} SVGWriter "Opna SVG skrár með Inkscape"
+${LangFileString} SVGWriterDesc "Velja Inkscape sem sjálfgefið forrit til að vinna með SVG skrár"
${LangFileString} ContextMenu "Samhengisvalmynd"
-${LangFileString} ContextMenuDesc "Bæta Inkscape inn í samhengisvalmynd (Context Menu) fyrir SVG skrár"
-${LangFileString} DeletePrefs "Eyða persónulegum kjörstillingum"
-${LangFileString} DeletePrefsDesc "Eyða persónulegum kjörstillingum sem hafa orðið eftir frá fyrri uppsetningum"
-${LangFileString} Addfiles "Viðbótarskrár"
-${LangFileString} AddfilesDesc "Viðbótarskrár"
-${LangFileString} Examples "Sýnidæmi"
-${LangFileString} ExamplesDesc "Sýnidæmi um notkun Inkscape"
+${LangFileString} ContextMenuDesc "Bæta Inkscape inn í samhengisvalmynd (Context Menu) fyrir SVG skrár"
+${LangFileString} DeletePrefs "Eyða persónulegum kjörstillingum"
+${LangFileString} DeletePrefsDesc "Eyða persónulegum kjörstillingum sem hafa orðið eftir frá fyrri uppsetningum"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "Viðbótarskrár"
+${LangFileString} AddfilesDesc "Viðbótarskrár"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "Sýnidæmi"
+${LangFileString} ExamplesDesc "Sýnidæmi um notkun Inkscape"
${LangFileString} Tutorials "Kennsluefni"
${LangFileString} TutorialsDesc "Kennsluefni fyrir notkun Inkscape"
-${LangFileString} Languages "Þýðingar"
-${LangFileString} LanguagesDesc "Setja inn ýmsar þýðingar á Inkscape"
-${LangFileString} lng_am "Amharíska"
-${LangFileString} lng_ar "Arabíska"
-${LangFileString} lng_az "Azerbadjanska"
-${LangFileString} lng_be "Hvítrússneska"
-${LangFileString} lng_bg "Búlgarska"
-${LangFileString} lng_bn "Bengalska"
-${LangFileString} lng_bn_BD "Bangladesh bengalska"
-${LangFileString} lng_br "Bretónska"
-${LangFileString} lng_ca "Katalónska"
-${LangFileString} lng_ca@valencia "Valensíönsk katalónska"
-${LangFileString} lng_cs "Tékkneska"
-${LangFileString} lng_da "Danska"
-${LangFileString} lng_de "Þýska"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Gríska"
-${LangFileString} lng_en "Enska"
-${LangFileString} lng_en_AU "Áströlsk enska"
-${LangFileString} lng_en_CA "Kanadísk enska"
-${LangFileString} lng_en_GB "Bresk enska"
-${LangFileString} lng_en_US@piglatin "Pig Latína"
-${LangFileString} lng_eo "Esperantó"
-${LangFileString} lng_es "Spænska"
-${LangFileString} lng_es_MX "Mexíkönsk spænska"
-${LangFileString} lng_et "Eistneska"
-${LangFileString} lng_eu "Baskneska"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finnska"
-${LangFileString} lng_fr "Franska"
-${LangFileString} lng_ga "Írska"
-${LangFileString} lng_gl "Galisíska"
-${LangFileString} lng_he "Hebreska"
-${LangFileString} lng_hr "Króatíska"
-${LangFileString} lng_hu "Ungverska"
-${LangFileString} lng_hy "Armenska"
-${LangFileString} lng_id "Indónesíska"
-${LangFileString} lng_is "Íslenska"
-${LangFileString} lng_it "Ítalska"
-${LangFileString} lng_ja "Japanska"
-${LangFileString} lng_km "Khmeríska"
-${LangFileString} lng_ko "Kóreska"
-${LangFileString} lng_lt "Litháenska"
-${LangFileString} lng_lv "Lettneska"
-${LangFileString} lng_mk "Makedónska"
-${LangFileString} lng_mn "Mongólska"
-${LangFileString} lng_ne "Nepalska"
-${LangFileString} lng_nb "Norskt bókmál"
-${LangFileString} lng_nl "Hollenska"
-${LangFileString} lng_nn "Nýnorska"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Pólska"
-${LangFileString} lng_pt "Portúgalska"
-${LangFileString} lng_pt_BR "Brasilísk portúgalska"
-${LangFileString} lng_ro "Rúmenska"
-${LangFileString} lng_ru "Rússneska"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slóvakíska"
-${LangFileString} lng_sl "Slóvenska"
-${LangFileString} lng_sq "Albanska"
-${LangFileString} lng_sr "Serbneska"
-${LangFileString} lng_sr@latin "Serbneska með latnesku letri"
-${LangFileString} lng_sv "Sænska"
-${LangFileString} lng_te "Telúgú"
-${LangFileString} lng_th "Tælenska"
-${LangFileString} lng_tr "Tyrkneska"
-${LangFileString} lng_uk "Úkraínska"
-${LangFileString} lng_vi "Víetnamska"
-${LangFileString} lng_zh_CN "Einfölduð kínverska"
-${LangFileString} lng_zh_TW "Hefðbundin kínverska"
-${LangFileString} UInstOpt "Valkostir við fjarlægingu"
-${LangFileString} UInstOpt1 "Ákveddu hvað þú vilt gera fyrir þessa aukavalkosti"
-${LangFileString} PurgePrefs "Halda persónulegum kjörstillingum"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log fannst ekki!$\r$\nFjarlægðu forritið með því að hreinsa út úr möppunni $INSTDIR yourself!"
-${LangFileString} FileChanged "Skráin $filename hefur breyst eftir uppsetningu.$\r$\nViltu samt eyða þessari skrá?"
-${LangFileString} Yes "Já"
-${LangFileString} AlwaysYes "alltaf svara Já"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Þýðingar"
+${LangFileString} LanguagesDesc "Setja inn ýmsar þýðingar á Inkscape"
+${LangFileString} UInstOpt "Valkostir við fjarlægingu"
+${LangFileString} UInstOpt1 "Ãkveddu hvað þú vilt gera fyrir þessa aukavalkosti"
+${LangFileString} PurgePrefs "Halda persónulegum kjörstillingum"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log fannst ekki!$\r$\nFjarlægðu forritið með því að hreinsa út úr möppunni $INSTDIR yourself!"
+${LangFileString} FileChanged "Skráin $filename hefur breyst eftir uppsetningu.$\r$\nViltu samt eyða þessari skrá?"
+${LangFileString} Yes "Já"
+${LangFileString} AlwaysYes "alltaf svara Já"
${LangFileString} No "Nei"
${LangFileString} AlwaysNo "alltaf svara Nei"
diff --git a/packaging/win32/languages/Icelandic_languageNames.nsh b/packaging/win32/languages/Icelandic_languageNames.nsh
new file mode 100644
index 000000000..9065ab158
--- /dev/null
+++ b/packaging/win32/languages/Icelandic_languageNames.nsh
@@ -0,0 +1,94 @@
+### Icelandic (is) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Icelandic.nsh'
+${LangFileString} lng_am "Amharíska (am)"
+${LangFileString} lng_ar "Arabíska (ar)"
+${LangFileString} lng_as "Assamíska (as)"
+${LangFileString} lng_az "Azerbaijanska (az)"
+${LangFileString} lng_be "Hvítrússneska (be)"
+${LangFileString} lng_bg "Búlgarska (bg)"
+${LangFileString} lng_bn "Bengalska (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretónska (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Katalónska (ca)"
+${LangFileString} lng_ca@valencia "Valensísk-katalónska (ca@valencia)"
+${LangFileString} lng_cs "Tékkneska (cs)"
+${LangFileString} lng_da "Danska (da)"
+${LangFileString} lng_de "Þýska (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Gríska (el)"
+${LangFileString} lng_en "Enska (en)"
+${LangFileString} lng_en_AU "Enska/Ãstralía (en_AU)"
+${LangFileString} lng_en_CA "Enska/Kanada (en_CA)"
+${LangFileString} lng_en_GB "Enska/Stóra Bretland (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperantó (eo)"
+${LangFileString} lng_es "Spænska (es)"
+${LangFileString} lng_es_MX "Spænska/Mexíkó (es_MX)"
+${LangFileString} lng_et "Eistneska (et)"
+${LangFileString} lng_eu "Baskneska (eu)"
+${LangFileString} lng_fa "Farsí (fa)"
+${LangFileString} lng_fi "Finnska (fi)"
+${LangFileString} lng_fr "Franska (fr)"
+${LangFileString} lng_ga "Ãrska (ga)"
+${LangFileString} lng_gl "Galisíska (gl)"
+${LangFileString} lng_gu "Gújaratí (gu)"
+${LangFileString} lng_he "Hebreska (he)"
+${LangFileString} lng_hi "Hindí (hi)"
+${LangFileString} lng_hr "Króatíska (hr)"
+${LangFileString} lng_hu "Ungverska (hu)"
+${LangFileString} lng_hy "Armenska (hy)"
+${LangFileString} lng_id "Indónesíska (id)"
+${LangFileString} lng_is "Ãslenska (is)"
+${LangFileString} lng_it "Ãtalska (it)"
+${LangFileString} lng_ja "Japanska (ja)"
+${LangFileString} lng_km "Khmeríska (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Kóreska (ko)"
+${LangFileString} lng_kok "Konkaní (kok)"
+${LangFileString} lng_kok@latin "Konkaní með latneskt letur (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmírska með Peso-Arabísku letri (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmírska með Devanagarí letur (ks@deva)"
+${LangFileString} lng_lt "Litháíska (lt)"
+${LangFileString} lng_lv "Lettlenska (lv)"
+${LangFileString} lng_mai "Maithilí (mai)"
+${LangFileString} lng_mk "Makedónska (mk)"
+${LangFileString} lng_ml "Malaíalam (ml)"
+${LangFileString} lng_mn "Mongólska (mn)"
+${LangFileString} lng_mni "Manipurí (mni)"
+${LangFileString} lng_mni@beng "Manipurí með Bengalí letri (mni@beng)"
+${LangFileString} lng_mr "Marathí (mr)"
+${LangFileString} lng_nb "Norskt bókmál (nb)"
+${LangFileString} lng_ne "Nepalska (ne)"
+${LangFileString} lng_nl "Hollenska (nl)"
+${LangFileString} lng_nn "Nýnorska (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Pólska (pl)"
+${LangFileString} lng_pt "Portúgalska (pt)"
+${LangFileString} lng_pt_BR "Portúgalska/Brasilía (pt_BR)"
+${LangFileString} lng_ro "Rúmenska (ro)"
+${LangFileString} lng_ru "Rússneska (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrít (sa)"
+${LangFileString} lng_sat "Santalí (sat)"
+${LangFileString} lng_sat@deva "Santalí með Devanagarí letur (sd@deva)"
+${LangFileString} lng_sd "Shindí (sd)"
+${LangFileString} lng_sd@deva "Sindhí með Devanagarí letur (sd@deva)"
+${LangFileString} lng_sk "Slóvakíska (sk)"
+${LangFileString} lng_sl "Slóvenska (sl)"
+${LangFileString} lng_sq "Albanska (sq)"
+${LangFileString} lng_sr "Serbneska (sr)"
+${LangFileString} lng_sr@latin "Serbneska með latneskt letur (sr@latin)"
+${LangFileString} lng_sv "Sænska (sv)"
+${LangFileString} lng_ta "Tamílska (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Tælenska (th)"
+${LangFileString} lng_tr "Tyrkneska (tr)"
+${LangFileString} lng_uk "Úkraínska (uk)"
+${LangFileString} lng_ur "Úrdú (ur)"
+${LangFileString} lng_vi "Víetnamska (vi)"
+${LangFileString} lng_zh_CN "Kínverska/Kína (zh_CN)"
+${LangFileString} lng_zh_TW "Kínverska/Taívan (zh_TW)"
diff --git a/packaging/win32/languages/Indonesian.nsh b/packaging/win32/languages/Indonesian.nsh
index f64c884a9..55f577d4f 100644
--- a/packaging/win32/languages/Indonesian.nsh
+++ b/packaging/win32/languages/Indonesian.nsh
@@ -1,4 +1,4 @@
-;Language: English (1033, ANSI)
+;Language: English (1033)
;By Adib Taraben <theadib@gmail.com>
${LangFileString} CaptionDescription "Open Source Scalable Vector Graphics Editor"
${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) dilepas dibawah GNU General Public License (GPL). Lisensi ditampilkan disini hanya untuk keperluan informasi saja. $_CLICK"
@@ -30,82 +30,20 @@ ${LangFileString} ContextMenu "Context Menu"
${LangFileString} ContextMenuDesc "Tambahkan Inkscape kedalam Context Menu untuk berkas SVG"
${LangFileString} DeletePrefs "Hapus preferensi personal"
${LangFileString} DeletePrefsDesc "Hapus preferensi personal dari pemasangan sebelumnya"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Berkas-berkas tambahan"
${LangFileString} AddfilesDesc "Berkas-berkas tambahan"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Contoh"
${LangFileString} ExamplesDesc "Contoh menggunakan Inkscape"
${LangFileString} Tutorials "Tutorial"
${LangFileString} TutorialsDesc "Tutorials menggunakan Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Terjemahan"
${LangFileString} LanguagesDesc "Pasang macam-macam terjemahan untuk Inkscape"
-${LangFileString} lng_am "Amharic"
-${LangFileString} lng_ar "Arab"
-${LangFileString} lng_az "Azerbaijan"
-${LangFileString} lng_be "Belarus"
-${LangFileString} lng_bg "Bulgaria"
-${LangFileString} lng_bn "Benggala"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Breton"
-${LangFileString} lng_ca "Katalan"
-${LangFileString} lng_ca@valencia "Katalan Valencia"
-${LangFileString} lng_cs "Ceko"
-${LangFileString} lng_da "Denmark"
-${LangFileString} lng_de "Jerman"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Yunani"
-${LangFileString} lng_en "Inggris"
-${LangFileString} lng_en_AU "Inggris Australia"
-${LangFileString} lng_en_CA "Inggris Kanada"
-${LangFileString} lng_en_GB "Inggris Inggris"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spanyol"
-${LangFileString} lng_es_MX "Spanyol Meksiko"
-${LangFileString} lng_et "Estonia"
-${LangFileString} lng_eu "Basque"
-${LangFileString} lng_fa "Persia"
-${LangFileString} lng_fi "Finlandia"
-${LangFileString} lng_fr "Perancis"
-${LangFileString} lng_ga "Irlandia"
-${LangFileString} lng_gl "Galician"
-${LangFileString} lng_he "Ibrani"
-${LangFileString} lng_hr "Kroasia"
-${LangFileString} lng_hu "Hongaria"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Bahasa Indonesia"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italia"
-${LangFileString} lng_ja "Jepang"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Korea"
-${LangFileString} lng_lt "Lithuania"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedonia"
-${LangFileString} lng_mn "Mongolia"
-${LangFileString} lng_ne "Nepal"
-${LangFileString} lng_nb "Bokmål Norwegia"
-${LangFileString} lng_nl "Belanda"
-${LangFileString} lng_nn "Nynorsk Norwegia"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polandia"
-${LangFileString} lng_pt "Portugis"
-${LangFileString} lng_pt_BR "Portugis Brasil"
-${LangFileString} lng_ro "Rumania"
-${LangFileString} lng_ru "Rusia"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slovakia"
-${LangFileString} lng_sl "Slovenia"
-${LangFileString} lng_sq "Albania"
-${LangFileString} lng_sr "Serbia"
-${LangFileString} lng_sr@latin "Serbia dalam Latin"
-${LangFileString} lng_sv "Swedia"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Turki"
-${LangFileString} lng_uk "Ukraina"
-${LangFileString} lng_vi "Vietnam"
-${LangFileString} lng_zh_CN "Cina Simplifed"
-${LangFileString} lng_zh_TW "Cina Tradisional"
${LangFileString} UInstOpt "Pilihan Pelepasan"
${LangFileString} UInstOpt1 "Silahkan pilih pilihan tambahan"
${LangFileString} PurgePrefs "Simpal preferensi personal"
diff --git a/packaging/win32/languages/Indonesian_languageNames.nsh b/packaging/win32/languages/Indonesian_languageNames.nsh
new file mode 100644
index 000000000..270b03ec9
--- /dev/null
+++ b/packaging/win32/languages/Indonesian_languageNames.nsh
@@ -0,0 +1,94 @@
+### Indonesian (id) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Indonesian.nsh'
+${LangFileString} lng_am "Amharik (am)"
+${LangFileString} lng_ar "Arab (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azerbaijan (az)"
+${LangFileString} lng_be "Belarusia (be)"
+${LangFileString} lng_bg "Bulgaria (bg)"
+${LangFileString} lng_bn "Bengali (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Breton (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Katalan (ca)"
+${LangFileString} lng_ca@valencia "Katalan Valensia (ca@valencia)"
+${LangFileString} lng_cs "Ceko (cs)"
+${LangFileString} lng_da "Denmark (da)"
+${LangFileString} lng_de "Jerman (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Yunani (el)"
+${LangFileString} lng_en "Inggris (en)"
+${LangFileString} lng_en_AU "Inggris/Australia (en_AU)"
+${LangFileString} lng_en_CA "Inggris/Kanada (en_CA)"
+${LangFileString} lng_en_GB "Inggris/Inggris Raya (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spanyol (es)"
+${LangFileString} lng_es_MX "Spanyol/Meksiko (es_MX)"
+${LangFileString} lng_et "Estonia (et)"
+${LangFileString} lng_eu "Basque (eu)"
+${LangFileString} lng_fa "Persia (fa)"
+${LangFileString} lng_fi "Finlandia (fi)"
+${LangFileString} lng_fr "Perancis (fr)"
+${LangFileString} lng_ga "Irlandia (ga)"
+${LangFileString} lng_gl "Galisia (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Ibrani (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Kroasia (hr)"
+${LangFileString} lng_hu "Hungaria (hu)"
+${LangFileString} lng_hy "Armenia (hy)"
+${LangFileString} lng_id "Indonesia (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italia (it)"
+${LangFileString} lng_ja "Jepang (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Korea (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Lituania (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Makedonia (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolia (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norwegia Bokmål (nb)"
+${LangFileString} lng_ne "Nepal (ne)"
+${LangFileString} lng_nl "Belanda (nl)"
+${LangFileString} lng_nn "Norwegia Ninorski (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polandia (pl)"
+${LangFileString} lng_pt "Portugis (pt)"
+${LangFileString} lng_pt_BR "Portugis/Brasil (pt_BR)"
+${LangFileString} lng_ro "Rumania (ro)"
+${LangFileString} lng_ru "Rusia (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Slovakia (sk)"
+${LangFileString} lng_sl "Slovenia (sl)"
+${LangFileString} lng_sq "Albania (sq)"
+${LangFileString} lng_sr "Serbia (sr)"
+${LangFileString} lng_sr@latin "Serbia dengan skrip Latin (sr@latin)"
+${LangFileString} lng_sv "Swedia (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Thai (th)"
+${LangFileString} lng_tr "Turki (tr)"
+${LangFileString} lng_uk "Ukraina (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnam (vi)"
+${LangFileString} lng_zh_CN "Cina/Cina (zh_CN)"
+${LangFileString} lng_zh_TW "Cina/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Italian.nsh b/packaging/win32/languages/Italian.nsh
index 234694e8e..9a38f8b58 100644
--- a/packaging/win32/languages/Italian.nsh
+++ b/packaging/win32/languages/Italian.nsh
@@ -1,12 +1,12 @@
-;Language: Italian (1040, CP1252)
+;Language: Italian (1040)
;By Emanuele Mandola earween@gmail.com
${LangFileString} CaptionDescription "Editor di grafica vettoriale Open Source"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) è rilasciato sotto GNU General Public License (GPL). La licenza è fornita solo a scopo informativo. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape è stato installato dall'utente $0. Potrebbe non essere possibile portare a termine l'installazione. Accedere come $0 e riprovare."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 è già stata installata. $\nRimuovere la versione precedente prima di installare $(^Name) ?"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) è rilasciato sotto GNU General Public License (GPL). La licenza è fornita solo a scopo informativo. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape è stato installato dall'utente $0. Potrebbe non essere possibile portare a termine l'installazione. Accedere come $0 e riprovare."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 è già stata installata. $\nRimuovere la versione precedente prima di installare $(^Name) ?"
${LangFileString} OK_CANCEL_DESC "$\n$\nPremere OK per continuare o Annulla per uscire."
${LangFileString} NO_ADMIN "Non si posseggono i diritti di amministratore. Potrebbe non essere possibile installare Inkscape per tutti gli utenti. Non selezionare l'opzione 'Per Tutti Gli Utenti'"
-${LangFileString} NOT_SUPPORTED "Inkscape non è compatibile con i sistemi operativi Windows 95/98/ME!\n\nPer ulteriori informazioni consultare il sito ufficiale."
+${LangFileString} NOT_SUPPORTED "Inkscape non è compatibile con i sistemi operativi Windows 95/98/ME!\n\nPer ulteriori informazioni consultare il sito ufficiale."
${LangFileString} Full "Completa"
${LangFileString} Optimal "Consigliata"
${LangFileString} Minimal "Minima"
@@ -19,7 +19,7 @@ ${LangFileString} ShortcutsDesc "Collegamenti per l'avvio Inkscape"
${LangFileString} Alluser "Per tutti gli utenti"
${LangFileString} AlluserDesc "Installa questa applicazione per tutti coloro che usano questo computer (tutti gli utenti)"
${LangFileString} Desktop "Desktop"
-${LangFileString} DesktopDesc "Crea un colegamento a Inkscape sul Desktop"
+${LangFileString} DesktopDesc "Crea un collegamento a Inkscape sul Desktop"
${LangFileString} Startmenu "Start Menu"
${LangFileString} StartmenuDesc "Crea una cartella in Start Menu per Inkscape"
${LangFileString} Quicklaunch "Avvio Rapido"
@@ -30,88 +30,26 @@ ${LangFileString} ContextMenu "Menu Contestuale"
${LangFileString} ContextMenuDesc "Aggiunge Inkscape nel Menu Contestuale per i file SVG"
${LangFileString} DeletePrefs "Rimuovere impostazioni personali"
${LangFileString} DeletePrefsDesc "Rimuove le impostazioni personali lasciate da installazioni precedenti"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "Un interprete per il linguaggio Python e i moduli Python necessari per eseguire le estensioni di Inkscape"
${LangFileString} Addfiles "File Aggiuntivi"
${LangFileString} AddfilesDesc "File Aggiuntivi"
+${LangFileString} Extensions "Estensioni"
+${LangFileString} ExtensionsDesc "Estensioni di Inkscape (tra cui vari plugin di importazione ed esportazione)"
${LangFileString} Examples "Esempi"
${LangFileString} ExamplesDesc "Esempi d'uso di Inkscape"
${LangFileString} Tutorials "Tutorial"
${LangFileString} TutorialsDesc "Tutorial per l'uso di Inkscape"
+${LangFileString} Dictionaries "Dizionari"
+${LangFileString} DictionariesDesc "Dizionari di varie lingue utilizzati per il controllo ortografico in Inkscape"
${LangFileString} Languages "Traduzioni"
${LangFileString} LanguagesDesc "Installa altre traduzioni per Inkscape"
-${LangFileString} lng_am "Aramaico"
-${LangFileString} lng_ar "Arabo"
-${LangFileString} lng_az "Azerbaigiano"
-${LangFileString} lng_be "Bielorusso"
-${LangFileString} lng_bg "Bulgaro"
-${LangFileString} lng_bn "Bengali"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Bretone"
-${LangFileString} lng_ca "Catalano"
-${LangFileString} lng_ca@valencia "Catalano Valenciano"
-${LangFileString} lng_cs "Ceco"
-${LangFileString} lng_da "Danese"
-${LangFileString} lng_de "Tedesco"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Greco"
-${LangFileString} lng_en "Inglese"
-${LangFileString} lng_en_AU "Inglese Australiano"
-${LangFileString} lng_en_CA "Inglese Canadese"
-${LangFileString} lng_en_GB "Inglese Britannico"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spagnolo"
-${LangFileString} lng_es_MX "Spagnolo Messicano"
-${LangFileString} lng_et "Estone"
-${LangFileString} lng_eu "Basco"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finlandese"
-${LangFileString} lng_fr "Francese"
-${LangFileString} lng_ga "Irlandese"
-${LangFileString} lng_gl "Gallese"
-${LangFileString} lng_he "Ebreo"
-${LangFileString} lng_hr "Croato"
-${LangFileString} lng_hu "Ungherese"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonesiano"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italiano"
-${LangFileString} lng_ja "Giopponese"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Koreano"
-${LangFileString} lng_lt "Lituano"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedone"
-${LangFileString} lng_mn "Mongolo"
-${LangFileString} lng_ne "Nepali"
-${LangFileString} lng_nb "Norvegese Bokmål"
-${LangFileString} lng_nl "Olandese"
-${LangFileString} lng_nn "Norvegese Nynorsk"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polacco"
-${LangFileString} lng_pt "Portoghese"
-${LangFileString} lng_pt_BR "Portoghese Brasiliano"
-${LangFileString} lng_ro "Rumeno"
-${LangFileString} lng_ru "Russo"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slovacco"
-${LangFileString} lng_sl "Sloveno"
-${LangFileString} lng_sq "Albanese"
-${LangFileString} lng_sr "Serbo"
-${LangFileString} lng_sr@latin "Serbo in caratteri Latini"
-${LangFileString} lng_sv "Svedese"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Thai"
-${LangFileString} lng_tr "Turco"
-${LangFileString} lng_uk "Ucraino"
-${LangFileString} lng_vi "Vietnamese"
-${LangFileString} lng_zh_CN "Cinese Semplificato"
-${LangFileString} lng_zh_TW "Cinese Tradizionale"
${LangFileString} UInstOpt "Opzioni di Disinstallazione"
${LangFileString} UInstOpt1 "Scegli ulteriori Opzioni"
${LangFileString} PurgePrefs "Mantieni le Impostazioni personali"
${LangFileString} UninstallLogNotFound "Impossibile trovare $INSTDIR\uninstall.log !$\r$\nPer continuare la rimozione, cancellare la cartella $INSTDIR a mano."
-${LangFileString} FileChanged "Il file $filename è stato modificato rispetto all'ultima installazione.$\r$\nRimuoverlo comunque?"
-${LangFileString} Yes "Sì"
-${LangFileString} AlwaysYes "rispondere sempre Sì"
+${LangFileString} FileChanged "Il file $filename è stato modificato rispetto all'ultima installazione.$\r$\nRimuoverlo comunque?"
+${LangFileString} Yes "Sì"
+${LangFileString} AlwaysYes "rispondere sempre Sì"
${LangFileString} No "No"
${LangFileString} AlwaysNo "rispondere sempre No"
diff --git a/packaging/win32/languages/Italian_languageNames.nsh b/packaging/win32/languages/Italian_languageNames.nsh
new file mode 100644
index 000000000..020b60730
--- /dev/null
+++ b/packaging/win32/languages/Italian_languageNames.nsh
@@ -0,0 +1,94 @@
+### Italian (it) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Italian.nsh'
+${LangFileString} lng_am "Amarico (am)"
+${LangFileString} lng_ar "Arabo (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azero (az)"
+${LangFileString} lng_be "Bielorusso (be)"
+${LangFileString} lng_bg "Bulgaro (bg)"
+${LangFileString} lng_bn "Bengalese (bn)"
+${LangFileString} lng_bn_BD "Bengalese/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretone (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalano (ca)"
+${LangFileString} lng_ca@valencia "Catalano Valenziano (ca@valencia)"
+${LangFileString} lng_cs "Ceco (cs)"
+${LangFileString} lng_da "Danese (da)"
+${LangFileString} lng_de "Tedesco (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Greco (el)"
+${LangFileString} lng_en "Inglese (en)"
+${LangFileString} lng_en_AU "Inglese/Australia (en_AU)"
+${LangFileString} lng_en_CA "Inglese/Canada (en_CA)"
+${LangFileString} lng_en_GB "Inglese/Gran Bretagna (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spagnolo (es)"
+${LangFileString} lng_es_MX "Spagnolo/Messicano (es_MX)"
+${LangFileString} lng_et "Estone (et)"
+${LangFileString} lng_eu "Basco (eu)"
+${LangFileString} lng_fa "Persiano (fa)"
+${LangFileString} lng_fi "Finlandese (fi)"
+${LangFileString} lng_fr "Francese (fr)"
+${LangFileString} lng_ga "Irlandese (ga)"
+${LangFileString} lng_gl "Galiziona (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Ebreo (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croato (hr)"
+${LangFileString} lng_hu "Ungherese (hu)"
+${LangFileString} lng_hy "Armeno (hy)"
+${LangFileString} lng_id "Indonesiano (id)"
+${LangFileString} lng_is "Islandese (is)"
+${LangFileString} lng_it "Italiano (it)"
+${LangFileString} lng_ja "Giapponese (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Koreano (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in caratteri latini (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in caratteri devanagari (ks@deva)"
+${LangFileString} lng_lt "Lituano (lt)"
+${LangFileString} lng_lv "Lettone (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedone (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolo (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in caratteri bengalesi (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norvegese Bokmål (nb)"
+${LangFileString} lng_ne "Nepalese (ne)"
+${LangFileString} lng_nl "Olandese (nl)"
+${LangFileString} lng_nn "Norvegese Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polacco (pl)"
+${LangFileString} lng_pt "Portoghese (pt)"
+${LangFileString} lng_pt_BR "Portoghese/Brasiliano (pt_BR)"
+${LangFileString} lng_ro "Rumeno (ro)"
+${LangFileString} lng_ru "Russo (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanscrito (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in caratteri devanagari (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in caratteri devanagari (sd@deva)"
+${LangFileString} lng_sk "Slovacco (sk)"
+${LangFileString} lng_sl "Sloveno (sl)"
+${LangFileString} lng_sq "Albanese (sq)"
+${LangFileString} lng_sr "Serbo (sr)"
+${LangFileString} lng_sr@latin "Serbo in caratteri latini (sr@latin)"
+${LangFileString} lng_sv "Svedese (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Tailandese (th)"
+${LangFileString} lng_tr "Turco (tr)"
+${LangFileString} lng_uk "Ucraino (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamita (vi)"
+${LangFileString} lng_zh_CN "Cinese/Cina (zh_CN)"
+${LangFileString} lng_zh_TW "Cinese/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Japanese.nsh b/packaging/win32/languages/Japanese.nsh
index 6cb58c2d9..0c8f28aa8 100644
--- a/packaging/win32/languages/Japanese.nsh
+++ b/packaging/win32/languages/Japanese.nsh
@@ -1,117 +1,55 @@
-;Language: Japanese (1041, CP932)
+;Language: Japanese (1041)
;By Kenji Inoue <kenz@oct.zaq.ne.jp>, Masato Hashimoto <cabezon.hashimoto@gmail.com>
${LangFileString} CaptionDescription "Open Source Scalable Vector Graphics Editor"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) ‚Í GNU General Public License (GPL) ‚̉º‚ÅƒŠƒŠ[ƒX‚³‚ê‚Ü‚·BŽQl‚É“–ŠYƒ‰ƒCƒZƒ“ƒX‚ð‚±‚±‚É•\ަ‚µ‚Ü‚·B$_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape ‚̓†[ƒU[ $0 ‚É‚æ‚Á‚ăCƒ“ƒXƒg[ƒ‹‚³‚ê‚Ä‚¢‚Ü‚·B$\r$\n‚±‚̂܂ܑ±‚¯‚邯³í‚ÉŠ®—¹‚µ‚È‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñB$\r$\n$0 ‚ŃƒOƒCƒ“‚µ‚Ä‚©‚çÄ“xŽŽ‚݂Ă­‚¾‚³‚¢B"
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 ‚ÍŠù‚ɃCƒ“ƒXƒg[ƒ‹‚³‚ê‚Ä‚¢‚Ü‚·B$\n$(^Name) ‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‘O‚ɈȑO‚̃o[ƒWƒ‡ƒ“‚ð휂µ‚Ü‚·‚©?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nOK ‚ð‰Ÿ‚µ‚ÄŒp‘±‚·‚é‚© CANCEL ‚ð‰Ÿ‚µ‚Ä’†Ž~‚µ‚Ä‚­‚¾‚³‚¢B"
-${LangFileString} NO_ADMIN "ŠÇ—ŽÒŒ ŒÀ‚ª‚ ‚è‚Ü‚¹‚ñB$\r$\n‚·‚ׂẴ†[ƒU[‚ɑ΂·‚é Inkscape ‚̃Cƒ“ƒXƒg[ƒ‹‚ͳí‚ÉŠ®—¹‚µ‚È‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñB$\r$\n'‚·‚ׂẴ†[ƒU[' ƒIƒvƒVƒ‡ƒ“‚̃`ƒFƒbƒNƒ}[ƒN‚ðŠO‚µ‚Ä‚­‚¾‚³‚¢B"
-${LangFileString} NOT_SUPPORTED "Inkscape ‚Í Windows 95/98/ME ã‚ł͓®ì‚µ‚Ü‚¹‚ñ!$\r$\nÚ‚µ‚­‚̓IƒtƒBƒVƒƒƒ‹ƒEƒFƒuƒTƒCƒg‚ð‚²——‚­‚¾‚³‚¢B"
-${LangFileString} Full "Š®‘S"
-${LangFileString} Optimal "œK"
-${LangFileString} Minimal "Ŭ"
-${LangFileString} Core "Inkscape SVG Editor (•K{)"
-${LangFileString} CoreDesc "Inkscape ‚̃RƒAƒtƒ@ƒCƒ‹‚ÆDLL"
-${LangFileString} GTKFiles "GTK+ ƒ‰ƒ“ƒ^ƒCƒ€ŠÂ‹« (•K{)"
-${LangFileString} GTKFilesDesc "ƒ}ƒ‹ƒ`ƒvƒ‰ƒbƒgƒtƒH[ƒ€‘Ήž GUI ƒc[ƒ‹ƒLƒbƒg (Inkscape ‚ªŽg—p)"
-${LangFileString} Shortcuts "ƒVƒ‡[ƒgƒJƒbƒg"
-${LangFileString} ShortcutsDesc "Inkscape ‚ðŠJŽn‚·‚邽‚߂̃Vƒ‡[ƒgƒJƒbƒg"
-${LangFileString} Alluser "‚·‚ׂẴ†[ƒU["
-${LangFileString} AlluserDesc "‚±‚̃Rƒ“ƒsƒ…[ƒ^[‚ðŽg‚¤‚·‚ׂĂÌl‚É‚±‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚ðƒCƒ“ƒXƒg[ƒ‹ (‚·‚ׂẴ†[ƒU[)"
-${LangFileString} Desktop "ƒfƒXƒNƒgƒbƒv"
-${LangFileString} DesktopDesc "Inkscape ‚ւ̃Vƒ‡[ƒgƒJƒbƒg‚ðƒfƒXƒNƒgƒbƒv‚Éì¬"
-${LangFileString} Startmenu "ƒXƒ^[ƒgƒƒjƒ…["
-${LangFileString} StartmenuDesc "ƒXƒ^[ƒgƒƒjƒ…[‚É Inkscape ‚Ì€–Ú‚ðì¬"
-${LangFileString} Quicklaunch "ƒNƒCƒbƒN‹N“®"
-${LangFileString} QuicklaunchDesc "Inkscape ‚ւ̃Vƒ‡[ƒgƒJƒbƒg‚ðƒNƒCƒbƒN‹N“®ƒc[ƒ‹ƒo[‚Éì¬"
-${LangFileString} SVGWriter "SVG ƒtƒ@ƒCƒ‹‚ð Inkscape ‚ÅŠJ‚­"
-${LangFileString} SVGWriterDesc "SVG ƒtƒ@ƒCƒ‹‚Ì•W€ƒGƒfƒBƒ^[‚É Inkscape ‚ðÝ’è"
-${LangFileString} ContextMenu "ƒRƒ“ƒeƒLƒXƒgƒƒjƒ…["
-${LangFileString} ContextMenuDesc "SVG ƒtƒ@ƒCƒ‹‚̃Rƒ“ƒeƒLƒXƒgƒƒjƒ…[‚É Inkscape ‚ð’ljÁ"
-${LangFileString} DeletePrefs "ŒÂlÝ’è‚ðíœ"
-${LangFileString} DeletePrefsDesc "ˆÈ‘O‚̃Cƒ“ƒXƒg[ƒ‹Žž‚©‚çˆø‚«Œp‚¢‚¾ŒÂlÝ’è‚ðíœ"
-${LangFileString} Addfiles "’ljÁƒtƒ@ƒCƒ‹"
-${LangFileString} AddfilesDesc "’ljÁƒtƒ@ƒCƒ‹"
-${LangFileString} Examples "ƒTƒ“ƒvƒ‹ƒtƒ@ƒCƒ‹"
-${LangFileString} ExamplesDesc "Inkscape ‚̃Tƒ“ƒvƒ‹ƒtƒ@ƒCƒ‹"
-${LangFileString} Tutorials "ƒ`ƒ…[ƒgƒŠƒAƒ‹"
-${LangFileString} TutorialsDesc "Inkscape ‚̃`ƒ…[ƒgƒŠƒAƒ‹"
-${LangFileString} Languages "Œ¾Œê"
-${LangFileString} LanguagesDesc "Inkscape ‚Ì‚³‚Ü‚´‚܂Ȍ¾Œêƒtƒ@ƒCƒ‹‚ðƒCƒ“ƒXƒg[ƒ‹"
-${LangFileString} lng_am "ƒAƒ€ƒnƒ‰Œê"
-${LangFileString} lng_ar "ƒAƒ‰ƒrƒAŒê"
-${LangFileString} lng_az "ƒAƒ[ƒ‹ƒoƒCƒWƒƒƒ“Œê"
-${LangFileString} lng_be "ƒxƒ‰ƒ‹[ƒVŒê"
-${LangFileString} lng_bg "ƒuƒ‹ƒKƒŠƒAŒê"
-${LangFileString} lng_bn "ƒxƒ“ƒKƒ‹Œê"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "ƒuƒ‹ƒgƒ“Œê"
-${LangFileString} lng_ca "ƒJƒ^ƒƒjƒAŒê"
-${LangFileString} lng_ca@valencia "ƒoƒŒƒ“ƒVƒAŒê"
-${LangFileString} lng_cs "ƒ`ƒFƒRŒê"
-${LangFileString} lng_da "ƒfƒ“ƒ}[ƒNŒê"
-${LangFileString} lng_de "ƒhƒCƒcŒê"
-${LangFileString} lng_dz "ƒ]ƒ“ƒJŒê"
-${LangFileString} lng_el "ƒMƒŠƒVƒƒŒê"
-${LangFileString} lng_en "‰pŒê"
-${LangFileString} lng_en_AU "‰pŒê (ƒI[ƒXƒgƒ‰ƒŠƒA)"
-${LangFileString} lng_en_CA "‰pŒê (ƒJƒiƒ_)"
-${LangFileString} lng_en_GB "‰pŒê (‰p‘)"
-${LangFileString} lng_en_US@piglatin "ƒsƒbƒOEƒ‰ƒeƒ“Œê"
-${LangFileString} lng_eo "ƒGƒXƒyƒ‰ƒ“ƒgŒê"
-${LangFileString} lng_es "ƒXƒyƒCƒ“Œê"
-${LangFileString} lng_es_MX "ƒXƒyƒCƒ“Œê (ƒƒLƒVƒR)"
-${LangFileString} lng_et "ƒGƒXƒgƒjƒAŒê"
-${LangFileString} lng_eu "ƒoƒXƒNŒê"
-${LangFileString} lng_fa "ƒtƒ@ƒ‹ƒVŒê"
-${LangFileString} lng_fi "ƒtƒBƒ“ƒ‰ƒ“ƒhŒê"
-${LangFileString} lng_fr "ƒtƒ‰ƒ“ƒXŒê"
-${LangFileString} lng_ga "ƒAƒCƒ‹ƒ‰ƒ“ƒhŒê"
-${LangFileString} lng_gl "ƒKƒŠƒVƒAŒê"
-${LangFileString} lng_he "ƒwƒuƒ‰ƒCŒê"
-${LangFileString} lng_hr "ƒNƒƒAƒ`ƒAŒê"
-${LangFileString} lng_hu "ƒnƒ“ƒKƒŠ[Œê"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "ƒCƒ“ƒhƒlƒVƒAŒê"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "ƒCƒ^ƒŠƒAŒê"
-${LangFileString} lng_ja "“ú–{Œê"
-${LangFileString} lng_km "ƒNƒ[ƒ‹Œê"
-${LangFileString} lng_ko "ŠØ‘Œê"
-${LangFileString} lng_lt "ƒŠƒgƒAƒjƒAŒê"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "ƒ}ƒPƒhƒjƒAŒê"
-${LangFileString} lng_mn "ƒ‚ƒ“ƒSƒ‹Œê"
-${LangFileString} lng_ne "ƒlƒp[ƒ‹Œê"
-${LangFileString} lng_nb "ƒmƒ‹ƒEƒF[Œêƒu[ƒNƒ‚[ƒ‹"
-${LangFileString} lng_nl "ƒIƒ‰ƒ“ƒ_Œê"
-${LangFileString} lng_nn "ƒmƒ‹ƒEƒF[Œêƒj[ƒmƒVƒ…ƒN"
-${LangFileString} lng_pa "ƒpƒ“ƒWƒƒƒuŒê"
-${LangFileString} lng_pl "ƒ|[ƒ‰ƒ“ƒhŒê"
-${LangFileString} lng_pt "ƒ|ƒ‹ƒgƒKƒ‹Œê"
-${LangFileString} lng_pt_BR "ƒ|ƒ‹ƒgƒKƒ‹Œê (ƒuƒ‰ƒWƒ‹)"
-${LangFileString} lng_ro "ƒ‹[ƒ}ƒjƒAŒê"
-${LangFileString} lng_ru "ƒƒVƒAŒê"
-${LangFileString} lng_rw "ƒLƒjƒ„ƒ‹ƒƒ“ƒ_Œê"
-${LangFileString} lng_sk "ƒXƒƒoƒLƒAŒê"
-${LangFileString} lng_sl "ƒXƒƒxƒjƒAŒê"
-${LangFileString} lng_sq "ƒAƒ‹ƒoƒjƒAŒê"
-${LangFileString} lng_sr "ƒZƒ‹ƒrƒAŒê"
-${LangFileString} lng_sr@latin "ƒZƒ‹ƒrƒAŒêƒ‰ƒeƒ“•¶Žš"
-${LangFileString} lng_sv "ƒXƒEƒF[ƒfƒ“Œê"
-${LangFileString} lng_te "ƒeƒ‹ƒOŒê"
-${LangFileString} lng_th "ƒ^ƒCŒê"
-${LangFileString} lng_tr "ƒgƒ‹ƒRŒê"
-${LangFileString} lng_uk "ƒEƒNƒ‰ƒCƒiŒê"
-${LangFileString} lng_vi "ƒxƒgƒiƒ€Œê"
-${LangFileString} lng_zh_CN "’†‘Œê (ŠÈ‘ÌŽš)"
-${LangFileString} lng_zh_TW "’†‘Œê (”ɑ̎š)"
-${LangFileString} UInstOpt "ƒAƒ“ƒCƒ“ƒXƒg[ƒ‹ƒIƒvƒVƒ‡ƒ“"
-${LangFileString} UInstOpt1 "•K—v‚Å‚ ‚ê‚Έȉº‚̃IƒvƒVƒ‡ƒ“‚ð‘I‘ð‚µ‚Ä‚­‚¾‚³‚¢"
-${LangFileString} PurgePrefs "ŒÂlÝ’è‚ðŽc‚·"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ‚ªŒ©‚‚©‚è‚Ü‚¹‚ñ!$\r$\nƒfƒBƒŒƒNƒgƒŠ $INSTDIR ‚ðŽè“®‚Å휂µ‚ăAƒ“ƒCƒ“ƒXƒg[ƒ‹‚µ‚Ä‚­‚¾‚³‚¢!"
-${LangFileString} FileChanged "ƒtƒ@ƒCƒ‹ $filename ‚̓Cƒ“ƒXƒg[ƒ‹Œã‚É•ÏX‚³‚ê‚Ä‚¢‚Ü‚·B$\r$\n‚±‚̃tƒ@ƒCƒ‹‚ð휂µ‚Ü‚·‚©?"
-${LangFileString} Yes "‚Í‚¢"
-${LangFileString} AlwaysYes "‚·‚ׂĂ͂¢"
-${LangFileString} No "‚¢‚¢‚¦"
-${LangFileString} AlwaysNo "‚·‚ׂĂ¢‚¢‚¦"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) 㯠GNU General Public License (GPL) ã®ä¸‹ã§ãƒªãƒªãƒ¼ã‚¹ã•れã¾ã™ã€‚å‚考ã«å½“該ライセンスをã“ã“ã«è¡¨ç¤ºã—ã¾ã™ã€‚$_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ $0 ã«ã‚ˆã£ã¦ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã™ã€‚$\r$\nã“ã®ã¾ã¾ç¶šã‘ã‚‹ã¨æ­£å¸¸ã«å®Œäº†ã—ãªã„ã‹ã‚‚ã—れã¾ã›ã‚“。$\r$\n$0 ã§ãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ã‹ã‚‰å†åº¦è©¦ã¿ã¦ãã ã•ã„。"
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 ã¯æ—¢ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã™ã€‚$\n$(^Name) をインストールã™ã‚‹å‰ã«ä»¥å‰ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’削除ã—ã¾ã™ã‹?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nOK を押ã—ã¦ç¶™ç¶šã™ã‚‹ã‹ CANCEL を押ã—ã¦ä¸­æ­¢ã—ã¦ãã ã•ã„。"
+${LangFileString} NO_ADMIN "管ç†è€…権é™ãŒã‚りã¾ã›ã‚“。$\r$\nã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«å¯¾ã™ã‚‹ Inkscape ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã¯æ­£å¸¸ã«å®Œäº†ã—ãªã„ã‹ã‚‚ã—れã¾ã›ã‚“。$\r$\n'ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼' オプションã®ãƒã‚§ãƒƒã‚¯ãƒžãƒ¼ã‚¯ã‚’外ã—ã¦ãã ã•ã„。"
+${LangFileString} NOT_SUPPORTED "Inkscape 㯠Windows 95/98/ME 上ã§ã¯å‹•作ã—ã¾ã›ã‚“!$\r$\n詳ã—ãã¯ã‚ªãƒ•ィシャルウェブサイトをã”覧ãã ã•ã„。"
+${LangFileString} Full "完全"
+${LangFileString} Optimal "最é©"
+${LangFileString} Minimal "最å°"
+${LangFileString} Core "Inkscape SVG Editor (å¿…é ˆ)"
+${LangFileString} CoreDesc "Inkscape ã®ã‚³ã‚¢ãƒ•ァイルã¨DLL"
+${LangFileString} GTKFiles "GTK+ ランタイム環境 (必須)"
+${LangFileString} GTKFilesDesc "マルãƒãƒ—ラットフォーム対応 GUI ツールキット (Inkscape ãŒä½¿ç”¨)"
+${LangFileString} Shortcuts "ショートカット"
+${LangFileString} ShortcutsDesc "Inkscape ã‚’é–‹å§‹ã™ã‚‹ãŸã‚ã®ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆ"
+${LangFileString} Alluser "ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼"
+${LangFileString} AlluserDesc "ã“ã®ã‚³ãƒ³ãƒ”ューターを使ã†ã™ã¹ã¦ã®äººã«ã“ã®ã‚¢ãƒ—リケーションをインストール (ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼)"
+${LangFileString} Desktop "デスクトップ"
+${LangFileString} DesktopDesc "Inkscape ã¸ã®ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆã‚’デスクトップã«ä½œæˆ"
+${LangFileString} Startmenu "スタートメニュー"
+${LangFileString} StartmenuDesc "スタートメニュー㫠Inkscape ã®é …目を作æˆ"
+${LangFileString} Quicklaunch "クイック起動"
+${LangFileString} QuicklaunchDesc "Inkscape ã¸ã®ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆã‚’クイック起動ツールãƒãƒ¼ã«ä½œæˆ"
+${LangFileString} SVGWriter "SVG ファイルを Inkscape ã§é–‹ã"
+${LangFileString} SVGWriterDesc "SVG ãƒ•ã‚¡ã‚¤ãƒ«ã®æ¨™æº–エディター㫠Inkscape を設定"
+${LangFileString} ContextMenu "コンテキストメニュー"
+${LangFileString} ContextMenuDesc "SVG ファイルã®ã‚³ãƒ³ãƒ†ã‚­ã‚¹ãƒˆãƒ¡ãƒ‹ãƒ¥ãƒ¼ã« Inkscape を追加"
+${LangFileString} DeletePrefs "個人設定を削除"
+${LangFileString} DeletePrefsDesc "以å‰ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ™‚ã‹ã‚‰å¼•ãç¶™ã„ã å€‹äººè¨­å®šã‚’削除"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "追加ファイル"
+${LangFileString} AddfilesDesc "追加ファイル"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "サンプルファイル"
+${LangFileString} ExamplesDesc "Inkscape ã®ã‚µãƒ³ãƒ—ルファイル"
+${LangFileString} Tutorials "ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«"
+${LangFileString} TutorialsDesc "Inkscape ã®ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "言語"
+${LangFileString} LanguagesDesc "Inkscape ã®ã•ã¾ã–ã¾ãªè¨€èªžãƒ•ァイルをインストール"
+${LangFileString} UInstOpt "アンインストールオプション"
+${LangFileString} UInstOpt1 "å¿…è¦ã§ã‚れã°ä»¥ä¸‹ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã‚’é¸æŠžã—ã¦ãã ã•ã„"
+${LangFileString} PurgePrefs "個人設定を残ã™"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!$\r$\nディレクトリ $INSTDIR を手動ã§å‰Šé™¤ã—ã¦ã‚¢ãƒ³ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ã¦ãã ã•ã„!"
+${LangFileString} FileChanged "ファイル $filename ã¯ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å¾Œã«å¤‰æ›´ã•れã¦ã„ã¾ã™ã€‚$\r$\nã“ã®ãƒ•ァイルを削除ã—ã¾ã™ã‹?"
+${LangFileString} Yes "ã¯ã„"
+${LangFileString} AlwaysYes "ã™ã¹ã¦ã¯ã„"
+${LangFileString} No "ã„ã„ãˆ"
+${LangFileString} AlwaysNo "ã™ã¹ã¦ã„ã„ãˆ"
diff --git a/packaging/win32/languages/Japanese_languageNames.nsh b/packaging/win32/languages/Japanese_languageNames.nsh
new file mode 100644
index 000000000..109e8d7fc
--- /dev/null
+++ b/packaging/win32/languages/Japanese_languageNames.nsh
@@ -0,0 +1,94 @@
+### Japanese (ja) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Japanese.nsh'
+${LangFileString} lng_am "アムãƒãƒ©èªž (am)"
+${LangFileString} lng_ar "アラビア語 (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "アゼルãƒã‚¤ã‚¸ãƒ£ãƒ³èªž (az)"
+${LangFileString} lng_be "ベラルーシ語 (be)"
+${LangFileString} lng_bg "ブルガリア語 (bg)"
+${LangFileString} lng_bn "ベンガル語 (bn)"
+${LangFileString} lng_bn_BD "ベンガル語/ãƒãƒ³ã‚°ãƒ©ãƒ‡ã‚·ãƒ¥ (bn_BD)"
+${LangFileString} lng_br "ブルトン語 (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "カタルーニャ語 (ca)"
+${LangFileString} lng_ca@valencia "ãƒãƒ¬ãƒ³ã‚·ã‚¢èªž (ca@valencia)"
+${LangFileString} lng_cs "ãƒã‚§ã‚³èªž (cs)"
+${LangFileString} lng_da "デンマーク語 (da)"
+${LangFileString} lng_de "ドイツ語 (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "ゾンカ語 (dz)"
+${LangFileString} lng_el "ギリシャ語 (el)"
+${LangFileString} lng_en "英語 (en)"
+${LangFileString} lng_en_AU "英語/オーストラリア (en_AU)"
+${LangFileString} lng_en_CA "英語/カナダ (en_CA)"
+${LangFileString} lng_en_GB "英語/イギリス (en_GB)"
+${LangFileString} lng_en_US@piglatin "ピッグ・ラテン語 (en_US@piglatin)"
+${LangFileString} lng_eo "エスペラント語 (eo)"
+${LangFileString} lng_es "スペイン語 (es)"
+${LangFileString} lng_es_MX "スペイン語/メキシコ (es_MX)"
+${LangFileString} lng_et "エストニア語 (et)"
+${LangFileString} lng_eu "ãƒã‚¹ã‚¯èªž (eu)"
+${LangFileString} lng_fa "ファルシ語 (fa)"
+${LangFileString} lng_fi "フィンランド語 (fi)"
+${LangFileString} lng_fr "フランス語 (fr)"
+${LangFileString} lng_ga "アイルランド語 (ga)"
+${LangFileString} lng_gl "ガリシア語 (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "ヘブライ語 (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "クロアãƒã‚¢èªž (hr)"
+${LangFileString} lng_hu "ãƒãƒ³ã‚¬ãƒªãƒ¼èªž (hu)"
+${LangFileString} lng_hy "アルメニア語 (hy)"
+${LangFileString} lng_id "インドãƒã‚·ã‚¢èªž (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "イタリア語 (it)"
+${LangFileString} lng_ja "日本語 (ja)"
+${LangFileString} lng_km "クメール語 (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "韓国語 (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "リトアニア語 (lt)"
+${LangFileString} lng_lv "ラトビア語 (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "マケドニア語 (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "モンゴル語 (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "ノルウェー語ブークモール (nb)"
+${LangFileString} lng_ne "ãƒãƒ‘ール語 (ne)"
+${LangFileString} lng_nl "オランダ語 (nl)"
+${LangFileString} lng_nn "ノルウェー語ニーノシュク (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "パンジャブ語 (pa)"
+${LangFileString} lng_pl "ãƒãƒ¼ãƒ©ãƒ³ãƒ‰èªž (pl)"
+${LangFileString} lng_pt "ãƒãƒ«ãƒˆã‚¬ãƒ«èªž (pt)"
+${LangFileString} lng_pt_BR "ãƒãƒ«ãƒˆã‚¬ãƒ«èªž/ブラジル (pt_BR)"
+${LangFileString} lng_ro "ルーマニア語 (ro)"
+${LangFileString} lng_ru "ロシア語 (ru)"
+${LangFileString} lng_rw "キニヤルワンダ語 (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "スロãƒã‚­ã‚¢èªž (sk)"
+${LangFileString} lng_sl "スロベニア語 (sl)"
+${LangFileString} lng_sq "アルãƒãƒ‹ã‚¢èªž (sq)"
+${LangFileString} lng_sr "セルビア語 (sr)"
+${LangFileString} lng_sr@latin "セルビア語ラテン文字 (sr@latin)"
+${LangFileString} lng_sv "スウェーデン語 (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "タイ語 (th)"
+${LangFileString} lng_tr "トルコ語 (tr)"
+${LangFileString} lng_uk "ウクライナ語 (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "ベトナム語 (vi)"
+${LangFileString} lng_zh_CN "中国語/中国 (zh_CN)"
+${LangFileString} lng_zh_TW "中国語/å°æ¹¾ (zh_TW)"
diff --git a/packaging/win32/languages/Polish.nsh b/packaging/win32/languages/Polish.nsh
index 0e184d616..a0ade97ee 100644
--- a/packaging/win32/languages/Polish.nsh
+++ b/packaging/win32/languages/Polish.nsh
@@ -1,116 +1,54 @@
-;Language: Polish (1045, CP1250)
-;By Przemys³aw Loesch <p_loesch@poczta.onet.pl>, Marcin Floryan <marcin.floryan@gmail.com>, Leszek(teo)¯yczkowski <leszekz@gmail.com>
+;Language: Polish (1045)
+;By Przemysław Loesch <p_loesch@poczta.onet.pl>, Marcin Floryan <marcin.floryan@gmail.com>, Leszek(teo)Życzkowski <leszekz@gmail.com>
${LangFileString} CaptionDescription "otwarte oprogramowanie do grafiki wektorowej SVG"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) jest udostêpniony na licencji GNU General Public License (GPL). Tekst licencji jest do³¹czony jedynie w celach informacyjnych. $_CLICK"
-${LangFileString} DIFFERENT_USER "Program Inkscape zosta³ zainstalowany przez u¿ytkownika $0.$\r$\nJeœli instalacja bêdzie kontynuowana, mo¿e zakoñczyæ siê niepowodzeniem!$\r$\nProszê zalogowaæ siê jako $0 i spróbowaæ ponownie."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 jest ju¿ zainstalowany. $\nCzy chcesz przed zainstalowaniem programu $(^Name) usun¹æ jego poprzedni¹ wersjê?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nAby kontynuowaæ instalacjê, naciœnij przycisk OK, aby przerwaæ – Anuluj."
-${LangFileString} NO_ADMIN "Nie masz uprawnieñ administratora.$\r$\nInstalacja programu Inkscape dla wszystkich u¿ytkowników mo¿e zakoñczyæ siê niepowodzeniem.$\r$\nProszê wy³¹czyæ opcjê „Dla wszystkich u¿ytkowników”."
-${LangFileString} NOT_SUPPORTED "Program Inkscape nie dzia³a w systemach Windows 95/98/ME!$\r$\nProszê zapoznaæ siê z informacjami na ten temat na oficjalnej stronie internetowej programu."
-${LangFileString} Full "Pe³na"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) jest udostępniony na licencji GNU General Public License (GPL). Tekst licencji jest dołączony jedynie w celach informacyjnych. $_CLICK"
+${LangFileString} DIFFERENT_USER "Program Inkscape został zainstalowany przez użytkownika $0.$\r$\nJeśli instalacja będzie kontynuowana, może zakończyć się niepowodzeniem!$\r$\nProszę zalogować się jako $0 i spróbować ponownie."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 jest już zainstalowany. $\nCzy chcesz przed zainstalowaniem programu $(^Name) usunąć jego poprzednią wersję?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nAby kontynuować instalację, naciśnij przycisk OK, aby przerwać – Anuluj."
+${LangFileString} NO_ADMIN "Nie masz uprawnieÅ„ administratora.$\r$\nInstalacja programu Inkscape dla wszystkich użytkowników może zakoÅ„czyć siÄ™ niepowodzeniem.$\r$\nProszÄ™ wyłączyć opcjÄ™ „Dla wszystkich użytkownikówâ€."
+${LangFileString} NOT_SUPPORTED "Program Inkscape nie działa w systemach Windows 95/98/ME!$\r$\nProszę zapoznać się z informacjami na ten temat na oficjalnej stronie internetowej programu."
+${LangFileString} Full "Pełna"
${LangFileString} Optimal "Optymalna"
${LangFileString} Minimal "Minimalna"
${LangFileString} Core "Inkscape Edytor SVG (wymagane)"
${LangFileString} CoreDesc "Podstawowe pliki i biblioteki dll dla programu Inkscape"
-${LangFileString} GTKFiles "Œrodowisko pracy GTK+ (wymagane)"
-${LangFileString} GTKFilesDesc "Wieloplatformowe œrodowisko graficzne, z którego korzysta Inkscape"
-${LangFileString} Shortcuts "Skróty"
-${LangFileString} ShortcutsDesc "Skróty do uruchamiania programu Inkscape"
-${LangFileString} Alluser "dla wszystkich u¿ytkowników"
-${LangFileString} AlluserDesc "Program Inkscape zostanie zainstalowany dla wszystkich u¿ytkowników tego komputera"
+${LangFileString} GTKFiles "Åšrodowisko pracy GTK+ (wymagane)"
+${LangFileString} GTKFilesDesc "Wieloplatformowe środowisko graficzne, z którego korzysta Inkscape"
+${LangFileString} Shortcuts "Skróty"
+${LangFileString} ShortcutsDesc "Skróty do uruchamiania programu Inkscape"
+${LangFileString} Alluser "dla wszystkich użytkowników"
+${LangFileString} AlluserDesc "Program Inkscape zostanie zainstalowany dla wszystkich użytkowników tego komputera"
${LangFileString} Desktop "Pulpit"
-${LangFileString} DesktopDesc "Na pulpicie zostanie utworzony skrót do uruchamiania programu Inkscape"
+${LangFileString} DesktopDesc "Na pulpicie zostanie utworzony skrót do uruchamiania programu Inkscape"
${LangFileString} Startmenu "Menu Start"
-${LangFileString} StartmenuDesc "W menu Start zostanie utworzony skrót do uruchamiania programu Inkscape"
+${LangFileString} StartmenuDesc "W menu Start zostanie utworzony skrót do uruchamiania programu Inkscape"
${LangFileString} Quicklaunch "Pasek szybkiego uruchamiania"
-${LangFileString} QuicklaunchDesc "Na pasku szybkiego uruchamiania zostanie utworzony skrót do uruchamiania programu Inkscape"
-${LangFileString} SVGWriter "Otwieraj pliki SVG za pomoc¹ programu Inkscape"
-${LangFileString} SVGWriterDesc "Program Inkscape bêdzie domyœlnym edytorem plików SVG"
+${LangFileString} QuicklaunchDesc "Na pasku szybkiego uruchamiania zostanie utworzony skrót do uruchamiania programu Inkscape"
+${LangFileString} SVGWriter "Otwieraj pliki SVG za pomocÄ… programu Inkscape"
+${LangFileString} SVGWriterDesc "Program Inkscape będzie domyślnym edytorem plików SVG"
${LangFileString} ContextMenu "Menu kontekstowe"
${LangFileString} ContextMenuDesc "Do systemowego menu kontekstowego zostanie dodany program Inkscape"
-${LangFileString} DeletePrefs "Usuñ ustawienia u¿ytkownika"
-${LangFileString} DeletePrefsDesc "Zostan¹ usuniête ustawienia u¿ytkownika pozostawione przez poprzednie instalacje"
+${LangFileString} DeletePrefs "Usuń ustawienia użytkownika"
+${LangFileString} DeletePrefsDesc "Zostaną usunięte ustawienia użytkownika pozostawione przez poprzednie instalacje"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Pliki dodatkowe"
-${LangFileString} AddfilesDesc "Zostan¹ dodane wybrane poni¿ej dodatkowe pliki"
-${LangFileString} Examples "Przyk³ady"
-${LangFileString} ExamplesDesc "Przyk³ady u¿ycia programu Inkscape"
+${LangFileString} AddfilesDesc "Zostaną dodane wybrane poniżej dodatkowe pliki"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "Przykłady"
+${LangFileString} ExamplesDesc "Przykłady użycia programu Inkscape"
${LangFileString} Tutorials "Poradniki"
-${LangFileString} TutorialsDesc "Poradniki jak korzystaæ z programu Inkscape"
-${LangFileString} Languages "Jêzyki interfejsu"
-${LangFileString} LanguagesDesc "Dostêpne jêzyki interfejsu dla programu Inkscape"
-${LangFileString} lng_am "Amharski"
-${LangFileString} lng_ar "Arabski"
-${LangFileString} lng_az "Azerski"
-${LangFileString} lng_be "Bia³oruski"
-${LangFileString} lng_bg "Bu³garski"
-${LangFileString} lng_bn "Bengalski"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Bretoñski"
-${LangFileString} lng_ca "Kataloñski"
-${LangFileString} lng_ca@valencia "Walencki-Kataloñski"
-${LangFileString} lng_cs "Czeski"
-${LangFileString} lng_da "Duñski"
-${LangFileString} lng_de "Niemiecki"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Grecki"
-${LangFileString} lng_en "Angielski"
-${LangFileString} lng_en_AU "Angielski-Australijski"
-${LangFileString} lng_en_CA "Angielski-Kanadyjski"
-${LangFileString} lng_en_GB "Angielski-Brytyjski"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Hiszpañski"
-${LangFileString} lng_es_MX "Hiszpañski-Meksykañski"
-${LangFileString} lng_et "Estoñski"
-${LangFileString} lng_eu "Baskijski"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Fiñski"
-${LangFileString} lng_fr "Francuski"
-${LangFileString} lng_ga "Irlandzki"
-${LangFileString} lng_gl "Galicyjski"
-${LangFileString} lng_he "Hebrajski"
-${LangFileString} lng_hr "Chorwacki"
-${LangFileString} lng_hu "Wêgierski"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonezyjski"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "W³oski"
-${LangFileString} lng_ja "Japoñski"
-${LangFileString} lng_km "Kmerski"
-${LangFileString} lng_ko "Koreañski"
-${LangFileString} lng_lt "Litewski"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedoñski"
-${LangFileString} lng_mn "Mongolski"
-${LangFileString} lng_ne "Nepali"
-${LangFileString} lng_nb "Norweski Bokmål"
-${LangFileString} lng_nl "Holenderski"
-${LangFileString} lng_nn "Norweski Nynorsk"
-${LangFileString} lng_pa "Pend¿abski"
-${LangFileString} lng_pl "Polski"
-${LangFileString} lng_pt "Portugalski"
-${LangFileString} lng_pt_BR "Portugalski-Brazylijski"
-${LangFileString} lng_ro "Rumuñski"
-${LangFileString} lng_ru "Rosyjski"
-${LangFileString} lng_rw "Ruanda-Rundi "
-${LangFileString} lng_sk "S³owacki"
-${LangFileString} lng_sl "S³oweñski"
-${LangFileString} lng_sq "Albañski"
-${LangFileString} lng_sr "Serbski"
-${LangFileString} lng_sr@Latn "Serbski skrypt ³aciñski"
-${LangFileString} lng_sv "Szwedzki"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Tajski"
-${LangFileString} lng_tr "Turecki"
-${LangFileString} lng_uk "Ukraiñski"
-${LangFileString} lng_vi "Wietnamski"
-${LangFileString} lng_zh_CN "Chiñski uproszczony"
-${LangFileString} lng_zh_TW "Chiñski tradycyjny"
+${LangFileString} TutorialsDesc "Poradniki jak korzystać z programu Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Języki interfejsu"
+${LangFileString} LanguagesDesc "Dostępne języki interfejsu dla programu Inkscape"
${LangFileString} UInstOpt "Opcje dezinstalacji"
-${LangFileString} UInstOpt1 "Dokonaj wyboru spoœród dodatkowych opcji"
-${LangFileString} PurgePrefs "Zachowaj ustawienia u¿ytkownika"
-${LangFileString} UninstallLogNotFound "Nie znaleziono $INSTDIR\uninstall.log!$\r$\nProszê wykonaæ dezinstalacjê rêcznie poprzez usuniêcie katalogu $INSTDIR!"
-${LangFileString} FileChanged "Plik $filename zosta³ zmieniony po zainstalowaniu.$\r$\nCzy nadal chcesz usun¹æ ten plik?"
+${LangFileString} UInstOpt1 "Dokonaj wyboru spośród dodatkowych opcji"
+${LangFileString} PurgePrefs "Zachowaj ustawienia użytkownika"
+${LangFileString} UninstallLogNotFound "Nie znaleziono $INSTDIR\uninstall.log!$\r$\nProszę wykonać dezinstalację ręcznie poprzez usunięcie katalogu $INSTDIR!"
+${LangFileString} FileChanged "Plik $filename został zmieniony po zainstalowaniu.$\r$\nCzy nadal chcesz usunąć ten plik?"
${LangFileString} Yes "Tak"
${LangFileString} AlwaysYes "Tak dla wszystkich"
${LangFileString} No "Nie"
diff --git a/packaging/win32/languages/Polish_languageNames.nsh b/packaging/win32/languages/Polish_languageNames.nsh
new file mode 100644
index 000000000..6fcfdc84b
--- /dev/null
+++ b/packaging/win32/languages/Polish_languageNames.nsh
@@ -0,0 +1,94 @@
+### Polish (pl) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Polish.nsh'
+${LangFileString} lng_am "amharski (am)"
+${LangFileString} lng_ar "arabski (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "azerski (az)"
+${LangFileString} lng_be "białoruski (ba)"
+${LangFileString} lng_bg "bułgarski (bg)"
+${LangFileString} lng_bn "bengalski (bn)"
+${LangFileString} lng_bn_BD "bengalski/Bangladesz (bn_BD)"
+${LangFileString} lng_br "bretoński (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "kataloński (ca)"
+${LangFileString} lng_ca@valencia "kataloński waloński (ca@valencia)"
+${LangFileString} lng_cs "czeski (cs)"
+${LangFileString} lng_da "duński (da)"
+${LangFileString} lng_de "niemiecki (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "dzongkha (dz)"
+${LangFileString} lng_el "grecki (el)"
+${LangFileString} lng_en "angielski (en)"
+${LangFileString} lng_en_AU "angielski/Australia (en-AU)"
+${LangFileString} lng_en_CA "angielski/Kanada (en_CA)"
+${LangFileString} lng_en_GB "angielski/Wlk.Brytania (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "esperanto (eo)"
+${LangFileString} lng_es "hiszpański (es)"
+${LangFileString} lng_es_MX "hiszpański/Meksyk (es_MX)"
+${LangFileString} lng_et "estoński (et)"
+${LangFileString} lng_eu "baskijski (eu)"
+${LangFileString} lng_fa "perski (fa)"
+${LangFileString} lng_fi "fiński (fi)"
+${LangFileString} lng_fr "francuski (fr)"
+${LangFileString} lng_ga "irlandzki (ga)"
+${LangFileString} lng_gl "galicyjski (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "hebrajski (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "chorwacki (hr)"
+${LangFileString} lng_hu "węgierski (hu)"
+${LangFileString} lng_hy "armeński (hy)"
+${LangFileString} lng_id "indonezyjski (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "włoski (it)"
+${LangFileString} lng_ja "japoński (ja)"
+${LangFileString} lng_km "kmerski (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "koreański (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "litewski (lt)"
+${LangFileString} lng_lv "łotewski (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "macedoński (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "mongolski (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "norweski Bokmål (nb)"
+${LangFileString} lng_ne "nepalski (ne)"
+${LangFileString} lng_nl "holenderski (nl)"
+${LangFileString} lng_nn "norweski Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "pendżabski (pa)"
+${LangFileString} lng_pl "polski (pl)"
+${LangFileString} lng_pt "portugalski (pt)"
+${LangFileString} lng_pt_BR "portugalski/Brazylia (pt_BR)"
+${LangFileString} lng_ro "rumuński (ro)"
+${LangFileString} lng_ru "rosyjski (ru)"
+${LangFileString} lng_rw "ruanda-rundi (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "słowacki (sk)"
+${LangFileString} lng_sl "słoweński (sl)"
+${LangFileString} lng_sq "albański (sq)"
+${LangFileString} lng_sr "serbski (sr)"
+${LangFileString} lng_sr@latin "serbski, skrypt łaciński (sr@latin)"
+${LangFileString} lng_sv "szwedzki (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "tajski (th)"
+${LangFileString} lng_tr "turecki (tr)"
+${LangFileString} lng_uk "ukraiński (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "wietnamski (vi)"
+${LangFileString} lng_zh_CN "chiński/Chiny (zh_CN)"
+${LangFileString} lng_zh_TW "chiński/Tajwan (zh_TW)"
diff --git a/packaging/win32/languages/Portuguese.nsh b/packaging/win32/languages/Portuguese.nsh
new file mode 100644
index 000000000..b0f745349
--- /dev/null
+++ b/packaging/win32/languages/Portuguese.nsh
@@ -0,0 +1,55 @@
+;Language: Portuguese (2070)
+;By Rui <xande6ruz@yandex.com>
+${LangFileString} CaptionDescription "Editor de Gráficos Vetoriais Escaláveis de Código Aberto"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) é disponibilizado sob a GNU General Public License (GPL). A licença é disponibilizada aqui apenas para fins informativos. $_CLICK"
+${LangFileString} DIFFERENT_USER "O Inkscape já foi instalado pelo utilizador $0.$\r$\nSe continuar, poderá não conseguir instalar por completo!$\r$\nPor favor entre na conta de $0 e tente de novo."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 já foi instalado. $\nPretende remover a versão anterior antes de instalar o $(^Name)?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nClique em OK para continuar ou clique em CANCELAR para abortar."
+${LangFileString} NO_ADMIN "A sua conta não tem privilégios de administrador.$\r$\nPoderá não conseguir instalar o Inkscape em todas as contas.$\r$\nDesmarque a opção 'Instalar em todas as contas'."
+${LangFileString} NOT_SUPPORTED "O Inkscape não corre nos sistemas operativos Windows 95/98/ME!$\r$\nPor favor consulte o site oficial para mais informações."
+${LangFileString} Full "Completo"
+${LangFileString} Optimal "Opcional"
+${LangFileString} Minimal "Mínimo"
+${LangFileString} Core "Inkscape - Editor SVG (necessário)"
+${LangFileString} CoreDesc "Ficheiros do núcleo e dlls do Inkscape"
+${LangFileString} GTKFiles "GTK+ Runtime Environment (necessário)"
+${LangFileString} GTKFilesDesc "Uma biblioteca de GUI multi-plataforma, usada pelo Inkscape"
+${LangFileString} Shortcuts "Atalhos"
+${LangFileString} ShortcutsDesc "Atalhos para abrir o Inkscape"
+${LangFileString} Alluser "Instalar em todas as contas"
+${LangFileString} AlluserDesc "Instalar esta aplicação para todos os utilizadores que usem este computador (todas as contas)"
+${LangFileString} Desktop "Ambiente de Trabalho"
+${LangFileString} DesktopDesc "Criar um atalho do Inkscape no Ambiente de Trabalho"
+${LangFileString} Startmenu "Menu de Início"
+${LangFileString} StartmenuDesc "Criar um atalho do Inkscape no Menu de Início"
+${LangFileString} Quicklaunch "Lançamento Rápido"
+${LangFileString} QuicklaunchDesc "Criar um atalho do Inkscape na barra de Lançamento Rápido"
+${LangFileString} SVGWriter "Abrir ficheiros SVG com o Inkscape"
+${LangFileString} SVGWriterDesc "Selecionar o Inkscape como o editor padrão para ficheiros SVG"
+${LangFileString} ContextMenu "Menu de Contexto"
+${LangFileString} ContextMenuDesc "Adicionar o Inkscape no Menu de Contexto para ficheiros SVG"
+${LangFileString} DeletePrefs "Eliminar preferências"
+${LangFileString} DeletePrefsDesc "Eliminar preferências de versões anteriormente instaladas do Inkscape"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "Um interpretador para a linguagem de programação Python e módulos Python necessários para correr extensões Inkscape."
+${LangFileString} Addfiles "Ficheiros Adicionais"
+${LangFileString} AddfilesDesc "Ficheiros Adicionais"
+${LangFileString} Extensions "Extensões"
+${LangFileString} ExtensionsDesc "Extensões Inkscape extensions (incluindo muitos plugins de importação e exportação)"
+${LangFileString} Examples "Exemplos"
+${LangFileString} ExamplesDesc "Exemplos de utilização do Inkscape"
+${LangFileString} Tutorials "Tutoriais"
+${LangFileString} TutorialsDesc "Tutoriais para aprender a usar o Inkscape"
+${LangFileString} Dictionaries "Dicionários"
+${LangFileString} DictionariesDesc "Dicionários para algumas linguagens comuns para correcção ortográfica no Inkscape"
+${LangFileString} Languages "Traduções"
+${LangFileString} LanguagesDesc "Instalar várias traduções do Inkscape"
+${LangFileString} UInstOpt "Opções de Desinstalação"
+${LangFileString} UInstOpt1 "Por favor faça as suas escolhas para opções adicionais"
+${LangFileString} PurgePrefs "Manter Preferências"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log não foi encontrado!$\r$\nPor favor desinstale manualmente eliminado a pasta $INSTDIR!"
+${LangFileString} FileChanged "O ficheiro $filename foi alterado depois de instalado.$\r$\nQuer mesmo eliminar o ficheiro?"
+${LangFileString} Yes "Sim"
+${LangFileString} AlwaysYes "responder sempre Sim"
+${LangFileString} No "Não"
+${LangFileString} AlwaysNo "responder sempre Não"
diff --git a/packaging/win32/languages/PortugueseBR.nsh b/packaging/win32/languages/PortugueseBR.nsh
index ef15c0ca2..3225743e6 100644
--- a/packaging/win32/languages/PortugueseBR.nsh
+++ b/packaging/win32/languages/PortugueseBR.nsh
@@ -1,117 +1,55 @@
-;Language: Brazilian Portuguese (1046, CP1252)
+;Language: Brazilian Portuguese (1046)
;By Rodrigo Padula de Oliveira contato@rodrigopadula.com
-${LangFileString} CaptionDescription "Editor de gráficos vetoriais Software Livre"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) é publicado sob GNU General Public License (GPL). A licença é fornecida aqui apenas para caráter informativo. $_CLICK"
-${LangFileString} DIFFERENT_USER "O Inkscape já foi instalado pelo usuário $0. Se você continuar a instalação poderá não ser concluída com sucesso. Acesse como $0 e tente novamente."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 já está instalado. $\nVocê deseja remover a instalação anterior antes de instalar novamente $(^Name) ?"
+${LangFileString} CaptionDescription "Editor Software Livre de gráficos vetoriais"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) é publicado sob GNU General Public License (GPL). A licença é fornecida aqui apenas para caráter informativo. $_CLICK"
+${LangFileString} DIFFERENT_USER "O Inkscape já foi instalado pelo usuário $0. Se você continuar a instalação poderá não ser concluída com sucesso. Acesse como $0 e tente novamente."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 já está instalado. $\nVocê deseja remover a instalação anterior antes de instalar novamente $(^Name) ?"
${LangFileString} OK_CANCEL_DESC "$\n$\nPressione OK para continuar ou pressiona CANCELAR para abortar."
-${LangFileString} NO_ADMIN "Você não tem privilégios de administrador. A instalação do Inkscape para todos os usuários pode não ser finalizada com sucesso. Desmarque a opção 'Instalar para todos os usuários'"
-${LangFileString} NOT_SUPPORTED "Inkscape não é compatível com Windows 95/98/ME!\n\nPor favor visite o site oficial do Inkscape para mariores informações."
+${LangFileString} NO_ADMIN "Você não tem privilégios de administrador. A instalação do Inkscape para todos os usuários pode não ser finalizada com sucesso. Desmarque a opção 'Instalar para todos os usuários'"
+${LangFileString} NOT_SUPPORTED "Inkscape não é compatível com Windows 95/98/ME!\n\nPor favor visite o site oficial do Inkscape para mariores informações."
${LangFileString} Full "Completa"
${LangFileString} Optimal "Opcional"
-${LangFileString} Minimal "Mínima"
+${LangFileString} Minimal "Mínima"
${LangFileString} Core "Inkscape SVG Editor (requerido)"
-${LangFileString} CoreDesc "Arquivos Core Inkscape e dlls"
+${LangFileString} CoreDesc "Arquivos Core Inkscape e DLLs"
${LangFileString} GTKFiles "GTK+ Runtime Environment (requerido)"
-${LangFileString} GTKFilesDesc "Bibliotecas gráficas multi-plataforma, usadas pelo inkscape"
+${LangFileString} GTKFilesDesc "Bibliotecas gráficas multi-plataforma, usadas pelo inkscape"
${LangFileString} Shortcuts "Atalhos"
${LangFileString} ShortcutsDesc "Atalhos para iniciar o Inkscape"
-${LangFileString} Alluser "Instalar para todos os usuários"
-${LangFileString} AlluserDesc "Instalar esta aplicação para todas as pessoas que usam este computador (todos usuários)"
+${LangFileString} Alluser "Instalar para todos os usuários"
+${LangFileString} AlluserDesc "Instalar esta aplicação para todas as pessoas que usam este computador (todos usuários)"
${LangFileString} Desktop "Desktop"
${LangFileString} DesktopDesc "Cria um atalho para o Inkscape em seu Desktop"
${LangFileString} Startmenu "Menu Iniciar"
${LangFileString} StartmenuDesc "Cria atalhos para o Inkscape no Menu Iniciar"
-${LangFileString} Quicklaunch "Inicialização Rápida"
-${LangFileString} QuicklaunchDesc "Cria uma atalho para o Inkscape na barra de Inicialização Rápida"
+${LangFileString} Quicklaunch "Inicialização Rápida"
+${LangFileString} QuicklaunchDesc "Cria uma atalho para o Inkscape na barra de Inicialização Rápida"
${LangFileString} SVGWriter "Abrir arquivos SVG com Inkscape"
-${LangFileString} SVGWriterDesc "Seleciona o Inkscape como editor padrão de arquivos SVG"
+${LangFileString} SVGWriterDesc "Seleciona o Inkscape como editor padrão de arquivos SVG"
${LangFileString} ContextMenu "Menu de Contexto"
${LangFileString} ContextMenuDesc "Adiciona o Inkscape no Menu de Contexto para arquivos SVG"
-${LangFileString} DeletePrefs "Remover preferências pessoais"
-${LangFileString} DeletePrefsDesc "Remover preferências pessoais deixadas por instalações anteriores"
+${LangFileString} DeletePrefs "Remover preferências pessoais"
+${LangFileString} DeletePrefsDesc "Remover preferências pessoais deixadas por instalações anteriores"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Arquivos Adicionais"
${LangFileString} AddfilesDesc "Arquivos Adicionais"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Examples"
${LangFileString} ExamplesDesc "Examples de uso do Inkscape"
${LangFileString} Tutorials "Tutorial"
${LangFileString} TutorialsDesc "Tutorial para o uso Inkscape"
-${LangFileString} Languages "Traduções"
-${LangFileString} LanguagesDesc "Instala várias traduçoes do Inkscape"
-${LangFileString} lng_am "Aramaico"
-${LangFileString} lng_ar "Árabe"
-${LangFileString} lng_az "Azerbaijão"
-${LangFileString} lng_be "Bielo-Rússo"
-${LangFileString} lng_bg "Búlgaro"
-${LangFileString} lng_bn "Bengali"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Bretão"
-${LangFileString} lng_ca "Catalão"
-${LangFileString} lng_ca@valencia "Catalão de Valencia"
-${LangFileString} lng_cs "Checo"
-${LangFileString} lng_da "Dinamarquês"
-${LangFileString} lng_de "Alemão"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Grego"
-${LangFileString} lng_en "Inglês"
-${LangFileString} lng_en_AU "Inglês Australiano"
-${LangFileString} lng_en_CA "Inglês Canadense"
-${LangFileString} lng_en_GB "Inglês Britânico"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Espanhol"
-${LangFileString} lng_es_MX "Espanhol Mexicano"
-${LangFileString} lng_et "Estónia"
-${LangFileString} lng_eu "Basco"
-${LangFileString} lng_fa "Persa"
-${LangFileString} lng_fi "Finlandês"
-${LangFileString} lng_fr "Francês"
-${LangFileString} lng_ga "Irlandês"
-${LangFileString} lng_gl "Galego"
-${LangFileString} lng_he "Hebreu"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_hr "Croata"
-${LangFileString} lng_hu "Húngaro"
-${LangFileString} lng_id "Indonésio"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italiano"
-${LangFileString} lng_ja "Japonês"
-${LangFileString} lng_km "Khmer"
-${LangFileString} lng_ko "Coreano"
-${LangFileString} lng_lt "Lituano"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedónio"
-${LangFileString} lng_mn "Mongol"
-${LangFileString} lng_ne "Nepali"
-${LangFileString} lng_nb "Bokmål Norueguês"
-${LangFileString} lng_nl "Holandês"
-${LangFileString} lng_nn "Nynorsk Norueguês"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polonês"
-${LangFileString} lng_pt "Português"
-${LangFileString} lng_pt_BR "Português Brasileiro"
-${LangFileString} lng_ro "Romeno"
-${LangFileString} lng_ru "Russo"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Eslováquio"
-${LangFileString} lng_sl "Esloveno"
-${LangFileString} lng_sq "Albanês"
-${LangFileString} lng_sr "Sérvio"
-${LangFileString} lng_sr@latin "Sérvio no alfabeto latino"
-${LangFileString} lng_sv "Sueco"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Tailandês"
-${LangFileString} lng_tr "Turco"
-${LangFileString} lng_uk "Ucraniano"
-${LangFileString} lng_vi "Vietnamita"
-${LangFileString} lng_zh_CN "Chinês Simplificado"
-${LangFileString} lng_zh_TW "Chinês Tradicional"
-${LangFileString} UInstOpt "Opções de Desinstalação"
-${LangFileString} UInstOpt1 "Determine suas opções adicionais"
-${LangFileString} PurgePrefs "Manter Preferências pessoais"
-${LangFileString} UninstallLogNotFound "Impossível encontrar $INSTDIR\uninstall.log !$\r$\nPara continuar a desinstalação, remova o diretório $INSTDIR manualmente!"
-${LangFileString} FileChanged "O arquivo $filename foi modificado após a instalação.$\r$\nDeseja removê-lo?"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Traduções"
+${LangFileString} LanguagesDesc "Instala várias traduçoes do Inkscape"
+${LangFileString} UInstOpt "Opções de Desinstalação"
+${LangFileString} UInstOpt1 "Determine suas opções adicionais"
+${LangFileString} PurgePrefs "Manter Preferências pessoais"
+${LangFileString} UninstallLogNotFound "Impossível encontrar $INSTDIR\uninstall.log !$\r$\nPara continuar a desinstalação, remova o diretório $INSTDIR manualmente!"
+${LangFileString} FileChanged "O arquivo $filename foi modificado após a instalação.$\r$\nDeseja removê-lo?"
${LangFileString} Yes "Sim"
${LangFileString} AlwaysYes "Sempre responda Sim"
-${LangFileString} No "Não"
-${LangFileString} AlwaysNo "Sempre responda Não"
+${LangFileString} No "Não"
+${LangFileString} AlwaysNo "Sempre responda Não"
diff --git a/packaging/win32/languages/PortugueseBR_languageNames.nsh b/packaging/win32/languages/PortugueseBR_languageNames.nsh
new file mode 100644
index 000000000..98295ce00
--- /dev/null
+++ b/packaging/win32/languages/PortugueseBR_languageNames.nsh
@@ -0,0 +1,94 @@
+### Portuguese/Brazil (pt_BR) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'PortugueseBR.nsh'
+${LangFileString} lng_am "Amárico (am)"
+${LangFileString} lng_ar "Ãrabe (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azerbaijano (az)"
+${LangFileString} lng_be "Bielo-russo (be)"
+${LangFileString} lng_bg "Búlgaro (bg)"
+${LangFileString} lng_bn "Bengali (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretão (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalã (ca)"
+${LangFileString} lng_ca@valencia "Catalã Valenciano (ca@valencia)"
+${LangFileString} lng_cs "Tcheco (cs)"
+${LangFileString} lng_da "Dinamarquês (da)"
+${LangFileString} lng_de "Alemão (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzonga (dz)"
+${LangFileString} lng_el "Grego (el)"
+${LangFileString} lng_en "Inglês (en)"
+${LangFileString} lng_en_AU "Inglês/Austrália (en_AU)"
+${LangFileString} lng_en_CA "Inglês/Canadá (en_CA)"
+${LangFileString} lng_en_GB "Inglês/Grã-Bretanha (en_AU)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Espanhol (es)"
+${LangFileString} lng_es_MX "Espanhol / México (es_MX)"
+${LangFileString} lng_et "Estoniano (et)"
+${LangFileString} lng_eu "Basco (eu)"
+${LangFileString} lng_fa "Persa (fa)"
+${LangFileString} lng_fi "Finlandês (fi)"
+${LangFileString} lng_fr "Francês (fr)"
+${LangFileString} lng_ga "Irlandês (ga)"
+${LangFileString} lng_gl "Galego (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebraico (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croácio (hr)"
+${LangFileString} lng_hu "Húngaro (hu)"
+${LangFileString} lng_hy "Armênio (hy)"
+${LangFileString} lng_id "Indonésio (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italiano (it)"
+${LangFileString} lng_ja "Japonês (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Coreano (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Lituano (lt)"
+${LangFileString} lng_lv "Letão (lt)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedônio (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongol (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Dano-norueguesa (nb)"
+${LangFileString} lng_ne "Nepalês (ne)"
+${LangFileString} lng_nl "Holandês (nl)"
+${LangFileString} lng_nn "Novo norueguês (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polonês (pl)"
+${LangFileString} lng_pt "Português (pt)"
+${LangFileString} lng_pt_BR "Português / Brasil (pt_BR)"
+${LangFileString} lng_ro "Romeno (ro)"
+${LangFileString} lng_ru "Russo (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Eslovaco (sk)"
+${LangFileString} lng_sl "Esloveno (sl)"
+${LangFileString} lng_sq "Albanês (sq)"
+${LangFileString} lng_sr "Sérvio (sr)"
+${LangFileString} lng_sr@latin "Sérvio latino (sr@latin)"
+${LangFileString} lng_sv "Sueco (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Tailandês (th)"
+${LangFileString} lng_tr "Turco (tr)"
+${LangFileString} lng_uk "Ucraniano (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamita (vi)"
+${LangFileString} lng_zh_CN "Chinês/China (zh_CN)"
+${LangFileString} lng_zh_TW "Chinês/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Portuguese_languageNames.nsh b/packaging/win32/languages/Portuguese_languageNames.nsh
new file mode 100644
index 000000000..fd3c4e921
--- /dev/null
+++ b/packaging/win32/languages/Portuguese_languageNames.nsh
@@ -0,0 +1,94 @@
+### Portuguese (pt) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Portuguese.nsh'
+${LangFileString} lng_am "Amárico (am)"
+${LangFileString} lng_ar "Arábico (ar)"
+${LangFileString} lng_as "Assamês (as)"
+${LangFileString} lng_az "Azerbaijano (az)"
+${LangFileString} lng_be "Bielorrusso (be)"
+${LangFileString} lng_bg "Búlgaro (bg)"
+${LangFileString} lng_bn "Bengali (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladeche (bn_BD)"
+${LangFileString} lng_br "Bretão (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalão (ca)"
+${LangFileString} lng_ca@valencia "Catalão Valenciano (ca@valencia)"
+${LangFileString} lng_cs "Checo (cs)"
+${LangFileString} lng_da "Dinamarquês (da)"
+${LangFileString} lng_de "Alemão (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Butanês (dz)"
+${LangFileString} lng_el "Grego (el)"
+${LangFileString} lng_en "Inglês (en)"
+${LangFileString} lng_en_AU "Inglês/Austrália (en_AU)"
+${LangFileString} lng_en_CA "Inglês/Canadá (en_CA)"
+${LangFileString} lng_en_GB "Inglês/Grâ-Bretanha (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Espanhol (es)"
+${LangFileString} lng_es_MX "Espanhol/México (es_MX)"
+${LangFileString} lng_et "Estónio (et)"
+${LangFileString} lng_eu "Basco (eu)"
+${LangFileString} lng_fa "Persa (fa)"
+${LangFileString} lng_fi "Finlandês (fi)"
+${LangFileString} lng_fr "Francês (fr)"
+${LangFileString} lng_ga "Irlandês (ga)"
+${LangFileString} lng_gl "Galego (gl)"
+${LangFileString} lng_gu "Gujaráti (gu)"
+${LangFileString} lng_he "Hebraico (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croata (hr)"
+${LangFileString} lng_hu "Húngaro (hu)"
+${LangFileString} lng_hy "Arménio (hy)"
+${LangFileString} lng_id "Indonésio (id)"
+${LangFileString} lng_is "Islandês (is)"
+${LangFileString} lng_it "Italiano (it)"
+${LangFileString} lng_ja "Japonês (ja)"
+${LangFileString} lng_km "Cambojano (km)"
+${LangFileString} lng_kn "Canarês (kn)"
+${LangFileString} lng_ko "Coreano (ko)"
+${LangFileString} lng_kok "Concani (kok)"
+${LangFileString} lng_kok@latin "Concani no alfabeto Latino (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Caxemiriano no alfabeto Devanágari (ks@deva)"
+${LangFileString} lng_lt "Lituano (lt)"
+${LangFileString} lng_lv "Letão (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedónio (mk)"
+${LangFileString} lng_ml "Malaiala (ml)"
+${LangFileString} lng_mn "Mongol (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri no alfabeto Bengali (mni@beng)"
+${LangFileString} lng_mr "Marata (mr)"
+${LangFileString} lng_nb "Bokmål Norueguês (nb)"
+${LangFileString} lng_ne "Nepalês (ne)"
+${LangFileString} lng_nl "Neerlandês (nl)"
+${LangFileString} lng_nn "Novo Norueguês (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Polaco (pl)"
+${LangFileString} lng_pt "Português (pt)"
+${LangFileString} lng_pt_BR "Português/Brasil (pt_BR)"
+${LangFileString} lng_ro "Romeno (ro)"
+${LangFileString} lng_ru "Russo (ru)"
+${LangFileString} lng_rw "Quiniaruanda (rw)"
+${LangFileString} lng_sa "Sânscrito (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali no alfabeto Devanágari (sat@deva)"
+${LangFileString} lng_sd "Sindi (sd)"
+${LangFileString} lng_sd@deva "Sindi no alfabeto Devanágari (sd@deva)"
+${LangFileString} lng_sk "Eslovaco (sk)"
+${LangFileString} lng_sl "Esloveno (sl)"
+${LangFileString} lng_sq "Albanês (sq)"
+${LangFileString} lng_sr "Sérvio (sr)"
+${LangFileString} lng_sr@latin "Sérvio no alfabeto Latino (sr@latin)"
+${LangFileString} lng_sv "Sueco (sv)"
+${LangFileString} lng_ta "Tâmil (ta)"
+${LangFileString} lng_te "Telugo (te)"
+${LangFileString} lng_th "Tailandês (th)"
+${LangFileString} lng_tr "Turco (tr)"
+${LangFileString} lng_uk "Ucraniano (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamita (vi)"
+${LangFileString} lng_zh_CN "Chinês/China (zh_CN)"
+${LangFileString} lng_zh_TW "Chinese/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Romanian.nsh b/packaging/win32/languages/Romanian.nsh
index bae1c4fc2..d7b0efd7e 100644
--- a/packaging/win32/languages/Romanian.nsh
+++ b/packaging/win32/languages/Romanian.nsh
@@ -1,117 +1,55 @@
-;Language: Romanian (1048, CP1250)
-;By Cristian Secarã <cristi AT secarica DOT ro>
-${LangFileString} CaptionDescription "Editor Open Source pentru graficã vectorialã scalabilã (SVG)"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) este publicat sub licenþa publicã generalã GNU (GPL). Licenþa este furnizatã aici numai cu scop informativ. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape a fost deja instalat de utilizatorul $0.$\r$\nDacã veþi continua, s-ar putea sã nu terminaþi instalarea cu succes !$\r$\nAutentificaþi-vã ca $0 ºi încercaþi din nou."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 a fost deja instalat. $\nVreþi sã dezinstalaþi versiunea precedentã înainde de a instala $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nApãsaþi butonul OK pentru a continua, sau butonul RENUNÞÃ pentru a opri instalarea."
-${LangFileString} NO_ADMIN "Nu aveþi privilegii de administrator.$\r$\nInstalarea Inkscape pentru toþi utilizatorii ar putea sã nu se termine cu succes.$\r$\nDebifaþi opþiunea „Pentru toþi utilizatorii”."
-${LangFileString} NOT_SUPPORTED "Este ºtiut faptul cã Inkscape nu ruleazã sub Windows 95/98/ME !$\r$\nVerificaþi saitul web oficial pentru informaþii detaliate."
+;Language: Romanian (1048)
+;By Cristian Secară <cristi AT secarica DOT ro>
+${LangFileString} CaptionDescription "Editor Open Source pentru grafică vectorială scalabilă (SVG)"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) este publicat sub licenţa publică generală GNU (GPL). Licenţa este furnizată aici numai cu scop informativ. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape a fost deja instalat de utilizatorul $0.$\r$\nDacă veţi continua, s-ar putea să nu terminaţi instalarea cu succes !$\r$\nAutentificaţi-vă ca $0 şi încercaţi din nou."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 a fost deja instalat. $\nVreţi să dezinstalaţi versiunea precedentă înainde de a instala $(^Name) ?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nApăsaţi butonul OK pentru a continua, sau butonul RENUNŢĂ pentru a opri instalarea."
+${LangFileString} NO_ADMIN "Nu aveÅ£i privilegii de administrator.$\r$\nInstalarea Inkscape pentru toÅ£i utilizatorii ar putea să nu se termine cu succes.$\r$\nDebifaÅ£i opÅ£iunea „Pentru toÅ£i utilizatoriiâ€."
+${LangFileString} NOT_SUPPORTED "Este ştiut faptul că Inkscape nu rulează sub Windows 95/98/ME !$\r$\nVerificaţi saitul web oficial pentru informaţii detaliate."
${LangFileString} Full "Complet"
${LangFileString} Optimal "Optim"
${LangFileString} Minimal "Minim"
${LangFileString} Core "Editorul SVG Inkscape (necesar)"
-${LangFileString} CoreDesc "Fiºiere ºi dll-uri indispensabile pentru Inkscape"
+${LangFileString} CoreDesc "FiÅŸiere ÅŸi dll-uri indispensabile pentru Inkscape"
${LangFileString} GTKFiles "Mediul GTK+ Runtime (necesar)"
-${LangFileString} GTKFilesDesc "Kit de instrumente multiplatformã pentru interfeþe grafice, folosit de Inkscape"
-${LangFileString} Shortcuts "Scurtãturi"
-${LangFileString} ShortcutsDesc "Scurtãturi pentru pornirea Inkscape"
-${LangFileString} Alluser "Pentru toþi utilizatorii"
-${LangFileString} AlluserDesc "Instaleazã aceastã aplicaþie pentru oricine foloseºte acest calculator (toþi utilizatorii)"
+${LangFileString} GTKFilesDesc "Kit de instrumente multiplatformă pentru interfeţe grafice, folosit de Inkscape"
+${LangFileString} Shortcuts "Scurtături"
+${LangFileString} ShortcutsDesc "Scurtături pentru pornirea Inkscape"
+${LangFileString} Alluser "Pentru toţi utilizatorii"
+${LangFileString} AlluserDesc "Instalează această aplicaţie pentru oricine foloseşte acest calculator (toţi utilizatorii)"
${LangFileString} Desktop "Desktop"
-${LangFileString} DesktopDesc "Creeazã o scurtãturã cãtre Inkscape pe Desktop"
+${LangFileString} DesktopDesc "Creează o scurtătură către Inkscape pe Desktop"
${LangFileString} Startmenu "Meniul Start"
-${LangFileString} StartmenuDesc "Creeazã o intrare pentru Inkscape în meniul Start"
-${LangFileString} Quicklaunch "Lansare rapidã"
-${LangFileString} QuicklaunchDesc "Creeazã o scurtãturã cãtre Inkscape pe bara de lansare rapidã"
-${LangFileString} SVGWriter "Deschidere fiºiere SVG cu Inkscape"
-${LangFileString} SVGWriterDesc "Selecteazã Inkscape ca editor implicit pentru fiºiere SVG"
+${LangFileString} StartmenuDesc "Creează o intrare pentru Inkscape în meniul Start"
+${LangFileString} Quicklaunch "Lansare rapidă"
+${LangFileString} QuicklaunchDesc "Creează o scurtătură către Inkscape pe bara de lansare rapidă"
+${LangFileString} SVGWriter "Deschidere fiÅŸiere SVG cu Inkscape"
+${LangFileString} SVGWriterDesc "Selectează Inkscape ca editor implicit pentru fişiere SVG"
${LangFileString} ContextMenu "Meniu contextual"
-${LangFileString} ContextMenuDesc "Adaugã Inkscape în meniul contextual pentru fiºiere SVG"
-${LangFileString} DeletePrefs "ªtergere preferinþele personale"
-${LangFileString} DeletePrefsDesc "ªterge preferinþele personale rãmase de la instalãri precedente"
-${LangFileString} Addfiles "Fiºiere adiþionale"
-${LangFileString} AddfilesDesc "Fiºiere adiþionale"
+${LangFileString} ContextMenuDesc "Adaugă Inkscape în meniul contextual pentru fişiere SVG"
+${LangFileString} DeletePrefs "Ştergere preferinţele personale"
+${LangFileString} DeletePrefsDesc "Şterge preferinţele personale rămase de la instalări precedente"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "Fişiere adiţionale"
+${LangFileString} AddfilesDesc "Fişiere adiţionale"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Exemple"
${LangFileString} ExamplesDesc "Exemple folosind Inkscape"
${LangFileString} Tutorials "Ghiduri practice"
${LangFileString} TutorialsDesc "Ghiduri practice pentru utilizarea Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Traduceri"
-${LangFileString} LanguagesDesc "Instaleazã diverse traduceri ale interfeþei pentru Inkscape"
-${LangFileString} lng_am "Amharicã"
-${LangFileString} lng_ar "Arabã"
-${LangFileString} lng_az "Azerã"
-${LangFileString} lng_be "Bielorusã"
-${LangFileString} lng_bg "Bulgarã"
-${LangFileString} lng_bn "Bengali"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Bretonã"
-${LangFileString} lng_ca "Catalanã"
-${LangFileString} lng_ca@valencia "Catalanã, Valencian"
-${LangFileString} lng_cs "Cehã"
-${LangFileString} lng_da "Danezã"
-${LangFileString} lng_de "Germanã"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Greacã"
-${LangFileString} lng_en "Englezã"
-${LangFileString} lng_en_AU "Englezã australianã"
-${LangFileString} lng_en_CA "Englezã canadianã"
-${LangFileString} lng_en_GB "Englezã britanicã"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Spaniolã"
-${LangFileString} lng_es_MX "Spaniolã mexicanã"
-${LangFileString} lng_et "Estonianã"
-${LangFileString} lng_eu "Bascã"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finlandezã"
-${LangFileString} lng_fr "Francezã"
-${LangFileString} lng_ga "Irlandezã"
-${LangFileString} lng_gl "Galicianã"
-${LangFileString} lng_he "Ebraicã"
-${LangFileString} lng_hr "Croatã"
-${LangFileString} lng_hu "Maghiarã"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonezianã"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italianã"
-${LangFileString} lng_ja "Japonezã"
-${LangFileString} lng_km "Khmerã"
-${LangFileString} lng_ko "Koreanã"
-${LangFileString} lng_lt "Lituanianã"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedoneanã"
-${LangFileString} lng_mn "Mongolã"
-${LangFileString} lng_ne "Nepalezã"
-${LangFileString} lng_nb "Norvegianã cãrturãreascã"
-${LangFileString} lng_nl "Olandezã"
-${LangFileString} lng_nn "Norvegianã nouã"
-${LangFileString} lng_pa "Panjabi"
-${LangFileString} lng_pl "Polonezã"
-${LangFileString} lng_pt "Portughezã"
-${LangFileString} lng_pt_BR "Portughezã brazilianã"
-${LangFileString} lng_ro "Romanânã"
-${LangFileString} lng_ru "Rusã"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Slovacã"
-${LangFileString} lng_sl "Slovenã"
-${LangFileString} lng_sq "Albanezã"
-${LangFileString} lng_sr "Sârbã"
-${LangFileString} lng_sr@latin "Sârbã (alfabet Latin)"
-${LangFileString} lng_sv "Suedezã"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Tailandezã"
-${LangFileString} lng_tr "Turcã"
-${LangFileString} lng_uk "Ucraineanã"
-${LangFileString} lng_vi "Vietnamezã"
-${LangFileString} lng_zh_CN "Chinezã simplificatã"
-${LangFileString} lng_zh_TW "Chinezã tradiþionalã"
-${LangFileString} UInstOpt "Opþiuni de dezinstalare"
-${LangFileString} UInstOpt1 "Alegeþi dintre opþiunile adiþionale"
-${LangFileString} PurgePrefs "Pãstreazã preferinþele personale"
-${LangFileString} UninstallLogNotFound "Fiºierul $INSTDIR\uninstall.log nu a fost gãsit !$\r$\nDezinstalaþi prin golirea manualã a $INSTDIR !"
-${LangFileString} FileChanged "Fiºierul $filename a fost modificat dupã instalare.$\r$\nTot vreþi sã ºtergeþi acel fiºier ?"
+${LangFileString} LanguagesDesc "Instalează diverse traduceri ale interfeţei pentru Inkscape"
+${LangFileString} UInstOpt "Opţiuni de dezinstalare"
+${LangFileString} UInstOpt1 "Alegeţi dintre opţiunile adiţionale"
+${LangFileString} PurgePrefs "Păstrează preferinţele personale"
+${LangFileString} UninstallLogNotFound "Fişierul $INSTDIR\uninstall.log nu a fost găsit !$\r$\nDezinstalaţi prin golirea manuală a $INSTDIR !"
+${LangFileString} FileChanged "Fişierul $filename a fost modificat după instalare.$\r$\nTot vreţi să ştergeţi acel fişier ?"
${LangFileString} Yes "Da"
-${LangFileString} AlwaysYes "Da întotdeauna"
+${LangFileString} AlwaysYes "Da întotdeauna"
${LangFileString} No "Nu"
-${LangFileString} AlwaysNo "Nu întotdeauna"
+${LangFileString} AlwaysNo "Nu întotdeauna"
diff --git a/packaging/win32/languages/Romanian_languageNames.nsh b/packaging/win32/languages/Romanian_languageNames.nsh
new file mode 100644
index 000000000..09821fb43
--- /dev/null
+++ b/packaging/win32/languages/Romanian_languageNames.nsh
@@ -0,0 +1,94 @@
+### Romanian (ro) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Romanian.nsh'
+${LangFileString} lng_am "Amharic (am)"
+${LangFileString} lng_ar "Arabă (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "Azerbaijani (az)"
+${LangFileString} lng_be "Belarusă (be)"
+${LangFileString} lng_bg "Bulgară (bg)"
+${LangFileString} lng_bn "Bengaleză (bn)"
+${LangFileString} lng_bn_BD "Bengaleză/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretonă (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalană (ca)"
+${LangFileString} lng_ca@valencia "Catalană Valencia (ca@valencia)"
+${LangFileString} lng_cs "Cehă (cs)"
+${LangFileString} lng_da "Daneză (da)"
+${LangFileString} lng_de "Germană (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Greacă (el)"
+${LangFileString} lng_en "Engleză (en)"
+${LangFileString} lng_en_AU "Engleză/Australia (en_AU)"
+${LangFileString} lng_en_CA "Engleză/Canada (en_CA)"
+${LangFileString} lng_en_GB "Engleză/Marea Britanie (en_GB)"
+${LangFileString} lng_en_US@piglatin "Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Spaniolă (es)"
+${LangFileString} lng_es_MX "Spaniolă/Mexic (es_MX)"
+${LangFileString} lng_et "Estoniană (et)"
+${LangFileString} lng_eu "Bască (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "Finlandeză (fi)"
+${LangFileString} lng_fr "Franceză (fr)"
+${LangFileString} lng_ga "Irlandeză (ga)"
+${LangFileString} lng_gl "Galeză (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Ebraică (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croată (hr)"
+${LangFileString} lng_hu "Maghiară (hu)"
+${LangFileString} lng_hy "Armenă (hy)"
+${LangFileString} lng_id "Indoneză (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "Italiană (it)"
+${LangFileString} lng_ja "Japoneză (ja)"
+${LangFileString} lng_km "Khmer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Koreană (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "Lituaniană (lt)"
+${LangFileString} lng_lv "Letonă (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedoneană (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongolă (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Norwegiană Bokmål (nb)"
+${LangFileString} lng_ne "Nepaleză (ne)"
+${LangFileString} lng_nl "Olandeză (nl)"
+${LangFileString} lng_nn "Norwegiană Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabi (pa)"
+${LangFileString} lng_pl "Poloneză (pl)"
+${LangFileString} lng_pt "Portugheză (pt)"
+${LangFileString} lng_pt_BR "Portugheză/Brazilia (pt_BR)"
+${LangFileString} lng_ro "Română (ro)"
+${LangFileString} lng_ru "Rusă (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Slovacă (sk)"
+${LangFileString} lng_sl "Slovenă (sl)"
+${LangFileString} lng_sq "Albaniană (sq)"
+${LangFileString} lng_sr "Sârbă (sr)"
+${LangFileString} lng_sr@latin "Sârbă în alfabet latin (sr@latin)"
+${LangFileString} lng_sv "Suedeză (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Tailandeză (th)"
+${LangFileString} lng_tr "Turcă (tr)"
+${LangFileString} lng_uk "Ucraineană (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnameză (vi)"
+${LangFileString} lng_zh_CN "Chineză/China (zh_CN)"
+${LangFileString} lng_zh_TW "Chineză/Taiwan (zh_TW)"
diff --git a/packaging/win32/languages/Russian.nsh b/packaging/win32/languages/Russian.nsh
index 9b75a0a3e..539e95828 100644
--- a/packaging/win32/languages/Russian.nsh
+++ b/packaging/win32/languages/Russian.nsh
@@ -1,117 +1,55 @@
-;Language: Russian (1049, CP1251)
+;Language: Russian (1049)
;By Alexandre Prokoudine <alexandre.prokoudine@gmail.com>
-${LangFileString} CaptionDescription "Ðåäàêòîð âåêòîðíîé ãðàôèêè ñ îòêðûòûì èñõîäíûì êîäîì"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) âûïóùåí íà óñëîâèÿõ GNU General Public License (GPL). Ëèöåíçèÿ ïðåäëàãàåòñÿ äëÿ îçíàêîìëåíèÿ. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape óñòàíîâëåí ïîëüçîâàòåëåì $0.$\r$\nÅñëè âû ïðîäîëæèòå, óñòàíîâêà ìîæåò íå çàâåðøèòüñÿ óñïåøíî!$\r$\nÂîéäèòå â ñèñòåìó êàê ïîëüçîâàòåëü $0 è ïîïðîáóéòå ñíîâà."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 óæå óñòàíîâëåíà. $\nÂû õîòèòå óäàëèòü ïðåäûäóùóþ âåðñèþ ïåðåä óñòàíîâêîé $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nÍàæìèòå «OK» äëÿ ïðîäîëæåíèÿ èëè «Îòìåíà» äëÿ ïðåðûâàíèÿ óñòàíîâêè."
-${LangFileString} NO_ADMIN "Ó âàñ íåò ïðàâ àäìèíèñòðàòîðà.$\r$\nÓñòàíîâêà Inkscape äëÿ âñåõ ïîëüçîâàòåëåé ìîæåò íå çàâåðøèòüñÿ óñïåøíî.$\r$\nÍå èñïîëüçóéòå ïàðàìåòð «Äëÿ âñåõ ïîëüçîâàòåëåé»."
-${LangFileString} NOT_SUPPORTED "Inkscape íå ðàáîòàåò â Windows 95/98/ME!$\r$\nÏîäðîáíîñòè èçëîæåíû íà ñàéòå ïðîãðàììû."
-${LangFileString} Full "Ïîëíàÿ"
-${LangFileString} Optimal "Îïòèìàëüíàÿ"
-${LangFileString} Minimal "Ìèíèìàëüíàÿ"
-${LangFileString} Core "Inkscape, ðåäàêòîð SVG (òðåáóåòñÿ)"
-${LangFileString} CoreDesc "Îñíîâíûå ôàéëû è áèáëèîòåêè Inkscape"
-${LangFileString} GTKFiles "Ñðåäà èñïîëíåíèÿ GTK+ (òðåáóåòñÿ)"
-${LangFileString} GTKFilesDesc "Ìíîãîïëàòôîðìåííûå ñðåäñòâà ðàçðàáîòêè, íåîáõîäèìûå äëÿ Inkscape"
-${LangFileString} Shortcuts "ßðëûêè"
-${LangFileString} ShortcutsDesc "ßðëûêè äëÿ çàïóñêà Inkscape"
-${LangFileString} Alluser "Äëÿ âñåõ ïîëüçîâàòåëåé"
-${LangFileString} AlluserDesc "Óñòàíîâèòü ïðîãðàììó äëÿ âñåõ ïîëüçîâàòåëåé ýòîãî êîìïüþòåðà"
-${LangFileString} Desktop "Ðàáî÷èé ñòîë"
-${LangFileString} DesktopDesc "Ñîçäàòü ÿðëûê äëÿ Inkscape íà Ðàáî÷åì ñòîëå"
-${LangFileString} Startmenu "Ìåíþ «Ïóñê»"
-${LangFileString} StartmenuDesc "Ñîçäàòü ãðóïïó Inkscape â ìåíþ «Ïóñê»"
-${LangFileString} Quicklaunch "Ïàíåëü áûñòðîãî çàïóñêà"
-${LangFileString} QuicklaunchDesc "Ñîçäàòü ÿðëûê äëÿ Inkscape â ïàíåëè áûñòðîãî çàïóñêà"
-${LangFileString} SVGWriter "Îòêðûâàòü ôàéëû SVG â Inkscape"
-${LangFileString} SVGWriterDesc "Âûáðàòü Inkscape ðåäàêòîðîì ôàéëîâ SVG ïî óìîë÷àíèþ"
-${LangFileString} ContextMenu "Êîíòåêñòíîå ìåíþ"
-${LangFileString} ContextMenuDesc "Äîáàâèòü Inkscape â êîíòåêñòíîå ìåíþ äëÿ ôàéëîâ SVG"
-${LangFileString} DeletePrefs "Óäàëèòü ëè÷íûå íàñòðîéêè"
-${LangFileString} DeletePrefsDesc "Óäàëèòü ëè÷íûå íàñòðîéêè, îñòàâøèåñÿ îò ïðåäûäóùèõ âåðñèé ïðîãðàììû"
-${LangFileString} Addfiles "Äîïîëíèòåëüíûå ôàéëû"
-${LangFileString} AddfilesDesc "Äîïîëíèòåëüíûå ôàéëû"
-${LangFileString} Examples "Ïðèìåðû"
-${LangFileString} ExamplesDesc "Ïðèìåðû ôàéëîâ, ñîçäàííûõ â Inkscape"
-${LangFileString} Tutorials "Óðîêè"
-${LangFileString} TutorialsDesc "Óðîêè ïî èñïîëüçîâàíèþ Inkscape"
-${LangFileString} Languages "Ïåðåâîäû"
-${LangFileString} LanguagesDesc "Óñòàíîâêà ïåðåâîäîâ Inkscape íà ðàçíûå ÿçûêè"
-${LangFileString} lng_am "Àìõàðñêèé (Àìàðèíüÿ)"
-${LangFileString} lng_ar "Àðàáñêèé"
-${LangFileString} lng_az "Àçåðáàéäæàíñêèé"
-${LangFileString} lng_be "Áåëîðóññêèé"
-${LangFileString} lng_bg "Áîëãàðñêèé"
-${LangFileString} lng_bn "Áåíãàëüñêèé"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Áðåòîíñêèé"
-${LangFileString} lng_ca "Êàòàëàíñêèé"
-${LangFileString} lng_ca@valencia "Êàòàëîíñêèé (Âàëåíñèÿ)"
-${LangFileString} lng_cs "×åøñêèé"
-${LangFileString} lng_da "Äàòñêèé"
-${LangFileString} lng_de "Íåìåöêèé"
-${LangFileString} lng_dz "Äçîíã-êý"
-${LangFileString} lng_el "Ãðå÷åñêèé"
-${LangFileString} lng_en "Àíãëèéñêèé"
-${LangFileString} lng_en_AU "Àíãëèéñêèé (Àâñòðàëèÿ)"
-${LangFileString} lng_en_CA "Àíãëèéñêèé (Êàíàäà)"
-${LangFileString} lng_en_GB "Àíãëèéñêèé (Âåëèêîáðèòàíèÿ)"
-${LangFileString} lng_en_US@piglatin "Ïîðîñÿ÷üÿ ëàòûíü"
-${LangFileString} lng_eo "Ýñïåðàíòî"
-${LangFileString} lng_es "Èñïàíñêèé"
-${LangFileString} lng_es_MX "Èñïàíñêèé (Ìåêñèêà)"
-${LangFileString} lng_et "Ýñòîíñêèé"
-${LangFileString} lng_eu "Áàñêñêèé"
-${LangFileString} lng_fa "Ôàðñè"
-${LangFileString} lng_fi "Ôèíñêèé"
-${LangFileString} lng_fr "Ôðàíöóçñêèé"
-${LangFileString} lng_ga "Èðëàíäñêèé"
-${LangFileString} lng_gl "Ãàëèñèéñêèé"
-${LangFileString} lng_he "Èâðèò"
-${LangFileString} lng_hr "Õîðâàòñêèé"
-${LangFileString} lng_hu "Âåíãåðñêèé"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Èíäîíåçèéñêèé"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Èòàëüÿíñêèé"
-${LangFileString} lng_ja "ßïîíñêèé"
-${LangFileString} lng_km "Êõìåðñêèé"
-${LangFileString} lng_ko "Êîðåéñêèé"
-${LangFileString} lng_lt "Ëèòîâñêèé"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Ìàêåäîíñêèé"
-${LangFileString} lng_mn "Ìîíãîëüñêèé"
-${LangFileString} lng_ne "Íåïàëüñêèé"
-${LangFileString} lng_nb "Íîðâåæñêèé (áóêìîë)"
-${LangFileString} lng_nl "Äàòñêèé"
-${LangFileString} lng_nn "Íîðâåæñêèé (íþíîðñê)"
-${LangFileString} lng_pa "Ïåíäæàáñêèé"
-${LangFileString} lng_pl "Ïîëüñêèé"
-${LangFileString} lng_pt "Ïîðòóãàëüñêèé"
-${LangFileString} lng_pt_BR "Ïîðòóãàëüñêèé (Áðàçèëèÿ)"
-${LangFileString} lng_ro "Ðóìûíñêèé"
-${LangFileString} lng_ru "Ðóññêèé"
-${LangFileString} lng_rw "Êèíüÿðóàíäà"
-${LangFileString} lng_sk "Ñëîâàöêèé"
-${LangFileString} lng_sl "Ñëîâåíñêèé"
-${LangFileString} lng_sq "Àëáàíñêèé"
-${LangFileString} lng_sr "Ñåðáñêèé"
-${LangFileString} lng_sr@latin "Ñåðáñêèé (ëàòèíèöà)"
-${LangFileString} lng_sv "Øâåäñêèé"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Òàéñêèé"
-${LangFileString} lng_tr "Òóðåöêèé"
-${LangFileString} lng_uk "Óêðàèíñêèé"
-${LangFileString} lng_vi "Âüåòíàìñêèé"
-${LangFileString} lng_zh_CN "Êèòàéñêèé óïðîù¸ííûé"
-${LangFileString} lng_zh_TW "Êèòàéñêèé òðàäèöèîííûé"
-${LangFileString} UInstOpt "Ïàðàìåòðû óäàëåíèÿ ïðîãðàììû èç ñèñòåìû"
-${LangFileString} UInstOpt1 "Óáåäèòåñü â òîì, ÷òî óêàçàëè äîïîëíèòåëüíûå ïàðàìåòðû"
-${LangFileString} PurgePrefs "Ñîõðàíèòü ëè÷íûå íàñòðîéêè"
-${LangFileString} UninstallLogNotFound "Ôàéë $INSTDIR\uninstall.log íå îáíàðóæåí!$\r$\nÂûïîëíèòå äåèíñòàëëÿöèþ î÷èñòêîé êàòàëîãà $INSTDIR!"
-${LangFileString} FileChanged "Ôàéë $filename áûë èçìåí¸í ïîñëå óñòàíîâêè.$\r$\nÂû äåéñòâèòåëüíî õîòèòå óäàëèòü åãî?"
-${LangFileString} Yes "Äà"
-${LangFileString} AlwaysYes "Âñåãäà îòâå÷àòü «Äà»"
-${LangFileString} No "Íåò"
-${LangFileString} AlwaysNo "Âñåãäà îòâå÷àòü «Íåò»"
+${LangFileString} CaptionDescription "Редактор векторной графики Ñ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ñ‹Ð¼ иÑходным кодом"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) выпущен на уÑловиÑÑ… GNU General Public License (GPL). Ð›Ð¸Ñ†ÐµÐ½Ð·Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð»Ð°Ð³Ð°ÐµÑ‚ÑÑ Ð´Ð»Ñ Ð¾Ð·Ð½Ð°ÐºÐ¾Ð¼Ð»ÐµÐ½Ð¸Ñ. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape уÑтановлен пользователем $0.$\r$\nЕÑли вы продолжите, уÑтановка может не завершитьÑÑ ÑƒÑпешно!$\r$\nВойдите в ÑиÑтему как пользователь $0 и попробуйте Ñнова."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 уже уÑтановлена. $\nÐ’Ñ‹ хотите удалить предыдущую верÑию перед уÑтановкой $(^Name) ?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nÐажмите «OK» Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ «Отмена» Ð´Ð»Ñ Ð¿Ñ€ÐµÑ€Ñ‹Ð²Ð°Ð½Ð¸Ñ ÑƒÑтановки."
+${LangFileString} NO_ADMIN "У Ð²Ð°Ñ Ð½ÐµÑ‚ прав админиÑтратора.$\r$\nУÑтановка Inkscape Ð´Ð»Ñ Ð²Ñех пользователей может не завершитьÑÑ ÑƒÑпешно.$\r$\nÐе иÑпользуйте параметр Â«Ð”Ð»Ñ Ð²Ñех пользователей»."
+${LangFileString} NOT_SUPPORTED "Inkscape не работает в Windows 95/98/ME!$\r$\nПодробноÑти изложены на Ñайте программы."
+${LangFileString} Full "ПолнаÑ"
+${LangFileString} Optimal "ОптимальнаÑ"
+${LangFileString} Minimal "МинимальнаÑ"
+${LangFileString} Core "Inkscape, редактор SVG (требуетÑÑ)"
+${LangFileString} CoreDesc "ОÑновные файлы и библиотеки Inkscape"
+${LangFileString} GTKFiles "Среда иÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ GTK+ (требуетÑÑ)"
+${LangFileString} GTKFilesDesc "Многоплатформенные ÑредÑтва разработки, необходимые Ð´Ð»Ñ Inkscape"
+${LangFileString} Shortcuts "Ярлыки"
+${LangFileString} ShortcutsDesc "Ярлыки Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка Inkscape"
+${LangFileString} Alluser "Ð”Ð»Ñ Ð²Ñех пользователей"
+${LangFileString} AlluserDesc "УÑтановить программу Ð´Ð»Ñ Ð²Ñех пользователей Ñтого компьютера"
+${LangFileString} Desktop "Рабочий Ñтол"
+${LangFileString} DesktopDesc "Создать Ñрлык Ð´Ð»Ñ Inkscape на Рабочем Ñтоле"
+${LangFileString} Startmenu "Меню «ПуÑк»"
+${LangFileString} StartmenuDesc "Создать группу Inkscape в меню «ПуÑк»"
+${LangFileString} Quicklaunch "Панель быÑтрого запуÑка"
+${LangFileString} QuicklaunchDesc "Создать Ñрлык Ð´Ð»Ñ Inkscape в панели быÑтрого запуÑка"
+${LangFileString} SVGWriter "Открывать файлы SVG в Inkscape"
+${LangFileString} SVGWriterDesc "Выбрать Inkscape редактором файлов SVG по умолчанию"
+${LangFileString} ContextMenu "КонтекÑтное меню"
+${LangFileString} ContextMenuDesc "Добавить Inkscape в контекÑтное меню Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² SVG"
+${LangFileString} DeletePrefs "Удалить личные наÑтройки"
+${LangFileString} DeletePrefsDesc "Удалить личные наÑтройки, оÑтавшиеÑÑ Ð¾Ñ‚ предыдущих верÑий программы"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "Интерпретатор Ð´Ð»Ñ Ñзыка Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Python и модули Python Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка раÑширений Inkscape."
+${LangFileString} Addfiles "Дополнительные файлы"
+${LangFileString} AddfilesDesc "Дополнительные файлы"
+${LangFileString} Extensions "РаÑширениÑ"
+${LangFileString} ExtensionsDesc "РаÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ Inkscape (в том чиÑле, Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð° и ÑкÑпорта файлов)"
+${LangFileString} Examples "Примеры"
+${LangFileString} ExamplesDesc "Примеры файлов, Ñозданных в Inkscape"
+${LangFileString} Tutorials "Уроки"
+${LangFileString} TutorialsDesc "Уроки по иÑпользованию Inkscape"
+${LangFileString} Dictionaries "Словари"
+${LangFileString} DictionariesDesc "Словари Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ правопиÑÐ°Ð½Ð¸Ñ Ð² текÑтах на некоторых раÑпроÑтраненных Ñзыках"
+${LangFileString} Languages "Переводы"
+${LangFileString} LanguagesDesc "УÑтановка переводов Inkscape на разные Ñзыки"
+${LangFileString} UInstOpt "Параметры ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ñ‹ из ÑиÑтемы"
+${LangFileString} UInstOpt1 "УбедитеÑÑŒ в том, что указали дополнительные параметры"
+${LangFileString} PurgePrefs "Сохранить личные наÑтройки"
+${LangFileString} UninstallLogNotFound "Файл $INSTDIR\uninstall.log не обнаружен!$\r$\nВыполните деинÑталлÑцию очиÑткой каталога $INSTDIR!"
+${LangFileString} FileChanged "Файл $filename был изменён поÑле уÑтановки.$\r$\nÐ’Ñ‹ дейÑтвительно хотите удалить его?"
+${LangFileString} Yes "Да"
+${LangFileString} AlwaysYes "Ð’Ñегда отвечать «Да»"
+${LangFileString} No "Ðет"
+${LangFileString} AlwaysNo "Ð’Ñегда отвечать «Ðет»"
diff --git a/packaging/win32/languages/Russian_languageNames.nsh b/packaging/win32/languages/Russian_languageNames.nsh
new file mode 100644
index 000000000..195c5de47
--- /dev/null
+++ b/packaging/win32/languages/Russian_languageNames.nsh
@@ -0,0 +1,94 @@
+### Russian (ru) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Russian.nsh'
+${LangFileString} lng_am "ÐмхарÑкий (am)"
+${LangFileString} lng_ar "ÐрабÑкий (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "ÐзербайджанÑкий (az)"
+${LangFileString} lng_be "БелоруÑÑкий (be)"
+${LangFileString} lng_bg "БолгарÑкий (bg)"
+${LangFileString} lng_bn "БенгальÑкий (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "БретонÑкий (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "КаталонÑкий (ca)"
+${LangFileString} lng_ca@valencia "КаталонÑкий, ВаленÑÐ¸Ñ (ca@valencia)"
+${LangFileString} lng_cs "ЧешÑкий (cs)"
+${LangFileString} lng_da "ДатÑкий (da)"
+${LangFileString} lng_de "Ðемецкий (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Дзонг-ÐºÑ (dz)"
+${LangFileString} lng_el "ГречеÑкий (el)"
+${LangFileString} lng_en "ÐнглийÑкий (en)"
+${LangFileString} lng_en_AU "ÐнглийÑкий, ÐвÑÑ‚Ñ€Ð°Ð»Ð¸Ñ (en_AU)"
+${LangFileString} lng_en_CA "ÐнглийÑкий, Канада (en_CA)"
+${LangFileString} lng_en_GB "ÐнглийÑкий, Ð’ÐµÐ»Ð¸ÐºÐ¾Ð±Ñ€Ð¸Ñ‚Ð°Ð½Ð¸Ñ (en_GB)"
+${LangFileString} lng_en_US@piglatin "ПороÑÑÑ‡ÑŒÑ Ð»Ð°Ñ‚Ñ‹Ð½ÑŒ (en_US@piglatin)"
+${LangFileString} lng_eo "ЭÑперанто (eo)"
+${LangFileString} lng_es "ИÑпанÑкий (es)"
+${LangFileString} lng_es_MX "ИÑпанÑкий, МекÑика (es_MX)"
+${LangFileString} lng_et "ЭÑтонÑкий (et)"
+${LangFileString} lng_eu "БаÑкÑкий (eu)"
+${LangFileString} lng_fa "ФарÑи (fa)"
+${LangFileString} lng_fi "ФинÑкий (fi)"
+${LangFileString} lng_fr "ФранцузÑкий (fr)"
+${LangFileString} lng_ga "ИрландÑкий (ga)"
+${LangFileString} lng_gl "ГалицийÑкий (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Иврит (he)"
+${LangFileString} lng_hi "Хинди (hi)"
+${LangFileString} lng_hr "ХорватÑкий (hr)"
+${LangFileString} lng_hu "ВенгерÑкий (hu)"
+${LangFileString} lng_hy "ÐрмÑнÑкий (hy)"
+${LangFileString} lng_id "ИндонезийÑкий (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "ИтальÑнÑкий (it)"
+${LangFileString} lng_ja "ЯпонÑкий (ja)"
+${LangFileString} lng_km "КхмерÑкий (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "КорейÑкий (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "ЛитовÑкий (lt)"
+${LangFileString} lng_lv "Latvian (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "МакедонÑкий (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "МонгольÑкий (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "ÐорвежÑкий, бокмол (nb)"
+${LangFileString} lng_ne "ÐепальÑкий (ne)"
+${LangFileString} lng_nl "ГолландÑкий (nl)"
+${LangFileString} lng_nn "ÐорвежÑкий, нюнорÑк (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Пенджаби (pa)"
+${LangFileString} lng_pl "ПольÑкий (pl)"
+${LangFileString} lng_pt "ПортугальÑкий (pt)"
+${LangFileString} lng_pt_BR "ПортугальÑкий, Ð‘Ñ€Ð°Ð·Ð¸Ð»Ð¸Ñ (pt_BR)"
+${LangFileString} lng_ro "РумынÑкий (ro)"
+${LangFileString} lng_ru "РуÑÑкий (ru)"
+${LangFileString} lng_rw "Руанда (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "Словацкий (sk)"
+${LangFileString} lng_sl "СловенÑкий (sl)"
+${LangFileString} lng_sq "ÐлбанÑкий (sq)"
+${LangFileString} lng_sr "СербÑкий, кириллица (sr)"
+${LangFileString} lng_sr@latin "СербÑкий, латиница (sr@latin)"
+${LangFileString} lng_sv "ШведÑкий (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Телугу (te)"
+${LangFileString} lng_th "ТайÑкий (th)"
+${LangFileString} lng_tr "Турецкий (tr)"
+${LangFileString} lng_uk "УкраинÑкий (uk)"
+${LangFileString} lng_ur "Урду (ur)"
+${LangFileString} lng_vi "ВьетнамÑкий (vi)"
+${LangFileString} lng_zh_CN "КитайÑкий, Китай (zh_CN)"
+${LangFileString} lng_zh_TW "КитайÑкий, Тайвань (zh_TW)"
diff --git a/packaging/win32/languages/SimpChinese.nsh b/packaging/win32/languages/SimpChinese.nsh
index a06918a4b..48a2a3a35 100644
--- a/packaging/win32/languages/SimpChinese.nsh
+++ b/packaging/win32/languages/SimpChinese.nsh
@@ -1,117 +1,55 @@
-;Language: Simplified Chinese (2052, CP936)
+;Language: Simplified Chinese (2052)
;By Liang Wang <fabienow@gmail.com>
-${LangFileString} CaptionDescription "??Ô´??Á¿??ͼ????"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) ??GNUͨ?ù???????֤???С? ??Щ?ṩ????֤?????Թ??ο??? $_CLICK"
-${LangFileString} DIFFERENT_USER "ʹ???? $0 ?Ѿ???װ Inkscape??$\r$\n???????????????޷??ɹ????ɣ?$\r$\n???? $0 ???ݵ?????????һ?Ρ?"
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 ?Ѿ???װ?? $\n??Ҫ?ڰ?װ $(^Name) ֮ǰ?Ƴ???һ???汾??"
-${LangFileString} OK_CANCEL_DESC "$\n$\n????È·???????????ß°???È¡??????Ö¹??"
-${LangFileString} NO_ADMIN "??û??ϵͳ????ԱȨ?ޡ?$\r$\n??װ Inkscape ??????ʹ???߿????޷??ɹ????ɡ?$\r$\nȡ????ѡ????װ??????ʹ???ߡ?ѡ??."
-${LangFileString} NOT_SUPPORTED "Inkscape ?޷??? Windows 95/98/ME ??????!$\r$\n???鿴?ٷ???վ????ϸ??Ϣ??"
-${LangFileString} Full "????"
-${LangFileString} Optimal "????"
-${LangFileString} Minimal "??С"
-${LangFileString} Core "Inkscape SVG ?༭????(????)"
-${LangFileString} CoreDesc "Inkscape ???Ä¿??? DLL "
-${LangFileString} GTKFiles "GTK+ ִ?л???(????)"
-${LangFileString} GTKFilesDesc "Inkscape ʹ?õĿ?ƽ̨ GUI ??????"
-${LangFileString} Shortcuts "???ݷ?ʽ"
-${LangFileString} ShortcutsDesc "???? Inkscape ?Ŀ??ݷ?ʽ"
-${LangFileString} Alluser "??װ??????ʹ????"
-${LangFileString} AlluserDesc "??װ????Ӧ?ó??????κ?ʹ????̨???Ե???(????ʹ????)"
-${LangFileString} Desktop "????"
-${LangFileString} DesktopDesc "???????Ͻ?Á¢ Inkscape ???Ý·?ʽ"
-${LangFileString} Startmenu "??ʼ?˵?"
-${LangFileString} StartmenuDesc "?Ú¿?ʼ?˵???Á¢ Inkscape ??Ä¿"
-${LangFileString} Quicklaunch "????????À¸"
-${LangFileString} QuicklaunchDesc "?Ú¿???????À¸??Á¢ Inkscape ???Ý·?ʽ"
-${LangFileString} SVGWriter "?? Inkscape ???? SVG ?ĵ?"
-${LangFileString} SVGWriterDesc "ѡ?? Inkscape ??Ϊ SVG ?ļ????͵???ѡ?༭????"
-${LangFileString} ContextMenu "?Ҽ??˵?"
-${LangFileString} ContextMenuDesc "???? Inkscape ?? SVG ?ļ????͵??Ҽ??˵?"
-${LangFileString} DeletePrefs "ɾ??????ƫ???趨"
-${LangFileString} DeletePrefsDesc "ɾ????һ?ΰ?װ?????ĸ???ƫ???趨"
-${LangFileString} Addfiles "?????ļ?????"
-${LangFileString} AddfilesDesc "?????ļ?????"
-${LangFileString} Examples "????"
-${LangFileString} ExamplesDesc "Inkscape ʹ?÷???"
-${LangFileString} Tutorials "Ö¸???Ö²?"
-${LangFileString} TutorialsDesc "Inkscape ʹ??˵??"
-${LangFileString} Languages "????"
-${LangFileString} LanguagesDesc "??×° Inkscape ???????Ô·???"
-${LangFileString} lng_am "????????????"
-${LangFileString} lng_ar "??À­????"
-${LangFileString} lng_az "??????È»??"
-${LangFileString} lng_be "?׶???˹??"
-${LangFileString} lng_bg "??????????"
-${LangFileString} lng_bn "?ϼ?À­??"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "??????????"
-${LangFileString} lng_ca "??̩¡??"
-${LangFileString} lng_ca@valencia "?????????? ??Ì©????????"
-${LangFileString} lng_cs "?Ý¿???"
-${LangFileString} lng_da "??????"
-${LangFileString} lng_de "????"
-${LangFileString} lng_dz "?Ú¿???"
-${LangFileString} lng_el "Ï£À°??"
-${LangFileString} lng_en "Ó¢??"
-${LangFileString} lng_en_AU "Ó¢??(?Ä´?????)"
-${LangFileString} lng_en_CA "Ӣ??(???ô?)"
-${LangFileString} lng_en_GB "Ó¢??(Ó¢??)"
-${LangFileString} lng_en_US@piglatin "??À­????"
-${LangFileString} lng_eo "?À½???"
-${LangFileString} lng_es "????????"
-${LangFileString} lng_es_MX "????????(Ä«????)"
-${LangFileString} lng_et "??ɳ??????"
-${LangFileString} lng_eu "??˹????"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "??À¼??"
-${LangFileString} lng_fr "????"
-${LangFileString} lng_ga "????À¼??"
-${LangFileString} lng_gl "??????????"
-${LangFileString} lng_he "Ï£??????"
-${LangFileString} lng_hr "???Þ°???????"
-${LangFileString} lng_hu "????????"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Ó¡????"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "????????"
-${LangFileString} lng_ja "????"
-${LangFileString} lng_km "??????"
-${LangFileString} lng_ko "????"
-${LangFileString} lng_lt "Á¢??????"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "????????"
-${LangFileString} lng_mn "?ɹ???"
-${LangFileString} lng_ne "?á²´????"
-${LangFileString} lng_nb "Ų?? Bokmal ??"
-${LangFileString} lng_nl "??À¼??"
-${LangFileString} lng_nn "Ų?? Nynorsk ??"
-${LangFileString} lng_pa "????????"
-${LangFileString} lng_pl "??À¼??"
-${LangFileString} lng_pt "????????"
-${LangFileString} lng_pt_BR "????????(????)"
-${LangFileString} lng_ro "??????????"
-${LangFileString} lng_ru "????"
-${LangFileString} lng_rw "????¬??????"
-${LangFileString} lng_sk "˹?巨????"
-${LangFileString} lng_sl "˹?已??????"
-${LangFileString} lng_sq "????????????"
-${LangFileString} lng_sr "????ά????"
-${LangFileString} lng_sr@latin "????ά????-À­??"
-${LangFileString} lng_sv "??????"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Ì©??"
-${LangFileString} lng_tr "?Á¶?????"
-${LangFileString} lng_uk "?Ú¿?À¼??"
-${LangFileString} lng_vi "Ô½??Ô’"
-${LangFileString} lng_zh_CN "????????"
-${LangFileString} lng_zh_TW "????????"
-${LangFileString} UInstOpt "????×°Ñ¡??"
-${LangFileString} UInstOpt1 "??Ñ¡??????Ñ¡??"
-${LangFileString} PurgePrefs "????????ƫ???趨"
-${LangFileString} UninstallLogNotFound "û???Òµ? $INSTDIR\uninstall.log ??$\r$\n?????????? $INSTDIR ?ļ??Ðí·´??×°??"
-${LangFileString} FileChanged "??װ?? $filename ?ļ??????ѱ?????$\r$\n???Ƿ???ȻҪɾ???Ǹ??ļ????ͣ?"
-${LangFileString} Yes "??"
-${LangFileString} AlwaysYes "È«??????"
-${LangFileString} No "??"
-${LangFileString} AlwaysNo "È«???Ô·?"
+${LangFileString} CaptionDescription "å¼€æºå‘é‡ç»˜å›¾è½¯ä»¶"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) 以GNU通用公共许å¯è¯å‘行。 在些æä¾›è®¸å¯è¯å†…容以供å‚考。 $_CLICK"
+${LangFileString} DIFFERENT_USER "使用者 $0 å·²ç»å®‰è£… Inkscape。$\r$\n如果继续你å¯èƒ½æ— æ³•æˆåŠŸå®Œæˆï¼$\r$\n请以 $0 身份登入åŽå†è¯•一次。"
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 å·²ç»å®‰è£…。 $\nä½ è¦åœ¨å®‰è£… $(^Name) 之å‰ç§»é™¤ä¸Šä¸€ä¸ªç‰ˆæœ¬ï¼Ÿ"
+${LangFileString} OK_CANCEL_DESC "$\n$\n按“确定â€ç»§ç»­æˆ–è€…æŒ‰â€œå–æ¶ˆâ€ä¸­æ­¢ã€‚"
+${LangFileString} NO_ADMIN "你没有系统管ç†å‘˜æƒé™ã€‚$\r$\n安装 Inkscape 到所有使用者å¯èƒ½æ— æ³•æˆåŠŸå®Œæˆã€‚$\r$\nå–æ¶ˆå‹¾é€‰â€œå®‰è£…给所有使用者â€é€‰é¡¹."
+${LangFileString} NOT_SUPPORTED "Inkscape 无法于 Windows 95/98/ME 下è¿è¡Œ!$\r$\n请查看官方网站的详细信æ¯ã€‚"
+${LangFileString} Full "完整"
+${LangFileString} Optimal "ç†æƒ³"
+${LangFileString} Minimal "最å°"
+${LangFileString} Core "Inkscape SVG 编辑程åº(å¿…é¡»)"
+${LangFileString} CoreDesc "Inkscape 核心库和 DLL "
+${LangFileString} GTKFiles "GTK+ 执行环境(必须)"
+${LangFileString} GTKFilesDesc "Inkscape ä½¿ç”¨çš„è·¨å¹³å° GUI 工具组"
+${LangFileString} Shortcuts "å¿«æ·æ–¹å¼"
+${LangFileString} ShortcutsDesc "å¯åЍ Inkscape çš„å¿«æ·æ–¹å¼"
+${LangFileString} Alluser "安装给所有使用者"
+${LangFileString} AlluserDesc "安装这个应用程åºç»™ä»»ä½•使用这å°ç”µè„‘的人(所有使用者)"
+${LangFileString} Desktop "桌é¢"
+${LangFileString} DesktopDesc "于桌é¢ä¸Šå»ºç«‹ Inkscape å¿«æ·æ–¹å¼"
+${LangFileString} Startmenu "开始èœå•"
+${LangFileString} StartmenuDesc "于开始èœå•建立 Inkscape 项目"
+${LangFileString} Quicklaunch "快速å¯åЍæ "
+${LangFileString} QuicklaunchDesc "于快速å¯åЍæ å»ºç«‹ Inkscape å¿«æ·æ–¹å¼"
+${LangFileString} SVGWriter "用 Inkscape 打开 SVG 文档"
+${LangFileString} SVGWriterDesc "选择 Inkscape 作为 SVG 文件类型的首选编辑程åº"
+${LangFileString} ContextMenu "å³é”®èœå•"
+${LangFileString} ContextMenuDesc "新增 Inkscape 到 SVG 文件类型的å³é”®èœå•"
+${LangFileString} DeletePrefs "删除个人å好设定"
+${LangFileString} DeletePrefsDesc "删除上一次安装é—留的个人å好设定"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "其他文件类型"
+${LangFileString} AddfilesDesc "其他文件类型"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "范例"
+${LangFileString} ExamplesDesc "Inkscape 使用范例"
+${LangFileString} Tutorials "指导手册"
+${LangFileString} TutorialsDesc "Inkscape 使用说明"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "语言"
+${LangFileString} LanguagesDesc "安装 Inkscape å„ç§è¯­è¨€ç¿»è¯‘"
+${LangFileString} UInstOpt "å安装选项"
+${LangFileString} UInstOpt1 "请选择其他选项"
+${LangFileString} PurgePrefs "ä¿ç•™ä¸ªäººå好设定"
+${LangFileString} UninstallLogNotFound "没有找到 $INSTDIR\uninstall.log ï¼$\r$\n请自行清除 $INSTDIR 文件夹來å安装ï¼"
+${LangFileString} FileChanged "å®‰è£…åŽ $filename æ–‡ä»¶ç±»åž‹å·²å˜æ›´ã€‚$\r$\n你是å¦ä»ç„¶è¦åˆ é™¤é‚£ä¸ªæ–‡ä»¶ç±»åž‹ï¼Ÿ"
+${LangFileString} Yes "是"
+${LangFileString} AlwaysYes "全部皆是"
+${LangFileString} No "å¦"
+${LangFileString} AlwaysNo "全部皆å¦"
diff --git a/packaging/win32/languages/SimpChinese_languageNames.nsh b/packaging/win32/languages/SimpChinese_languageNames.nsh
new file mode 100644
index 000000000..a75313800
--- /dev/null
+++ b/packaging/win32/languages/SimpChinese_languageNames.nsh
@@ -0,0 +1,94 @@
+### Chinese/China (zh_CN) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'SimpChinese.nsh'
+${LangFileString} lng_am "阿姆哈拉语(am)"
+${LangFileString} lng_ar "阿拉伯语(ar)"
+${LangFileString} lng_as "阿è¨å§†è¯­(as)"
+${LangFileString} lng_az "阿塞拜疆语(az)"
+${LangFileString} lng_be "白俄罗斯语(be)"
+${LangFileString} lng_bg "ä¿åŠ åˆ©äºšè¯­(bg)"
+${LangFileString} lng_bn "孟加拉语(bn)"
+${LangFileString} lng_bn_BD "孟加拉语/西孟加拉 (bn_BD)"
+${LangFileString} lng_br "布利托尼语(br)"
+${LangFileString} lng_brx "åšå¤šè¯­(brx)"
+${LangFileString} lng_ca "加泰罗尼亚语(ca)"
+${LangFileString} lng_ca@valencia "瓦伦西亚加泰罗尼亚语(ca@valencia)"
+${LangFileString} lng_cs "æ·å…‹è¯­(cs)"
+${LangFileString} lng_da "丹麦语(da)"
+${LangFileString} lng_de "德语(de)"
+${LangFileString} lng_doi "多格拉语(doi)"
+${LangFileString} lng_dz "ä¸ä¸¹è¯­(dz)"
+${LangFileString} lng_el "希腊语(el)"
+${LangFileString} lng_en "英语(en)"
+${LangFileString} lng_en_AU "英语/澳大利亚(en_AU)"
+${LangFileString} lng_en_CA "英语/加拿大(en_CA)"
+${LangFileString} lng_en_GB "英语/英国(en_GB)"
+${LangFileString} lng_en_US@piglatin "大拉ä¸è¯­(en_US@piglatin)"
+${LangFileString} lng_eo "世界语(eo)"
+${LangFileString} lng_es "西ç­ç‰™è¯­(es)"
+${LangFileString} lng_es_MX "西ç­ç‰™è¯­/墨西哥(es_MX)"
+${LangFileString} lng_et "爱沙尼亚语(et)"
+${LangFileString} lng_eu "巴斯克语(eu)"
+${LangFileString} lng_fa "波斯语(fa)"
+${LangFileString} lng_fi "芬兰语(fi)"
+${LangFileString} lng_fr "法语(fr)"
+${LangFileString} lng_ga "爱尔兰语(ga)"
+${LangFileString} lng_gl "加利西亚语(gl)"
+${LangFileString} lng_gu "å¤å‰æ‹‰ç‰¹è¯­(gu)"
+${LangFileString} lng_he "希伯æ¥è¯­(he)"
+${LangFileString} lng_hi "å°åœ°è¯­(hi)"
+${LangFileString} lng_hr "克罗地亚语(hr)"
+${LangFileString} lng_hu "匈牙利语(hu)"
+${LangFileString} lng_hy "亚美尼亚语(hy)"
+${LangFileString} lng_id "å°åº¦å°¼è¥¿äºšè¯­(id)"
+${LangFileString} lng_is "冰岛语(is)"
+${LangFileString} lng_it "æ„大利语(it)"
+${LangFileString} lng_ja "日语(ja)"
+${LangFileString} lng_km "柬埔寨语(km)"
+${LangFileString} lng_kn "åŽé‚£è¾¾æ–‡ (kn)"
+${LangFileString} lng_ko "韩语(ko)"
+${LangFileString} lng_kok "å­”å¡å°¼è¯­(kok)"
+${LangFileString} lng_kok@latin "å­”å¡å°¼è¯­ï¼Œæ‹‰ä¸å­—书写(sr@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "立陶宛语(lt)"
+${LangFileString} lng_lv "拉脱维亚语(lv)"
+${LangFileString} lng_mai "迈蒂利语(mai)"
+${LangFileString} lng_mk "马其顿语(mk)"
+${LangFileString} lng_ml "马拉雅拉姆语(ml)"
+${LangFileString} lng_mn "è’™å¤è¯­(mn)"
+${LangFileString} lng_mni "曼尼普尔语(mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "马拉地语(mr)"
+${LangFileString} lng_nb "挪å¨å·´å…‹æ‘©è¯­(nb)"
+${LangFileString} lng_ne "尼泊尔语(ne)"
+${LangFileString} lng_nl "è·å…°è¯­(nl)"
+${LangFileString} lng_nn "挪å¨å°¼è¯ºæ–¯å…‹è¯­(nn)"
+${LangFileString} lng_or "奥里亚语(or)"
+${LangFileString} lng_pa "潘贾比语(pa)"
+${LangFileString} lng_pl "波兰语(pl)"
+${LangFileString} lng_pt "è‘¡è„牙语(pt)"
+${LangFileString} lng_pt_BR "è‘¡è„牙语/巴西(pt_BR)"
+${LangFileString} lng_ro "罗马尼亚语(ro)"
+${LangFileString} lng_ru "俄语(ru)"
+${LangFileString} lng_rw "墿—ºè¾¾è¯­(rw)"
+${LangFileString} lng_sa "梵语(sa)"
+${LangFileString} lng_sat "桑塔尔语(sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "信德语(sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "斯洛ä¼å…‹è¯­(sk)"
+${LangFileString} lng_sl "斯洛文尼亚语(sl)"
+${LangFileString} lng_sq "阿尔巴尼亚语(sq)"
+${LangFileString} lng_sr "塞尔维亚语(sr)"
+${LangFileString} lng_sr@latin "塞尔维亚语,拉ä¸å­—书写(sr@latin)"
+${LangFileString} lng_sv "瑞典语(sv)"
+${LangFileString} lng_ta "泰米尔语(ta)"
+${LangFileString} lng_te "æ³°å¢å›ºè¯­(te)"
+${LangFileString} lng_th "泰语(th)"
+${LangFileString} lng_tr "土耳其语(tr)"
+${LangFileString} lng_uk "乌克兰语(uk)"
+${LangFileString} lng_ur "乌尔都语(ur)"
+${LangFileString} lng_vi "è¶Šå—语(vi)"
+${LangFileString} lng_zh_CN "中文/中国(zh_CN)"
+${LangFileString} lng_zh_TW "中文/å°æ¹¾(zh_TW)"
diff --git a/packaging/win32/languages/Slovak.nsh b/packaging/win32/languages/Slovak.nsh
index 6d98b70e9..befe7f43a 100644
--- a/packaging/win32/languages/Slovak.nsh
+++ b/packaging/win32/languages/Slovak.nsh
@@ -1,117 +1,55 @@
-;Language: Slovak (1051, CP1250)
-;By Ivan Masár <helix84@centrum.sk>
+;Language: Slovak (1051)
+;By Ivan Masár <helix84@centrum.sk>
${LangFileString} CaptionDescription "Open source editor SVG grafiky"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) je možné šíri za podmienok General Public License (GPL). Licenèná zmluva je tu len pre informaèné úèely. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape nainštaloval používate¾ $0.$\r$\nInštalácia nemusí správne skonèi, ak v nej budete pokraèova!$\r$\nProsím, prihláste sa ako $0 a spustite inštaláciu znova."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 už je nainštalovaný. $\nChcete odstráni predchádzajúcu verziu predtým, než nainštalujete $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nPokraèujte stlaèením OK alebo zrušte inštaláciu stlaèením Zruši."
-${LangFileString} NO_ADMIN "Nemáte práva správcu.$\r$\nInštalácia Inkscape pre všetkých používate¾ov nemusí skonèi úspešne.$\r$\nZrušte oznaèenie vo¾by „Pre všetkých používate¾ov“."
-${LangFileString} NOT_SUPPORTED "Inkscape nebeží na Windows 95/98/ME!$\r$\nPodrobnejšie informácie nájdete na oficiálnom webe."
-${LangFileString} Full "Plná"
-${LangFileString} Optimal "Optimálna"
-${LangFileString} Minimal "Minimálna"
-${LangFileString} Core "Inkscape SVG editor (povinné)"
-${LangFileString} CoreDesc "Súbory a knižnice Inkscape"
-${LangFileString} GTKFiles "GTK+ runtime environment (povinné)"
-${LangFileString} GTKFilesDesc "Multiplatformová sada používate¾ského rozhrania použitého v Inkscape"
-${LangFileString} Shortcuts "Zástupcovia"
-${LangFileString} ShortcutsDesc "Zástupcovia pre štart Inkscape"
-${LangFileString} Alluser "pre všetkých používate¾ov"
-${LangFileString} AlluserDesc "Inštalova aplikáciu pre kohoko¾vek, kto používa tento poèítaè. (všetci používatelia)"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) je možné šíriÅ¥ za podmienok General Public License (GPL). LicenÄná zmluva je tu len pre informaÄné úÄely. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape nainÅ¡taloval používateľ $0.$\r$\nInÅ¡talácia nemusí správne skonÄiÅ¥, ak v nej budete pokraÄovaÅ¥!$\r$\nProsím, prihláste sa ako $0 a spustite inÅ¡taláciu znova."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 už je nainštalovaný. $\nChcete odstrániť predchádzajúcu verziu predtým, než nainštalujete $(^Name) ?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nPokraÄujte stlaÄením OK alebo zruÅ¡te inÅ¡taláciu stlaÄením ZruÅ¡iÅ¥."
+${LangFileString} NO_ADMIN "Nemáte práva správcu.$\r$\nInÅ¡talácia Inkscape pre vÅ¡etkých používateľov nemusí skonÄiÅ¥ úspeÅ¡ne.$\r$\nZruÅ¡te oznaÄenie voľby „Pre vÅ¡etkých používateľov“."
+${LangFileString} NOT_SUPPORTED "Inkscape nebeží na Windows 95/98/ME!$\r$\nPodrobnejšie informácie nájdete na oficiálnom webe."
+${LangFileString} Full "Plná"
+${LangFileString} Optimal "Optimálna"
+${LangFileString} Minimal "Minimálna"
+${LangFileString} Core "Inkscape SVG editor (povinné)"
+${LangFileString} CoreDesc "Súbory a knižnice Inkscape"
+${LangFileString} GTKFiles "GTK+ runtime environment (povinné)"
+${LangFileString} GTKFilesDesc "Multiplatformová sada používateľského rozhrania použitého v Inkscape"
+${LangFileString} Shortcuts "Zástupcovia"
+${LangFileString} ShortcutsDesc "Zástupcovia pre štart Inkscape"
+${LangFileString} Alluser "pre všetkých používateľov"
+${LangFileString} AlluserDesc "InÅ¡talovaÅ¥ aplikáciu pre kohokoľvek, kto používa tento poÄítaÄ. (vÅ¡etci používatelia)"
${LangFileString} Desktop "Plocha"
-${LangFileString} DesktopDesc "Vytvoøit zástupcu Inkscape na ploche"
-${LangFileString} Startmenu "Ponuka Štart"
-${LangFileString} StartmenuDesc "Vytvori pre Inkscape položku ve ponuke Štart"
-${LangFileString} Quicklaunch "Panel rýchleho spustenia"
-${LangFileString} QuicklaunchDesc "Vytvori pre Inkscape zástupcu v paneli rýchleho spustenia"
-${LangFileString} SVGWriter "Otvára SVG súbory v Inkscape"
-${LangFileString} SVGWriterDesc "Vybra Inkscape ako štandardný editor pre SVG súbory"
-${LangFileString} ContextMenu "Kontextová ponuka"
-${LangFileString} ContextMenuDesc "Prida Inkscape do kontextového menu pre SVG súbory"
-${LangFileString} DeletePrefs "Zmaza osobné nastavenia"
-${LangFileString} DeletePrefsDesc "Zmaza osobné nastavenia ponechané z predchádzajúcich inštalácií"
-${LangFileString} Addfiles "Ïalšie súbory"
-${LangFileString} AddfilesDesc "Ïalšie súbory"
-${LangFileString} Examples "Príklady"
-${LangFileString} ExamplesDesc "Príklady používania Inkscape"
+${LangFileString} DesktopDesc "Vytvořit zástupcu Inkscape na ploche"
+${LangFileString} Startmenu "Ponuka Å tart"
+${LangFileString} StartmenuDesc "Vytvoriť pre Inkscape položku ve ponuke Štart"
+${LangFileString} Quicklaunch "Panel rýchleho spustenia"
+${LangFileString} QuicklaunchDesc "Vytvoriť pre Inkscape zástupcu v paneli rýchleho spustenia"
+${LangFileString} SVGWriter "Otvárať SVG súbory v Inkscape"
+${LangFileString} SVGWriterDesc "Vybrať Inkscape ako štandardný editor pre SVG súbory"
+${LangFileString} ContextMenu "Kontextová ponuka"
+${LangFileString} ContextMenuDesc "Pridať Inkscape do kontextového menu pre SVG súbory"
+${LangFileString} DeletePrefs "Zmazať osobné nastavenia"
+${LangFileString} DeletePrefsDesc "Zmazať osobné nastavenia ponechané z predchádzajúcich inštalácií"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "Ďalšie súbory"
+${LangFileString} AddfilesDesc "Ďalšie súbory"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "Príklady"
+${LangFileString} ExamplesDesc "Príklady používania Inkscape"
${LangFileString} Tutorials "Sprievodcovia"
${LangFileString} TutorialsDesc "Sprievodcovia funkciami Inkscape"
-${LangFileString} Languages "Jazykové sady"
-${LangFileString} LanguagesDesc "Nainštalova ïalšie jazykové sady Inkscape"
-${LangFileString} lng_am "amharèina"
-${LangFileString} lng_ar "arabèina"
-${LangFileString} lng_az "azerbajdžanèina"
-${LangFileString} lng_be "bieloruština"
-${LangFileString} lng_bg "bulharèina"
-${LangFileString} lng_bn "bengálèina"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "bretónèina"
-${LangFileString} lng_ca "katalánèina"
-${LangFileString} lng_ca@valencia "valencijèina"
-${LangFileString} lng_cs "èeština"
-${LangFileString} lng_da "dánèina"
-${LangFileString} lng_de "nemèina"
-${LangFileString} lng_dz "dzongkä"
-${LangFileString} lng_el "gréètina"
-${LangFileString} lng_en "angliètina"
-${LangFileString} lng_en_AU "angliètina (Austrália)"
-${LangFileString} lng_en_CA "angliètina (Kanada)"
-${LangFileString} lng_en_GB "angliètina (Spojené krá¾ovstvo)"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "esperanto"
-${LangFileString} lng_es "španielèina"
-${LangFileString} lng_es_MX "španielèina (Mexiko)"
-${LangFileString} lng_et "estónèina"
-${LangFileString} lng_eu "baskiètina"
-${LangFileString} lng_fa "farsi"
-${LangFileString} lng_fi "fínèina"
-${LangFileString} lng_fr "francúzština"
-${LangFileString} lng_ga "írèina"
-${LangFileString} lng_gl "galícijèina"
-${LangFileString} lng_he "hebrejèina"
-${LangFileString} lng_hr "chorvátèina"
-${LangFileString} lng_hu "maïarèina"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "indonézština"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "talianèina"
-${LangFileString} lng_ja "japonèina"
-${LangFileString} lng_km "khmérèina"
-${LangFileString} lng_ko "kórejèina"
-${LangFileString} lng_lt "litovèina"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "macedónèina"
-${LangFileString} lng_mn "mongolèina"
-${LangFileString} lng_ne "nepálèina"
-${LangFileString} lng_nb "nórsky bokmal"
-${LangFileString} lng_nl "holandèina"
-${LangFileString} lng_nn "nórsky nynorsk"
-${LangFileString} lng_pa "pandžábèina"
-${LangFileString} lng_pl "po¾ština"
-${LangFileString} lng_pt "portugalèina"
-${LangFileString} lng_pt_BR "portugalèina (Brazília)"
-${LangFileString} lng_ro "rumunèina"
-${LangFileString} lng_ru "ruština"
-${LangFileString} lng_rw "rwandèina"
-${LangFileString} lng_sk "slovenèina"
-${LangFileString} lng_sl "slovinèina"
-${LangFileString} lng_sq "albánèina"
-${LangFileString} lng_sr "srbèina"
-${LangFileString} lng_sr@latin "srbèina (latinka)"
-${LangFileString} lng_sv "švédèina"
-${LangFileString} lng_te "telugu"
-${LangFileString} lng_th "thajèina"
-${LangFileString} lng_tr "tureètina"
-${LangFileString} lng_uk "ukrajinèina"
-${LangFileString} lng_vi "Vietnamese"
-${LangFileString} lng_zh_CN "èínština (zjednodušená)"
-${LangFileString} lng_zh_TW "èínština (tradièná)"
-${LangFileString} UInstOpt "Možnosti deinštalácie"
-${LangFileString} UInstOpt1 "Zvo¾te prosím ïalšie možnosti"
-${LangFileString} PurgePrefs "Ponecha osobné nastavenia"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log nebol nájdený!$\r$\nProsím, odinštalujte ruèným vyèistením adresára $INSTDIR !"
-${LangFileString} FileChanged "Súbor $filename sa po inštalácii zmenil.$\r$\nChcete ho napriek tomu vymaza?"
-${LangFileString} Yes "Áno"
-${LangFileString} AlwaysYes "Áno všetky"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "Jazykové sady"
+${LangFileString} LanguagesDesc "NainÅ¡talovaÅ¥ ÄalÅ¡ie jazykové sady Inkscape"
+${LangFileString} UInstOpt "Možnosti deinštalácie"
+${LangFileString} UInstOpt1 "Zvoľte prosím ÄalÅ¡ie možnosti"
+${LangFileString} PurgePrefs "Ponechať osobné nastavenia"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log nebol nájdený!$\r$\nProsím, odinÅ¡talujte ruÄným vyÄistením adresára $INSTDIR !"
+${LangFileString} FileChanged "Súbor $filename sa po inštalácii zmenil.$\r$\nChcete ho napriek tomu vymazať?"
+${LangFileString} Yes "Ãno"
+${LangFileString} AlwaysYes "Ãno vÅ¡etky"
${LangFileString} No "Nie"
-${LangFileString} AlwaysNo "Nie všetky"
+${LangFileString} AlwaysNo "Nie všetky"
diff --git a/packaging/win32/languages/Slovak_languageNames.nsh b/packaging/win32/languages/Slovak_languageNames.nsh
new file mode 100644
index 000000000..9e38b9109
--- /dev/null
+++ b/packaging/win32/languages/Slovak_languageNames.nsh
@@ -0,0 +1,94 @@
+### Slovak (sk) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Slovak.nsh'
+${LangFileString} lng_am "amharÄina (am)"
+${LangFileString} lng_ar "arabÄina (ar)"
+${LangFileString} lng_as "ásámÄina (as)"
+${LangFileString} lng_az "azerbajdžanÄina (az)"
+${LangFileString} lng_be "bieloruština (be)"
+${LangFileString} lng_bg "bulharÄina (bg)"
+${LangFileString} lng_bn "bengálÄina (bn)"
+${LangFileString} lng_bn_BD "bengálÄina (Bangladéš) (bn)"
+${LangFileString} lng_br "bretónÄina (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "katalánÄina (ca)"
+${LangFileString} lng_ca@valencia "valencijÄina (ca@valencia)"
+${LangFileString} lng_cs "ÄeÅ¡tina (cs)"
+${LangFileString} lng_da "dánÄina (da)"
+${LangFileString} lng_de "nemÄina (de)"
+${LangFileString} lng_doi "dógrí (doi)"
+${LangFileString} lng_dz "dzongkä (dz)"
+${LangFileString} lng_el "gréÄtina (el)"
+${LangFileString} lng_en "angliÄtina (en)"
+${LangFileString} lng_en_AU "angliÄtina (Austrália) (en_AU)"
+${LangFileString} lng_en_CA "angliÄtina (Kanada) (en_CA)"
+${LangFileString} lng_en_GB "angliÄtina (Spojené kráľovstvo) (en_GB)"
+${LangFileString} lng_en_US@piglatin "pig latin (en_US@piglatin)"
+${LangFileString} lng_eo "esperanto (eo)"
+${LangFileString} lng_es "Å¡panielÄina (es)"
+${LangFileString} lng_es_MX "Å¡panielÄina (Mexiko) (es_MX)"
+${LangFileString} lng_et "estónÄina (et)"
+${LangFileString} lng_eu "baskiÄtina (eu)"
+${LangFileString} lng_fa "perzština (fa)"
+${LangFileString} lng_fi "fínÄina (fi)"
+${LangFileString} lng_fr "francúzština (fr)"
+${LangFileString} lng_ga "írÄina (ga)"
+${LangFileString} lng_gl "galícijÄina (gl)"
+${LangFileString} lng_gu "gudžarátÄina (gu)"
+${LangFileString} lng_he "hebrejÄina (he)"
+${LangFileString} lng_hi "hindÄina (hi)"
+${LangFileString} lng_hr "chorvátÄina (hr)"
+${LangFileString} lng_hu "maÄarÄina (hu)"
+${LangFileString} lng_hy "arménÄina (hy)"
+${LangFileString} lng_id "indonézština (id)"
+${LangFileString} lng_is "islandÄina (is)"
+${LangFileString} lng_it "talianÄina (it)"
+${LangFileString} lng_ja "japonÄina (ja)"
+${LangFileString} lng_km "khmérÄina (km)"
+${LangFileString} lng_kn "kannadÄina (kn)"
+${LangFileString} lng_ko "kórejÄina (ko)"
+${LangFileString} lng_kok "konkánÄina (kok)"
+${LangFileString} lng_kok@latin "konkánÄina v latinke (kok@latin)"
+${LangFileString} lng_ks@aran "kaÅ¡mírÄina v perzsko-arabskom skripte (ks@aran)"
+${LangFileString} lng_ks@deva "kaÅ¡mírÄina v skripte Devanagari (ks@deva)"
+${LangFileString} lng_lt "litovÄina (lt)"
+${LangFileString} lng_lv "lotyština (lv)"
+${LangFileString} lng_mai "maithilÄina (mai)"
+${LangFileString} lng_mk "macedónÄina (mk)"
+${LangFileString} lng_ml "malajálamÄina (ml)"
+${LangFileString} lng_mn "mongolÄina (mn)"
+${LangFileString} lng_mni "manípurÄina (mni)"
+${LangFileString} lng_mni@beng "manípurÄina v bengálskom skripte (mni@beng)"
+${LangFileString} lng_mr "maráthÄina (mr)"
+${LangFileString} lng_nb "nórsky bokmål (nb)"
+${LangFileString} lng_ne "nepálÄina (ne)"
+${LangFileString} lng_nl "holandÄina (nl)"
+${LangFileString} lng_nn "nórsky nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "pandžábÄina (pa)"
+${LangFileString} lng_pl "poľština (pl)"
+${LangFileString} lng_pt "portugalÄina (pt)"
+${LangFileString} lng_pt_BR "portugalÄina (Brazília) (pt_BR)"
+${LangFileString} lng_ro "rumunÄina (ro)"
+${LangFileString} lng_ru "ruština (ru)"
+${LangFileString} lng_rw "rwandÄina (rw)"
+${LangFileString} lng_sa "sanskrit (sa)"
+${LangFileString} lng_sat "santalÄina (sat)"
+${LangFileString} lng_sat@deva "santalÄina v skripte Devanagari (sat@deva)"
+${LangFileString} lng_sd "sindhÄina (sd)"
+${LangFileString} lng_sd@deva "sindhÄina v skripte Devanagari (sd@deva)"
+${LangFileString} lng_sk "slovenÄina (sk)"
+${LangFileString} lng_sl "slovinÄina (sl)"
+${LangFileString} lng_sq "albánÄina (sq)"
+${LangFileString} lng_sr "srbÄina (sr)"
+${LangFileString} lng_sr@latin "srbÄina v latinke (sr@latin)"
+${LangFileString} lng_sv "Å¡védÄina (sv)"
+${LangFileString} lng_ta "tamilÄina (ta)"
+${LangFileString} lng_te "telugÄina (te)"
+${LangFileString} lng_th "thajÄina (th)"
+${LangFileString} lng_tr "tureÄtina (tr)"
+${LangFileString} lng_uk "ukrajinÄina (uk)"
+${LangFileString} lng_ur "urdÄina (ur)"
+${LangFileString} lng_vi "vietnamÄina (vi)"
+${LangFileString} lng_zh_CN "ÄínÅ¡tina (Čína) (zh_CN)"
+${LangFileString} lng_zh_TW "ÄínÅ¡tina (Taiwan) (zh_TW)"
diff --git a/packaging/win32/languages/Slovenian.nsh b/packaging/win32/languages/Slovenian.nsh
index f5562b502..fd50222c2 100644
--- a/packaging/win32/languages/Slovenian.nsh
+++ b/packaging/win32/languages/Slovenian.nsh
@@ -1,116 +1,54 @@
-;Language: Slovenian (1060, CP1250)
+;Language: Slovenian (1060)
;By Martin Srebotnjak
${LangFileString} CaptionDescription "Odprtokodni urejevalnik vektorskih slik"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) je izdan pod licenco GNU General Public License (GPL). Priložena licenca služi le v informativne namene. $_CLICK"
-${LangFileString} DIFFERENT_USER "Uporabnik $0 je že namestil Inkscape.$\r$\nÈe nadaljujete, namestitev morda ne bo uspešno dokonèana!$\r$\nPonovno se prijavite kot $0 in poskusite znova."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 je že namešèen. $\nŽelite odstraniti predhodno razlièico, preden namestite $(^Name) ?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nPritisnite V redu za nadaljevanje ali Preklièi za preklic."
-${LangFileString} NO_ADMIN "Nimate skrbniških pravic.$\r$\nNamešèanje programa Inkscape za vse uporabnike se morda ne bo konèala uspešno.$\r$\nIzklopite možnost 'za vse uporabnike'."
-${LangFileString} NOT_SUPPORTED "Za Inkscape velja, da ne teèe v okoljih Windows 95/98/ME!$\r$\nProsim, oglejte si uradno spletno stran za podrobnejše informacije."
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) je izdan pod licenco GNU General Public License (GPL). Priložena licenca služi le v informativne namene. $_CLICK"
+${LangFileString} DIFFERENT_USER "Uporabnik $0 je že namestil Inkscape.$\r$\nÄŒe nadaljujete, namestitev morda ne bo uspeÅ¡no dokonÄana!$\r$\nPonovno se prijavite kot $0 in poskusite znova."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 je že nameÅ¡Äen. $\nŽelite odstraniti predhodno razliÄico, preden namestite $(^Name) ?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nPritisnite V redu za nadaljevanje ali PrekliÄi za preklic."
+${LangFileString} NO_ADMIN "Nimate skrbniÅ¡kih pravic.$\r$\nNameÅ¡Äanje programa Inkscape za vse uporabnike se morda ne bo konÄala uspeÅ¡no.$\r$\nIzklopite možnost 'za vse uporabnike'."
+${LangFileString} NOT_SUPPORTED "Za Inkscape velja, da ne teÄe v okoljih Windows 95/98/ME!$\r$\nProsim, oglejte si uradno spletno stran za podrobnejÅ¡e informacije."
${LangFileString} Full "Polna"
${LangFileString} Optimal "Optimalna"
${LangFileString} Minimal "Minimalna"
${LangFileString} Core "Urejevalnik SVG Inkscape (obvezno)"
${LangFileString} CoreDesc "Osnovne datoteke in dll-ji Inkscape"
${LangFileString} GTKFiles "Izvajalno okolje GTK+ (obvezno)"
-${LangFileString} GTKFilesDesc "Veèplatformna osnova za uporabniški vmesnik, ki ga uporablja tudi Inkscape"
-${LangFileString} Shortcuts "Bližnjice"
-${LangFileString} ShortcutsDesc "Bližnjice za zagon Inkscape"
+${LangFileString} GTKFilesDesc "VeÄplatformna osnova za uporabniÅ¡ki vmesnik, ki ga uporablja tudi Inkscape"
+${LangFileString} Shortcuts "Bližnjice"
+${LangFileString} ShortcutsDesc "Bližnjice za zagon Inkscape"
${LangFileString} Alluser "Za vse uporabnike"
-${LangFileString} AlluserDesc "Namesti program za vse, ki uporabljajo ta raèunalnik (vsi uporabniki)"
+${LangFileString} AlluserDesc "Namesti program za vse, ki uporabljajo ta raÄunalnik (vsi uporabniki)"
${LangFileString} Desktop "Namizje"
-${LangFileString} DesktopDesc "Ustvari bližnjico do Inkscape na namizju"
+${LangFileString} DesktopDesc "Ustvari bližnjico do Inkscape na namizju"
${LangFileString} Startmenu "Meni Start"
${LangFileString} StartmenuDesc "Ustvari vnos Inkscape v meniju Start"
${LangFileString} Quicklaunch "Hitri zagon"
-${LangFileString} QuicklaunchDesc "Ustvari bližnjico Inkscape na orodni vrstici Hitri zagon"
+${LangFileString} QuicklaunchDesc "Ustvari bližnjico Inkscape na orodni vrstici Hitri zagon"
${LangFileString} SVGWriter "Odpiraj datoteke SVG z Inkscape-om"
${LangFileString} SVGWriterDesc "Izbere Inkscape kot privzeti urejevalnik za datoteke SVG"
${LangFileString} ContextMenu "Pojavni meni"
${LangFileString} ContextMenuDesc "Doda Inkscape v pojavni meni za datoteke SVG"
-${LangFileString} DeletePrefs "Izbriši osebne nastavitve"
-${LangFileString} DeletePrefsDesc "Izbriši osebne nastavitve, ki so ostale od predhodno namešèene razlièice"
+${LangFileString} DeletePrefs "Izbriši osebne nastavitve"
+${LangFileString} DeletePrefsDesc "IzbriÅ¡i osebne nastavitve, ki so ostale od predhodno nameÅ¡Äene razliÄice"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Dodatne datoteke"
${LangFileString} AddfilesDesc "Dodatne datoteke"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Primeri"
${LangFileString} ExamplesDesc "Primeri uporabe Inkscape"
-${LangFileString} Tutorials "Vodièi s primeri"
-${LangFileString} TutorialsDesc "Vodièi s primeri uporabe Inkscape-a"
+${LangFileString} Tutorials "VodiÄi s primeri"
+${LangFileString} TutorialsDesc "VodiÄi s primeri uporabe Inkscape-a"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Prevodi"
-${LangFileString} LanguagesDesc "Namesti razliène prevode za Inkscape"
-${LangFileString} lng_am "amharski"
-${LangFileString} lng_ar "arabski"
-${LangFileString} lng_az "azerbajdžanski"
-${LangFileString} lng_be "beloruski"
-${LangFileString} lng_bg "bolgarski"
-${LangFileString} lng_bn "bengalski"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "bretonski"
-${LangFileString} lng_ca "katalonski"
-${LangFileString} lng_ca@valencia "valencijski katalonski"
-${LangFileString} lng_cs "èeški"
-${LangFileString} lng_da "danski"
-${LangFileString} lng_de "nemški"
-${LangFileString} lng_dz "džongški"
-${LangFileString} lng_el "grški"
-${LangFileString} lng_en "angleški"
-${LangFileString} lng_en_AU "avstralsko angleški"
-${LangFileString} lng_en_CA "kanadsko angleški"
-${LangFileString} lng_en_GB "britansko angleški"
-${LangFileString} lng_en_US@piglatin "obrnjeni angleški zlogi"
-${LangFileString} lng_eo "esperanto"
-${LangFileString} lng_es "španski"
-${LangFileString} lng_es_MX "mehiško španski"
-${LangFileString} lng_et "estonski"
-${LangFileString} lng_eu "baskovski"
-${LangFileString} lng_fa "farsi"
-${LangFileString} lng_fi "finski"
-${LangFileString} lng_fr "francoski"
-${LangFileString} lng_ga "irski"
-${LangFileString} lng_gl "galegaški"
-${LangFileString} lng_he "hebrejski"
-${LangFileString} lng_hr "hrvaški"
-${LangFileString} lng_hu "madžarski"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "indonezijski"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "italijanski"
-${LangFileString} lng_ja "japonski"
-${LangFileString} lng_km "kmerski"
-${LangFileString} lng_ko "korejski"
-${LangFileString} lng_lt "litovski"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "makedonski"
-${LangFileString} lng_mn "mongolski"
-${LangFileString} lng_ne "nepalski"
-${LangFileString} lng_nb "norveški Bokmal"
-${LangFileString} lng_nl "nizozemski"
-${LangFileString} lng_nn "norveški Nyorsk"
-${LangFileString} lng_pa "pundžabski"
-${LangFileString} lng_pl "poljski"
-${LangFileString} lng_pt "portugalski"
-${LangFileString} lng_pt_BR "brazilski portugalski"
-${LangFileString} lng_ro "romunski"
-${LangFileString} lng_ru "ruski"
-${LangFileString} lng_rw "kinjarvandski"
-${LangFileString} lng_sk "slovaški"
-${LangFileString} lng_sl "slovenski"
-${LangFileString} lng_sq "albanski"
-${LangFileString} lng_sr "srbski"
-${LangFileString} lng_sr@latin "srbski - latinica"
-${LangFileString} lng_sv "švedski"
-${LangFileString} lng_te "telugu"
-${LangFileString} lng_th "tajski"
-${LangFileString} lng_tr "turški"
-${LangFileString} lng_uk "ukrajinski"
-${LangFileString} lng_vi "vietnamski"
-${LangFileString} lng_zh_CN "poenostavljeni kitajski"
-${LangFileString} lng_zh_TW "tradicionalni kitajski"
-${LangFileString} UInstOpt "Možnosti odstranitve"
-${LangFileString} UInstOpt1 "Izberite dodatne možnosti"
+${LangFileString} LanguagesDesc "Namesti razliÄne prevode za Inkscape"
+${LangFileString} UInstOpt "Možnosti odstranitve"
+${LangFileString} UInstOpt1 "Izberite dodatne možnosti"
${LangFileString} PurgePrefs "Ohrani osebne nastavitve"
-${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ni mogoèe najti!$\r$\nNamestitev odstranite tako, da sami poèistite mapo $INSTDIR!"
-${LangFileString} FileChanged "Datoteka $filename je bila spremenjena po namestitvi.$\r$\nJo kljub temu želite izbrisati?"
+${LangFileString} UninstallLogNotFound "$INSTDIR\uninstall.log ni mogoÄe najti!$\r$\nNamestitev odstranite tako, da sami poÄistite mapo $INSTDIR!"
+${LangFileString} FileChanged "Datoteka $filename je bila spremenjena po namestitvi.$\r$\nJo kljub temu želite izbrisati?"
${LangFileString} Yes "Da"
${LangFileString} AlwaysYes "vedno odgovori z Da"
${LangFileString} No "Ne"
diff --git a/packaging/win32/languages/Slovenian_languageNames.nsh b/packaging/win32/languages/Slovenian_languageNames.nsh
new file mode 100644
index 000000000..633e73ee7
--- /dev/null
+++ b/packaging/win32/languages/Slovenian_languageNames.nsh
@@ -0,0 +1,94 @@
+### Slovenian (sl) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Slovenian.nsh'
+${LangFileString} lng_am "amharski (am)"
+${LangFileString} lng_ar "arabski (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "azerbajdžanski (az)"
+${LangFileString} lng_be "beloruski (be)"
+${LangFileString} lng_bg "bolgarski (bg)"
+${LangFileString} lng_bn "bengalski (bn)"
+${LangFileString} lng_bn_BD "Bengali/Bangladesh (bn_BD)"
+${LangFileString} lng_br "bretonski (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "katalonski (ca)"
+${LangFileString} lng_ca@valencia "katalonski, Valencia (ca@valencia)"
+${LangFileString} lng_cs "ÄeÅ¡ki (cs)"
+${LangFileString} lng_da "danski (da)"
+${LangFileString} lng_de "nemški (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "džonkški (dz)"
+${LangFileString} lng_el "grški (el)"
+${LangFileString} lng_en "angleški (en)"
+${LangFileString} lng_en_AU "angleški/Avstralija (en_AU)"
+${LangFileString} lng_en_CA "angleški/Kanada (en_CA)"
+${LangFileString} lng_en_GB "angleški/Velika Britanija (en_GB)"
+${LangFileString} lng_en_US@piglatin "obrnjeni zlogi (en_US@piglatin)"
+${LangFileString} lng_eo "esperanto (eo)"
+${LangFileString} lng_es "španski (es)"
+${LangFileString} lng_es_MX "španski/Mehika (es_MX)"
+${LangFileString} lng_et "estonski (et)"
+${LangFileString} lng_eu "baskovski (eu)"
+${LangFileString} lng_fa "farsi (fa)"
+${LangFileString} lng_fi "finski (fi)"
+${LangFileString} lng_fr "francoski (fr)"
+${LangFileString} lng_ga "irski (ga)"
+${LangFileString} lng_gl "galicijski (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "hebrejski (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "hrvaški (hr)"
+${LangFileString} lng_hu "madžarski (hu)"
+${LangFileString} lng_hy "armenski (hy)"
+${LangFileString} lng_id "indonezijski (id)"
+${LangFileString} lng_is "Icelandic (is)"
+${LangFileString} lng_it "italijanski (it)"
+${LangFileString} lng_ja "japonski (ja)"
+${LangFileString} lng_km "kmerski (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "korejski (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "Kashmiri in Devanagari script (ks@deva)"
+${LangFileString} lng_lt "litovski (lt)"
+${LangFileString} lng_lv "latvijski (lt)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "makedonski (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "mongolski (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri in Bengali script (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "norveški, Bokmål (nb)"
+${LangFileString} lng_ne "nepalski (ne)"
+${LangFileString} lng_nl "nizozemski (nl)"
+${LangFileString} lng_nn "norveški, Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "pandžabski (pa)"
+${LangFileString} lng_pl "poljski (pl)"
+${LangFileString} lng_pt "portugalski (pt)"
+${LangFileString} lng_pt_BR "portugalski/Brazilija (pt_BR)"
+${LangFileString} lng_ro "romunski (ro)"
+${LangFileString} lng_ru "ruski (ru)"
+${LangFileString} lng_rw "kinjarvandski (rw)"
+${LangFileString} lng_sa "Sanskrit (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "slovaški (sk)"
+${LangFileString} lng_sl "slovenski (sl)"
+${LangFileString} lng_sq "albanski (sq)"
+${LangFileString} lng_sr "srbski (sr)"
+${LangFileString} lng_sr@latin "srbski, latinica (sr@latin)"
+${LangFileString} lng_sv "švedski (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "tajski (th)"
+${LangFileString} lng_tr "turški (tr)"
+${LangFileString} lng_uk "ukrajinski (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "vietnamski (vi)"
+${LangFileString} lng_zh_CN "kitajski/Kitajska (zh_CN)"
+${LangFileString} lng_zh_TW "kitajski/Tajvan (zh_TW)"
diff --git a/packaging/win32/languages/Spanish.nsh b/packaging/win32/languages/Spanish.nsh
index be38de68c..c28d29433 100644
--- a/packaging/win32/languages/Spanish.nsh
+++ b/packaging/win32/languages/Spanish.nsh
@@ -1,117 +1,55 @@
-;Language: Spanish (1034, CP1252)
+;Language: Spanish (1034)
;By Lucas Vieites <lucas@codexion.com>
-${LangFileString} CaptionDescription "Editor de gráficos vectoriales escalables (SVG) de código abierto"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) se publica bajo la Licencia Pública General GNU (GPL). Esta licencia se muestra aquí solamente como información. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape ha sido instalado por el usuario $0.$\r$\nSi continúa, la operación podría finalizar sin éxito.$\r$\nInicie sesión como $0 y vuelva a intentarlo."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 ya ha sido instalado. $\n¿Desea eliminar la versión anterior antes de instalar $(^Name) ?"
+${LangFileString} CaptionDescription "Editor de gráficos vectoriales escalables (SVG) de código abierto"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) se publica bajo la Licencia Pública General GNU (GPL). Esta licencia se muestra aquí solamente como información. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape ha sido instalado por el usuario $0.$\r$\nSi continúa, la operación podría finalizar sin éxito.$\r$\nInicie sesión como $0 y vuelva a intentarlo."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 ya ha sido instalado. $\n¿Desea eliminar la versión anterior antes de instalar $(^Name) ?"
${LangFileString} OK_CANCEL_DESC "$\n$\nPulse Aceptar para continuar o Cancelar para terminar."
-${LangFileString} NO_ADMIN "No dispone de privilegios de administrador.$\r$\nLa instalación de Inkscape para todos los usuarios podría terminar sin éxito.$\r$\ndesmarque la casilla «para todos los usuarios»."
-${LangFileString} NOT_SUPPORTED "Inkscape no se ejecuta correctamente en Windows 95/98/ME$\r$\nAcceda a la página web oficial si desea obtener más información."
+${LangFileString} NO_ADMIN "No dispone de privilegios de administrador.$\r$\nLa instalación de Inkscape para todos los usuarios podría terminar sin éxito.$\r$\ndesmarque la casilla «para todos los usuarios»."
+${LangFileString} NOT_SUPPORTED "Inkscape no se ejecuta correctamente en Windows 95/98/ME$\r$\nAcceda a la página web oficial si desea obtener más información."
${LangFileString} Full "Completa"
-${LangFileString} Optimal "Óptima"
-${LangFileString} Minimal "Mínima"
+${LangFileString} Optimal "Óptima"
+${LangFileString} Minimal "Mínima"
${LangFileString} Core "Inkscape Editor SVG (requerido)"
-${LangFileString} CoreDesc "Archivos Inkscape básicos y dlls"
+${LangFileString} CoreDesc "Archivos Inkscape básicos y dlls"
${LangFileString} GTKFiles "GTK+ Runtime Environment (requerido)"
${LangFileString} GTKFilesDesc "Un conjunto de herramientas GUI, utilizado por Inkscape"
${LangFileString} Shortcuts "Acceso directo"
${LangFileString} ShortcutsDesc "Accesos directos para iniciar Inkscape"
${LangFileString} Alluser "para todos los usuarios"
-${LangFileString} AlluserDesc "Instalar esta aplicación para todos los que utilizan este equipo (todos los usuarios)"
+${LangFileString} AlluserDesc "Instalar esta aplicación para todos los que utilizan este equipo (todos los usuarios)"
${LangFileString} Desktop "Escritorio"
${LangFileString} DesktopDesc "Crear un acceso directo a Inkscape en el escritorio"
-${LangFileString} Startmenu "Menú Inicio"
-${LangFileString} StartmenuDesc "Crear una entrada en el menú Inicio para Inkscape"
-${LangFileString} Quicklaunch "Acceso rápido"
-${LangFileString} QuicklaunchDesc "Crear un acceso directo a Inkscape en la barra de acceso rápido"
+${LangFileString} Startmenu "Menú Inicio"
+${LangFileString} StartmenuDesc "Crear una entrada en el menú Inicio para Inkscape"
+${LangFileString} Quicklaunch "Acceso rápido"
+${LangFileString} QuicklaunchDesc "Crear un acceso directo a Inkscape en la barra de acceso rápido"
${LangFileString} SVGWriter "Abrir archivos SVG con Inkscape"
${LangFileString} SVGWriterDesc "Seleccionar Inkscape como editor predeterminado para archivos"
-${LangFileString} ContextMenu "Menú contextual"
-${LangFileString} ContextMenuDesc "Añadir Inkscape al menú contextual para archivos SVG"
+${LangFileString} ContextMenu "Menú contextual"
+${LangFileString} ContextMenuDesc "Añadir Inkscape al menú contextual para archivos SVG"
${LangFileString} DeletePrefs "Eliminar preferencias personales"
${LangFileString} DeletePrefsDesc "Eliminar las preferencias personales restantes de instalaciones anteriores."
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
${LangFileString} Addfiles "Archivos adicionales"
${LangFileString} AddfilesDesc "Archivos adicionales"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
${LangFileString} Examples "Ejemplos"
${LangFileString} ExamplesDesc "Ejemplos de uso de Inkscape"
${LangFileString} Tutorials "Tutoriales"
${LangFileString} TutorialsDesc "Tutoriales del uso de Inkscape"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
${LangFileString} Languages "Traducciones"
${LangFileString} LanguagesDesc "Instalar varias traducciones para Inkscape"
-${LangFileString} lng_am "Amárico"
-${LangFileString} lng_ar "Árabe"
-${LangFileString} lng_az "Azerbayano"
-${LangFileString} lng_be "Bielorruso"
-${LangFileString} lng_bg "Búlgaro"
-${LangFileString} lng_bn "Bengalí"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "Bretón"
-${LangFileString} lng_ca "Catalán"
-${LangFileString} lng_ca@valencia "Valenciano"
-${LangFileString} lng_cs "Checo"
-${LangFileString} lng_da "Dané"
-${LangFileString} lng_de "Alemán"
-${LangFileString} lng_dz "Dzongkha"
-${LangFileString} lng_el "Griego"
-${LangFileString} lng_en "Inglés"
-${LangFileString} lng_en_AU "Inglés australiano"
-${LangFileString} lng_en_CA "Inglés canadiense"
-${LangFileString} lng_en_GB "Inglés británico"
-${LangFileString} lng_en_US@piglatin "Pig Latin"
-${LangFileString} lng_eo "Esperanto"
-${LangFileString} lng_es "Español"
-${LangFileString} lng_es_MX "Español mexicano"
-${LangFileString} lng_et "Estonio"
-${LangFileString} lng_eu "Euskera"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "Finés"
-${LangFileString} lng_fr "Francés"
-${LangFileString} lng_ga "Irlandés"
-${LangFileString} lng_gl "Galego"
-${LangFileString} lng_he "Hebreo"
-${LangFileString} lng_hr "Croata"
-${LangFileString} lng_hu "Húngaro"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "Indonesio"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "Italiano"
-${LangFileString} lng_ja "Japonés"
-${LangFileString} lng_km "Jemer"
-${LangFileString} lng_ko "Coreano"
-${LangFileString} lng_lt "Lituano"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "Macedonio"
-${LangFileString} lng_mn "Mongol"
-${LangFileString} lng_ne "Nepalí"
-${LangFileString} lng_nb "Bokmål noruego"
-${LangFileString} lng_nl "Holandés"
-${LangFileString} lng_nn "Nynorsk noruego"
-${LangFileString} lng_pa "Punyabi"
-${LangFileString} lng_pl "Polaco"
-${LangFileString} lng_pt "Portugués"
-${LangFileString} lng_pt_BR "Portugués brasileño"
-${LangFileString} lng_ro "Rumano"
-${LangFileString} lng_ru "Ruso"
-${LangFileString} lng_rw "Kinyarwanda"
-${LangFileString} lng_sk "Eslovaco"
-${LangFileString} lng_sl "Esloveno"
-${LangFileString} lng_sq "Albano"
-${LangFileString} lng_sr "Serbio"
-${LangFileString} lng_sr@latin "Serbio en escritura latina"
-${LangFileString} lng_sv "Sueco"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Tai"
-${LangFileString} lng_tr "Turco"
-${LangFileString} lng_uk "Ucranio"
-${LangFileString} lng_vi "Vietnamita"
-${LangFileString} lng_zh_CN "Chino simplificado"
-${LangFileString} lng_zh_TW "Chino taiwanés"
-${LangFileString} UInstOpt "Opciones de desinstalación"
+${LangFileString} UInstOpt "Opciones de desinstalación"
${LangFileString} UInstOpt1 "Elija sus opciones adicionales"
${LangFileString} PurgePrefs "Guardar las preferencias personales"
${LangFileString} UninstallLogNotFound "No se ha encontrado $INSTDIR\uninstall.log.$\r$\nDesinstale limpiando el directorio $INSTDIR."
-${LangFileString} FileChanged "El archivo $filename ha sido cambiado después de la instalación.$\r$\n¿Está seguro de que desea eliminar este archivo?"
-${LangFileString} Yes "Sí"
-${LangFileString} AlwaysYes "siempre responder Sí"
+${LangFileString} FileChanged "El archivo $filename ha sido cambiado después de la instalación.$\r$\n¿Está seguro de que desea eliminar este archivo?"
+${LangFileString} Yes "Sí"
+${LangFileString} AlwaysYes "siempre responder Sí"
${LangFileString} No "No"
${LangFileString} AlwaysNo "siempre responder No"
diff --git a/packaging/win32/languages/Spanish_languageNames.nsh b/packaging/win32/languages/Spanish_languageNames.nsh
new file mode 100644
index 000000000..b904bae9e
--- /dev/null
+++ b/packaging/win32/languages/Spanish_languageNames.nsh
@@ -0,0 +1,94 @@
+### Spanish (es) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Spanish.nsh'
+${LangFileString} lng_am "Amárico (am)"
+${LangFileString} lng_ar "Ãrabe (ar)"
+${LangFileString} lng_as "Asamés (as)"
+${LangFileString} lng_az "Azerbayano (az)"
+${LangFileString} lng_be "Bielorruso (be) "
+${LangFileString} lng_bg "Búlgaro (bg)"
+${LangFileString} lng_bn "Bengalí (bn)"
+${LangFileString} lng_bn_BD "Bengalí/Bangladesh (bn_BD)"
+${LangFileString} lng_br "Bretón (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "Catalán (ca)"
+${LangFileString} lng_ca@valencia "Valenciano (ca@valencia)"
+${LangFileString} lng_cs "Checo (cs)"
+${LangFileString} lng_da "Danés (da)"
+${LangFileString} lng_de "Alemán (de)"
+${LangFileString} lng_doi "Dogri (doi)"
+${LangFileString} lng_dz "Dzongkha (dz)"
+${LangFileString} lng_el "Griego (el)"
+${LangFileString} lng_en "Inglés (en)"
+${LangFileString} lng_en_AU "Inglés/Australia (en_AU)"
+${LangFileString} lng_en_CA "Inglés/Canada (en_CA)"
+${LangFileString} lng_en_GB "Inglés/Gran Bretaña (en_GB)"
+${LangFileString} lng_en_US@piglatin "Galimatías - Pig Latin (en_US@piglatin)"
+${LangFileString} lng_eo "Esperanto (eo)"
+${LangFileString} lng_es "Español (es)"
+${LangFileString} lng_es_MX "Español/México (es_MX)"
+${LangFileString} lng_et "Estonio (et)"
+${LangFileString} lng_eu "Euskera (eu)"
+${LangFileString} lng_fa "Farsi (fa)"
+${LangFileString} lng_fi "Finés (fi)"
+${LangFileString} lng_fr "Francés (fr)"
+${LangFileString} lng_ga "Irlandés (ga)"
+${LangFileString} lng_gl "Gallego (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "Hebreo (he)"
+${LangFileString} lng_hi "Hindi (hi)"
+${LangFileString} lng_hr "Croata (hr)"
+${LangFileString} lng_hu "Húngaro (hu)"
+${LangFileString} lng_hy "Armenio (hy)"
+${LangFileString} lng_id "Indonesio (id)"
+${LangFileString} lng_is "Islandés (is)"
+${LangFileString} lng_it "Italiano (it)"
+${LangFileString} lng_ja "Japonés (ja)"
+${LangFileString} lng_km "Jemer (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "Coreano (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani en escritura latina (kok@latin)"
+${LangFileString} lng_ks@aran "Cachemiro en escritura Perso-Arábica (ks@aran)"
+${LangFileString} lng_ks@deva "Cachemiro en escritura Devanagari (ks@deva)"
+${LangFileString} lng_lt "Lituano (lt)"
+${LangFileString} lng_lv "Letón (lv)"
+${LangFileString} lng_mai "Maithili (mai)"
+${LangFileString} lng_mk "Macedonio (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "Mongol (mn)"
+${LangFileString} lng_mni "Manipuri (mni)"
+${LangFileString} lng_mni@beng "Manipuri en escritura Bengalí (mni@beng)"
+${LangFileString} lng_mr "Marathi (mr)"
+${LangFileString} lng_nb "Noruego Bokmål (nb)"
+${LangFileString} lng_ne "Nepalí (ne)"
+${LangFileString} lng_nl "Holandés (nl)"
+${LangFileString} lng_nn "Noruego Nynorsk (nn)"
+${LangFileString} lng_or "Odia (or)"
+${LangFileString} lng_pa "Panjabí (pa)"
+${LangFileString} lng_pl "Polaco (pl)"
+${LangFileString} lng_pt "Portugués (pt)"
+${LangFileString} lng_pt_BR "Portugués brasileño (pt_BR)"
+${LangFileString} lng_ro "Rumano (ro)"
+${LangFileString} lng_ru "Ruso (ru)"
+${LangFileString} lng_rw "Kinyarwanda (rw)"
+${LangFileString} lng_sa "Sánscrito (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali en escritura Devanagari (sat@deva)"
+${LangFileString} lng_sd "Sindhi (sd)"
+${LangFileString} lng_sd@deva "Sindhi en escritura Devanagari (sd@deva)"
+${LangFileString} lng_sk "Eslovaco (sk)"
+${LangFileString} lng_sl "Esloveno (sl)"
+${LangFileString} lng_sq "Albanés (sq)"
+${LangFileString} lng_sr "Serbio (sr)"
+${LangFileString} lng_sr@latin "Serbio en escritura latina (sr@latin)"
+${LangFileString} lng_sv "Sueco (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "Telugu (te)"
+${LangFileString} lng_th "Thai (th)"
+${LangFileString} lng_tr "Turco (tr)"
+${LangFileString} lng_uk "Ukranio (uk)"
+${LangFileString} lng_ur "Urdu (ur)"
+${LangFileString} lng_vi "Vietnamita (vi)"
+${LangFileString} lng_zh_CN "Chino/China (zh_CN)"
+${LangFileString} lng_zh_TW "Chino/Taiwán (zh_TW)"
diff --git a/packaging/win32/languages/TradChinese.nsh b/packaging/win32/languages/TradChinese.nsh
index d38e6a872..38d017949 100644
--- a/packaging/win32/languages/TradChinese.nsh
+++ b/packaging/win32/languages/TradChinese.nsh
@@ -1,117 +1,55 @@
-;Language: Traditional Chinese (1028, CP950)
+;Language: Traditional Chinese (1028)
;By Dong-Jun Wu <ziyawu@gmail.com>
-${LangFileString} CaptionDescription "¶}©ñ­ì©l½X¦V¶qø¹Ï³nÅé"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) ¬O¥H GNU ³q¥Î¤½¦@³\¥iÃÒ (GPL) µo¦æ¡C ³o¸Ì´£¨Ñªº³\¥iÃҶȬ°°Ñ¦Ò°T®§¡C $_CLICK"
-${LangFileString} DIFFERENT_USER "¨Ï¥ÎªÌ $0 ¤w¸g¦w¸Ë Inkscape¡C$\r$\n¦pªGÄ~Äò§A¥i¯àµLªk¦¨¥\§¹¦¨¡I$\r$\n½Ð¥H $0 ¨­¥÷µn¤J«á¦A¸Õ¤@¦¸¡C"
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 ¤w¸g¦w¸Ë¡C $\n§A­n¦b¦w¸Ë $(^Name) ¤§«e²¾°£¤W¤@­Óª©¥»¡H"
-${LangFileString} OK_CANCEL_DESC "$\n$\n«ö¡u½T©w¡vÄ~Äò©ÎªÌ«ö¡u¨ú®ø¡v¤¤¤î¡C"
-${LangFileString} NO_ADMIN "§A¨S¦³¨t²ÎºÞ²z­ûÅv­­¡C$\r$\n¦w¸Ë Inkscape ¨ì©Ò¦³¨Ï¥ÎªÌ¥i¯àµLªk¦¨¥\§¹¦¨¡C$\r$\n¨ú®ø¤Ä¿ï¡u¦w¸Ëµ¹©Ò¦³¨Ï¥ÎªÌ¡v¿ï¶µ."
-${LangFileString} NOT_SUPPORTED "Inkscape µLªk©ó Windows 95/98/ME ¤U¹B¦æ!$\r$\n½Ð¬d¬Ý©x¤èºô¯¸ªº¸Ô²Ó«H®§¡C"
-${LangFileString} Full "§¹¾ã"
-${LangFileString} Optimal "²z·Q"
-${LangFileString} Minimal "³Ì¤p"
-${LangFileString} Core "Inkscape SVG ½s¿èµ{¦¡(¥²¶·)"
-${LangFileString} CoreDesc "Inkscape ®Ö¤ßÀɮשM DLL ÀÉ"
-${LangFileString} GTKFiles "GTK+ °õ¦æÀô¹Ò(¥²¶·)"
-${LangFileString} GTKFilesDesc "Inkscape ¨Ï¥Îªº¸ó¥­¥x GUI ¤u¨ã²Õ"
-${LangFileString} Shortcuts "±¶®|"
-${LangFileString} ShortcutsDesc "±Ò°Ê Inkscape ªº±¶®|"
-${LangFileString} Alluser "¦w¸Ëµ¹©Ò¦³¨Ï¥ÎªÌ"
-${LangFileString} AlluserDesc "¦w¸Ë³o­ÓÀ³¥Îµ{¦¡µ¹¥ô¦ó¨Ï¥Î³o¥x¹q¸£ªº¤H(©Ò¦³¨Ï¥ÎªÌ)"
-${LangFileString} Desktop "®à­±"
-${LangFileString} DesktopDesc "©ó®à­±¤W«Ø¥ß Inkscape ±¶®|"
-${LangFileString} Startmenu "¶}©l¥\¯àªí"
-${LangFileString} StartmenuDesc "©ó¶}©l¥\¯àªí«Ø¥ß Inkscape ¶µ¥Ø"
-${LangFileString} Quicklaunch "§Ö³t±Ò°Ê"
-${LangFileString} QuicklaunchDesc "©ó§Ö³t±Ò°Ê¦C«Ø¥ß Inkscape ±¶®|"
-${LangFileString} SVGWriter "¥Î Inkscape ¶}±Ò SVG ÀÉ"
-${LangFileString} SVGWriterDesc "¿ï¾Ü Inkscape §@¬° SVG Àɪº¹w³]½s¿èµ{¦¡"
-${LangFileString} ContextMenu "¥kÁä¥\¯àªí"
-${LangFileString} ContextMenuDesc "·s¼W Inkscape ¨ì SVG Àɪº¥kÁä¥\¯àªí"
-${LangFileString} DeletePrefs "§R°£­Ó¤H°¾¦n³]©w"
-${LangFileString} DeletePrefsDesc "§R°£¤W¤@¦¸¦w¸Ë¿ò¯dªº­Ó¤H°¾¦n³]©w"
-${LangFileString} Addfiles "¨ä¥LÀÉ®×"
-${LangFileString} AddfilesDesc "¨ä¥LÀÉ®×"
-${LangFileString} Examples "½d¨Ò"
-${LangFileString} ExamplesDesc "Inkscape ¨Ï¥Î½d¨Ò"
-${LangFileString} Tutorials "«ü¾É¤â¥U"
-${LangFileString} TutorialsDesc "Inkscape ¨Ï¥Î±Ð¾Ç"
-${LangFileString} Languages "»y¨¥"
-${LangFileString} LanguagesDesc "¦w¸Ë Inkscape ¦UºØ»y¨¥Â½Ä¶"
-${LangFileString} lng_am "ªü¤ñ¦è¥§¨È»y"
-${LangFileString} lng_ar "ªü©Ô§B»y"
-${LangFileString} lng_az "¨È¶ë«ôµM»y"
-${LangFileString} lng_be "¥Õ«Xù´µ»y"
-${LangFileString} lng_bg "«O¥[§Q¨È»y"
-${LangFileString} lng_bn "©s¥[©Ô»y"
-${LangFileString} lng_bn_BD "Bengali Bangladesh"
-${LangFileString} lng_br "¤£¦C¶ð¥§»y"
-${LangFileString} lng_ca "¥[®õ¶©»y"
-${LangFileString} lng_ca@valencia "¥Ë­Û¦è¨È»y ¥[®õù¥§¨È»y"
-${LangFileString} lng_cs "±¶§J»y"
-${LangFileString} lng_da "¤¦³Á»y"
-${LangFileString} lng_de "¼w»y"
-${LangFileString} lng_dz "©v¥d»y"
-${LangFileString} lng_el "§ÆÃ¾»y"
-${LangFileString} lng_en "­^»y"
-${LangFileString} lng_en_AU "­^»y(¿D¤j§Q¨È)"
-${LangFileString} lng_en_CA "­^»y(¥[®³¤j)"
-${LangFileString} lng_en_GB "­^»y(¤£¦CÄA)"
-${LangFileString} lng_en_US@piglatin "½Þ©Ô¤B»y"
-${LangFileString} lng_eo "¥@¬É»y"
-${LangFileString} lng_es "¦è¯Z¤ú¤å"
-${LangFileString} lng_es_MX "¦è¯Z¤ú»y(¾¥¦è­ô)"
-${LangFileString} lng_et "·R¨F¥§¨È»y"
-${LangFileString} lng_eu "¤Ú´µ§J»y"
-${LangFileString} lng_fa "Farsi"
-${LangFileString} lng_fi "ªâÄõ»y"
-${LangFileString} lng_fr "ªk¤å"
-${LangFileString} lng_ga "·Rº¸Äõ»y"
-${LangFileString} lng_gl "¥[¨½¦è¨È»y"
-${LangFileString} lng_he "§Æ§B¨Ó»y"
-${LangFileString} lng_hr "§Jù®J¦è¨È»y"
-${LangFileString} lng_hu "¦I¤ú§Q»y"
-${LangFileString} lng_hy "Armenian"
-${LangFileString} lng_id "¦L¥§»y"
-${LangFileString} lng_is "Icelandic"
-${LangFileString} lng_it "¸q¤j§Q¤å"
-${LangFileString} lng_ja "¤é¤å"
-${LangFileString} lng_km "°ª´Ö»y"
-${LangFileString} lng_ko "Áú¤å"
-${LangFileString} lng_lt "¥ß³³©{»y"
-${LangFileString} lng_lv "Latvian"
-${LangFileString} lng_mk "°¨¨ä¹y»y"
-${LangFileString} lng_mn "»X¥j»y"
-${LangFileString} lng_ne "¥§ªyº¸»y"
-${LangFileString} lng_nb "®¿«Â Bokmal »y"
-${LangFileString} lng_nl "²üÄõ»y"
-${LangFileString} lng_nn "®¿«Â Nynorsk »y"
-${LangFileString} lng_pa "®Ç¾B´¶»y"
-${LangFileString} lng_pl "ªiÄõ»y"
-${LangFileString} lng_pt "¸²µå¤ú¤å"
-${LangFileString} lng_pt_BR "¸²µå¤ú¤å(¤Ú¦è)"
-${LangFileString} lng_ro "ù°¨¥§¨È»y"
-${LangFileString} lng_ru "«X¤å"
-${LangFileString} lng_rw "ª÷¨È¿c¦w¹F»y"
-${LangFileString} lng_sk "´µ¬¥ªk§J»y"
-${LangFileString} lng_sl "´µ¬¥¤Z¥§¨È»y"
-${LangFileString} lng_sq "ªüº¸¤Ú¥§¨È»y"
-${LangFileString} lng_sr "Áɺ¸ºû¨È»y"
-${LangFileString} lng_sr@latin "¶ëº¸ºû¨È¤å-©Ô¤B"
-${LangFileString} lng_sv "·ç¨å»y"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "®õ»y"
-${LangFileString} lng_tr "¤g¦Õ¨ä»y"
-${LangFileString} lng_uk "¯Q§JÄõ»y"
-${LangFileString} lng_vi "¶V«n¸Ü"
-${LangFileString} lng_zh_CN "²Å餤¤å"
-${LangFileString} lng_zh_TW "ÁcÅ餤¤å"
-${LangFileString} UInstOpt "¤Ï¦w¸Ë¿ï¶µ"
-${LangFileString} UInstOpt1 "½Ð¿ï¾Ü¨ä¥L¿ï¶µ"
-${LangFileString} PurgePrefs "«O¯d­Ó¤H°¾¦n³]©w"
-${LangFileString} UninstallLogNotFound "¨S¦³§ä¨ì $INSTDIR\uninstall.log ¡I$\r$\n½Ð¦Û¦æ²M°£ $INSTDIR ¸ê®Æ§¨¨Ó¤Ï¦w¸Ë¡I"
-${LangFileString} FileChanged "¦w¸Ë«á $filename ÀɮפwÅܧó¡C$\r$\n§A¬O§_¤´µM­n§R°£¨º­ÓÀɮסH"
-${LangFileString} Yes "¬O"
-${LangFileString} AlwaysYes "¥þ³¡¬Ò¬O"
-${LangFileString} No "§_"
-${LangFileString} AlwaysNo "¥þ³¡¬Ò§_"
+${LangFileString} CaptionDescription "開放原始碼å‘é‡ç¹ªåœ–軟體"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) 是以 GNU 通用公共許å¯è­‰ (GPL) 發行。 這裡æä¾›çš„許å¯è­‰åƒ…為åƒè€ƒè¨Šæ¯ã€‚ $_CLICK"
+${LangFileString} DIFFERENT_USER "使用者 $0 å·²ç¶“å®‰è£ Inkscape。$\r$\n如果繼續你å¯èƒ½ç„¡æ³•æˆåŠŸå®Œæˆï¼$\r$\n請以 $0 身份登入後å†è©¦ä¸€æ¬¡ã€‚"
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 已經安è£ã€‚ $\nä½ è¦åœ¨å®‰è£ $(^Name) 之å‰ç§»é™¤ä¸Šä¸€å€‹ç‰ˆæœ¬ï¼Ÿ"
+${LangFileString} OK_CANCEL_DESC "$\n$\n按「確定ã€ç¹¼çºŒæˆ–è€…æŒ‰ã€Œå–æ¶ˆã€ä¸­æ­¢ã€‚"
+${LangFileString} NO_ADMIN "你沒有系統管ç†å“¡æ¬Šé™ã€‚$\r$\nå®‰è£ Inkscape 到所有使用者å¯èƒ½ç„¡æ³•æˆåŠŸå®Œæˆã€‚$\r$\nå–æ¶ˆå‹¾é¸ã€Œå®‰è£çµ¦æ‰€æœ‰ä½¿ç”¨è€…ã€é¸é …."
+${LangFileString} NOT_SUPPORTED "Inkscape 無法於 Windows 95/98/ME 下é‹è¡Œ!$\r$\n請查看官方網站的詳細信æ¯ã€‚"
+${LangFileString} Full "完整"
+${LangFileString} Optimal "ç†æƒ³"
+${LangFileString} Minimal "最å°"
+${LangFileString} Core "Inkscape SVG 編輯程å¼(å¿…é ˆ)"
+${LangFileString} CoreDesc "Inkscape 核心檔案和 DLL 檔"
+${LangFileString} GTKFiles "GTK+ 執行環境(必須)"
+${LangFileString} GTKFilesDesc "Inkscape ä½¿ç”¨çš„è·¨å¹³å° GUI 工具組"
+${LangFileString} Shortcuts "æ·å¾‘"
+${LangFileString} ShortcutsDesc "啟動 Inkscape çš„æ·å¾‘"
+${LangFileString} Alluser "安è£çµ¦æ‰€æœ‰ä½¿ç”¨è€…"
+${LangFileString} AlluserDesc "安è£é€™å€‹æ‡‰ç”¨ç¨‹å¼çµ¦ä»»ä½•使用這å°é›»è…¦çš„人(所有使用者)"
+${LangFileString} Desktop "桌é¢"
+${LangFileString} DesktopDesc "於桌é¢ä¸Šå»ºç«‹ Inkscape æ·å¾‘"
+${LangFileString} Startmenu "開始功能表"
+${LangFileString} StartmenuDesc "於開始功能表建立 Inkscape 項目"
+${LangFileString} Quicklaunch "快速啟動"
+${LangFileString} QuicklaunchDesc "於快速啟動列建立 Inkscape æ·å¾‘"
+${LangFileString} SVGWriter "用 Inkscape 開啟 SVG 檔"
+${LangFileString} SVGWriterDesc "鏿“‡ Inkscape 作為 SVG 檔的é è¨­ç·¨è¼¯ç¨‹å¼"
+${LangFileString} ContextMenu "å³éµåŠŸèƒ½è¡¨"
+${LangFileString} ContextMenuDesc "新增 Inkscape 到 SVG 檔的å³éµåŠŸèƒ½è¡¨"
+${LangFileString} DeletePrefs "刪除個人å好設定"
+${LangFileString} DeletePrefsDesc "刪除上一次安è£éºç•™çš„個人å好設定"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "An interpreter for the Python programming language and Python modules required to run Inkscape extensions."
+${LangFileString} Addfiles "其他檔案"
+${LangFileString} AddfilesDesc "其他檔案"
+${LangFileString} Extensions "Extensions"
+${LangFileString} ExtensionsDesc "Inkscape extensions (including many import and export plugins)"
+${LangFileString} Examples "範例"
+${LangFileString} ExamplesDesc "Inkscape 使用範例"
+${LangFileString} Tutorials "指導手冊"
+${LangFileString} TutorialsDesc "Inkscape 使用教學"
+${LangFileString} Dictionaries "Dictionaries"
+${LangFileString} DictionariesDesc "Dictionaries for some common languages for spell checking in Inkscape"
+${LangFileString} Languages "語言"
+${LangFileString} LanguagesDesc "å®‰è£ Inkscape å„種語言翻譯"
+${LangFileString} UInstOpt "å安è£é¸é …"
+${LangFileString} UInstOpt1 "è«‹é¸æ“‡å…¶ä»–é¸é …"
+${LangFileString} PurgePrefs "ä¿ç•™å€‹äººå好設定"
+${LangFileString} UninstallLogNotFound "沒有找到 $INSTDIR\uninstall.log ï¼$\r$\n請自行清除 $INSTDIR 資料夾來å安è£ï¼"
+${LangFileString} FileChanged "安è£å¾Œ $filename 檔案已變更。$\r$\n你是å¦ä»ç„¶è¦åˆªé™¤é‚£å€‹æª”案?"
+${LangFileString} Yes "是"
+${LangFileString} AlwaysYes "全部皆是"
+${LangFileString} No "å¦"
+${LangFileString} AlwaysNo "全部皆å¦"
diff --git a/packaging/win32/languages/TradChinese_languageNames.nsh b/packaging/win32/languages/TradChinese_languageNames.nsh
new file mode 100644
index 000000000..6d1a66954
--- /dev/null
+++ b/packaging/win32/languages/TradChinese_languageNames.nsh
@@ -0,0 +1,94 @@
+### Chinese/Taiwan (zh_TW) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'TradChinese.nsh'
+${LangFileString} lng_am "阿比西尼亞語 (am)"
+${LangFileString} lng_ar "阿拉伯語 (ar)"
+${LangFileString} lng_as "Assamese (as)"
+${LangFileString} lng_az "亞塞拜然語 (az)"
+${LangFileString} lng_be "白俄羅斯語 (be)"
+${LangFileString} lng_bg "ä¿åŠ åˆ©äºžèªž (bg)"
+${LangFileString} lng_bn "孟加拉語 (bn)"
+${LangFileString} lng_bn_BD "孟加拉語 / 西孟加拉 (bn)"
+${LangFileString} lng_br "ä¸åˆ—塔尼語 (br)"
+${LangFileString} lng_brx "Bodo (brx)"
+${LangFileString} lng_ca "åŠ é”æœ—語 (ca)"
+${LangFileString} lng_ca@valencia "瓦倫西亞語 加泰羅尼亞語 (ca@valencia)"
+${LangFileString} lng_cs "æ·å…‹èªž (cs)"
+${LangFileString} lng_da "丹麥語 (da)"
+${LangFileString} lng_de "德語 (de)"
+${LangFileString} lng_doi "多格èŠèªž (doi)"
+${LangFileString} lng_dz "å®—å¡èªž (dz)"
+${LangFileString} lng_el "希臘語 (el)"
+${LangFileString} lng_en "英語 (en)"
+${LangFileString} lng_en_AU "英語/澳大利亞 (en_AU)"
+${LangFileString} lng_en_CA "英語 / 加拿大 (en_CA)"
+${LangFileString} lng_en_GB "英語 / 大ä¸åˆ—é¡› (en_GB)"
+${LangFileString} lng_en_US@piglatin "兒童黑話 (en_US@piglatin)"
+${LangFileString} lng_eo "世界語 (eo)"
+${LangFileString} lng_es "西ç­ç‰™èªž (es)"
+${LangFileString} lng_es_MX "西ç­ç‰™èªž / 墨西哥 (es_MX)"
+${LangFileString} lng_et "愛沙尼亞語 (et)"
+${LangFileString} lng_eu "巴斯克語 (eu)"
+${LangFileString} lng_fa "波斯語 (fa)"
+${LangFileString} lng_fi "芬蘭語 (fi)"
+${LangFileString} lng_fr "法語 (fr)"
+${LangFileString} lng_ga "愛爾蘭語 (ga)"
+${LangFileString} lng_gl "加裡西亞語 (gl)"
+${LangFileString} lng_gu "Gujarati (gu)"
+${LangFileString} lng_he "希伯來語 (he)"
+${LangFileString} lng_hi "å°åœ°èªž (hi)"
+${LangFileString} lng_hr "克羅埃西亞語 (hr)"
+${LangFileString} lng_hu "匈牙利語 (hu)"
+${LangFileString} lng_hy "亞美尼亞語 (hy)"
+${LangFileString} lng_id "å°å°¼èªž (id)"
+${LangFileString} lng_is "冰島語 (is)"
+${LangFileString} lng_it "義大利語 (it)"
+${LangFileString} lng_ja "日文 (ja)"
+${LangFileString} lng_km "高棉語 (km)"
+${LangFileString} lng_kn "Kannada (kn)"
+${LangFileString} lng_ko "韓語 (ko)"
+${LangFileString} lng_kok "Konkani (kok)"
+${LangFileString} lng_kok@latin "Konkani in Latin script (kok@latin)"
+${LangFileString} lng_ks@aran "Kashmiri in Perso-Arabic script (ks@aran)"
+${LangFileString} lng_ks@deva "迪瓦那格里書寫體喀什米爾語 (ks@deva)"
+${LangFileString} lng_lt "立陶宛語 (lt)"
+${LangFileString} lng_lv "拉脫維亞語 (lv)"
+${LangFileString} lng_mai "é‚蒂利語 (mai)"
+${LangFileString} lng_mk "馬其頓語 (mk)"
+${LangFileString} lng_ml "Malayalam (ml)"
+${LangFileString} lng_mn "è’™å¤èªž (mn)"
+${LangFileString} lng_mni "曼尼普爾語 (mni)"
+${LangFileString} lng_mni@beng "孟加拉書寫體曼尼普爾語 (mni@beng)"
+${LangFileString} lng_mr "馬拉æèªž (mr)"
+${LangFileString} lng_nb "æŒªå¨ BokmÃ¥l 語 (nb)"
+${LangFileString} lng_ne "尼泊爾語 (ne)"
+${LangFileString} lng_nl "è·è˜­èªž (nl)"
+${LangFileString} lng_nn "æŒªå¨ Nynorsk 語 (nn)"
+${LangFileString} lng_or "æ­åˆ©äºžèªž (or)"
+${LangFileString} lng_pa "æ—鮿™®èªž (pa)"
+${LangFileString} lng_pl "波蘭語 (pl)"
+${LangFileString} lng_pt "è‘¡è„牙語 (pt)"
+${LangFileString} lng_pt_BR "è‘¡è„牙語 / 巴西 (pt_BR)"
+${LangFileString} lng_ro "羅馬尼亞語 (ro)"
+${LangFileString} lng_ru "ä¿„æ–‡ (ru)"
+${LangFileString} lng_rw "金亞盧安é”語 (rw)"
+${LangFileString} lng_sa "梵語 (sa)"
+${LangFileString} lng_sat "Santali (sat)"
+${LangFileString} lng_sat@deva "Santali in Devanagari script (sat@deva)"
+${LangFileString} lng_sd "信德語 (sd)"
+${LangFileString} lng_sd@deva "Sindhi in Devanagari script (sd@deva)"
+${LangFileString} lng_sk "斯洛法克語 (sk)"
+${LangFileString} lng_sl "斯洛凡尼亞語 (sl)"
+${LangFileString} lng_sq "阿爾巴尼亞語 (sq)"
+${LangFileString} lng_sr "賽爾維亞語 (sr)"
+${LangFileString} lng_sr@latin "塞爾維亞文 - æ‹‰ä¸ (sr@latin)"
+${LangFileString} lng_sv "瑞典語 (sv)"
+${LangFileString} lng_ta "Tamil (ta)"
+${LangFileString} lng_te "泰盧固語 (te)"
+${LangFileString} lng_th "泰語 (th)"
+${LangFileString} lng_tr "土耳其語 (tr)"
+${LangFileString} lng_uk "çƒå…‹è˜­èªž (uk)"
+${LangFileString} lng_ur "çƒçˆ¾éƒ½èªž (ur)"
+${LangFileString} lng_vi "è¶Šå—話 (vi)"
+${LangFileString} lng_zh_CN "中文 / 中國 (zh_CN)"
+${LangFileString} lng_zh_TW "中文 / è‡ºç£ (zh_TW)"
diff --git a/packaging/win32/languages/Ukrainian.nsh b/packaging/win32/languages/Ukrainian.nsh
index ee5dfbf1f..a1c6c1d1f 100644
--- a/packaging/win32/languages/Ukrainian.nsh
+++ b/packaging/win32/languages/Ukrainian.nsh
@@ -1,117 +1,55 @@
-;Language: Ukrainian (1058, CP1251)
+;Language: Ukrainian (1058)
;By Yuri Chornoivan <yurchor@ukr.net>
-${LangFileString} CaptionDescription "Ðåäàêòîð âåêòîðíî¿ ãðàô³êè ç â³äêðèòèìè âèõ³äíèìè êîäàìè"
-${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) âèïóùåíî çà óìîâ äîòðèìàííÿ GNU General Public License (GPL). Ôàéë ë³öåí糿 íàâåäåíî ëèøå ç äîâ³äêîâîþ ìåòîþ. $_CLICK"
-${LangFileString} DIFFERENT_USER "Inkscape áóëî âñòàíîâëåíî êîðèñòóâà÷åì $0.$\r$\nßêùî âè ïðîäîâæèòå âèêîíàííÿ 䳿, ìîæëèâ³ íåáàæàí³ íàñë³äêè!$\r$\nÁóäü ëàñêà, óâ³éä³òü äî ñèñòåìè â³ä ³ìåí³ $0 ³ ïîâòîð³òü ñïðîáó."
-${LangFileString} WANT_UNINSTALL_BEFORE "$R1 âæå âñòàíîâëåíî. $\nÁàæàºòå âèëó÷èòè ïîïåðåäíþ âåðñ³þ äî âñòàíîâëåííÿ $(^Name)?"
-${LangFileString} OK_CANCEL_DESC "$\n$\nÍàòèñí³òü «Ãàðàçä», ùîá ïðîäîâæèòè àáî «Ñêàñóâàòè», ùîá ïåðåðâàòè ä³þ."
-${LangFileString} NO_ADMIN "Ó âàñ íåìຠïðàâ äîñòóïó àäì³í³ñòðàòîðà.$\r$\nÌîæëèâî, Inkscape íå âäàñòüñÿ âñòàíîâèòè äëÿ âñ³õ êîðèñòóâà÷³â ñèñòåìè.$\r$\nÇí³ì³òü ïîçíà÷êó ç ïóíêòó «Âñòàíîâèòè äëÿ âñ³õ êîðèñòóâà÷³â»."
-${LangFileString} NOT_SUPPORTED "Inkscape íå çìîæå ïðàöþâàòè ó ñåðåäîâèù³ Windows 95/98/ME!$\r$\nÄîêëàäí³ø³ â³äîìîñò³ ìîæíà çíàéòè íà îô³ö³éíîìó âåá-ñàéò³."
-${LangFileString} Full "Ïîâíå"
-${LangFileString} Optimal "Îïòèìàëüíå"
-${LangFileString} Minimal "̳í³ìàëüíå"
-${LangFileString} Core "Ðåäàêòîð SVG Inkscape (íåîáõ³äíå)"
-${LangFileString} CoreDesc "Îñíîâí³ ôàéëè ³ á³áë³îòåêè Inkscape"
-${LangFileString} GTKFiles "Ñåðåäîâèùå âèêîíàííÿ GTK+ (íåîáõ³äíå)"
-${LangFileString} GTKFilesDesc "Íàá³ð ³íñòðóìåíò³â ïîáóäîâè ³íòåðôåéñó, ùî âèêîðèñòîâóºòüñÿ Inkscape"
-${LangFileString} Shortcuts "ϳêòîãðàìè"
-${LangFileString} ShortcutsDesc "ϳêòîãðàìè äëÿ çàïóñêó Inkscape"
-${LangFileString} Alluser "Âñòàíîâèòè äëÿ âñ³õ êîðèñòóâà÷³â"
-${LangFileString} AlluserDesc "Âñòàíîâèòè öþ ïðîãðàìó äëÿ âñ³õ, õòî êîðèñòóºòüñÿ öèì êîìï’þòåðîì (âñ³õ êîðèñòóâà÷³â)"
-${LangFileString} Desktop "Ñò³ëüíèöÿ"
-${LangFileString} DesktopDesc "Ñòâîðèòè ï³êòîãðàìó Inkscape íà ñò³ëüíèö³"
-${LangFileString} Startmenu "Ìåíþ «Ïóñê»"
-${LangFileString} StartmenuDesc "Ñòâîðèòè çàïèñ Inkscape ó ìåíþ «Ïóñê»"
-${LangFileString} Quicklaunch "Ïàíåëü øâèäêîãî çàïóñêó"
-${LangFileString} QuicklaunchDesc "Ñòâîðèòè ï³êòîãðàìó Inkscape íà ïàíåë³ øâèäêîãî çàïóñêó"
-${LangFileString} SVGWriter "³äêðèâàòè ôàéëè SVG çà äîïîìîãîþ Inkscape"
-${LangFileString} SVGWriterDesc "Ïðèçíà÷èòè Inkscape òèïîâèì ðåäàêòîðîì ôàéë³â SVG"
-${LangFileString} ContextMenu "Êîíòåêñòíå ìåíþ"
-${LangFileString} ContextMenuDesc "Äîäàòè ïóíêò Inkscape äî êîíòåêñòíîãî ìåíþ ôàéë³â SVG"
-${LangFileString} DeletePrefs "Âèëó÷èòè îñîáèñò³ íàëàøòóâàííÿ"
-${LangFileString} DeletePrefsDesc "Âèëó÷èòè îñîáèñò³ íàëàøòóâàííÿ, ÿê³ çàëèøèëèñÿ ï³ñëÿ ïîïåðåäí³õ âñòàíîâëåíü"
-${LangFileString} Addfiles "Äîäàòêîâ³ ôàéëè"
-${LangFileString} AddfilesDesc "Äîäàòêîâ³ ïðèêëàäè"
-${LangFileString} Examples "Ïðèêëàäè"
-${LangFileString} ExamplesDesc "Ïðèêëàäè ôàéë³â, ñòâîðåíèõ çà äîïîìîãîþ Inkscape"
-${LangFileString} Tutorials "ϳäðó÷íèêè"
-${LangFileString} TutorialsDesc "ϳäðó÷íèêè ç êîðèñòóâàííÿ Inkscape"
-${LangFileString} Languages "Ïåðåêëàäè"
-${LangFileString} LanguagesDesc "Âñòàíîâèòè ïåðåêëàäè Inkscape ð³çíèìè ìîâàìè"
-${LangFileString} lng_am "Àìõàðñüêîþ"
-${LangFileString} lng_ar "Àðàáñüêîþ"
-${LangFileString} lng_az "Àçåðáàéäæàíñüêîþ"
-${LangFileString} lng_be "Á³ëîðóñüêîþ"
-${LangFileString} lng_bg "Áîëãàðñüêîþ"
-${LangFileString} lng_bn "Áåíãàëüñüêîþ"
-${LangFileString} lng_bn_BD "Áåíãàëüñüêîþ (Áàíãëàäåø)"
-${LangFileString} lng_br "Áðåòîíñüêîþ"
-${LangFileString} lng_ca "Êàòàëàíñüêîþ"
-${LangFileString} lng_ca@valencia "Âàëåíñ³éñüêîþ êàòàëàíñüêîþ"
-${LangFileString} lng_cs "×åñüêîþ"
-${LangFileString} lng_da "Äàíñüêîþ"
-${LangFileString} lng_de "ͳìåöüêîþ"
-${LangFileString} lng_dz "Äçîíã-êõå"
-${LangFileString} lng_el "Ãðåöüêîþ"
-${LangFileString} lng_en "Àíãë³éñüêîþ"
-${LangFileString} lng_en_AU "Àâñòðàë³éñüêîþ àíãë³éñüêîþ"
-${LangFileString} lng_en_CA "Êàíàäñüêîþ àíãë³éñüêîþ"
-${LangFileString} lng_en_GB "Áðèòàíñüêîþ àíãë³éñüêîþ"
-${LangFileString} lng_en_US@piglatin "Ïîðîñÿ÷îþ ëàòèíîþ"
-${LangFileString} lng_eo "Åñïåðàíòî"
-${LangFileString} lng_es "²ñïàíñüêîþ"
-${LangFileString} lng_es_MX "Ìåêñèêàíñüêîþ ³ñïàíñüêîþ"
-${LangFileString} lng_et "Åñòîíñüêîþ"
-${LangFileString} lng_eu "Áàñüêîþ"
-${LangFileString} lng_fa "Ôàðñ³"
-${LangFileString} lng_fi "Ô³íñüêîþ"
-${LangFileString} lng_fr "Ôðàíöóçüêîþ"
-${LangFileString} lng_ga "²ðëàíäñüêîþ"
-${LangFileString} lng_gl "Ãàë³ñ³éñüêîþ"
-${LangFileString} lng_he "²âðèòîì"
-${LangFileString} lng_hr "Õîðâàòñüêîþ"
-${LangFileString} lng_hu "Óãîðñüêîþ"
-${LangFileString} lng_hy "³ðìåíñüêîþ"
-${LangFileString} lng_id "²íäîíåç³éñüêîþ"
-${LangFileString} lng_is "²ñëàíäñüêîþ"
-${LangFileString} lng_it "²òàë³éñüêîþ"
-${LangFileString} lng_ja "ßïîíñüêîþ"
-${LangFileString} lng_km "Êõìåðñüêîþ"
-${LangFileString} lng_ko "Êîðåéñüêîþ"
-${LangFileString} lng_lt "Ëèòîâñüêîþ"
-${LangFileString} lng_lv "Ëàòâ³éñüêîþ"
-${LangFileString} lng_mk "Ìàêåäîíñüêîþ"
-${LangFileString} lng_mn "Ìîíãîëüñüêîþ"
-${LangFileString} lng_ne "Íåïàëüñüêîþ"
-${LangFileString} lng_nb "Íîðâåçüêîþ (áóêìîë)"
-${LangFileString} lng_nl "Ãîëëàíäñüêîþ"
-${LangFileString} lng_nn "Íîðâåçüêîþ (íþíîðøê)"
-${LangFileString} lng_pa "Ïåíäæàá³"
-${LangFileString} lng_pl "Ïîëüñüêîþ"
-${LangFileString} lng_pt "Ïîðòóãàëüñüêîþ"
-${LangFileString} lng_pt_BR "Áðàçèëüñüêîþ ïîðòóãàëüñüêîþ"
-${LangFileString} lng_ro "Ðóìóíñüêîþ"
-${LangFileString} lng_ru "Ðîñ³éñüêîþ"
-${LangFileString} lng_rw "Êèíüÿðóàíäà"
-${LangFileString} lng_sk "Ñëîâàöüêîþ"
-${LangFileString} lng_sl "Ñëîâåíñüêîþ"
-${LangFileString} lng_sq "Àëáàíñüêîþ"
-${LangFileString} lng_sr "Ñåðáñüêîþ"
-${LangFileString} lng_sr@latin "Ñåðáñüêîþ (ëàòèíèöåþ)"
-${LangFileString} lng_sv "Øâåäñüêîþ"
-${LangFileString} lng_te "Telugu"
-${LangFileString} lng_th "Òàéñüêîþ"
-${LangFileString} lng_tr "Òóðåöüêîþ"
-${LangFileString} lng_uk "Óêðà¿íñüêîþ"
-${LangFileString} lng_vi "Â’ºòíàìñüêîþ"
-${LangFileString} lng_zh_CN "Ñïðîùåíîþ êèòàéñüêîþ"
-${LangFileString} lng_zh_TW "Òðàäèö³éíîþ êèòàéñüêîþ"
-${LangFileString} UInstOpt "Ïàðàìåòðè âèëó÷åííÿ ïðîãðàìè"
-${LangFileString} UInstOpt1 "Áóäü ëàñêà, âêàæ³òü äîäàòêîâ³ ïàðàìåòðè"
-${LangFileString} PurgePrefs "Çáåðåãòè îñîáèñò³ íàëàøòóâàííÿ"
-${LangFileString} UninstallLogNotFound "Íå âèÿâëåíî $INSTDIR\uninstall.log!$\r$\nÁóäü ëàñêà, âèêîíàéòå âèëó÷åííÿ ñïîðîæíåííÿì êàòàëîãó $INSTDIR âðó÷íó!"
-${LangFileString} FileChanged "Ç ÷àñó âñòàíîâëåííÿ ôàéë $filename áóëî çì³íåíî.$\r$\nÁàæàºòå âèëó÷èòè öåé ôàéë?"
-${LangFileString} Yes "Òàê"
-${LangFileString} AlwaysYes "çàâæäè â³äïîâ³äàòè «Òàê»"
-${LangFileString} No "ͳ"
-${LangFileString} AlwaysNo "çàâæäè â³äïîâ³äàòè «Í³»"
+${LangFileString} CaptionDescription "Редактор векторної графіки з відкритими вихідними кодами"
+${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) випущено за умов Ð´Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ GNU General Public License (GPL). Файл ліцензії наведено лише з довідковою метою. $_CLICK"
+${LangFileString} DIFFERENT_USER "Inkscape було вÑтановлено кориÑтувачем $0.$\r$\nЯкщо ви продовжите Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ñ–Ñ—, можливі небажані наÑлідки!$\r$\nБудь лаÑка, увійдіть до ÑиÑтеми від імені $0 Ñ– повторіть Ñпробу."
+${LangFileString} WANT_UNINSTALL_BEFORE "$R1 вже вÑтановлено. $\nБажаєте вилучити попередню верÑÑ–ÑŽ до вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ $(^Name)?"
+${LangFileString} OK_CANCEL_DESC "$\n$\nÐатиÑніть «Гаразд», щоб продовжити або «СкаÑувати», щоб перервати дію."
+${LangFileString} NO_ADMIN "У Ð²Ð°Ñ Ð½ÐµÐ¼Ð°Ñ” прав доÑтупу адмініÑтратора.$\r$\nМожливо, Inkscape не вдаÑтьÑÑ Ð²Ñтановити Ð´Ð»Ñ Ð²ÑÑ–Ñ… кориÑтувачів ÑиÑтеми.$\r$\nЗніміть позначку з пункту «ВÑтановити Ð´Ð»Ñ Ð²ÑÑ–Ñ… кориÑтувачів»."
+${LangFileString} NOT_SUPPORTED "Inkscape не зможе працювати у Ñередовищі Windows 95/98/ME!$\r$\nДокладніші відомоÑті можна знайти на офіційному вебÑайті."
+${LangFileString} Full "Повне"
+${LangFileString} Optimal "Оптимальне"
+${LangFileString} Minimal "Мінімальне"
+${LangFileString} Core "Редактор SVG Inkscape (необхідне)"
+${LangFileString} CoreDesc "ОÑновні файли Ñ– бібліотеки Inkscape"
+${LangFileString} GTKFiles "Середовище Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ GTK+ (необхідне)"
+${LangFileString} GTKFilesDesc "Ðабір інÑтрументів побудови інтерфейÑу, що викориÑтовуєтьÑÑ Inkscape"
+${LangFileString} Shortcuts "Піктограми"
+${LangFileString} ShortcutsDesc "Піктограми Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑку Inkscape"
+${LangFileString} Alluser "Ð’Ñтановити Ð´Ð»Ñ Ð²ÑÑ–Ñ… кориÑтувачів"
+${LangFileString} AlluserDesc "Ð’Ñтановити цю програму Ð´Ð»Ñ Ð²ÑÑ–Ñ…, хто кориÑтуєтьÑÑ Ñ†Ð¸Ð¼ комп’ютером (вÑÑ–Ñ… кориÑтувачів)"
+${LangFileString} Desktop "СтільницÑ"
+${LangFileString} DesktopDesc "Створити піктограму Inkscape на Ñтільниці"
+${LangFileString} Startmenu "Меню «ПуÑк»"
+${LangFileString} StartmenuDesc "Створити Ð·Ð°Ð¿Ð¸Ñ Inkscape у меню «ПуÑк»"
+${LangFileString} Quicklaunch "Панель швидкого запуÑку"
+${LangFileString} QuicklaunchDesc "Створити піктограму Inkscape на панелі швидкого запуÑку"
+${LangFileString} SVGWriter "Відкривати файли SVG за допомогою Inkscape"
+${LangFileString} SVGWriterDesc "Призначити Inkscape типовим редактором файлів SVG"
+${LangFileString} ContextMenu "КонтекÑтне меню"
+${LangFileString} ContextMenuDesc "Додати пункт Inkscape до контекÑтного меню файлів SVG"
+${LangFileString} DeletePrefs "Вилучити оÑобиÑті налаштуваннÑ"
+${LangFileString} DeletePrefsDesc "Вилучити оÑобиÑті налаштуваннÑ, Ñкі залишилиÑÑ Ð¿Ñ–ÑÐ»Ñ Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½Ñ–Ñ… вÑтановлень"
+${LangFileString} Python "Python 2.7"
+${LangFileString} PythonDesc "Інтерпретатор мови Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ÑƒÐ²Ð°Ð½Ð½Ñ Python та модулі Python, Ñкі знадоблÑтьÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑку розширень Inkscape."
+${LangFileString} Addfiles "Додаткові файли"
+${LangFileString} AddfilesDesc "Додаткові приклади"
+${LangFileString} Extensions "РозширеннÑ"
+${LangFileString} ExtensionsDesc "Ð Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Inkscape (зокрема багато додатків Ñ–Ð¼Ð¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚Ð° екÑÐ¿Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…)"
+${LangFileString} Examples "Приклади"
+${LangFileString} ExamplesDesc "Приклади файлів, Ñтворених за допомогою Inkscape"
+${LangFileString} Tutorials "Підручники"
+${LangFileString} TutorialsDesc "Підручники з кориÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Inkscape"
+${LangFileString} Dictionaries "Словники"
+${LangFileString} DictionariesDesc "Словники Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ правопиÑу поширеними мовами у Inkscape"
+${LangFileString} Languages "Переклади"
+${LangFileString} LanguagesDesc "Ð’Ñтановити переклади Inkscape різними мовами"
+${LangFileString} UInstOpt "Параметри Ð²Ð¸Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸"
+${LangFileString} UInstOpt1 "Будь лаÑка, вкажіть додаткові параметри"
+${LangFileString} PurgePrefs "Зберегти оÑобиÑті налаштуваннÑ"
+${LangFileString} UninstallLogNotFound "Ðе виÑвлено $INSTDIR\uninstall.log!$\r$\nБудь лаÑка, виконайте Ð²Ð¸Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ ÑпорожненнÑм каталогу $INSTDIR вручну!"
+${LangFileString} FileChanged "З чаÑу вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð» $filename було змінено.$\r$\nБажаєте вилучити цей файл?"
+${LangFileString} Yes "Так"
+${LangFileString} AlwaysYes "завжди відповідати «Так»"
+${LangFileString} No "ÐÑ–"
+${LangFileString} AlwaysNo "завжди відповідати «Ðі»"
diff --git a/packaging/win32/languages/Ukrainian_languageNames.nsh b/packaging/win32/languages/Ukrainian_languageNames.nsh
new file mode 100644
index 000000000..1c53aa503
--- /dev/null
+++ b/packaging/win32/languages/Ukrainian_languageNames.nsh
@@ -0,0 +1,94 @@
+### Ukrainian (uk) translations for language names
+# This file has been automatically created by '_language_lists.py', do not edit it manually!
+# Strings that should be translated are in 'Ukrainian.nsh'
+${LangFileString} lng_am "ÐмхарÑька (am)"
+${LangFileString} lng_ar "ÐрабÑька (ar)"
+${LangFileString} lng_as "ÐÑÑамÑька (as)"
+${LangFileString} lng_az "ÐзербайджанÑька (az)"
+${LangFileString} lng_be "БілоруÑька (be)"
+${LangFileString} lng_bg "БолгарÑька (bg)"
+${LangFileString} lng_bn "БенгальÑька (bn)"
+${LangFileString} lng_bn_BD "БенгальÑька, Бангладеш (bn_BD)"
+${LangFileString} lng_br "БретонÑька (br)"
+${LangFileString} lng_brx "Бодо (brx)"
+${LangFileString} lng_ca "КаталанÑька (ca)"
+${LangFileString} lng_ca@valencia "ВаленÑійÑка каталанÑька (ca@valencia)"
+${LangFileString} lng_cs "ЧеÑька (cs)"
+${LangFileString} lng_da "ДанÑька (da)"
+${LangFileString} lng_de "Ðімецька (de)"
+${LangFileString} lng_doi "Догрі (doi)"
+${LangFileString} lng_dz "Джонка (dz)"
+${LangFileString} lng_el "Грецька (el)"
+${LangFileString} lng_en "ÐнглійÑька (en)"
+${LangFileString} lng_en_AU "ÐнглійÑька/ÐвÑÑ‚Ñ€Ð°Ð»Ñ–Ñ (en_AU)"
+${LangFileString} lng_en_CA "ÐнглійÑька/Канада (en_CA)"
+${LangFileString} lng_en_GB "ÐнглійÑька/Ð’ÐµÐ»Ð¸ÐºÐ¾Ð±Ñ€Ð¸Ñ‚Ð°Ð½Ñ–Ñ (en_GB)"
+${LangFileString} lng_en_US@piglatin "СвинÑча латина (en_US@piglatin)"
+${LangFileString} lng_eo "ЕÑперанто (eo)"
+${LangFileString} lng_es "ІÑпанÑька (es)"
+${LangFileString} lng_es_MX "ІÑпанÑька (МекÑика) (es_MX)"
+${LangFileString} lng_et "ЕÑтонÑька (et)"
+${LangFileString} lng_eu "БаÑкÑька (eu)"
+${LangFileString} lng_fa "ФарÑÑ– (fa)"
+${LangFileString} lng_fi "ФінÑька (fi)"
+${LangFileString} lng_fr "Французька (fr)"
+${LangFileString} lng_ga "ІрландÑька (ga)"
+${LangFileString} lng_gl "ГаліÑійÑька (gl)"
+${LangFileString} lng_gu "Гуджараті (gu)"
+${LangFileString} lng_he "ЄврейÑька (he)"
+${LangFileString} lng_hi "Хінді (hi)"
+${LangFileString} lng_hr "ХорватÑька (hr)"
+${LangFileString} lng_hu "УгорÑька (hu)"
+${LangFileString} lng_hy "ВірменÑька (hy)"
+${LangFileString} lng_id "ІндонезійÑька (id)"
+${LangFileString} lng_is "Ñ–ÑландÑька (is)"
+${LangFileString} lng_it "ІталійÑька (it)"
+${LangFileString} lng_ja "ЯпонÑька (ja)"
+${LangFileString} lng_km "КхмерÑька (km)"
+${LangFileString} lng_kn "Каннада (kn)"
+${LangFileString} lng_ko "КорейÑька (ko)"
+${LangFileString} lng_kok "КонканÑька (kok)"
+${LangFileString} lng_kok@latin "КонканÑька (латиницÑ) (sr@latin)"
+${LangFileString} lng_ks@aran "КашмірÑька, запиÑана перÑько-арабÑькою пиÑемніÑтю (ks@aran)"
+${LangFileString} lng_ks@deva "КашмірÑька, запиÑана пиÑемніÑтю деванагарі (ks@deva)"
+${LangFileString} lng_lt "ЛитовÑька (lt)"
+${LangFileString} lng_lv "ЛатвійÑька (lv)"
+${LangFileString} lng_mai "Майтілі (mai)"
+${LangFileString} lng_mk "МакедонÑька (mk)"
+${LangFileString} lng_ml "МалаÑлам (ml)"
+${LangFileString} lng_mn "МонгольÑька (mn)"
+${LangFileString} lng_mni "Маніпурі (mni)"
+${LangFileString} lng_mni@beng "Маніпурі, запиÑана бенгальÑькою пиÑемніÑтю (mni@beng)"
+${LangFileString} lng_mr "МаратійÑька (gu)"
+${LangFileString} lng_nb "Ðорвезька (букмол) (nb)"
+${LangFileString} lng_ne "ÐепальÑька (ne)"
+${LangFileString} lng_nl "ГолландÑька (nl)"
+${LangFileString} lng_nn "Ðорвезька (нюноршк) (nn)"
+${LangFileString} lng_or "ÐžÑ€Ñ–Ñ (or)"
+${LangFileString} lng_pa "Пенджабі (pa)"
+${LangFileString} lng_pl "ПольÑька (pl)"
+${LangFileString} lng_pt "ПортугальÑька (pt)"
+${LangFileString} lng_pt_BR "ПортугальÑька бразильÑька (pt_BR)"
+${LangFileString} lng_ro "РумунÑька (ro)"
+${LangFileString} lng_ru "РоÑійÑька (ru)"
+${LangFileString} lng_rw "РуандійÑька (rw)"
+${LangFileString} lng_sa "СанÑкрит (sa)"
+${LangFileString} lng_sat "Санталі (it)"
+${LangFileString} lng_sat@deva "Санталі, запиÑана пиÑемніÑтю деванагарі (sat@deva)"
+${LangFileString} lng_sd "СіндхÑька (sd)"
+${LangFileString} lng_sd@deva "СіндхÑька, запиÑана пиÑемніÑтю деванагарі (sd@deva)"
+${LangFileString} lng_sk "Словацька (sk)"
+${LangFileString} lng_sl "СловенÑька (sl)"
+${LangFileString} lng_sq "ÐлбанÑька (sq)"
+${LangFileString} lng_sr "СербÑька (sr)"
+${LangFileString} lng_sr@latin "СербÑька (латиницÑ) (sr@latin)"
+${LangFileString} lng_sv "ШведÑька (sv)"
+${LangFileString} lng_ta "ТамільÑька (ta)"
+${LangFileString} lng_te "Телугу (te)"
+${LangFileString} lng_th "ТайÑька (th)"
+${LangFileString} lng_tr "Турецька (tr)"
+${LangFileString} lng_uk "УкраїнÑька (uk)"
+${LangFileString} lng_ur "Урду (ur)"
+${LangFileString} lng_vi "Ð’'єтнамÑька (vi)"
+${LangFileString} lng_zh_CN "КитайÑька/Китай (zh_CN)"
+${LangFileString} lng_zh_TW "КитайÑька/Тайвань (zh_TW)"
diff --git a/packaging/win32/languages/_language_lists.nsh b/packaging/win32/languages/_language_lists.nsh
new file mode 100644
index 000000000..5aefeb0cc
--- /dev/null
+++ b/packaging/win32/languages/_language_lists.nsh
@@ -0,0 +1,140 @@
+# This file contains a list of
+# - available installer translations (*.nsh in this directory)
+# - available Inkscape translations (*.po in /src/po)
+#
+# The list is formatted for use in the NSIS installer script
+# and should be updated whenever new translations are added.
+
+
+### List of available installer translations.
+# Every entry should
+# - have a name (e.g. "Breton") matching a header file in this directory (e.g. "Breton.nsh")
+# that in addition should match the name of an available NSIS translation file (see "NSIS\Contrib\Language files")
+# - include a valid locale ID (see https://msdn.microsoft.com/goglobal/bb964664.aspx)
+!macro INSTALLER_TRANSLATIONS _MACRONAME
+ !insertmacro ${_MACRONAME} Breton 1150
+ !insertmacro ${_MACRONAME} Catalan 1027
+ !insertmacro ${_MACRONAME} Czech 1029
+ !insertmacro ${_MACRONAME} Danish 1030
+ !insertmacro ${_MACRONAME} Dutch 1043
+ !insertmacro ${_MACRONAME} Finnish 1035
+ !insertmacro ${_MACRONAME} French 1036
+ !insertmacro ${_MACRONAME} Galician 1110
+ !insertmacro ${_MACRONAME} German 1031
+ !insertmacro ${_MACRONAME} Greek 1032
+ !insertmacro ${_MACRONAME} Hebrew 1037
+ !insertmacro ${_MACRONAME} Icelandic 1039
+ !insertmacro ${_MACRONAME} Indonesian 1057
+ !insertmacro ${_MACRONAME} Italian 1040
+ !insertmacro ${_MACRONAME} Japanese 1041
+ !insertmacro ${_MACRONAME} Polish 1045
+ !insertmacro ${_MACRONAME} Portuguese 2070
+ !insertmacro ${_MACRONAME} PortugueseBR 1046
+ !insertmacro ${_MACRONAME} Romanian 1048
+ !insertmacro ${_MACRONAME} Russian 1049
+ !insertmacro ${_MACRONAME} Slovak 1051
+ !insertmacro ${_MACRONAME} Slovenian 1060
+ !insertmacro ${_MACRONAME} Spanish 1034
+ !insertmacro ${_MACRONAME} SimpChinese 2052
+ !insertmacro ${_MACRONAME} TradChinese 1028
+ !insertmacro ${_MACRONAME} Ukrainian 1058
+!macroend
+
+
+### List of available Inkscape translations.
+# Every entry should
+# - specify a name (e.g. "Amharic") that matches the installer translation name above (if present)
+# - specify a language code (e.g. "am") that has a matching PO file (e.g. "am.po")
+# in the /po folder in the root of Inkscape source directory
+!macro INKSCAPE_TRANSLATIONS _MACRONAME
+ !insertmacro ${_MACRONAME} Amharic am
+ !insertmacro ${_MACRONAME} Arabic ar
+ !insertmacro ${_MACRONAME} Assamese as
+ !insertmacro ${_MACRONAME} Azerbaijani az
+ !insertmacro ${_MACRONAME} Belarusian be
+ !insertmacro ${_MACRONAME} Bulgarian bg
+ !insertmacro ${_MACRONAME} Bengali bn
+ !insertmacro ${_MACRONAME} BengaliBangladesh bn_BD
+ !insertmacro ${_MACRONAME} Breton br
+ !insertmacro ${_MACRONAME} Bodo brx
+ !insertmacro ${_MACRONAME} Catalan ca
+ !insertmacro ${_MACRONAME} CatalanValencia ca@valencia
+ !insertmacro ${_MACRONAME} Czech cs
+ !insertmacro ${_MACRONAME} Danish da
+ !insertmacro ${_MACRONAME} German de
+ !insertmacro ${_MACRONAME} Dogri doi
+ !insertmacro ${_MACRONAME} Dzongkha dz
+ !insertmacro ${_MACRONAME} Greek el
+ !insertmacro ${_MACRONAME} EnglishAustralian en_AU
+ !insertmacro ${_MACRONAME} EnglishCanadian en_CA
+ !insertmacro ${_MACRONAME} EnglishBritain en_GB
+ !insertmacro ${_MACRONAME} EnglishPiglatin en_US@piglatin
+ !insertmacro ${_MACRONAME} Esperanto eo
+ !insertmacro ${_MACRONAME} Spanish es
+ !insertmacro ${_MACRONAME} SpanishMexico es_MX
+ !insertmacro ${_MACRONAME} Estonian et
+ !insertmacro ${_MACRONAME} Basque eu
+ !insertmacro ${_MACRONAME} Farsi fa
+ !insertmacro ${_MACRONAME} Finnish fi
+ !insertmacro ${_MACRONAME} French fr
+ !insertmacro ${_MACRONAME} Irish ga
+ !insertmacro ${_MACRONAME} Galician gl
+ !insertmacro ${_MACRONAME} Gujarati gu
+ !insertmacro ${_MACRONAME} Hebrew he
+ !insertmacro ${_MACRONAME} Hindi hi
+ !insertmacro ${_MACRONAME} Croatian hr
+ !insertmacro ${_MACRONAME} Hungarian hu
+ !insertmacro ${_MACRONAME} Armenian hy
+ !insertmacro ${_MACRONAME} Indonesian id
+ !insertmacro ${_MACRONAME} Icelandic is
+ !insertmacro ${_MACRONAME} Italian it
+ !insertmacro ${_MACRONAME} Japanese ja
+ !insertmacro ${_MACRONAME} Khmer km
+ !insertmacro ${_MACRONAME} Kannada kn
+ !insertmacro ${_MACRONAME} Korean ko
+ !insertmacro ${_MACRONAME} Konkani kok
+ !insertmacro ${_MACRONAME} KonkaniLatin kok@latin
+ !insertmacro ${_MACRONAME} KashmiriPersoArabic ks@aran
+ !insertmacro ${_MACRONAME} KashmiriDevanagari ks@deva
+ !insertmacro ${_MACRONAME} Lithuanian lt
+ !insertmacro ${_MACRONAME} Latvian lv
+ !insertmacro ${_MACRONAME} Maithili mai
+ !insertmacro ${_MACRONAME} Macedonian mk
+ !insertmacro ${_MACRONAME} Malayalam ml
+ !insertmacro ${_MACRONAME} Mongolian mn
+ !insertmacro ${_MACRONAME} Manipuri mni
+ !insertmacro ${_MACRONAME} ManipuriBengali mni@beng
+ !insertmacro ${_MACRONAME} Marathi mr
+ !insertmacro ${_MACRONAME} NorwegianBokmal nb
+ !insertmacro ${_MACRONAME} Nepali ne
+ !insertmacro ${_MACRONAME} Dutch nl
+ !insertmacro ${_MACRONAME} NorwegianNynorsk nn
+ !insertmacro ${_MACRONAME} Odia or
+ !insertmacro ${_MACRONAME} Panjabi pa
+ !insertmacro ${_MACRONAME} Polish pl
+ !insertmacro ${_MACRONAME} Portuguese pt
+ !insertmacro ${_MACRONAME} PortugueseBR pt_BR
+ !insertmacro ${_MACRONAME} Romanian ro
+ !insertmacro ${_MACRONAME} Russian ru
+ !insertmacro ${_MACRONAME} Kinyarwanda rw
+ !insertmacro ${_MACRONAME} Sanskrit sa
+ !insertmacro ${_MACRONAME} Santali sat
+ !insertmacro ${_MACRONAME} SantaliDevanagari sat@deva
+ !insertmacro ${_MACRONAME} Sindhi sd
+ !insertmacro ${_MACRONAME} SindhiDevanagari sd@deva
+ !insertmacro ${_MACRONAME} Slovak sk
+ !insertmacro ${_MACRONAME} Slovenian sl
+ !insertmacro ${_MACRONAME} Albanian sq
+ !insertmacro ${_MACRONAME} Serbian sr
+ !insertmacro ${_MACRONAME} SerbianLatin sr@latin
+ !insertmacro ${_MACRONAME} Swedish sv
+ !insertmacro ${_MACRONAME} Tamil ta
+ !insertmacro ${_MACRONAME} Telugu te
+ !insertmacro ${_MACRONAME} Thai th
+ !insertmacro ${_MACRONAME} Turkish tr
+ !insertmacro ${_MACRONAME} Ukrainian uk
+ !insertmacro ${_MACRONAME} Urdu ur
+ !insertmacro ${_MACRONAME} Vietnamese vi
+ !insertmacro ${_MACRONAME} SimpChinese zh_CN
+ !insertmacro ${_MACRONAME} TradChinese zh_TW
+!macroend
diff --git a/packaging/win32/languages/_language_lists.py b/packaging/win32/languages/_language_lists.py
new file mode 100644
index 000000000..9ca0234b6
--- /dev/null
+++ b/packaging/win32/languages/_language_lists.py
@@ -0,0 +1,79 @@
+# use this to update the translated language strings in the *_languageNames.nsh files
+# translated language names are extracted from the .po files in the /po directory
+
+from __future__ import print_function
+from __future__ import unicode_literals # make all literals unicode strings by default (even in Python 2)
+
+import os
+import re
+import sys
+from io import open # needed for support of encoding parameter in Python 2
+
+from _polib import pofile
+
+
+# get the list of available Inkscape UI translations (by parsing inkscape-preferences.cpp)
+sys.path.append('../../wix/')
+from helpers import get_inkscape_locales_and_names
+inkscape_locales = get_inkscape_locales_and_names()
+
+# get the list of translations offered in the installer (by parsing _language_lists.nsh)
+re_installer_locales = re.compile(r'!macro INKSCAPE_TRANSLATIONS _MACRONAME\n(.+?)!macroend', re.DOTALL)
+re_installer_locale = re.compile(r'[ \t]+!insertmacro \${_MACRONAME}[ \t]+([\w]+)[ \t]+([\w@]+)\n')
+with open('_language_lists.nsh', 'r') as f:
+ installer_locales = re.search(re_installer_locales, f.read())
+if installer_locales:
+ installer_locales = re.finditer(re_installer_locale, installer_locales.group(1))
+ if installer_locales:
+ installer_locales = {
+ installer_locale.group(2): installer_locale.group(1) for installer_locale in installer_locales
+ }
+if not installer_locales:
+ print("Could not get the list of Inkscape translations from _language_lists.nsh")
+ sys.exit(1)
+installer_locales['en'] = 'English'
+
+
+# check if the lists are in sync
+for installer_locale in installer_locales:
+ if installer_locale not in inkscape_locales:
+ print(
+ "Error: Locale '" + installer_locale +
+ "' is present in '_language_lists.nsh' but is not a selectable Inkscape translation!"
+ )
+ sys.exit(1)
+for inkscape_locale in inkscape_locales:
+ if inkscape_locale not in installer_locales:
+ print(
+ "Warning: Locale '" + inkscape_locale +
+ "' is a selectable Inkscape translation but not present in '_language_lists.nsh'\n" +
+ " You should consider adding it."
+ )
+
+
+# extract translation names from .po files for locales offered in the installer
+for locale in sorted(installer_locales):
+ if os.path.isfile(installer_locales[locale] + '.nsh'):
+ print("Getting translation names for " + inkscape_locales[locale])
+ filename = installer_locales[locale] + '_languageNames.nsh'
+ with open(filename, 'w', encoding='utf-8', newline='\n') as f:
+ f.write(
+ "### " + inkscape_locales[locale] + " translations for language names\n" +
+ "# This file has been automatically created by '" + __file__ + "', do not edit it manually!\n"
+ "# Strings that should be translated are in '" + installer_locales[locale] + ".nsh'\n")
+ if locale is 'en':
+ for locale in sorted(installer_locales):
+ locale_name = inkscape_locales[locale]
+ f.write('${LangFileString} lng_' + locale + ' ')
+ f.write('"' + locale_name + '"\n')
+ else:
+ po_filename = '../../../po/' + locale + '.po'
+ po = pofile(po_filename)
+ for locale in sorted(installer_locales):
+ po_entry = po.find(inkscape_locales[locale])
+ if po_entry.translated():
+ locale_name = po_entry.msgstr
+ else:
+ locale_name = inkscape_locales[locale]
+ f.write('${LangFileString} lng_' + locale + ' ')
+ f.write('"' + locale_name + '"\n')
diff --git a/packaging/win32/languages/_polib.py b/packaging/win32/languages/_polib.py
new file mode 100644
index 000000000..5fc4d82b2
--- /dev/null
+++ b/packaging/win32/languages/_polib.py
@@ -0,0 +1,1870 @@
+# -* coding: utf-8 -*-
+#
+# License: MIT
+#
+# Copyright (c) 2006-2015 David Jean Louis.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in all
+# copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
+#
+# vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4:
+
+"""
+**polib** allows you to manipulate, create, modify gettext files (pot, po and
+mo files). You can load existing files, iterate through it's entries, add,
+modify entries, comments or metadata, etc. or create new po files from scratch.
+
+**polib** provides a simple and pythonic API via the :func:`~polib.pofile` and
+:func:`~polib.mofile` convenience functions.
+"""
+
+__author__ = 'David Jean Louis <izimobil@gmail.com>'
+__version__ = '1.0.8'
+__all__ = ['pofile', 'POFile', 'POEntry', 'mofile', 'MOFile', 'MOEntry',
+ 'default_encoding', 'escape', 'unescape', 'detect_encoding', ]
+
+import array
+import codecs
+import os
+import re
+import struct
+import sys
+import textwrap
+
+try:
+ import io
+except ImportError:
+ # replacement of io.open() for python < 2.6
+ # we use codecs instead
+ class io(object):
+ @staticmethod
+ def open(fpath, mode='r', encoding=None):
+ return codecs.open(fpath, mode, encoding)
+
+
+# the default encoding to use when encoding cannot be detected
+default_encoding = 'utf-8'
+
+# python 2/3 compatibility helpers {{{
+
+
+if sys.version_info[:2] < (3, 0):
+ PY3 = False
+ text_type = unicode
+
+ def b(s):
+ return s
+
+ def u(s):
+ return unicode(s, "unicode_escape")
+
+else:
+ PY3 = True
+ text_type = str
+
+ def b(s):
+ return s.encode("latin-1")
+
+ def u(s):
+ return s
+# }}}
+# _pofile_or_mofile {{{
+
+
+def _pofile_or_mofile(f, type, **kwargs):
+ """
+ Internal function used by :func:`polib.pofile` and :func:`polib.mofile` to
+ honor the DRY concept.
+ """
+ # get the file encoding
+ enc = kwargs.get('encoding')
+ if enc is None:
+ enc = detect_encoding(f, type == 'mofile')
+
+ # parse the file
+ kls = type == 'pofile' and _POFileParser or _MOFileParser
+ parser = kls(
+ f,
+ encoding=enc,
+ check_for_duplicates=kwargs.get('check_for_duplicates', False),
+ klass=kwargs.get('klass')
+ )
+ instance = parser.parse()
+ instance.wrapwidth = kwargs.get('wrapwidth', 78)
+ return instance
+# }}}
+# _is_file {{{
+
+
+def _is_file(filename_or_contents):
+ """
+ Safely returns the value of os.path.exists(filename_or_contents).
+
+ Arguments:
+
+ ``filename_or_contents``
+ either a filename, or a string holding the contents of some file.
+ In the latter case, this function will always return False.
+ """
+ try:
+ return os.path.exists(filename_or_contents)
+ except (ValueError, UnicodeEncodeError):
+ return False
+# }}}
+# function pofile() {{{
+
+
+def pofile(pofile, **kwargs):
+ """
+ Convenience function that parses the po or pot file ``pofile`` and returns
+ a :class:`~polib.POFile` instance.
+
+ Arguments:
+
+ ``pofile``
+ string, full or relative path to the po/pot file or its content (data).
+
+ ``wrapwidth``
+ integer, the wrap width, only useful when the ``-w`` option was passed
+ to xgettext (optional, default: ``78``).
+
+ ``encoding``
+ string, the encoding to use (e.g. "utf-8") (default: ``None``, the
+ encoding will be auto-detected).
+
+ ``check_for_duplicates``
+ whether to check for duplicate entries when adding entries to the
+ file (optional, default: ``False``).
+
+ ``klass``
+ class which is used to instantiate the return value (optional,
+ default: ``None``, the return value with be a :class:`~polib.POFile`
+ instance).
+ """
+ return _pofile_or_mofile(pofile, 'pofile', **kwargs)
+# }}}
+# function mofile() {{{
+
+
+def mofile(mofile, **kwargs):
+ """
+ Convenience function that parses the mo file ``mofile`` and returns a
+ :class:`~polib.MOFile` instance.
+
+ Arguments:
+
+ ``mofile``
+ string, full or relative path to the mo file or its content (data).
+
+ ``wrapwidth``
+ integer, the wrap width, only useful when the ``-w`` option was passed
+ to xgettext to generate the po file that was used to format the mo file
+ (optional, default: ``78``).
+
+ ``encoding``
+ string, the encoding to use (e.g. "utf-8") (default: ``None``, the
+ encoding will be auto-detected).
+
+ ``check_for_duplicates``
+ whether to check for duplicate entries when adding entries to the
+ file (optional, default: ``False``).
+
+ ``klass``
+ class which is used to instantiate the return value (optional,
+ default: ``None``, the return value with be a :class:`~polib.POFile`
+ instance).
+ """
+ return _pofile_or_mofile(mofile, 'mofile', **kwargs)
+# }}}
+# function detect_encoding() {{{
+
+
+def detect_encoding(file, binary_mode=False):
+ """
+ Try to detect the encoding used by the ``file``. The ``file`` argument can
+ be a PO or MO file path or a string containing the contents of the file.
+ If the encoding cannot be detected, the function will return the value of
+ ``default_encoding``.
+
+ Arguments:
+
+ ``file``
+ string, full or relative path to the po/mo file or its content.
+
+ ``binary_mode``
+ boolean, set this to True if ``file`` is a mo file.
+ """
+ PATTERN = r'"?Content-Type:.+? charset=([\w_\-:\.]+)'
+ rxt = re.compile(u(PATTERN))
+ rxb = re.compile(b(PATTERN))
+
+ def charset_exists(charset):
+ """Check whether ``charset`` is valid or not."""
+ try:
+ codecs.lookup(charset)
+ except LookupError:
+ return False
+ return True
+
+ if not _is_file(file):
+ match = rxt.search(file)
+ if match:
+ enc = match.group(1).strip()
+ if charset_exists(enc):
+ return enc
+ else:
+ # For PY3, always treat as binary
+ if binary_mode or PY3:
+ mode = 'rb'
+ rx = rxb
+ else:
+ mode = 'r'
+ rx = rxt
+ f = open(file, mode)
+ for l in f.readlines():
+ match = rx.search(l)
+ if match:
+ f.close()
+ enc = match.group(1).strip()
+ if not isinstance(enc, text_type):
+ enc = enc.decode('utf-8')
+ if charset_exists(enc):
+ return enc
+ f.close()
+ return default_encoding
+# }}}
+# function escape() {{{
+
+
+def escape(st):
+ """
+ Escapes the characters ``\\\\``, ``\\t``, ``\\n``, ``\\r`` and ``"`` in
+ the given string ``st`` and returns it.
+ """
+ return st.replace('\\', r'\\')\
+ .replace('\t', r'\t')\
+ .replace('\r', r'\r')\
+ .replace('\n', r'\n')\
+ .replace('\"', r'\"')
+# }}}
+# function unescape() {{{
+
+
+def unescape(st):
+ """
+ Unescapes the characters ``\\\\``, ``\\t``, ``\\n``, ``\\r`` and ``"`` in
+ the given string ``st`` and returns it.
+ """
+ def unescape_repl(m):
+ m = m.group(1)
+ if m == 'n':
+ return '\n'
+ if m == 't':
+ return '\t'
+ if m == 'r':
+ return '\r'
+ if m == '\\':
+ return '\\'
+ return m # handles escaped double quote
+ return re.sub(r'\\(\\|n|t|r|")', unescape_repl, st)
+# }}}
+# function natural_sort() {{{
+
+
+def natural_sort(lst):
+ """
+ Sort naturally the given list.
+ Credits: http://stackoverflow.com/a/4836734
+ """
+ convert = lambda text: int(text) if text.isdigit() else text.lower()
+ alphanum_key = lambda key: [ convert(c) for c in re.split('([0-9]+)', key) ]
+ return sorted(lst, key = alphanum_key)
+# }}}
+# class _BaseFile {{{
+
+
+class _BaseFile(list):
+ """
+ Common base class for the :class:`~polib.POFile` and :class:`~polib.MOFile`
+ classes. This class should **not** be instantiated directly.
+ """
+
+ def __init__(self, *args, **kwargs):
+ """
+ Constructor, accepts the following keyword arguments:
+
+ ``pofile``
+ string, the path to the po or mo file, or its content as a string.
+
+ ``wrapwidth``
+ integer, the wrap width, only useful when the ``-w`` option was
+ passed to xgettext (optional, default: ``78``).
+
+ ``encoding``
+ string, the encoding to use, defaults to ``default_encoding``
+ global variable (optional).
+
+ ``check_for_duplicates``
+ whether to check for duplicate entries when adding entries to the
+ file, (optional, default: ``False``).
+ """
+ list.__init__(self)
+ # the opened file handle
+ pofile = kwargs.get('pofile', None)
+ if pofile and _is_file(pofile):
+ self.fpath = pofile
+ else:
+ self.fpath = kwargs.get('fpath')
+ # the width at which lines should be wrapped
+ self.wrapwidth = kwargs.get('wrapwidth', 78)
+ # the file encoding
+ self.encoding = kwargs.get('encoding', default_encoding)
+ # whether to check for duplicate entries or not
+ self.check_for_duplicates = kwargs.get('check_for_duplicates', False)
+ # header
+ self.header = ''
+ # both po and mo files have metadata
+ self.metadata = {}
+ self.metadata_is_fuzzy = 0
+
+ def __unicode__(self):
+ """
+ Returns the unicode representation of the file.
+ """
+ ret = []
+ entries = [self.metadata_as_entry()] + \
+ [e for e in self if not e.obsolete]
+ for entry in entries:
+ ret.append(entry.__unicode__(self.wrapwidth))
+ for entry in self.obsolete_entries():
+ ret.append(entry.__unicode__(self.wrapwidth))
+ ret = u('\n').join(ret)
+
+ assert isinstance(ret, text_type)
+ #if type(ret) != text_type:
+ # return unicode(ret, self.encoding)
+ return ret
+
+ if PY3:
+ def __str__(self):
+ return self.__unicode__()
+ else:
+ def __str__(self):
+ """
+ Returns the string representation of the file.
+ """
+ return unicode(self).encode(self.encoding)
+
+ def __contains__(self, entry):
+ """
+ Overridden ``list`` method to implement the membership test (in and
+ not in).
+ The method considers that an entry is in the file if it finds an entry
+ that has the same msgid (the test is **case sensitive**) and the same
+ msgctxt (or none for both entries).
+
+ Argument:
+
+ ``entry``
+ an instance of :class:`~polib._BaseEntry`.
+ """
+ return self.find(entry.msgid, by='msgid', msgctxt=entry.msgctxt) \
+ is not None
+
+ def __eq__(self, other):
+ return str(self) == str(other)
+
+ def append(self, entry):
+ """
+ Overridden method to check for duplicates entries, if a user tries to
+ add an entry that is already in the file, the method will raise a
+ ``ValueError`` exception.
+
+ Argument:
+
+ ``entry``
+ an instance of :class:`~polib._BaseEntry`.
+ """
+ # check_for_duplicates may not be defined (yet) when unpickling.
+ # But if pickling, we never want to check for duplicates anyway.
+ if getattr(self, 'check_for_duplicates', False) and entry in self:
+ raise ValueError('Entry "%s" already exists' % entry.msgid)
+ super(_BaseFile, self).append(entry)
+
+ def insert(self, index, entry):
+ """
+ Overridden method to check for duplicates entries, if a user tries to
+ add an entry that is already in the file, the method will raise a
+ ``ValueError`` exception.
+
+ Arguments:
+
+ ``index``
+ index at which the entry should be inserted.
+
+ ``entry``
+ an instance of :class:`~polib._BaseEntry`.
+ """
+ if self.check_for_duplicates and entry in self:
+ raise ValueError('Entry "%s" already exists' % entry.msgid)
+ super(_BaseFile, self).insert(index, entry)
+
+ def metadata_as_entry(self):
+ """
+ Returns the file metadata as a :class:`~polib.POFile` instance.
+ """
+ e = POEntry(msgid='')
+ mdata = self.ordered_metadata()
+ if mdata:
+ strs = []
+ for name, value in mdata:
+ # Strip whitespace off each line in a multi-line entry
+ strs.append('%s: %s' % (name, value))
+ e.msgstr = '\n'.join(strs) + '\n'
+ if self.metadata_is_fuzzy:
+ e.flags.append('fuzzy')
+ return e
+
+ def save(self, fpath=None, repr_method='__unicode__'):
+ """
+ Saves the po file to ``fpath``.
+ If it is an existing file and no ``fpath`` is provided, then the
+ existing file is rewritten with the modified data.
+
+ Keyword arguments:
+
+ ``fpath``
+ string, full or relative path to the file.
+
+ ``repr_method``
+ string, the method to use for output.
+ """
+ if self.fpath is None and fpath is None:
+ raise IOError('You must provide a file path to save() method')
+ contents = getattr(self, repr_method)()
+ if fpath is None:
+ fpath = self.fpath
+ if repr_method == 'to_binary':
+ fhandle = open(fpath, 'wb')
+ else:
+ fhandle = io.open(fpath, 'w', encoding=self.encoding)
+ if not isinstance(contents, text_type):
+ contents = contents.decode(self.encoding)
+ fhandle.write(contents)
+ fhandle.close()
+ # set the file path if not set
+ if self.fpath is None and fpath:
+ self.fpath = fpath
+
+ def find(self, st, by='msgid', include_obsolete_entries=False,
+ msgctxt=False):
+ """
+ Find the entry which msgid (or property identified by the ``by``
+ argument) matches the string ``st``.
+
+ Keyword arguments:
+
+ ``st``
+ string, the string to search for.
+
+ ``by``
+ string, the property to use for comparison (default: ``msgid``).
+
+ ``include_obsolete_entries``
+ boolean, whether to also search in entries that are obsolete.
+
+ ``msgctxt``
+ string, allows specifying a specific message context for the
+ search.
+ """
+ if include_obsolete_entries:
+ entries = self[:]
+ else:
+ entries = [e for e in self if not e.obsolete]
+ for e in entries:
+ if getattr(e, by) == st:
+ if msgctxt is not False and e.msgctxt != msgctxt:
+ continue
+ return e
+ return None
+
+ def ordered_metadata(self):
+ """
+ Convenience method that returns an ordered version of the metadata
+ dictionary. The return value is list of tuples (metadata name,
+ metadata_value).
+ """
+ # copy the dict first
+ metadata = self.metadata.copy()
+ data_order = [
+ 'Project-Id-Version',
+ 'Report-Msgid-Bugs-To',
+ 'POT-Creation-Date',
+ 'PO-Revision-Date',
+ 'Last-Translator',
+ 'Language-Team',
+ 'Language',
+ 'MIME-Version',
+ 'Content-Type',
+ 'Content-Transfer-Encoding',
+ 'Plural-Forms'
+ ]
+ ordered_data = []
+ for data in data_order:
+ try:
+ value = metadata.pop(data)
+ ordered_data.append((data, value))
+ except KeyError:
+ pass
+ # the rest of the metadata will be alphabetically ordered since there
+ # are no specs for this AFAIK
+ for data in natural_sort(metadata.keys()):
+ value = metadata[data]
+ ordered_data.append((data, value))
+ return ordered_data
+
+ def to_binary(self):
+ """
+ Return the binary representation of the file.
+ """
+ offsets = []
+ entries = self.translated_entries()
+
+ # the keys are sorted in the .mo file
+ def cmp(_self, other):
+ # msgfmt compares entries with msgctxt if it exists
+ self_msgid = _self.msgctxt and _self.msgctxt or _self.msgid
+ other_msgid = other.msgctxt and other.msgctxt or other.msgid
+ if self_msgid > other_msgid:
+ return 1
+ elif self_msgid < other_msgid:
+ return -1
+ else:
+ return 0
+ # add metadata entry
+ entries.sort(key=lambda o: o.msgctxt or o.msgid)
+ mentry = self.metadata_as_entry()
+ #mentry.msgstr = mentry.msgstr.replace('\\n', '').lstrip()
+ entries = [mentry] + entries
+ entries_len = len(entries)
+ ids, strs = b(''), b('')
+ for e in entries:
+ # For each string, we need size and file offset. Each string is
+ # NUL terminated; the NUL does not count into the size.
+ msgid = b('')
+ if e.msgctxt:
+ # Contexts are stored by storing the concatenation of the
+ # context, a <EOT> byte, and the original string
+ msgid = self._encode(e.msgctxt + '\4')
+ if e.msgid_plural:
+ msgstr = []
+ for index in sorted(e.msgstr_plural.keys()):
+ msgstr.append(e.msgstr_plural[index])
+ msgid += self._encode(e.msgid + '\0' + e.msgid_plural)
+ msgstr = self._encode('\0'.join(msgstr))
+ else:
+ msgid += self._encode(e.msgid)
+ msgstr = self._encode(e.msgstr)
+ offsets.append((len(ids), len(msgid), len(strs), len(msgstr)))
+ ids += msgid + b('\0')
+ strs += msgstr + b('\0')
+
+ # The header is 7 32-bit unsigned integers.
+ keystart = 7 * 4 + 16 * entries_len
+ # and the values start after the keys
+ valuestart = keystart + len(ids)
+ koffsets = []
+ voffsets = []
+ # The string table first has the list of keys, then the list of values.
+ # Each entry has first the size of the string, then the file offset.
+ for o1, l1, o2, l2 in offsets:
+ koffsets += [l1, o1 + keystart]
+ voffsets += [l2, o2 + valuestart]
+ offsets = koffsets + voffsets
+
+ output = struct.pack(
+ "Iiiiiii",
+ # Magic number
+ MOFile.MAGIC,
+ # Version
+ 0,
+ # number of entries
+ entries_len,
+ # start of key index
+ 7 * 4,
+ # start of value index
+ 7 * 4 + entries_len * 8,
+ # size and offset of hash table, we don't use hash tables
+ 0, keystart
+
+ )
+ if PY3 and sys.version_info.minor > 1: # python 3.2 or superior
+ output += array.array("i", offsets).tobytes()
+ else:
+ output += array.array("i", offsets).tostring()
+ output += ids
+ output += strs
+ return output
+
+ def _encode(self, mixed):
+ """
+ Encodes the given ``mixed`` argument with the file encoding if and
+ only if it's an unicode string and returns the encoded string.
+ """
+ if isinstance(mixed, text_type):
+ mixed = mixed.encode(self.encoding)
+ return mixed
+# }}}
+# class POFile {{{
+
+
+class POFile(_BaseFile):
+ """
+ Po (or Pot) file reader/writer.
+ This class inherits the :class:`~polib._BaseFile` class and, by extension,
+ the python ``list`` type.
+ """
+
+ def __unicode__(self):
+ """
+ Returns the unicode representation of the po file.
+ """
+ ret, headers = '', self.header.split('\n')
+ for header in headers:
+ if not len(header):
+ ret += "#\n"
+ elif header[:1] in [',', ':']:
+ ret += '#%s\n' % header
+ else:
+ ret += '# %s\n' % header
+
+ if not isinstance(ret, text_type):
+ ret = ret.decode(self.encoding)
+
+ return ret + _BaseFile.__unicode__(self)
+
+ def save_as_mofile(self, fpath):
+ """
+ Saves the binary representation of the file to given ``fpath``.
+
+ Keyword argument:
+
+ ``fpath``
+ string, full or relative path to the mo file.
+ """
+ _BaseFile.save(self, fpath, 'to_binary')
+
+ def percent_translated(self):
+ """
+ Convenience method that returns the percentage of translated
+ messages.
+ """
+ total = len([e for e in self if not e.obsolete])
+ if total == 0:
+ return 100
+ translated = len(self.translated_entries())
+ return int(translated * 100 / float(total))
+
+ def translated_entries(self):
+ """
+ Convenience method that returns the list of translated entries.
+ """
+ return [e for e in self if e.translated()]
+
+ def untranslated_entries(self):
+ """
+ Convenience method that returns the list of untranslated entries.
+ """
+ return [e for e in self if not e.translated() and not e.obsolete
+ and not 'fuzzy' in e.flags]
+
+ def fuzzy_entries(self):
+ """
+ Convenience method that returns the list of fuzzy entries.
+ """
+ return [e for e in self if 'fuzzy' in e.flags]
+
+ def obsolete_entries(self):
+ """
+ Convenience method that returns the list of obsolete entries.
+ """
+ return [e for e in self if e.obsolete]
+
+ def merge(self, refpot):
+ """
+ Convenience method that merges the current pofile with the pot file
+ provided. It behaves exactly as the gettext msgmerge utility:
+
+ * comments of this file will be preserved, but extracted comments and
+ occurrences will be discarded;
+ * any translations or comments in the file will be discarded, however,
+ dot comments and file positions will be preserved;
+ * the fuzzy flags are preserved.
+
+ Keyword argument:
+
+ ``refpot``
+ object POFile, the reference catalog.
+ """
+ # Store entries in dict/set for faster access
+ self_entries = dict((entry.msgid, entry) for entry in self)
+ refpot_msgids = set(entry.msgid for entry in refpot)
+ # Merge entries that are in the refpot
+ for entry in refpot:
+ e = self_entries.get(entry.msgid)
+ if e is None:
+ e = POEntry()
+ self.append(e)
+ e.merge(entry)
+ # ok, now we must "obsolete" entries that are not in the refpot anymore
+ for entry in self:
+ if entry.msgid not in refpot_msgids:
+ entry.obsolete = True
+# }}}
+# class MOFile {{{
+
+
+class MOFile(_BaseFile):
+ """
+ Mo file reader/writer.
+ This class inherits the :class:`~polib._BaseFile` class and, by
+ extension, the python ``list`` type.
+ """
+ MAGIC = 0x950412de
+ MAGIC_SWAPPED = 0xde120495
+
+ def __init__(self, *args, **kwargs):
+ """
+ Constructor, accepts all keywords arguments accepted by
+ :class:`~polib._BaseFile` class.
+ """
+ _BaseFile.__init__(self, *args, **kwargs)
+ self.magic_number = None
+ self.version = 0
+
+ def save_as_pofile(self, fpath):
+ """
+ Saves the mofile as a pofile to ``fpath``.
+
+ Keyword argument:
+
+ ``fpath``
+ string, full or relative path to the file.
+ """
+ _BaseFile.save(self, fpath)
+
+ def save(self, fpath=None):
+ """
+ Saves the mofile to ``fpath``.
+
+ Keyword argument:
+
+ ``fpath``
+ string, full or relative path to the file.
+ """
+ _BaseFile.save(self, fpath, 'to_binary')
+
+ def percent_translated(self):
+ """
+ Convenience method to keep the same interface with POFile instances.
+ """
+ return 100
+
+ def translated_entries(self):
+ """
+ Convenience method to keep the same interface with POFile instances.
+ """
+ return self
+
+ def untranslated_entries(self):
+ """
+ Convenience method to keep the same interface with POFile instances.
+ """
+ return []
+
+ def fuzzy_entries(self):
+ """
+ Convenience method to keep the same interface with POFile instances.
+ """
+ return []
+
+ def obsolete_entries(self):
+ """
+ Convenience method to keep the same interface with POFile instances.
+ """
+ return []
+# }}}
+# class _BaseEntry {{{
+
+
+class _BaseEntry(object):
+ """
+ Base class for :class:`~polib.POEntry` and :class:`~polib.MOEntry` classes.
+ This class should **not** be instantiated directly.
+ """
+
+ def __init__(self, *args, **kwargs):
+ """
+ Constructor, accepts the following keyword arguments:
+
+ ``msgid``
+ string, the entry msgid.
+
+ ``msgstr``
+ string, the entry msgstr.
+
+ ``msgid_plural``
+ string, the entry msgid_plural.
+
+ ``msgstr_plural``
+ list, the entry msgstr_plural lines.
+
+ ``msgctxt``
+ string, the entry context (msgctxt).
+
+ ``obsolete``
+ bool, whether the entry is "obsolete" or not.
+
+ ``encoding``
+ string, the encoding to use, defaults to ``default_encoding``
+ global variable (optional).
+ """
+ self.msgid = kwargs.get('msgid', '')
+ self.msgstr = kwargs.get('msgstr', '')
+ self.msgid_plural = kwargs.get('msgid_plural', '')
+ self.msgstr_plural = kwargs.get('msgstr_plural', {})
+ self.msgctxt = kwargs.get('msgctxt', None)
+ self.obsolete = kwargs.get('obsolete', False)
+ self.encoding = kwargs.get('encoding', default_encoding)
+
+ def __unicode__(self, wrapwidth=78):
+ """
+ Returns the unicode representation of the entry.
+ """
+ if self.obsolete:
+ delflag = '#~ '
+ else:
+ delflag = ''
+ ret = []
+ # write the msgctxt if any
+ if self.msgctxt is not None:
+ ret += self._str_field("msgctxt", delflag, "", self.msgctxt,
+ wrapwidth)
+ # write the msgid
+ ret += self._str_field("msgid", delflag, "", self.msgid, wrapwidth)
+ # write the msgid_plural if any
+ if self.msgid_plural:
+ ret += self._str_field("msgid_plural", delflag, "",
+ self.msgid_plural, wrapwidth)
+ if self.msgstr_plural:
+ # write the msgstr_plural if any
+ msgstrs = self.msgstr_plural
+ keys = list(msgstrs)
+ keys.sort()
+ for index in keys:
+ msgstr = msgstrs[index]
+ plural_index = '[%s]' % index
+ ret += self._str_field("msgstr", delflag, plural_index, msgstr,
+ wrapwidth)
+ else:
+ # otherwise write the msgstr
+ ret += self._str_field("msgstr", delflag, "", self.msgstr,
+ wrapwidth)
+ ret.append('')
+ ret = u('\n').join(ret)
+ return ret
+
+ if PY3:
+ def __str__(self):
+ return self.__unicode__()
+ else:
+ def __str__(self):
+ """
+ Returns the string representation of the entry.
+ """
+ return unicode(self).encode(self.encoding)
+
+ def __eq__(self, other):
+ return str(self) == str(other)
+
+ def _str_field(self, fieldname, delflag, plural_index, field,
+ wrapwidth=78):
+ lines = field.splitlines(True)
+ if len(lines) > 1:
+ lines = [''] + lines # start with initial empty line
+ else:
+ escaped_field = escape(field)
+ specialchars_count = 0
+ for c in ['\\', '\n', '\r', '\t', '"']:
+ specialchars_count += field.count(c)
+ # comparison must take into account fieldname length + one space
+ # + 2 quotes (eg. msgid "<string>")
+ flength = len(fieldname) + 3
+ if plural_index:
+ flength += len(plural_index)
+ real_wrapwidth = wrapwidth - flength + specialchars_count
+ if wrapwidth > 0 and len(field) > real_wrapwidth:
+ # Wrap the line but take field name into account
+ lines = [''] + [unescape(item) for item in wrap(
+ escaped_field,
+ wrapwidth - 2, # 2 for quotes ""
+ drop_whitespace=False,
+ break_long_words=False
+ )]
+ else:
+ lines = [field]
+ if fieldname.startswith('previous_'):
+ # quick and dirty trick to get the real field name
+ fieldname = fieldname[9:]
+
+ ret = ['%s%s%s "%s"' % (delflag, fieldname, plural_index,
+ escape(lines.pop(0)))]
+ for line in lines:
+ ret.append('%s"%s"' % (delflag, escape(line)))
+ return ret
+# }}}
+# class POEntry {{{
+
+
+class POEntry(_BaseEntry):
+ """
+ Represents a po file entry.
+ """
+
+ def __init__(self, *args, **kwargs):
+ """
+ Constructor, accepts the following keyword arguments:
+
+ ``comment``
+ string, the entry comment.
+
+ ``tcomment``
+ string, the entry translator comment.
+
+ ``occurrences``
+ list, the entry occurrences.
+
+ ``flags``
+ list, the entry flags.
+
+ ``previous_msgctxt``
+ string, the entry previous context.
+
+ ``previous_msgid``
+ string, the entry previous msgid.
+
+ ``previous_msgid_plural``
+ string, the entry previous msgid_plural.
+
+ ``linenum``
+ integer, the line number of the entry
+ """
+ _BaseEntry.__init__(self, *args, **kwargs)
+ self.comment = kwargs.get('comment', '')
+ self.tcomment = kwargs.get('tcomment', '')
+ self.occurrences = kwargs.get('occurrences', [])
+ self.flags = kwargs.get('flags', [])
+ self.previous_msgctxt = kwargs.get('previous_msgctxt', None)
+ self.previous_msgid = kwargs.get('previous_msgid', None)
+ self.previous_msgid_plural = kwargs.get('previous_msgid_plural', None)
+ self.linenum = kwargs.get('linenum', None)
+
+ def __unicode__(self, wrapwidth=78):
+ """
+ Returns the unicode representation of the entry.
+ """
+ ret = []
+ # comments first, if any (with text wrapping as xgettext does)
+ if self.obsolete:
+ comments = [('tcomment', '# ')]
+ else:
+ comments = [('comment', '#. '), ('tcomment', '# ')]
+ for c in comments:
+ val = getattr(self, c[0])
+ if val:
+ for comment in val.split('\n'):
+ if wrapwidth > 0 and len(comment) + len(c[1]) > wrapwidth:
+ ret += wrap(
+ comment,
+ wrapwidth,
+ initial_indent=c[1],
+ subsequent_indent=c[1],
+ break_long_words=False
+ )
+ else:
+ ret.append('%s%s' % (c[1], comment))
+
+ # occurrences (with text wrapping as xgettext does)
+ if not self.obsolete and self.occurrences:
+ filelist = []
+ for fpath, lineno in self.occurrences:
+ if lineno:
+ filelist.append('%s:%s' % (fpath, lineno))
+ else:
+ filelist.append(fpath)
+ filestr = ' '.join(filelist)
+ if wrapwidth > 0 and len(filestr) + 3 > wrapwidth:
+ # textwrap split words that contain hyphen, this is not
+ # what we want for filenames, so the dirty hack is to
+ # temporally replace hyphens with a char that a file cannot
+ # contain, like "*"
+ ret += [l.replace('*', '-') for l in wrap(
+ filestr.replace('-', '*'),
+ wrapwidth,
+ initial_indent='#: ',
+ subsequent_indent='#: ',
+ break_long_words=False
+ )]
+ else:
+ ret.append('#: ' + filestr)
+
+ # flags (TODO: wrapping ?)
+ if self.flags:
+ ret.append('#, %s' % ', '.join(self.flags))
+
+ # previous context and previous msgid/msgid_plural
+ fields = ['previous_msgctxt', 'previous_msgid',
+ 'previous_msgid_plural']
+ if self.obsolete:
+ prefix = "#~| "
+ else:
+ prefix = "#| "
+ for f in fields:
+ val = getattr(self, f)
+ if val:
+ ret += self._str_field(f, prefix, "", val, wrapwidth)
+
+ ret.append(_BaseEntry.__unicode__(self, wrapwidth))
+ ret = u('\n').join(ret)
+ return ret
+
+ def __cmp__(self, other):
+ """
+ Called by comparison operations if rich comparison is not defined.
+ """
+
+ # First: Obsolete test
+ if self.obsolete != other.obsolete:
+ if self.obsolete:
+ return -1
+ else:
+ return 1
+ # Work on a copy to protect original
+ occ1 = sorted(self.occurrences[:])
+ occ2 = sorted(other.occurrences[:])
+ pos = 0
+ for entry1 in occ1:
+ try:
+ entry2 = occ2[pos]
+ except IndexError:
+ return 1
+ pos = pos + 1
+ if entry1[0] != entry2[0]:
+ if entry1[0] > entry2[0]:
+ return 1
+ else:
+ return -1
+ if entry1[1] != entry2[1]:
+ if entry1[1] > entry2[1]:
+ return 1
+ else:
+ return -1
+ # Compare msgid_plural if set
+ if self.msgid_plural:
+ if not other.msgid_plural:
+ return 1
+ for pos in self.msgid_plural:
+ if pos not in other.msgid_plural:
+ return 1
+ if self.msgid_plural[pos] > other.msgid_plural[pos]:
+ return 1
+ if self.msgid_plural[pos] < other.msgid_plural[pos]:
+ return -1
+ # Finally: Compare message ID
+ if self.msgid > other.msgid:
+ return 1
+ elif self.msgid < other.msgid:
+ return -1
+ return 0
+
+ def __gt__(self, other):
+ return self.__cmp__(other) > 0
+
+ def __lt__(self, other):
+ return self.__cmp__(other) < 0
+
+ def __ge__(self, other):
+ return self.__cmp__(other) >= 0
+
+ def __le__(self, other):
+ return self.__cmp__(other) <= 0
+
+ def __eq__(self, other):
+ return self.__cmp__(other) == 0
+
+ def __ne__(self, other):
+ return self.__cmp__(other) != 0
+
+ def translated(self):
+ """
+ Returns ``True`` if the entry has been translated or ``False``
+ otherwise.
+ """
+ if self.obsolete or 'fuzzy' in self.flags:
+ return False
+ if self.msgstr != '':
+ return True
+ if self.msgstr_plural:
+ for pos in self.msgstr_plural:
+ if self.msgstr_plural[pos] == '':
+ return False
+ return True
+ return False
+
+ def merge(self, other):
+ """
+ Merge the current entry with the given pot entry.
+ """
+ self.msgid = other.msgid
+ self.msgctxt = other.msgctxt
+ self.occurrences = other.occurrences
+ self.comment = other.comment
+ fuzzy = 'fuzzy' in self.flags
+ self.flags = other.flags[:] # clone flags
+ if fuzzy:
+ self.flags.append('fuzzy')
+ self.msgid_plural = other.msgid_plural
+ self.obsolete = other.obsolete
+ self.previous_msgctxt = other.previous_msgctxt
+ self.previous_msgid = other.previous_msgid
+ self.previous_msgid_plural = other.previous_msgid_plural
+ if other.msgstr_plural:
+ for pos in other.msgstr_plural:
+ try:
+ # keep existing translation at pos if any
+ self.msgstr_plural[pos]
+ except KeyError:
+ self.msgstr_plural[pos] = ''
+
+ def __hash__(self):
+ return hash((self.msgid, self.msgstr))
+# }}}
+# class MOEntry {{{
+
+
+class MOEntry(_BaseEntry):
+ """
+ Represents a mo file entry.
+ """
+ def __init__(self, *args, **kwargs):
+ """
+ Constructor, accepts the following keyword arguments,
+ for consistency with :class:`~polib.POEntry`:
+
+ ``comment``
+ ``tcomment``
+ ``occurrences``
+ ``flags``
+ ``previous_msgctxt``
+ ``previous_msgid``
+ ``previous_msgid_plural``
+
+ Note: even though these keyword arguments are accepted,
+ they hold no real meaning in the context of MO files
+ and are simply ignored.
+ """
+ _BaseEntry.__init__(self, *args, **kwargs)
+ self.comment = ''
+ self.tcomment = ''
+ self.occurrences = []
+ self.flags = []
+ self.previous_msgctxt = None
+ self.previous_msgid = None
+ self.previous_msgid_plural = None
+
+ def __hash__(self):
+ return hash((self.msgid, self.msgstr))
+
+# }}}
+# class _POFileParser {{{
+
+
+class _POFileParser(object):
+ """
+ A finite state machine to parse efficiently and correctly po
+ file format.
+ """
+
+ def __init__(self, pofile, *args, **kwargs):
+ """
+ Constructor.
+
+ Keyword arguments:
+
+ ``pofile``
+ string, path to the po file or its content
+
+ ``encoding``
+ string, the encoding to use, defaults to ``default_encoding``
+ global variable (optional).
+
+ ``check_for_duplicates``
+ whether to check for duplicate entries when adding entries to the
+ file (optional, default: ``False``).
+ """
+ enc = kwargs.get('encoding', default_encoding)
+ if _is_file(pofile):
+ try:
+ self.fhandle = io.open(pofile, 'rt', encoding=enc)
+ except LookupError:
+ enc = default_encoding
+ self.fhandle = io.open(pofile, 'rt', encoding=enc)
+ else:
+ self.fhandle = pofile.splitlines()
+
+ klass = kwargs.get('klass')
+ if klass is None:
+ klass = POFile
+ self.instance = klass(
+ pofile=pofile,
+ encoding=enc,
+ check_for_duplicates=kwargs.get('check_for_duplicates', False)
+ )
+ self.transitions = {}
+ self.current_line = 0
+ self.current_entry = POEntry(linenum=self.current_line)
+ self.current_state = 'st'
+ self.current_token = None
+ # two memo flags used in handlers
+ self.msgstr_index = 0
+ self.entry_obsolete = 0
+ # Configure the state machine, by adding transitions.
+ # Signification of symbols:
+ # * ST: Beginning of the file (start)
+ # * HE: Header
+ # * TC: a translation comment
+ # * GC: a generated comment
+ # * OC: a file/line occurrence
+ # * FL: a flags line
+ # * CT: a message context
+ # * PC: a previous msgctxt
+ # * PM: a previous msgid
+ # * PP: a previous msgid_plural
+ # * MI: a msgid
+ # * MP: a msgid plural
+ # * MS: a msgstr
+ # * MX: a msgstr plural
+ # * MC: a msgid or msgstr continuation line
+ all = ['st', 'he', 'gc', 'oc', 'fl', 'ct', 'pc', 'pm', 'pp', 'tc',
+ 'ms', 'mp', 'mx', 'mi']
+
+ self.add('tc', ['st', 'he'], 'he')
+ self.add('tc', ['gc', 'oc', 'fl', 'tc', 'pc', 'pm', 'pp', 'ms',
+ 'mp', 'mx', 'mi'], 'tc')
+ self.add('gc', all, 'gc')
+ self.add('oc', all, 'oc')
+ self.add('fl', all, 'fl')
+ self.add('pc', all, 'pc')
+ self.add('pm', all, 'pm')
+ self.add('pp', all, 'pp')
+ self.add('ct', ['st', 'he', 'gc', 'oc', 'fl', 'tc', 'pc', 'pm',
+ 'pp', 'ms', 'mx'], 'ct')
+ self.add('mi', ['st', 'he', 'gc', 'oc', 'fl', 'ct', 'tc', 'pc',
+ 'pm', 'pp', 'ms', 'mx'], 'mi')
+ self.add('mp', ['tc', 'gc', 'pc', 'pm', 'pp', 'mi'], 'mp')
+ self.add('ms', ['mi', 'mp', 'tc'], 'ms')
+ self.add('mx', ['mi', 'mx', 'mp', 'tc'], 'mx')
+ self.add('mc', ['ct', 'mi', 'mp', 'ms', 'mx', 'pm', 'pp', 'pc'], 'mc')
+
+ def parse(self):
+ """
+ Run the state machine, parse the file line by line and call process()
+ with the current matched symbol.
+ """
+
+ keywords = {
+ 'msgctxt': 'ct',
+ 'msgid': 'mi',
+ 'msgstr': 'ms',
+ 'msgid_plural': 'mp',
+ }
+ prev_keywords = {
+ 'msgid_plural': 'pp',
+ 'msgid': 'pm',
+ 'msgctxt': 'pc',
+ }
+ tokens = []
+ for line in self.fhandle:
+ self.current_line += 1
+ line = line.strip()
+ if line == '':
+ continue
+
+ tokens = line.split(None, 2)
+ nb_tokens = len(tokens)
+
+ if tokens[0] == '#~|':
+ continue
+
+ if tokens[0] == '#~' and nb_tokens > 1:
+ line = line[3:].strip()
+ tokens = tokens[1:]
+ nb_tokens -= 1
+ self.entry_obsolete = 1
+ else:
+ self.entry_obsolete = 0
+
+ # Take care of keywords like
+ # msgid, msgid_plural, msgctxt & msgstr.
+ if tokens[0] in keywords and nb_tokens > 1:
+ line = line[len(tokens[0]):].lstrip()
+ if re.search(r'([^\\]|^)"', line[1:-1]):
+ raise IOError('Syntax error in po file %s (line %s): '
+ 'unescaped double quote found' %
+ (self.instance.fpath, self.current_line))
+ self.current_token = line
+ self.process(keywords[tokens[0]])
+ continue
+
+ self.current_token = line
+
+ if tokens[0] == '#:':
+ if nb_tokens <= 1:
+ continue
+ # we are on a occurrences line
+ self.process('oc')
+
+ elif line[:1] == '"':
+ # we are on a continuation line
+ if re.search(r'([^\\]|^)"', line[1:-1]):
+ raise IOError('Syntax error in po file %s (line %s): '
+ 'unescaped double quote found' %
+ (self.instance.fpath, self.current_line))
+ self.process('mc')
+
+ elif line[:7] == 'msgstr[':
+ # we are on a msgstr plural
+ self.process('mx')
+
+ elif tokens[0] == '#,':
+ if nb_tokens <= 1:
+ continue
+ # we are on a flags line
+ self.process('fl')
+
+ elif tokens[0] == '#' or tokens[0].startswith('##'):
+ if line == '#':
+ line += ' '
+ # we are on a translator comment line
+ self.process('tc')
+
+ elif tokens[0] == '#.':
+ if nb_tokens <= 1:
+ continue
+ # we are on a generated comment line
+ self.process('gc')
+
+ elif tokens[0] == '#|':
+ if nb_tokens <= 1:
+ raise IOError('Syntax error in po file %s (line %s)' %
+ (self.instance.fpath, self.current_line))
+
+ # Remove the marker and any whitespace right after that.
+ line = line[2:].lstrip()
+ self.current_token = line
+
+ if tokens[1].startswith('"'):
+ # Continuation of previous metadata.
+ self.process('mc')
+ continue
+
+ if nb_tokens == 2:
+ # Invalid continuation line.
+ raise IOError('Syntax error in po file %s (line %s): '
+ 'invalid continuation line' %
+ (self.instance.fpath, self.current_line))
+
+ # we are on a "previous translation" comment line,
+ if tokens[1] not in prev_keywords:
+ # Unknown keyword in previous translation comment.
+ raise IOError('Syntax error in po file %s (line %s): '
+ 'unknown keyword %s' %
+ (self.instance.fpath, self.current_line,
+ tokens[1]))
+
+ # Remove the keyword and any whitespace
+ # between it and the starting quote.
+ line = line[len(tokens[1]):].lstrip()
+ self.current_token = line
+ self.process(prev_keywords[tokens[1]])
+
+ else:
+ raise IOError('Syntax error in po file %s (line %s)' %
+ (self.instance.fpath, self.current_line))
+
+ if self.current_entry and len(tokens) > 0 and \
+ not tokens[0].startswith('#'):
+ # since entries are added when another entry is found, we must add
+ # the last entry here (only if there are lines). Trailing comments
+ # are ignored
+ self.instance.append(self.current_entry)
+
+ # before returning the instance, check if there's metadata and if
+ # so extract it in a dict
+ metadataentry = self.instance.find('')
+ if metadataentry: # metadata found
+ # remove the entry
+ self.instance.remove(metadataentry)
+ self.instance.metadata_is_fuzzy = metadataentry.flags
+ key = None
+ for msg in metadataentry.msgstr.splitlines():
+ try:
+ key, val = msg.split(':', 1)
+ self.instance.metadata[key] = val.strip()
+ except (ValueError, KeyError):
+ if key is not None:
+ self.instance.metadata[key] += '\n' + msg.strip()
+ # close opened file
+ if not isinstance(self.fhandle, list): # must be file
+ self.fhandle.close()
+ return self.instance
+
+ def add(self, symbol, states, next_state):
+ """
+ Add a transition to the state machine.
+
+ Keywords arguments:
+
+ ``symbol``
+ string, the matched token (two chars symbol).
+
+ ``states``
+ list, a list of states (two chars symbols).
+
+ ``next_state``
+ the next state the fsm will have after the action.
+ """
+ for state in states:
+ action = getattr(self, 'handle_%s' % next_state)
+ self.transitions[(symbol, state)] = (action, next_state)
+
+ def process(self, symbol):
+ """
+ Process the transition corresponding to the current state and the
+ symbol provided.
+
+ Keywords arguments:
+
+ ``symbol``
+ string, the matched token (two chars symbol).
+
+ ``linenum``
+ integer, the current line number of the parsed file.
+ """
+ try:
+ (action, state) = self.transitions[(symbol, self.current_state)]
+ if action():
+ self.current_state = state
+ except Exception:
+ raise IOError('Syntax error in po file (line %s)' %
+ self.current_line)
+
+ # state handlers
+
+ def handle_he(self):
+ """Handle a header comment."""
+ if self.instance.header != '':
+ self.instance.header += '\n'
+ self.instance.header += self.current_token[2:]
+ return 1
+
+ def handle_tc(self):
+ """Handle a translator comment."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ if self.current_entry.tcomment != '':
+ self.current_entry.tcomment += '\n'
+ tcomment = self.current_token.lstrip('#')
+ if tcomment.startswith(' '):
+ tcomment = tcomment[1:]
+ self.current_entry.tcomment += tcomment
+ return True
+
+ def handle_gc(self):
+ """Handle a generated comment."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ if self.current_entry.comment != '':
+ self.current_entry.comment += '\n'
+ self.current_entry.comment += self.current_token[3:]
+ return True
+
+ def handle_oc(self):
+ """Handle a file:num occurrence."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ occurrences = self.current_token[3:].split()
+ for occurrence in occurrences:
+ if occurrence != '':
+ try:
+ fil, line = occurrence.rsplit(':', 1)
+ if not line.isdigit():
+ fil = fil + line
+ line = ''
+ self.current_entry.occurrences.append((fil, line))
+ except (ValueError, AttributeError):
+ self.current_entry.occurrences.append((occurrence, ''))
+ return True
+
+ def handle_fl(self):
+ """Handle a flags line."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ self.current_entry.flags += [c.strip() for c in
+ self.current_token[3:].split(',')]
+ return True
+
+ def handle_pp(self):
+ """Handle a previous msgid_plural line."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ self.current_entry.previous_msgid_plural = \
+ unescape(self.current_token[1:-1])
+ return True
+
+ def handle_pm(self):
+ """Handle a previous msgid line."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ self.current_entry.previous_msgid = \
+ unescape(self.current_token[1:-1])
+ return True
+
+ def handle_pc(self):
+ """Handle a previous msgctxt line."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ self.current_entry.previous_msgctxt = \
+ unescape(self.current_token[1:-1])
+ return True
+
+ def handle_ct(self):
+ """Handle a msgctxt."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ self.current_entry.msgctxt = unescape(self.current_token[1:-1])
+ return True
+
+ def handle_mi(self):
+ """Handle a msgid."""
+ if self.current_state in ['mc', 'ms', 'mx']:
+ self.instance.append(self.current_entry)
+ self.current_entry = POEntry(linenum=self.current_line)
+ self.current_entry.obsolete = self.entry_obsolete
+ self.current_entry.msgid = unescape(self.current_token[1:-1])
+ return True
+
+ def handle_mp(self):
+ """Handle a msgid plural."""
+ self.current_entry.msgid_plural = unescape(self.current_token[1:-1])
+ return True
+
+ def handle_ms(self):
+ """Handle a msgstr."""
+ self.current_entry.msgstr = unescape(self.current_token[1:-1])
+ return True
+
+ def handle_mx(self):
+ """Handle a msgstr plural."""
+ index = self.current_token[7]
+ value = self.current_token[self.current_token.find('"') + 1:-1]
+ self.current_entry.msgstr_plural[int(index)] = unescape(value)
+ self.msgstr_index = int(index)
+ return True
+
+ def handle_mc(self):
+ """Handle a msgid or msgstr continuation line."""
+ token = unescape(self.current_token[1:-1])
+ if self.current_state == 'ct':
+ self.current_entry.msgctxt += token
+ elif self.current_state == 'mi':
+ self.current_entry.msgid += token
+ elif self.current_state == 'mp':
+ self.current_entry.msgid_plural += token
+ elif self.current_state == 'ms':
+ self.current_entry.msgstr += token
+ elif self.current_state == 'mx':
+ self.current_entry.msgstr_plural[self.msgstr_index] += token
+ elif self.current_state == 'pp':
+ self.current_entry.previous_msgid_plural += token
+ elif self.current_state == 'pm':
+ self.current_entry.previous_msgid += token
+ elif self.current_state == 'pc':
+ self.current_entry.previous_msgctxt += token
+ # don't change the current state
+ return False
+# }}}
+# class _MOFileParser {{{
+
+
+class _MOFileParser(object):
+ """
+ A class to parse binary mo files.
+ """
+
+ def __init__(self, mofile, *args, **kwargs):
+ """
+ Constructor.
+
+ Keyword arguments:
+
+ ``mofile``
+ string, path to the mo file or its content
+
+ ``encoding``
+ string, the encoding to use, defaults to ``default_encoding``
+ global variable (optional).
+
+ ``check_for_duplicates``
+ whether to check for duplicate entries when adding entries to the
+ file (optional, default: ``False``).
+ """
+ self.fhandle = open(mofile, 'rb')
+
+ klass = kwargs.get('klass')
+ if klass is None:
+ klass = MOFile
+ self.instance = klass(
+ fpath=mofile,
+ encoding=kwargs.get('encoding', default_encoding),
+ check_for_duplicates=kwargs.get('check_for_duplicates', False)
+ )
+
+ def __del__(self):
+ """
+ Make sure the file is closed, this prevents warnings on unclosed file
+ when running tests with python >= 3.2.
+ """
+ if self.fhandle:
+ self.fhandle.close()
+
+ def parse(self):
+ """
+ Build the instance with the file handle provided in the
+ constructor.
+ """
+ # parse magic number
+ magic_number = self._readbinary('<I', 4)
+ if magic_number == MOFile.MAGIC:
+ ii = '<II'
+ elif magic_number == MOFile.MAGIC_SWAPPED:
+ ii = '>II'
+ else:
+ raise IOError('Invalid mo file, magic number is incorrect !')
+ self.instance.magic_number = magic_number
+ # parse the version number and the number of strings
+ version, numofstrings = self._readbinary(ii, 8)
+ # from MO file format specs: "A program seeing an unexpected major
+ # revision number should stop reading the MO file entirely"
+ if version not in (0, 1):
+ raise IOError('Invalid mo file, unexpected major revision number')
+ self.instance.version = version
+ # original strings and translation strings hash table offset
+ msgids_hash_offset, msgstrs_hash_offset = self._readbinary(ii, 8)
+ # move to msgid hash table and read length and offset of msgids
+ self.fhandle.seek(msgids_hash_offset)
+ msgids_index = []
+ for i in range(numofstrings):
+ msgids_index.append(self._readbinary(ii, 8))
+ # move to msgstr hash table and read length and offset of msgstrs
+ self.fhandle.seek(msgstrs_hash_offset)
+ msgstrs_index = []
+ for i in range(numofstrings):
+ msgstrs_index.append(self._readbinary(ii, 8))
+ # build entries
+ encoding = self.instance.encoding
+ for i in range(numofstrings):
+ self.fhandle.seek(msgids_index[i][1])
+ msgid = self.fhandle.read(msgids_index[i][0])
+
+ self.fhandle.seek(msgstrs_index[i][1])
+ msgstr = self.fhandle.read(msgstrs_index[i][0])
+ if i == 0 and not msgid: # metadata
+ raw_metadata, metadata = msgstr.split(b('\n')), {}
+ for line in raw_metadata:
+ tokens = line.split(b(':'), 1)
+ if tokens[0] != b(''):
+ try:
+ k = tokens[0].decode(encoding)
+ v = tokens[1].decode(encoding)
+ metadata[k] = v.strip()
+ except IndexError:
+ metadata[k] = u('')
+ self.instance.metadata = metadata
+ continue
+ # test if we have a plural entry
+ msgid_tokens = msgid.split(b('\0'))
+ if len(msgid_tokens) > 1:
+ entry = self._build_entry(
+ msgid=msgid_tokens[0],
+ msgid_plural=msgid_tokens[1],
+ msgstr_plural=dict((k, v) for k, v in
+ enumerate(msgstr.split(b('\0'))))
+ )
+ else:
+ entry = self._build_entry(msgid=msgid, msgstr=msgstr)
+ self.instance.append(entry)
+ # close opened file
+ self.fhandle.close()
+ return self.instance
+
+ def _build_entry(self, msgid, msgstr=None, msgid_plural=None,
+ msgstr_plural=None):
+ msgctxt_msgid = msgid.split(b('\x04'))
+ encoding = self.instance.encoding
+ if len(msgctxt_msgid) > 1:
+ kwargs = {
+ 'msgctxt': msgctxt_msgid[0].decode(encoding),
+ 'msgid': msgctxt_msgid[1].decode(encoding),
+ }
+ else:
+ kwargs = {'msgid': msgid.decode(encoding)}
+ if msgstr:
+ kwargs['msgstr'] = msgstr.decode(encoding)
+ if msgid_plural:
+ kwargs['msgid_plural'] = msgid_plural.decode(encoding)
+ if msgstr_plural:
+ for k in msgstr_plural:
+ msgstr_plural[k] = msgstr_plural[k].decode(encoding)
+ kwargs['msgstr_plural'] = msgstr_plural
+ return MOEntry(**kwargs)
+
+ def _readbinary(self, fmt, numbytes):
+ """
+ Private method that unpack n bytes of data using format <fmt>.
+ It returns a tuple or a mixed value if the tuple length is 1.
+ """
+ bytes = self.fhandle.read(numbytes)
+ tup = struct.unpack(fmt, bytes)
+ if len(tup) == 1:
+ return tup[0]
+ return tup
+# }}}
+# class TextWrapper {{{
+
+
+class TextWrapper(textwrap.TextWrapper):
+ """
+ Subclass of textwrap.TextWrapper that backport the
+ drop_whitespace option.
+ """
+ def __init__(self, *args, **kwargs):
+ drop_whitespace = kwargs.pop('drop_whitespace', True)
+ textwrap.TextWrapper.__init__(self, *args, **kwargs)
+ self.drop_whitespace = drop_whitespace
+
+ def _wrap_chunks(self, chunks):
+ """_wrap_chunks(chunks : [string]) -> [string]
+
+ Wrap a sequence of text chunks and return a list of lines of
+ length 'self.width' or less. (If 'break_long_words' is false,
+ some lines may be longer than this.) Chunks correspond roughly
+ to words and the whitespace between them: each chunk is
+ indivisible (modulo 'break_long_words'), but a line break can
+ come between any two chunks. Chunks should not have internal
+ whitespace; ie. a chunk is either all whitespace or a "word".
+ Whitespace chunks will be removed from the beginning and end of
+ lines, but apart from that whitespace is preserved.
+ """
+ lines = []
+ if self.width <= 0:
+ raise ValueError("invalid width %r (must be > 0)" % self.width)
+
+ # Arrange in reverse order so items can be efficiently popped
+ # from a stack of chucks.
+ chunks.reverse()
+
+ while chunks:
+
+ # Start the list of chunks that will make up the current line.
+ # cur_len is just the length of all the chunks in cur_line.
+ cur_line = []
+ cur_len = 0
+
+ # Figure out which static string will prefix this line.
+ if lines:
+ indent = self.subsequent_indent
+ else:
+ indent = self.initial_indent
+
+ # Maximum width for this line.
+ width = self.width - len(indent)
+
+ # First chunk on line is whitespace -- drop it, unless this
+ # is the very beginning of the text (ie. no lines started yet).
+ if self.drop_whitespace and chunks[-1].strip() == '' and lines:
+ del chunks[-1]
+
+ while chunks:
+ l = len(chunks[-1])
+
+ # Can at least squeeze this chunk onto the current line.
+ if cur_len + l <= width:
+ cur_line.append(chunks.pop())
+ cur_len += l
+
+ # Nope, this line is full.
+ else:
+ break
+
+ # The current line is full, and the next chunk is too big to
+ # fit on *any* line (not just this one).
+ if chunks and len(chunks[-1]) > width:
+ self._handle_long_word(chunks, cur_line, cur_len, width)
+
+ # If the last chunk on this line is all whitespace, drop it.
+ if self.drop_whitespace and cur_line and not cur_line[-1].strip():
+ del cur_line[-1]
+
+ # Convert current line back to a string and store it in list
+ # of all lines (return value).
+ if cur_line:
+ lines.append(indent + ''.join(cur_line))
+
+ return lines
+# }}}
+# function wrap() {{{
+
+
+def wrap(text, width=70, **kwargs):
+ """
+ Wrap a single paragraph of text, returning a list of wrapped lines.
+ """
+ if sys.version_info < (2, 6):
+ return TextWrapper(width=width, **kwargs).wrap(text)
+ return textwrap.wrap(text, width=width, **kwargs)
+
+# }}}
diff --git a/packaging/win32/AdvUninstLog.nsh b/packaging/win32/macros/AdvUninstLog.nsh
index f48049164..a932aa873 100644
--- a/packaging/win32/AdvUninstLog.nsh
+++ b/packaging/win32/macros/AdvUninstLog.nsh
@@ -425,7 +425,7 @@
${uninstall.log_install} "${UNLOG_PART}${ID}" "${EXCLU_LIST}" "$OUTDIR"
${uninstall.log_mergeID} "${UNLOG_PART}${ID}"
- !undef ID ${__LINE__}
+ !undef ID
!verbose pop
!macroend
diff --git a/packaging/win32/AdvUninstLog.txt b/packaging/win32/macros/AdvUninstLog.txt
index c294c3df2..c294c3df2 100644
--- a/packaging/win32/AdvUninstLog.txt
+++ b/packaging/win32/macros/AdvUninstLog.txt
diff --git a/packaging/win32/macros/RequireLatestNSIS.nsh b/packaging/win32/macros/RequireLatestNSIS.nsh
new file mode 100644
index 000000000..7d6308e58
--- /dev/null
+++ b/packaging/win32/macros/RequireLatestNSIS.nsh
@@ -0,0 +1,4 @@
+!searchparse ${NSIS_VERSION} "v" V
+!if ${V} < 3.0
+ !error "You only have NSIS ${V}, but NSIS 3.0 or later is required to support Unicode and Windows 10. Please upgrade to NSIS 3.0 or later and try again."
+!endif
diff --git a/packaging/win32/macros/SHMessageBoxCheck.nsh b/packaging/win32/macros/SHMessageBoxCheck.nsh
new file mode 100644
index 000000000..502923bf2
--- /dev/null
+++ b/packaging/win32/macros/SHMessageBoxCheck.nsh
@@ -0,0 +1,94 @@
+# SHMessageBoxCheck
+# Works like MessageBox but includes a checkbox that gives the user the option not to show the message box again.
+# In that case the return value (first value on the stack) is always set to the last user choice
+#
+# See
+# http://nsis.sourceforge.net/SHMessageBoxCheck (documentation)
+# https://msdn.microsoft.com/library/windows/desktop/bb773836.aspx (implementation details)
+#
+
+# types to indicate the buttons displayed in the message box
+!define MB_OK 0x00000000
+!define MB_OKCANCEL 0x00000001
+!define MB_ABORTRETRYIGNORE 0x00000002 # not officially supported, use at your own risk!
+!define MB_YESNOCANCEL 0x00000003 # not officially supported, use at your own risk!
+!define MB_YESNO 0x00000004
+!define MB_RETRYCANCEL 0x00000005 # not officially supported, use at your own risk!
+!define MB_CANCELTRYCONTINUE 0x00000006 # not officially supported, use at your own risk!
+!define MB_HELP 0x00004000 # not officially supported, use at your own risk!
+
+# types to display an icon in the message box
+!define MB_ICONHAND 0x00000010
+!define MB_ICONQUESTION 0x00000020 # MS bug: Same as MB_ICONEXCLAMATION
+!define MB_ICONEXCLAMATION 0x00000030
+!define MB_ICONINFORMATION 0x00000040
+
+
+# return values
+!define IDOK 1
+!define IDCANCEL 2
+!define IDABORT 3
+!define IDRETRY 4
+!define IDIGNORE 5
+!define IDYES 6
+!define IDNO 7
+!define IDCONTINUE 11
+!define IDTRYAGAIN 10
+
+
+
+# the user's previous choice (i.e. the button clicked in the message box)
+Var _lastReturnValue
+
+# The value that the call to SHMessageBoxCheck should return when the user chose not to display the message box again
+!define _DEFAULT 9999
+
+# Windows XP does not expose the function name, so we have to specify the function by ordinal value
+!ifdef NSIS_UNICODE
+ !define _SHMessageBoxCheck_Ordinal 191
+!else
+ !define _SHMessageBoxCheck_Ordinal 185
+!endif
+
+
+
+!macro SHMessageBoxCheckInit _UNIQUE_STRING
+ # SHMessageBoxCheck stores the user's choice not to display the message box again in the registry, see
+ # HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DontShowMeThisDialogAgain
+ !ifdef _PSZ_REG_VAL
+ !error "Only call SHMessageBoxCheckInit once and make sure to call SHMessageBoxCheckCleanup before using it again"
+ !else
+ # the unique string used to identify this message (and name of the registry value used to store the checkbox status)
+ !define _PSZ_REG_VAL ${_UNIQUE_STRING}
+ !endif
+
+ # make sure the registry value is not yet set (for whatever reason)
+ ${SHMessageBoxCheckCleanup}
+!macroend
+!define SHMessageBoxCheckInit "!insertmacro SHMessageBoxCheckInit"
+
+
+!macro SHMessageBoxCheckCleanup
+ # delete the registry key that is used to store the checkbox status so we can start fresh next time
+ DeleteRegValue HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DontShowMeThisDialogAgain" "${_PSZ_REG_VAL}"
+!macroend
+!define SHMessageBoxCheckCleanup "!insertmacro SHMessageBoxCheckCleanup"
+
+
+!macro SHMessageBoxCheck _CAPTION _TEXT _TYPE
+ # this would be the simple way (by name)
+ # System::Call "shlwapi::SHMessageBoxCheck(p $HWNDPARENT, t '${_TEXT}', t '${_CAPTION}', i ${_TYPE}, i ${_DEFAULT}, t '${_PSZ_REG_VAL}') i .r0"
+
+ # for backwards-compatibility we get the process address by specifying the function's ordinal value
+ System::Call "kernel32::GetModuleHandle(t 'shlwapi.dll') p .s"
+ System::Call "kernel32::GetProcAddress(p s, i ${_SHMessageBoxCheck_Ordinal}) p .r0"
+ System::Call "::$0(p $HWNDPARENT, t '${_TEXT}', t '${_CAPTION}', i ${_TYPE}, i ${_DEFAULT}, t '${_PSZ_REG_VAL}') i .r0"
+
+ # save the user's choice (unless the default value was returned - then don't update and return the saved choice)
+ StrCmp $0 ${_DEFAULT} +2 0
+ StrCpy $_lastReturnValue $0
+
+ # push the return value to the stack
+ Push $_lastReturnValue
+!macroend
+!define SHMessageBoxCheck "!insertmacro SHMessageBoxCheck" \ No newline at end of file
diff --git a/packaging/win32/macros/VersionCompleteXXXX.nsh b/packaging/win32/macros/VersionCompleteXXXX.nsh
new file mode 100644
index 000000000..6ea780508
--- /dev/null
+++ b/packaging/win32/macros/VersionCompleteXXXX.nsh
@@ -0,0 +1,60 @@
+; See http://nsis.sourceforge.net/VersionCompleteXXXX for documentation
+!macro VersionCompleteXXXRevision _INPUT_VALUE _OUTPUT_SYMBOL _REVISION
+ !searchparse /noerrors ${_INPUT_VALUE} "" _VERSION_1 "." _VERSION_2 "." _VERSION_3 "." _VERSION_4
+ !ifndef _VERSION_1
+ !define _VERSION_1 0
+ !else if `${_VERSION_1}` == ``
+ !define /redef _VERSION_1 0
+ !endif
+ !ifndef _VERSION_2
+ !define _VERSION_2 0
+ !else if `${_VERSION_2}` == ``
+ !define /redef _VERSION_2 0
+ !endif
+ !ifndef _VERSION_3
+ !define _VERSION_3 0
+ !else if `${_VERSION_3}` == ``
+ !define /redef _VERSION_3 0
+ !endif
+ !ifndef _VERSION_4
+ !define _VERSION_4 0
+ !else if `${_VERSION_4}` == ``
+ !define /redef _VERSION_4 0
+ !endif
+ !define ${_OUTPUT_SYMBOL} ${_VERSION_1}.${_VERSION_2}.${_VERSION_3}.${_REVISION}
+ !undef _VERSION_1
+ !undef _VERSION_2
+ !undef _VERSION_3
+ !undef _VERSION_4
+ !undef _REVISION
+!macroend
+!define VersionCompleteXXXRevision `!insertmacro VersionCompleteXXXRevision`
+!macro VersionCompleteXXXX _INPUT_VALUE _OUTPUT_SYMBOL
+ !searchparse /noerrors ${_INPUT_VALUE} "" _VERSION_1 "." _VERSION_2 "." _VERSION_3 "." _VERSION_4
+ !ifndef _VERSION_1
+ !define _VERSION_1 0
+ !else if `${_VERSION_1}` == ``
+ !define /redef _VERSION_1 0
+ !endif
+ !ifndef _VERSION_2
+ !define _VERSION_2 0
+ !else if `${_VERSION_2}` == ``
+ !define /redef _VERSION_2 0
+ !endif
+ !ifndef _VERSION_3
+ !define _VERSION_3 0
+ !else if `${_VERSION_3}` == ``
+ !define /redef _VERSION_3 0
+ !endif
+ !ifndef _VERSION_4
+ !define _VERSION_4 0
+ !else if `${_VERSION_4}` == ``
+ !define /redef _VERSION_4 0
+ !endif
+ !define ${_OUTPUT_SYMBOL} ${_VERSION_1}.${_VERSION_2}.${_VERSION_3}.${_VERSION_4}
+ !undef _VERSION_1
+ !undef _VERSION_2
+ !undef _VERSION_3
+ !undef _VERSION_4
+!macroend
+!define VersionCompleteXXXX `!insertmacro VersionCompleteXXXX` \ No newline at end of file
diff --git a/packaging/win32/ifexist.nsh b/packaging/win32/macros/ifexist.nsh
index f14236c2e..5a0ea62b9 100644
--- a/packaging/win32/ifexist.nsh
+++ b/packaging/win32/macros/ifexist.nsh
@@ -19,3 +19,18 @@
!undef _FILE_EXISTS
!macroend
!define !ifnexist "!insertmacro !ifnexist"
+
+!macro !defineifexist _FILE_NAME _VAR_NAME _VAR_VALUE
+ !tempfile _TEMPFILE
+ !ifdef NSIS_WIN32_MAKENSIS
+ ; Windows - cmd.exe
+ !system 'if exist "${_FILE_NAME}" echo !define ${_VAR_NAME} ${_VAR_VALUE} > "${_TEMPFILE}"'
+ !else
+ ; Posix - sh
+ !system 'if [ -e "${_FILE_NAME}" ]; then echo "!define ${_VAR_NAME} ${_VAR_VALUE}" > "${_TEMPFILE}"; fi'
+ !endif
+ !include '${_TEMPFILE}'
+ !delfile '${_TEMPFILE}'
+ !undef _TEMPFILE
+!macroend
+!define !defineifexist "!insertmacro !defineifexist"
diff --git a/packaging/win32/md5dll.dll b/packaging/win32/md5dll.dll
deleted file mode 100644
index abefbb038..000000000
--- a/packaging/win32/md5dll.dll
+++ /dev/null
Binary files differ
diff --git a/packaging/win32/messagebox.dll b/packaging/win32/messagebox.dll
deleted file mode 100644
index 97407fa1a..000000000
--- a/packaging/win32/messagebox.dll
+++ /dev/null
Binary files differ
diff --git a/packaging/win32/plugins/md5dll.dll b/packaging/win32/plugins/md5dll.dll
new file mode 100755
index 000000000..bde153f70
--- /dev/null
+++ b/packaging/win32/plugins/md5dll.dll
Binary files differ
diff --git a/packaging/win32/md5dll.txt b/packaging/win32/plugins/md5dll.txt
index a8d3572c7..a8d3572c7 100644
--- a/packaging/win32/md5dll.txt
+++ b/packaging/win32/plugins/md5dll.txt
diff --git a/packaging/win32/portable/App/AppInfo/Launcher/InkscapePortable.ini b/packaging/win32/portable/App/AppInfo/Launcher/InkscapePortable.ini
index cb4cdaf0e..b196ef61f 100644
--- a/packaging/win32/portable/App/AppInfo/Launcher/InkscapePortable.ini
+++ b/packaging/win32/portable/App/AppInfo/Launcher/InkscapePortable.ini
@@ -1,12 +1,21 @@
[Launch]
ProgramExecutable=Inkscape\inkscape.exe
DirectoryMoveOK=yes
+SupportsUNC=yes
+
+[Activate]
+Ghostscript=find
+XML=true
[Environment]
INKSCAPE_PORTABLE_PROFILE_DIR=%PAL:DataDir%\settings
HOME=%PAL:DataDir%\settings
APPDATA=%PAL:DataDir%\settings
-LANG=%PAL:LanguageCustom%
+PYTHONHOME=%PAL:AppDir%\Inkscape\python
+PATH=%PATH%
+
+[FilesMove]
+recently-used.xbel=%LOCALAPPDATA%
[Language]
Base=%PortableApps.comLocaleglibc%
@@ -14,38 +23,50 @@ CheckIfExists=%PAL:AppDir%\Inkscape\locale\%PAL:LanguageCustom%\*.*
DefaultIfNotExists=en_US
[LanguageFile]
-Type=INI
-File=%PAL:DataDir%\settings\InkscapePortableSettings.ini
-Section=Language
-Key=LANG
+Type=XML attribute
+File=%PAL:DataDir%\settings\preferences.xml
+XPath=/inkscape/group[@id="ui"]
+Attribute=language
[FileWrite1]
-Type=INI
-File=%PAL:DataDir%\settings\InkscapePortableSettings.ini
-Section=Language
-Key=LANG
+Type=XML attribute
+File=%PAL:DataDir%\settings\preferences.xml
+XPath=/inkscape/group[@id="ui"]
+Attribute=language
Value=%PAL:LanguageCustom%
[FileWrite2]
Type=Replace
File=%PAL:DataDir%\settings\preferences.xml
-Find=%PAL:LastDrive%%PAL:LastPackagePartialDir%
-Replace=%PAL:Drive%%PAL:PackagePartialDir%
+Find=%PAL:LastDrive%%PAL:LastPackagePartialDir%\
+Replace=%PAL:Drive%%PAL:PackagePartialDir%\
[FileWrite3]
Type=Replace
File=%PAL:DataDir%\settings\preferences.xml
+Find=%PAL:LastPortableAppsBaseDir%\
+Replace=%PAL:PortableAppsBaseDir%\
+
+[FileWrite4]
+Type=Replace
+File=%PAL:DataDir%\settings\preferences.xml
Find=%PAL:LastDrive%\
Replace=%PAL:Drive%\
-[FileWrite4]
+[FileWrite5]
Type=Replace
File=%PAL:DataDir%\settings\.recently-used.xbel
-Find=file:///%PAL:LastDrive%%PAL:LastPackagePartialDir:ForwardSlash%
-Replace=file:///%PAL:Drive%%PAL:PackagePartialDir:ForwardSlash%
+Find=file:///%PAL:LastDrive%%PAL:LastPackagePartialDir:ForwardSlash%/
+Replace=file:///%PAL:Drive%%PAL:PackagePartialDir:ForwardSlash%/
-[FileWrite5]
+[FileWrite6]
+Type=Replace
+File=%PAL:DataDir%\settings\.recently-used.xbel
+Find=file:///%PAL:LastPortableAppsBaseDir:ForwardSlash%/
+Replace=file:///%PAL:PortableAppsBaseDir:ForwardSlash%/
+
+[FileWrite7]
Type=Replace
File=%PAL:DataDir%\settings\.recently-used.xbel
-Find=file:///%PAL:LastDrive%
-Replace=file:///%PAL:Drive% \ No newline at end of file
+Find=file:///%PAL:LastDrive%/
+Replace=file:///%PAL:Drive%/
diff --git a/packaging/wix/README b/packaging/wix/README
index f40e104e7..a13d4d5c3 100644
--- a/packaging/wix/README
+++ b/packaging/wix/README
@@ -1,25 +1,32 @@
howto create windows msi installer
you need:
-1. windows installer XML installed and callable from your path
+1. WiX Toolset (aka Windows Installer XML)
get it from http://wixtoolset.org/
- Because of a bug in the current version of wix the installer works using version 3.7 only.
+ (3.10 works fine at the time of this writing)
build the installer
1. build inkscape
2. open command shell "cmd"
3. change current directory to inkscape\packaging\wix
-4. set environment variables
- wixenv.bat
-5. create installer using batch
- install.bat
+4. set environment variables using
+ wixenv.bat (adjust paths in the file if necessary!)
+5. create installer using
+ install.bat
when completed there should be inkscape.msi in your path
+helpful tips
+- set CompressionLevel="none" in inkscape.wxs
+ while experimenting with installer creation
+ (results in huge installer but much faster compilation times)
+
things still todo
- detailed explanation what to do for new revisions
- better filenames (nightly builds versus releases)
- howto remove python .pyc files after deinstallation
- localisation into the installer
-
-theAdib
+- make "Typical" and "Complete" installations actually install different files
+ (at least don't lie to the user by suggesting there would be two different choices)
+- conditionally install localized content according to the users previous feature choices
+ (e.g. only install translated versions of tutorials if the "Tutorials" feature is selected)
diff --git a/packaging/wix/files.py b/packaging/wix/files.py
index ada4d62f2..9bf5f393e 100644..100755
--- a/packaging/wix/files.py
+++ b/packaging/wix/files.py
@@ -1,9 +1,21 @@
#!/usr/bin/python
+from __future__ import print_function
+from __future__ import unicode_literals # make all literals unicode strings by default (even in Python 2)
-# list files in directory
import os
+import re
import uuid
+from io import open # needed for support of encoding parameter in Python 2
+
+from helpers import get_inkscape_dist_dir, get_inkscape_locales_and_names
+
+# basestring is not available in Python 3
+try:
+ basestring
+except NameError:
+ basestring = (str,bytes)
+
directory_ids = {}
file_ids = {}
@@ -11,9 +23,12 @@ file_ids = {}
def indent(level):
indentstring = ''
for i in range(level):
- indentstring += ' '
+ indentstring += ' '
return indentstring
+def valid_id(identifier):
+ return identifier.replace('@','_')
+
def directory(root, breadcrumb, level, exclude=[]):
"""
list all files and directory recursivly
@@ -34,7 +49,7 @@ def directory(root, breadcrumb, level, exclude=[]):
wxs.write(indent(level + 1)+ "<File Id='file" + _id + "' Name='" + file + "' DiskId='1' Source='" + file_key + "' KeyPath='yes' />\n")
wxs.write(indent(level)+ "</Component>\n")
# then all directories
-
+
dirs = [ f for f in os.listdir(root) if os.path.isdir(os.path.join(root,f)) ]
for dir in dirs:
directory_key = breadcrumb + '__' + dir
@@ -43,15 +58,32 @@ def directory(root, breadcrumb, level, exclude=[]):
wxs.write(indent(level) + "<Directory Id='" + directory_ids[directory_key] + "' Name='" + dir + "'>\n")
directory(os.path.join(root, dir), directory_key, level + 1)
wxs.write(indent(level) + "</Directory>\n")
-
-
-def ComponentGroup(name, condition, level):
+
+def test_conditions(value, conditions):
+ """
+ check if "value" fullfills any of the "conditions", where a condition can be
+ - a string that has to be a substring of "value"
+ - a compiled regex pattern which has to match in "value"
+ """
+ if not isinstance(conditions, list):
+ conditions = [conditions]
+ for condition in conditions:
+ if isinstance(condition, basestring):
+ if condition in value:
+ return True
+ elif isinstance(condition, type(re.compile(''))):
+ if re.search(condition, value):
+ return True
+ return False
+
+
+def ComponentGroup(name, conditions, level):
"""
add componentgroup that contain all items from file_ids that match condition
remove the matched elements from file_ids
"""
global file_ids
- keys = [k for k in file_ids.keys() if condition in k]
+ keys = [k for k in file_ids.keys() if test_conditions(k, conditions)]
wxs.write(indent(level) + "<ComponentGroup Id='" + name + "'>\n")
for component in keys:
wxs.write(indent(level + 1) + "<ComponentRef Id='" + file_ids[component] + "' />\n")
@@ -59,7 +91,13 @@ def ComponentGroup(name, condition, level):
for key in keys:
del file_ids[key]
-with open('files.wxs', 'w') as wxs:
+# get directory containing the Inkscape distribution files
+inkscape_dist_dir = get_inkscape_dist_dir()
+
+# get locales currently supported by Inkscape (dict of the form {'de': 'German (de)'})
+locales = get_inkscape_locales_and_names()
+
+with open('files.wxs', 'w', encoding='utf-8') as wxs:
wxs.write("<!-- do not edit, this file is created by files.py tool any changes will be lost -->\n")
wxs.write("<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>\n")
wxs.write(indent(1) + "<?include version.wxi?>\n")
@@ -68,23 +106,39 @@ with open('files.wxs', 'w') as wxs:
wxs.write(indent(2) + "<Directory Id='TARGETDIR' Name='SourceDir'>\n")
wxs.write(indent(3) + "<Directory Id='$(var.ProgramFilesFolder)' Name='PFiles'>\n")
wxs.write(indent(4) + "<Directory Id='INSTALLDIR' Name='Inkscape'>\n")
- print "start parsing ..\..\inkscape"
- directory('..\..\inkscape', 'inkscape', 5, ['inkscape.dbg', 'inkview.dbg', 'gdb.exe'])
- print "found %d files" % len(file_ids.keys())
+ print("start parsing files from " + inkscape_dist_dir)
+ directory(inkscape_dist_dir, 'inkscape', 5, ['inkscape.dbg', 'inkview.dbg', 'gdb.exe'])
+ print("found %d files" % len(file_ids.keys()))
wxs.write(indent(4) + "</Directory>\n")
wxs.write(indent(3) + "</Directory>\n")
- # link to ProgrmMenu
+ # link to ProgramMenu
wxs.write(indent(3) + "<Directory Id='ProgramMenuFolder'>\n")
wxs.write(indent(4) + "<Directory Id='ApplicationProgramsFolder' Name='$(var.FullProductName)'/>\n")
wxs.write(indent(3) + "</Directory>\n")
wxs.write(indent(3) + "<Directory Id='DesktopFolder' Name='Desktop' />\n")
wxs.write(indent(2) + "</Directory>\n")
- ComponentGroup("Examples", 'inkscape\\share\\examples', 2)
+
+ # Python
+ ComponentGroup("Python", 'inkscape\\python\\', 2)
+ # translations and localized content
+ for lang_code in sorted(locales):
+ ComponentGroup("Translation_" + valid_id(lang_code), ['\\' + lang_code + '\\',
+ re.compile(r'\.' + lang_code + r'\.[a-z]+$')], 2)
+ # other components
+ ComponentGroup("Extensions", 'inkscape\\share\\extensions\\', 2)
+ ComponentGroup("Examples", 'inkscape\\share\\examples\\', 2)
ComponentGroup("Tutorials", 'inkscape\\share\\tutorials\\', 2)
- ComponentGroup("Translations", '\\locale\\', 2)
+ ComponentGroup("Dictionaries", 'inkscape\\lib\\aspell-0.60\\', 2)
+ # everything that is left (which should be the Inkscape core unless inkscape_dist_dir contains unnecessary files or we defined our components poorly)
ComponentGroup("AllOther", '', 2)
+
+ # create a FeatureGroup for translations
+ wxs.write(indent(2) + "<FeatureGroup Id='Translations'>\n")
+ sorted_locales = sorted( ((v,k) for k,v in locales.items()) ) # sort by language name (instead of language code)
+ for lang_name, lang_code in sorted_locales:
+ wxs.write(indent(3) + "<Feature Id='Translation_" + valid_id(lang_code) + "' Level='1' Title='" + lang_name + "' AllowAdvertise='no'>\n")
+ wxs.write(indent(4) + "<ComponentGroupRef Id='Translation_" + valid_id(lang_code) + "' />\n")
+ wxs.write(indent(3) + "</Feature>\n")
+ wxs.write(indent(2) + "</FeatureGroup>\n")
wxs.write(indent(1) + "</Fragment>\n")
wxs.write("</Wix>\n")
-
-
-
diff --git a/packaging/wix/helpers.py b/packaging/wix/helpers.py
new file mode 100755
index 000000000..4e8ef4547
--- /dev/null
+++ b/packaging/wix/helpers.py
@@ -0,0 +1,65 @@
+#!/usr/bin/python
+
+from __future__ import print_function
+from __future__ import unicode_literals # make all literals unicode strings by default (even in Python 2)
+
+import os
+import re
+import sys
+from io import open # needed for support of encoding parameter in Python 2
+
+
+# check where to look for the Inkscape files to bundle
+# - btool builds used [root]/inkscape
+# - cmake builds use [root]/build/inkscape unless "DESTDIR" is specified
+def get_inkscape_dist_dir():
+ # fisrt check the environment variable
+ sourcedir = os.getenv('INKSCAPE_DIST_PATH')
+ if sourcedir is None:
+ sourcedir = ''
+ if not os.path.isdir(sourcedir):
+ sourcedir = '..\\..\\inkscape'
+ if not os.path.isdir(sourcedir):
+ sourcedir = '..\\..\\build\\inkscape'
+ if not os.path.isdir(sourcedir):
+ print("could not find inkscape distribution files, please set environment variable 'INKSCAPE_DIST_PATH'")
+ sys.exit(1)
+ return sourcedir
+
+
+# get the full list of available Inkscape UI translations (by looking at available .po files in the /po directory)
+def get_inkscape_locales():
+ files = os.listdir('..\\..\\po')
+ po_files = [file for file in files if file.endswith('.po')]
+ locales = [po_file[0:-3] for po_file in po_files if po_file.endswith('.po')]
+
+ return locales
+
+
+# get the list of available Inkscape UI translations (by parsing inkscape-preferences.cpp)
+# (note that this is also used in /packaging/win32/languages/_language_lists.py, don't break it!)
+def get_inkscape_locales_and_names():
+ re_languages = re.compile(r'Glib::ustring languages\[\] = \{(.+?)\};', re.DOTALL)
+ re_langValues = re.compile(r'Glib::ustring langValues\[\] = \{(.+?)\};', re.DOTALL)
+ re_quotes = re.compile(r'"(.*?)"')
+
+ # get the raw array contents from inkscape-preferences.cpp
+ filepath = os.path.join(os.path.dirname(__file__), '../../src/ui/dialog/inkscape-preferences.cpp')
+ with open(filepath, 'r', encoding='utf-8') as f:
+ languages = re.search(re_languages, f.read())
+ f.seek(0)
+ langValues = re.search(re_langValues, f.read())
+
+ # split array elements and extract strings
+ if languages and langValues:
+ languages = languages.group(1).split(',')
+ langValues = langValues.group(1).split(',')
+ languages = [re.search(re_quotes, language).group(1) for language in languages]
+ langValues = [re.search(re_quotes, langValue).group(1) for langValue in langValues]
+
+ # return the results as a dict (remove first element which is "System default")
+ if languages and langValues:
+ return dict(zip(langValues[1:], languages[1:]))
+ else:
+ print("Could not get the list of Inkscape translations from inkscape-preferences.cpp")
+ sys.exit(1)
diff --git a/packaging/wix/inkscape.wxs b/packaging/wix/inkscape.wxs
index 0f1e9f2b9..051c1cfc1 100644
--- a/packaging/wix/inkscape.wxs
+++ b/packaging/wix/inkscape.wxs
@@ -2,21 +2,21 @@
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<?include version.wxi?>
- <!-- change Product Id for every new version and subversion, do not change UpgradeCode -->
+ <!-- change Product Id for every new version and subversion, do not change UpgradeCode -->
<Product Name="$(var.FullProductName)" Id='81922150-317e-4bb0-a31d-ff1c14f707c5' UpgradeCode='4d5fedaa-84a0-48be-bd2a-08246398361a' Language='1033' Codepage='1252' Version='$(var.ProductVersion)' Manufacturer='inkscape.org'>
<Package Id='*' Keywords='Installer' Description="Inkscape Installer" Comments='inkscape is registered trademark of inkscape.org' Manufacturer='inkscape.org' InstallerVersion='$(var.InstallerVersion)' Platform='$(var.Platform)' Languages='1033' Compressed='yes' SummaryCodepage='1252' />
-
- <Media Id='1' Cabinet='Sample.cab' EmbedCab='yes' DiskPrompt="CD-ROM #1" />
+
+ <Media Id='1' Cabinet='Sample.cab' EmbedCab='yes' DiskPrompt="CD-ROM #1" CompressionLevel="high"/>
<Property Id='DiskPrompt' Value="inkscape Installation [1]" />
<Property Id='ALLUSERS' Value="2" />
-
- <MajorUpgrade DowngradeErrorMessage="A newer version is already installed." />
-
+
+ <MajorUpgrade DowngradeErrorMessage="A newer version is already installed." />
+
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="ApplicationShortcut" Guid="37de8ea4-e83a-4e40-8f9c-c6066b78d935" Win64='$(var.Win64)' >
- <Shortcut Id="ApplicationStartMenuShortcut"
+ <Shortcut Id="ApplicationStartMenuShortcut"
Name="$(var.FullProductName)"
Description="Inkscape Vector Graphics Application"
Target="[INSTALLDIR]inkscape.exe"
@@ -32,7 +32,7 @@
<DirectoryRef Id="DesktopFolder">
<Component Id="DesktopShortcut" Guid="3afc08a7-05a1-40cf-90c2-0d6c042bfc41" Win64='$(var.Win64)'>
<!-- Shortcut Id="desktopFoobar10" Directory="DesktopFolder" Target="[INSTALLDIR]inkscape.exe" Name="$(var.FullProductName)" WorkingDirectory='INSTALLDIR' Icon="file_inkscape_exe" IconIndex="0" / -->
- <Shortcut Id="desktopFoobar10" Directory="DesktopFolder" Target="[INSTALLDIR]inkscape.exe" Name="$(var.FullProductName)" WorkingDirectory='INSTALLDIR' />
+ <Shortcut Id="DesktopShortcut" Directory="DesktopFolder" Target="[INSTALLDIR]inkscape.exe" Name="$(var.FullProductName)" WorkingDirectory='INSTALLDIR' />
<RemoveFolder Id="DesktopFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\inkscape.org\Inkscape" Name="desktop_installed" Type="integer" Value="1" KeyPath="yes"/>
</Component>
@@ -47,60 +47,76 @@
<Extension Id='svgz' ContentType='image/svg+xml'>
<Verb Id='open' Command='Open with Inkscape' TargetFile='file_inkscape_exe' Argument='"%1"' />
</Extension>
-
</ProgId>
</Component>
</DirectoryRef>
-
-
- <Feature Id='Complete' Title="$(var.FullProductName)" Description='The complete Package' Display='expand' Level='1' ConfigurableDirectory='INSTALLDIR' Absent="disallow" AllowAdvertise='no'>
- <!--
- <Feature Id='MainProgram' Level='1' Title='inkscape Application' Description='the inkscape Application' Absent="disallow" AllowAdvertise='no'>
- <ComponentRef Id='MainExecutable' />
- </Feature>
--->
- <!--
- <Feature Id='MainProgram' Level='1' Title='inkscape Application' Description='the inkscape Application' Absent="disallow" AllowAdvertise='no'>
- -->
+ <Feature Id='Inkscape' Level='1' Absent="disallow" Display="expand" ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'
+ Title="$(var.FullProductName)"
+ Description='Inkscape core files, shortcuts and file extension'>
+ <!-- core files, i.e. everything that does not fit into any of the other features -->
<ComponentGroupRef Id='AllOther' />
- <!--
- </Feature>
- -->
- <!-- shortcuts -->
- <Feature Id='ApplicationShortcut' Level='1' Title='Start Menu entry' Description='an entry in the start Menu' AllowAdvertise='no'>
+ <!-- shortcuts and file extensions -->
+ <Feature Id='ApplicationShortcut' Level='1' AllowAdvertise='no'
+ Title='Start Menu entry'
+ Description='Create a link in the start menu.'>
<ComponentRef Id='ApplicationShortcut' />
</Feature>
-
- <Feature Id='DesktopShortcut' Level='1' Title='Desktop link' Description='an link on the desktop' AllowAdvertise='no'>
+ <Feature Id='DesktopShortcut' Level='1' AllowAdvertise='no'
+ Title='Desktop shortcut'
+ Description='Create a link on the desktop.' >
<ComponentRef Id='DesktopShortcut' />
</Feature>
-
- <Feature Id='RegisterExtension' Level='1' Title='Register file extension' Description='register .svg and .svgz file extension in explorer context menu' AllowAdvertise='no'>
+ <Feature Id='RegisterExtension' Level='1' AllowAdvertise='no'
+ Title='Register file extensions'
+ Description='Register SVG files (.svg and .svgz) with Inkscape and add entries in Explorer context menu.'>
<ComponentRef Id='RegisterExtension' />
</Feature>
+ </Feature>
- <Feature Id='Examples' Level='1' Title='Examples' Description='examples as svg' AllowAdvertise='no'>
- <ComponentGroupRef Id='Examples' />
- </Feature>
+ <Feature Id='Python' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'
+ Title='Python 2.7'
+ Description='Bundled Distribution of Python 2.7 including modules required to run Inkscape extensions.'>
+ <ComponentGroupRef Id='Python' />
+ </Feature>
- <Feature Id='Translations' Level='1' Title='Translations' Description='translations' AllowAdvertise='no'>
- <ComponentGroupRef Id='Translations' />
+ <Feature Id='Additional' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'
+ Title="Additional files"
+ Description='Additional components to enhance Inkscape functionality and provide supplemental documentation.'>
+ <Feature Id='Extensions' Level='1' AllowAdvertise='no'
+ Title='Extensions (recommended)'
+ Description='Inkscape extensions (including many import and export plugins). Requires Python.'>
+ <ComponentGroupRef Id='Extensions' />
</Feature>
-
- <Feature Id='Tutorials' Level='1' Title='Tutorials' Description='tutorials as svg' AllowAdvertise='no'>
+ <Feature Id='Dictionaries' Level='1' AllowAdvertise='no'
+ Title='Dictionaries'
+ Description='GNU Aspell dictionaries of some common languages for spell checking in Inkscape' >
+ <ComponentGroupRef Id='Dictionaries' />
+ </Feature>
+ <Feature Id='Examples' Level='1' AllowAdvertise='no'
+ Title='Examples'
+ Description='Example files highlighting some of the features of the SVG file format and Inkscape functionality.' >
+ <ComponentGroupRef Id='Examples' />
+ </Feature>
+ <Feature Id='Tutorials' Level='1' AllowAdvertise='no'
+ Title='Tutorials'
+ Description='Tutorials on how to use specific Inkscape features.' >
<ComponentGroupRef Id='Tutorials' />
</Feature>
- <!--
- <ComponentRef Id='ProgramMenuDir' />
--->
</Feature>
+
+ <Feature Id='Translations' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'
+ Title='Translations'
+ Description='Translations and localized content for Inkscape. Note: Some translations might be incomplete, translators welcome!' >
+ <FeatureGroupRef Id='Translations' />
+ </Feature>
+
<!-- set license text -->
<WixVariable Id="WixUILicenseRtf" Value="gpl-2.0.rtf" />
<!-- set dialog custom bitmaps -->
<WixVariable Id="WixUIDialogBmp" Value="Bitmaps\dialog.bmp"/>
- <WixVariable Id="WixUIBannerBmp" Value="Bitmaps\banner.bmp"/>
+ <WixVariable Id="WixUIBannerBmp" Value="Bitmaps\banner.bmp"/>
<UIRef Id="WixUI_Mondo" />
<UIRef Id="WixUI_ErrorProgressText" />
diff --git a/packaging/wix/install.bat b/packaging/wix/install.bat
index 1b42a596b..f0dd0bdee 100644
--- a/packaging/wix/install.bat
+++ b/packaging/wix/install.bat
@@ -1,9 +1,11 @@
@echo build files.wxs
python files.py
+@if NOT %ERRORLEVEL% == 0 goto theend
@echo create version information
for /f "tokens=*" %%a in ('python version.py') do (set INKSCAPE_VER=%%a)
+@if NOT %ERRORLEVEL% == 0 goto theend
@echo call wix compiler ...
candle inkscape.wxs -ext WiXUtilExtension
@@ -27,6 +29,6 @@ pause the program is now installed. press any key to run uninstaller ...
@echo deinstall ...
msiexec /x inkscape-%INKSCAPE_VER%.msi
-@echo ... finished
:theend
+@echo ... finished \ No newline at end of file
diff --git a/packaging/wix/version.py b/packaging/wix/version.py
index dc5e06de9..a7ffebaa0 100644..100755
--- a/packaging/wix/version.py
+++ b/packaging/wix/version.py
@@ -1,8 +1,12 @@
#!/usr/bin/python
+from __future__ import print_function
+
import os
import struct
+from helpers import get_inkscape_dist_dir
+
version = ''
versionstr = ''
architecture = ''
@@ -27,7 +31,10 @@ def is64bitArchitecture(filename):
return True
return False
-if is64bitArchitecture('..\..\inkscape\inkscape.exe'):
+#get directory containing the inkscape distribution files
+inkscape_dist_dir = get_inkscape_dist_dir()
+
+if is64bitArchitecture(inkscape_dist_dir + '\\inkscape.exe'):
architecture = '-x64'
else:
architecture = ''
@@ -44,7 +51,7 @@ with open('..\..\src\inkscape.rc', 'r') as rc:
versionstr = versionstr.replace('"', '')
versionstr = versionstr.replace("'", "")
# version = version.replace("+", "_")
- print versionstr + architecture
+ print(versionstr + architecture)
if 'versioninfo' in line.lower():
isversioninfo = True
if 'begin' in line.lower():
diff --git a/packaging/wix/wixenv.bat b/packaging/wix/wixenv.bat
index 2cddd7146..106898683 100644
--- a/packaging/wix/wixenv.bat
+++ b/packaging/wix/wixenv.bat
@@ -1,19 +1,9 @@
-@echo Setting environment variables for creating msi installer
+@echo Setting environment variables for creating msi installer (adjust if necesssary!)
-@echo detect OS version
-ver | findstr /i "6\.1\." > nul
-IF %ERRORLEVEL% EQU 0 goto win7
-
-@rem all other cases
-IF "%WIX_PATH%"=="" set WIX_PATH=C:\Programme\WiX Toolset v3.9\bin
-IF "%DEVLIBS_PATH%"=="" set DEVLIBS_PATH=c:\devlibs
-goto setpath
-
-:win7
-IF "%WIX_PATH%"=="" set WIX_PATH=C:\Program Files (x86)\WiX Toolset v3.9\bin
+IF "%WIX_PATH%"=="" set WIX_PATH=C:\Program Files (x86)\WiX Toolset v3.10\bin
IF "%DEVLIBS_PATH%"=="" set DEVLIBS_PATH=c:\devlibs
-:setpath
-set PATH=%DEVLIBS_PATH%\python;%WIX_PATH%;%PATH%
+rem uncomment and adjust the line below if your Inkscape distribution files are in a non-standard location
+rem IF "%INKSCAPE_DIST_PATH%"=="" set INKSCAPE_DIST_PATH=..\..\build\inkscape
-:end
+set PATH=%DEVLIBS_PATH%\python;%WIX_PATH%;%PATH% \ No newline at end of file