25 November 2018
Laidout 0.097 Released!
At long last, Laidout 0.097 is now released! Three years since the last release is really not that long compared to the age of the Earth, and to show for it, we now have:
- Node Tool
At the moment, the node tool only lets you change Laidout object transforms, but this tool will, in the fullness of time, become more integrated into many features of Laidout, to allow easier editing of parametric objects, and potentially animation. It is also a testbed for a new plugin backend by way of Gegl based nodes to allow access to a variety of image processing abilities in a convenient node based interface.
- Save menu
Previously, the save button only saved. Now that button is a menu that lets you Save, Save As, Save a copy, Save a copy with an incremented number, Save as a template, or Save as the default template. Also in this menu are some settings to control automatic backup settings, to auto save after a specified time.
- General debugging and backend developement
Numerous bugs are fixed, and fresh new bugs introduced, for instance by using Harfbuzz and Freetype for the text tools. This allows much greater font support internally, though much work still needs to be done in Laidout to adapt the new text framework to export nicely to various file formats.
20 May 2018
Libre Graphics Meeting Recap
At this year's Libre Graphics Meeting, I’m happy to say node based interfaces had a strong presence. For instance, Neil Smith demonstrated Praxis Live, including live music through a mix of code and nodes. Antonio Roberts performed “live noding” with nodes in Pure Data, manipulating 3-d structures together with music in real time.
After this meeting, which included interesting talks with devs from Gimp, Inkscape, and others, Laidout now has many more things on it's node to-do list! Speaking of to-do lists, thanks to everyone who came to my node workshop, we found several bugs which are now all fixed!
In other news, I hope to have a new "stable" version of Laidout released within a finite amount of time. I've narrowed down my task list to about 50 or so bugs and usability issues to clear up before then. Hopefully this will only take a few weeks, as long as I can stick to that list and not implement new tools instead!
Read old news
What the hell?
Laidout is desktop publishing software built from the ground up with imposition in mind. Currently one may arrange pages into various cut and folded impositions, such as a booklet, or even a dodecahedron. You can fill pages with images, gradients (linear, radial, and mesh), mesh transformed images, engraving-like fill objects, and some basic text. Export with varying degrees of success to Svg, Scribus, Pdf, and more.
See the Laidout Features page for more detail about what it can do now, the Roadmap for what it's supposed to do eventually, and this (incomplete) comparison to a few other desktop publishing and vector graphics programs.
It is in the "Mostly does what I want on my machine" stage of development. I try to have a new "stable" release once in awhile, at least when various other projects don't eat all my time, which seems to happen a lot lately. "Stable" in this context means that it is only slightly less buggy then the raw development branch.
I have been using Laidout to lay out my comics into books since 2006. So, one out of 7 billion people agree that Laidout might actually be useful! For example, one can make small booklets by chopping up tabloid sized paper (11x17 inches). With a fold, two cuts, and stapling, one can make three cute little 5.5 x 5.6 inch books.
Many more features are planned, like such non-essentials (to me anyway) as flowed text boxes. Who needs text when a picture is worth a thousand words?
Laidout, together with the Laxkit backend, aims to make a well documented, very modular, expandable, and configurable desktop publishing program, with an emphasis on developing tools not commonly found in other programs, as long as they are useful. A side project is to foster the ability to share these tools with other software.
Laidout only works on variations of Linux for now. It should work on Macs after a small amount of hacking, but I don't have access to a Mac to make it so.
The current release is Version 0.097. (icons here if necessary).
You can help turn Laidout into something stable (without quotes) by posting feedback on your experiences with it to the Laidout mailing list, issue tracker at github, or by dropping me a line.
In any case, you can get Laidout in source code form, or as a deb package for debian based amd 64bit systems. The main 0.097 download area is here.
laidout-0.097.tar.bz2 (the source code)
laidout_0.097_amd64.deb (binary, should work on Debian Unstable)
laidout_0.097_ubuntu1804_amd64.deb (binary, should work Ubuntu 18.04 LTS)
Compiling from "stable" source
If you download the source code form, you must compile and install from the command line. First, as root or with "sudo", install dependencies:
Some of the dependencies above (from mesa-common-dev on) are for the unstable polyhedron unwrapper. You don't need them if you disable the opengl based unwrapper by passing --nogl to the configure line above. The unwrapper exists also in a standalone version in laidout-0.097/src/polyptych.
Instead of compiling as above, you can build a deb package from the source tar like the following. You'll need to have dpkg-dev and fakeroot packages installed. This will create an installable deb package. If you try this and it doesn't work, please let me know. It is supposed to work!!
If you think you might like to help develop Laidout, please see this page.
Development source code is currently hosted at github. You can browse the git repository here, or you can grab a copy from the repository with this command:
To actually compile from this git source, see the further instructions in the Compiling From Development Git section of the README.
You can try Laidout's issue tracker at github, or there is a general purpose mailing list here.
Currently, the only developer is Tom Lechner, and he has been hacking away at Laidout to help make his artwork.