Connecting to a Lion Mac via Screen Sharing from Snow Leopard

After upgrading my Snow Leopard (10.6) Mac server to Lion (10.7), I was no longer able to connect to it after rebooting via the handy “Share Screen…” button in Finder. It just behaved like I had the wrong password. This probably has something to do with Lion’s snazzy new Screen Sharing enhancements.

I found I was still able to connect by doing the following:

  1. In Finder, go to the “Go” menu and then to “Connect to Server…”
  2. Enter the following in the Server Address field:
    vnc://macname.local:5900/
    or with IP address:
    vnc://192.168.0.1:5900/
Posted in Fixes, Lion, Mac OS X | 2 Comments

system_x11 variants in Macports

I have a macports tree compiled with the +universal +system_x11 variants.  I use this for building universal builds of Inkscape.  A few weeks ago some of the ports could no longer be upgraded, specifically mesa and pango.  Both these builds would fail with the error about libGL.dylib or libX11.dylib being not found, e.g.

ld: library not found for -lX11

After a fair amount of searching, I couldn’t find a solution but stumbled on this thread talking about the system_x11 variants being removed from Macports.

Basically, the problem was that it is expected that all ports now use the X11 library available in Macports.  Of course, this will cause problems if you already have all these X11 ports installed with +system_x11 — effectively just empty ports.

The solution was to run the following commands to find, deactivate and then reinstall all ports that were installed with +system_x11 variants:

$ xports=`port installed | grep system_x11 | \
          cut -f3 -d' ' | xargs`
$ sudo port -v deactivate $xports
$ sudo port -v clean $xports
$ sudo port -v install $xports

You can then remove the deactivated system_x11 versions via:

$ sudo port -v uninstall `port installed | \
          grep system_x11 | cut -f3-4 -d' ' | xargs`
Posted in Inkscape | Leave a comment

Fix for Mac Google Notifier sign-in problems

I spent a little bit of time this afternoon investigating why a colleague with exactly the same network/proxy settings as me couldn’t use Google Notifier for Mac on our network even though I was able to use it fine. We’re both using the newest version 1.9.97. When attempting to sign-in he was seeing either of the following messages:

User Verification Required for Sign-In, or
Can’t Sign In. See Preferences: Fetch -2

Continue reading

Posted in Uncategorized | 34 Comments

Localized Inkscape for OS X

I finally tracked down the problem of our official Inkscape packages not being localized on OS X. I’ve released an updated package for Inkscape 0.45 that fixes the problem. So if you’re a non-english speaking OS X Inkscape user, then go grab the updated package (Inkscape-0.45-2.UNIVERSAL.dmg) from here.

Posted in Inkscape | 6 Comments

Inkscape 0.43 opening files on OS X

Many OS X users have reported being unable to open SVG files using the open dialog in Inkscape 0.43. After much troubleshooting I was able to figure out what was causing the problem. It has been fixed in an updated package, Inkscape-0.43-2.dmg, which is available here:
http://prdownloads.sourceforge.net/inkscape/Inkscape-0.43-2.dmg?download

Posted in Inkscape | 2 Comments

Autorouting Connectors!

The Summer of Code has offically finished up. I’ve since caught up on some sleep and a few non-SoC things. I’ve also fixed up the obvious bugs, so this seems like a good time to announce what I actually achieved with the connector tool.

Autorouting polyline connectors are in CVS and work well. However you manipulate them, they will avoid objects marked as ‘avoided’. Objects can be marked as ‘avoided’ or ‘ignored’ via the connector context toolbar buttons. Tricky to explain, but easy to see and understand… just have to play with it.

The following wiki page has instructions and further discussion:

http://wiki.inkscape.org/cgi-bin/wiki.pl?UsingTheConnectorTool

Continue reading

Posted in Inkscape | Leave a comment

New Connector tool context

I have commited the connector context to CVS. At the moment it can be used to create basic straight-line connectors and interact with and modify existing connectors, i.e., reroute, detach, or attach to new shapes. At the moment connectors can just be attached to the center of shapes (though user placeable connection points are something I will work on later). This interface works works with loading and saving files, undo and redo, etc.

Click and drag anywhere to create a connector. If you start or finish over a highlighted connection point, then the connector will be attached to that shape. Dragging the endpoint of any existing connector will alter its endpoint, and attach to a shape if dropped on a connection point.
Continue reading

Posted in Inkscape | 2 Comments

When straight lines aren’t

Today’s been a pretty good day for Inkscape coding. Aside from once again having the bad choice of extending DrawContext confirmed, I managed to pass several little hurdles and get the connectors connecting to shapes. That is, get the connector context to create paths that hook up with Peter’s existing connector code. The funniest bug was that it turned out I was not creating a purely straight-line path, just a curved path that looked straight—when I dragged a shape and the connector rerouted, it went into a strange curve shape! I love bugs that express themselves graphically. Sure beats a segfault.

Posted in Inkscape | 2 Comments

SoC Progress

This is basically a report on my progress, as posted to the inkscape-devel list this morning, but with lots of spelling and grammer corrections!

Continue reading

Posted in Inkscape | Leave a comment

Powerbook Problems

Well, I’m sitting here right now, installing Debian on a dekstop computer at my place. Why? Because, for about the last year I’ve been using an Apple Powerbook as my main development machine and it just died.

I opened the lid on Thursday morning ready to start work, expecting to be greeted by it’s warm glow. Nothing. I pressed the left arrow key (this usually wakes it up). Not this morning. It was working hard last night. Sure, but this is ridiculous. It got a few good hours of rest! I pressed the power button. Nothing. Ah, maybe the battery had drained over night? Hadn’t suspended properly, maybe? Plugged in the power cable. Pressed the power button. It starts. Sort of. There are three tones, then the clasp light flashes four times. Nothing more.

I drove to Uni and spent some time seeing if anyone had a firewire cable to see if I could start it in target mode to get a copy of my Inkscape SoC workspace off it. Everything on there is backed up, but the copy of the Inkscape stuff was a little out of date. Anyway, noone had one so of I went to the Apple service people. I told them I really wanted some of the data off there if possible. He suggested they try replacing the RAM first. Did this, the computer started fine. Problem fixed.

I drove back to Uni and worked for the rest of the afternoon hours. Drove home. Opened the lid, made a small change to some code to try something else. dropped back to a shell, typed “make”, and the computer froze. Rebooted it and found three beeps and the four flashes again. So I guess the problem is the logic board after all. *sigh*

The computer is back with the Apple service people. I’ll probably get it back in a week and a half. I got my workspace off it though, and it looks like my Debian install is finished now, so back to it…

Posted in Inkscape | 13 Comments

Paper Acceptance

My paper entitled “Incremental Connector Routing” was accepted to Graph Drawing 2005 so I’ll be going to Limerick, Ireland in mid September to present it. This paper describes the algorithms that are used in the “libavoid” code, that will be integrated into Inkscape as part of my Sumer of Code work.

Also, it seems like there will be a Software Exhibition, where you can show of cool graph drawing code. So I should be able to show off not only Dunnart, my research test-bed diagram editor, but also the same capabilities integrated into Inkscape.

Very nice indeed!

Posted in Inkscape | Leave a comment

Drawing connectors in Inkscape

It’s time to start blogging about this project more actively I think. David Yip, one of the other Inkscape SoCers is putting me to shame. Haven’t seen any blogging from the other two SoC people yet though.

I feel like there has been a lot of paperwork in the last couple of weeks. Some non-US students (like myself) have started to call this Google thing the “Summer of Tax Code” because there has been so much confusion and discussion over taxation issues. It’s ironic how hard it is to give away money. Along with this mound of stuff to organise (most of it is done) I’ve just had to organise PhD progress reports and just now paperwork for conference travel (more in the next post). I think it’s taking me six forms to get to this conference, and that’s before I look at airfares, or conference registration…

Inkscape hacking is much more fun!

For SoC I am doing two things. Firstly, cleaning up and releasing as a LGPL library some code I have written to do incremental object-avoiding connector routing. The cleaning up and interface fixes (from where it was originally tied to my research code) is mostly done. I’ll probably create a Sourceforge project for the library very shortly. I’m thinking I’ll call it libavoid. The code will be added (and probably worked on) within the Inkscape codebase, since we definitely don’t want to add something so new as a dependency. It’ll also have it’s own CVS repository on Sorceforge since this was part of my proposal and it’s been written with the intention that othe software like Dia might want to make use of it.

The second part of my SoC stuff is adding connector capablities to Inkscape (and integrating with the library code). At the moment I have added a new context to Inkscape where connectors can be drawn and interacted with. I’m working on the code for creating connectors and changing their connections. My plan is to have the ability to create new basic straight connectors that follow shapes, as well as an interfact to detach/reconnect them to different objects for the time of the release when this stuff can be added to CVS. Then we can discuss some of the behaviour specifics for connectors and their GUI interface.

The code for updating connectors as a result of shapes moving is already in the codebase and was written some time ago by Peter Moulder, though there was never an interface created for working with them. There seem to be several issues (i.e., bugs) with this at present, so that wikl have to be looked at too.

I’ve found it quite time consuming working out how to do things at the canvas level within Inkscape. Its not that it’s been frustrating, it hasn’t, it just takes a while to figure things out when you’re unfamiliar with the codebase, and you’re not working on a surface feature that allows you to ignore large sections of code. Actually, once I work out the correct way to do things it often turns out that the solution is quite elegant, i.e., it’s been though that someone would later want to do this thing, or something similar is being done somewhere else in the code, so the framework is there. The new gradient tool handles code has been really useful for lifting ideas from. I get the feeling my work up until now would have been much harder without their example.

Posted in Inkscape | Leave a comment

Inkscape on OS X

While this doesn’t have to do with the Summer of Code work, it’s still quite cool. Inkscape 0.42 will have an OS X .app style release, just like Gimp.app. I’ve spent a fair bit of time over the last month setting it all up and allowing automation of OS X builds. All you need is Apple’s X11User package installed and then Inkscape can be dragged to Applications, added to the dock, and launched in any expected way such as dropping SVG files on its dock icon.

Continue reading

Posted in Inkscape | 5 Comments

Summer of Code

Well, I was accepted in Google’s Summer of Code. So for the next couple of months I’ll be adding connectors to Inkscape, an open source vector graphics editor. You can read my proposal here.

Posted in Inkscape | Leave a comment