Okay, let's try this again.
2. Chill. √ Development focuses on wrapping up √ Disable features that aren't finished √ Identify 'make distcheck' issues -----> Identify any critical OSX/Win32 packaging issues Identify remaining writing needed for Release Notes. √ Regressions Bug Hunt: 500 points Update tutorials and other docs
------------------------------------------------------------------------ OSX Packaging Issues ------------------------------------------------------------------------
For 0.91, the OSX packaging is under renovation to bring it up to standards that OSX users expect. su_v has taken a deep look into what we've had, and is working on a new package that uses the native Gtk-Quartz functionality.
As this is a pretty massive packaging change, we'll need to track this closely and lend hands as needed to ensure it's a success. Good news is there's still ample time, and strong interest in seeing this succeed.
su_v, do you have a todo list of what remains to be done?
------------------------------------------------------------------------ Windows Packaging Issues ------------------------------------------------------------------------
The Windows side is also going under major renovations to introduce WIX packaging, which provides an MSI windows package.
However, it sounds like the older NSI package format works well enough, that the consensus as reported by Adib is to stick with this package for 0.91, and allow the WIX package more time. Adib - do I understand the plan correctly? Are there any roadblocks or critical issues remaining?
One concern I have is that we are not providing a 64-bit package, and are directing users off-site to a third party for this. I'd like to understand more about this 64-bit package, and what it would take to provide this package ourselves for 0.91. Would someone mind educating me on this?
Bryce
On 2014-04-21 10:00 +0100, Bryce Harrington wrote:
Okay, let's try this again.
- Chill. √ Development focuses on wrapping up √ Disable features that aren't finished √ Identify 'make distcheck' issues -----> Identify any critical OSX/Win32 packaging issues Identify remaining writing needed for Release Notes. √ Regressions Bug Hunt: 500 points Update tutorials and other docs
OSX Packaging Issues
For 0.91, the OSX packaging is under renovation to bring it up to standards that OSX users expect. su_v has taken a deep look into what we've had, and is working on a new package that uses the native Gtk-Quartz functionality.
As this is a pretty massive packaging change, we'll need to track this closely and lend hands as needed to ensure it's a success. Good news is there's still ample time, and strong interest in seeing this succeed.
su_v, do you have a todo list of what remains to be done?
Todo notes (non-exhaustive) for osxmenu branch (r12699): https://code.launchpad.net/~suv-lp/inkscape/osxmenu
1) Packaging (updated scripts & resources in packaging/osx): ========================================================= - osx-build.sh (compiles inkscape, runs other scripts) - write more explicit checks for dependencies - improve OS X/Xcode version detection to set correct flags for compiler and C++ Standard Library - decide on whether to add support for universal builds [10.4-10.5: (PPC, i386), >=10.6: (i386, x86_64)] - support theme choice (for osx-app.sh) as command line option - documentation
- osx-app.sh (creates application bundle) - test and fix if needed: build with Gnome-vfs enabled - handle missing dependencies (incl. optional python modules) - add command line option for default theme, support fallback - debug: further test and improve debug build option (no stripping) - debug: investigate how dSYMs could be provided as separate download - documentation
- osx-dmg.sh (creates DMG for distribution) - unchanged for now, consider replacing with new script (see gellule's branch, new script now hosted on github: https://github.com/andreyvit/yoursway-create-dmg ) - documentation
- create-{stock,symbolic}-icon-theme.sh (auxiliary scripts) - check: return failure if dependencies are missing - work around regressions with missing directional icons (trunk) - to discuss: alternatively, include full GNOME icon theme upstream GNOME seems to move towards requiring GNOME icon theme as prerequisit/fallback (with each new release there is new breakage when relying on built-in hicolor gtk icon theme) note: packaging issue because it (unnecessarily) increases size - explore options to automate creation of other custom stripped-down gtk icon themes (e.g. Faenza/Faience(-Azur), or Numix (flat theme)) - documentation
- ScriptExec/launcher.sh (sets up env for relocatable inkscape binary) - decide on final location of inkscape user profile dir - decide on final location of user font caches (share with GIMP.app ?) - improve locale detection - better fix for Ghostscript issue (sub-string matching 'Resource' in $GS breaks reloc support) - investigate recent regression with pango/Harfbuzz in coretext shaper - documentation
- Resources/{etc,share} - etc/fonts/local.conf: verify custom font config (match 'Sans' / 'sans-serif' to 'Helvetica' first) (what to do about the other generic font names?) - etc/gtk-2.0/gtkrc: verify custom default gtk settings - documentation
- Resources-extras/*/{icons,inkscape,themes} - finish rework of symbolic icons for Inkscape.app (WIP) - fix 'dark' theme: dim labels of inactive tabs of notebooks - fix 'Mac' theme: highlight buttons when hovered, selected or at least when pressed (example dialog: quit with unsaved changes) - fix 'Mac' theme: buttons in radio groups - fix 'Mac' theme: don't rely on blue 'Aqua' style only (users have a choice for native apps: Aqua, Graphite) - decide on default theme (proposal: Mac for stable, dark for trunk) - provide user-friendly method to change theme: - default: Adwaita GTK2, built-in hicolor icons - dark: dark GTK2 theme, light symbolic icons (GTK+ and inkscape) - light: Adwaita GTK2, dark symbolic icons (GTK+ and inkscape) - Mac: mimic OS X Aqua (Mavericks), stock icons (GTK+ and Inkscape) - any combination of user themes installed in ~/.themes and ~/.icons - documentation
- $top_srcdir/share/keys/osxmenu.xml - rename to Mac.xml - switch displayed shortcut for DialogPreferences to 'Cmd+,' - documentation
- $top_srcdir/Info.plist{.in,} - fix version info strings (include build revno) - support custom branches (package name, bundle identifier) - add/remove mimetypes based on build/packaging configuration (?) - decide on additional mimetypes (register Inkscape as editor for PNG as well, or not) - documentation
- Gatekeeper / Developer ID: - add support to sign the app bundle if Developer ID available (AFAIK Xcode installs command line tools for code signing)
2) Porting (changes in src/): ========================== - code review: - Hide SPDesktopWidget menubar (src/interface.cpp) - callback functions (src/main.cpp) for NSApplicationOpenFile (Dock, Finder) and NSApplicationBlockTermination (app quit requests) - relocation support (src/prefix.{cpp,h}, src/path-prefix.h) - new modifier (Cmd, aka Meta, aka GDK_MOD2_MASK) - shortcuts (048x): backport of trunk changes (accel group) - internal changes for poppler-data, spellchecker (reloc support)
- blocker (usability): - better handling of clipboard requests on application quit
- known failures: - radio items in sub-menus fail to update - window position doesn't consider offset for global menubar correctly - SVG font dialog (crashes) - Clipart Import (fails with Glib::Error)
- enhancements (integration): - menu layout (move prefs to application menu) - proxy icon in window title bar - native 'File > Open recent' list - menu item 'Reveal in Finder' - context menu for Dock icon
3) Roadmap (Inkscape 1.0): ======================= - Relocation support - migrate ScriptExec/launcher.sh to internal function (similar to _win32_set_inkscape_env() for Windows builds)
- GUI - app termination (persist without document window) - High DPI support for GUI and canvas (GTK3 (?)) - GTK theme engine which uses native APIs for widget rendering
- Spell checker - support additional locations for language dictionaries (per user) - provide installers for commonly requested language dictionaries
- Extensions - infrastructure to create installer packages for custom extensions (to ensure to use shared libraries from the app bundle if needed) - provide supplemental installers for extensions which depend on external helper apps or python modules not present on vanilla OS X
- Proposal for DBus scripting API support: (using a 'private' dbus session launched by the app) - provide custom Portfile to build dbus without launchd support - include dbus, dbus-launch in app bundle (might require patching dbus to ensure full relocation support) - start dbus session: via inkscape launcher script (optional) store env in user profile (DBUS_SESSION_BUS_ADDRESS, pid) - add menu item to open a new Terminal which is set up to communicate via dbus session bus launched by the application, or a script which can be sourced in existing Terminal to import dbus-related shell environment. - stop dbus session: include methods to kill user session dbus process (shell script, or via extension script)
4) "Short term goals" (remaining items pasted from old TODO.txt): ================== - check whether all relevant files are included for pygtk - encapsulate MacPorts-specific items in the build scripts to allow to substitute solutions for configurations with different package managers - debug: take note which libs either to strip or to run dsymutil on - What to do about gtk immodules? (and its locale files?) - test locale detection from gtk-mac--bundler script (fails in GIMP.app)
participants (2)
-
Bryce Harrington
-
su_v