Package Details: sozi 17.11-1

Git Clone URL: (read-only)
Package Base: sozi
Description: A zooming presentation based on SVG, using JavaScript
Upstream URL:
Licenses: custom:MPL2.0
Submitter: linkmauve
Maintainer: sbmomeni
Last Packager: sbmomeni
Votes: 72
Popularity: 0.307872
First Submitted: 2010-10-28 11:53
Last Updated: 2017-12-12 10:41

Dependencies (15)

Required by (0)

Sources (648)

Latest Comments

macxcool commented on 2017-12-12 11:32

@sbmomeni Thanks for the explanation. I appreciate it. I may try a bin package, just for the fun of it ;-)

sbmomeni commented on 2017-12-12 10:51

@macxcool Now that our installation script is merged in upstream repo, a "-bin" package can use that approach. But it does not necessarily work as the ArchLinux continues updating. For example, we had to use a different electron version previously.

a1rolo commented on 2017-09-08 01:10

Same error as mathiew.clabaut

==> ERROR: A failure occurred in build().

mathieu.clabaut commented on 2017-08-21 08:27

Thank @sbmomeni.

Alas, I now get :
==> bower install completed successfully
throw err;

Error: Cannot find module 'getobject'
at Function.Module._resolveFilename (module.js:489:15)
at Function.Module._load (module.js:439:25)
at Module.require (module.js:517:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/tmp/yaourt-tmp-clabaut/aur-sozi/src/Sozi-17.06/node_modules/grunt-legacy-util/index.js:20:18)
at Module._compile (module.js:573:30)
at Object.Module._extensions..js (module.js:584:10)
at Module.load (/tmp/yaourt-tmp-clabaut/aur-sozi/src/Sozi-17.06/node_modules/coffee-script/lib/coffee-script/register.js:45:36)
at tryModuleLoad (module.js:470:12)
at Function.Module._load (module.js:462:3)
at Module.require (module.js:517:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/tmp/yaourt-tmp-clabaut/aur-sozi/src/Sozi-17.06/node_modules/grunt/lib/grunt.js:17:12)
at Module._compile (module.js:573:30)
at Object.Module._extensions..js (module.js:584:10)
at Module.load (module.js:507:32)
at tryModuleLoad (module.js:470:12)
at Function.Module._load (module.js:462:3)
at Module.require (module.js:517:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/usr/lib/node_modules/grunt-cli/bin/grunt:44:1)
at Module._compile (module.js:573:30)
at Object.Module._extensions..js (module.js:584:10)
at Module.load (module.js:507:32)
at tryModuleLoad (module.js:470:12)
at Function.Module._load (module.js:462:3)
at Function.Module.runMain (module.js:609:10)
at startup (bootstrap_node.js:158:16)
at bootstrap_node.js:578:3

==> ERROR: A failure occurred in build().

Maybe @macxcool suggestion would be a good alternative ?

macxcool commented on 2017-07-27 21:36

I'm just curious. Why wouldn't I download the Sozi tarball, untar it into /opt and run Sozi from there rather than do all this npm installation every time?

sbmomeni commented on 2017-07-27 20:14

droid_sans source is now replaced with make-dependency to ttf-droid package.

mathieu.clabaut commented on 2017-07-27 07:23

Error when downloading droid_sans :

-> Downloading
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (22) The requested URL returned error: 403 Forbidden
==> ERROR: Failure while downloading

Wouldn't be possible to just make a dependency upon the ttf-droid package ?

sbmomeni commented on 2017-05-30 06:11

The folder that I use for building sozi (containing all dependencies and the building tmp files) occupies about 1.3 GB.

So 6 GB is much more than enough. Did you check how much of /tmp was already filled?
In the output of the second command (using --tmp /home/distag/tmp), I see that yaourt has failed trying to create a new folder in the /tmp again (no space left on device, mkdir '/tmp/distag/bower').

luuuciano commented on 2017-05-29 15:21

Heheh... I had to do makepkg in ~/ partition, to have more space for it...

Distag commented on 2017-05-29 14:52


3 points:

*the compilation doesn't work, with tmpfs=6G and yaourt -S sozi:

npm WARN regenerator-transform@0.9.11 license should be a valid SPDX license expression
stage 2 of babel-plugin-transform-regenerator-6.24.1 installation ...
stage 2 of babel-preset-es2015-6.24.1 installation ...
cp: impossible to create direct link 'node_modules/babel-plugin-transform-es2015-parameters/node_modules/babel-helper-call-delegate/node_modules/babel-traverse/node_modules/babel-messages/node_modules/babel-runtime/core-js/math/imulh.js' to '/tmp/yaourt-tmp-distag/aur-sozi/src/build/babel-plugin-transform-es2015-parameters-6.24.1/node_modules/babel-helper-call-delegate/node_modules/babel-traverse/node_modules/babel-messages/node_modules/babel-runtime/core-js/math/imulh.js': No space available on the device

*the compilation doesn't work, with yaourt --tmp /home/distag/tmp -S sozi:

==> npm install completed successfully
bower fontawesome-v4.7.0.tar#* ENOSPC ENOSPC: no space left on device, mkdir '/tmp/distag/bower'

Stack trace:
Error: ENOSPC: no space left on device, mkdir '/tmp/distag/bower'

Console trace:
at StandardRenderer.error (/usr/lib/node_modules/bower/lib/renderers/StandardRenderer.js:81:37)
at Logger.<anonymous> (/usr/lib/node_modules/bower/lib/bin/bower.js:110:26)
at emitOne (events.js:96:13)
at Logger.emit (events.js:191:7)
at Logger.emit (/usr/lib/node_modules/bower/lib/node_modules/bower-logger/lib/Logger.js:29:39)
at /usr/lib/node_modules/bower/lib/commands/index.js:48:20
at _rejected (/usr/lib/node_modules/bower/lib/node_modules/q/q.js:844:24)
at /usr/lib/node_modules/bower/lib/node_modules/q/q.js:870:30
at Promise.when (/usr/lib/node_modules/bower/lib/node_modules/q/q.js:1122:31)
at Promise.promise.promiseDispatch (/usr/lib/node_modules/bower/lib/node_modules/q/q.js:788:41)
System info:
Bower version: 1.8.0
Node version: 7.10.0
OS: Linux 4.11.2-1-ARCH x64

*Why is this package so big? I have the impression to download all my computer just for a simple software.

sbmomeni commented on 2016-12-03 12:56

@carmelom, @oberon2007
I updated some of dependencies... It now builds with nodejs v7.2.0

oberon2007 commented on 2016-12-02 17:10

Ok. The problem is that since the recent icu update we cannot just downgrade nodejs to v6. The old package is broken.
I have created a new AUR package just now: nodejs6
Add this as a depends (or just install it, replacing nodejs) and sozi will build.
Just be aware that building nodejs takes a while... ;)

oberon2007 commented on 2016-12-02 16:08

Build fails with:
Running "nw-bundle" task
Warning: Task "nodewebkit" not found. Use --force to continue.

carmelom commented on 2016-11-20 17:57

Hi there,

I'm signalling here that makepkg fails if one's using nodejs v7.
Trying a manual build as explained on, I see that grunt is failing with "Error: Cannot find module 'internal/fs'", which I understood is a versioning problem related to node, rather than to the sozi package itself.
My solution was to rely on nvm ( to switch back to version 6.0.0. Then everything worked fine.

Edit: now I see that some time ago there was the same problem with nodejs 5 vs 6, sorry for the repost.
Anyway, nvm seems a good way to make the downgrade for the build.

fsiegert commented on 2016-08-29 08:31

Thanks for the quick reply (and packaging), that's even better! I have requested deletion of the sozi-extras-media package to avoid duplication and confusion.

sbmomeni commented on 2016-08-28 10:49

@fsiegert: Thanks for the package.
As the "tools_texts2paths" and "extras_media" packages can be built from the same source files (without additional building), I added two new package_* functions to this package to create them.
Your package functionality is now provided by [this]( subpackage and declared as an optional dependency.

fsiegert commented on 2016-08-26 07:58

Dear all,

I have added a package for the sozi-extras-media which contains the Inkscape extensions needed to embed audio/video in the SVG (cf.

@sbmomeni: Maybe this might be useful as an "optdepends" for sozi? And if you would prefer to take this over to make coordinated updates of both packages let me know and I'll add you as a co-maintainer or disown it. The package itself is completely trivial.

sbmomeni commented on 2016-06-30 15:34

Thanks. It now works with nodejs6.

BTW, the change which was suggested at <> was buggy. I commented about the correct change there.

dodomorandi commented on 2016-06-30 08:05

It should be possible to use nodejs6 instead of nodejs5 just fixing the lib/util/index.js file inside the archiver package.

I found the details for this workaround here:
I just tried and it seems to work flawlessly.

Distag commented on 2016-06-29 07:19

the compilation doesn't work

luuuciano commented on 2016-06-09 13:47

Oh, I see, thanks a lot for the tip & information sbmomeni!

sbmomeni commented on 2016-06-09 07:11

The nodejs5 is required as noted at <>.
Until upstream add support for the nodejs6, you can temporarily downgrade to nodejs5 (it is just a build time dependency) and then revert to nodejs6 after building the package binary.

luuuciano commented on 2016-06-08 14:04

Mmmm, what to do when we have nodejs(6) installed? (and required for other packages)

sbmomeni commented on 2016-05-25 08:21

It is updated.

grandchild commented on 2016-05-18 21:19

Fails to build with:

Archived build/Sozi/Sozi-16.02.141048-linux64/locales/ -> build/Sozi-16.02.141048-linux64.tgz/Sozi-16.02.141048-linux64/locales/
Fatal error: If encoding is specified then the first argument must be a string

There's a thread here:

But I don't know anything about this huge JS library interminglemagic clusterf-- ... er. Well. Doesn't build. :P

sbmomeni commented on 2016-02-15 12:58

If you have a "src/build" folder from version 15.11, do NOT remove it. It will be used (automatically) as a cache to speed up the build.

macxcool commented on 2015-12-22 14:36

@sbmomeni Thanks for the explanation. I really do appreciate it. I learned a few things there ;-) Quite right about a PKGBUILD being able to build from provided sources when offline. This built beautifully. I was just surprised.

sbmomeni commented on 2015-12-22 12:05

The main source archive is "15.11.tar.gz" which depends on 4 npm packages for running and 18 npm packages for being compiled. And those dependencies are dependent on many other packages which bring in more dependencies themselves and so on :)
The npm is a JavaScript package manager which resolves dependencies of JavaScript packages and downloads and installs them.

About why I did it in this way:
There are two general ways:
1. Using the pre-built binary of Sozi,
2. Compiling from sources. The first way is just acceptable for "sozi-bin" package.
And for compiling from sources, where all of those source packages are required, I know about two methods for acquiring them:
1. Using the "npm install" command which finds and downloads them by itself (within the build() function),
2. Finding sources with a script (see comments in the PKGBUILD) and adding them to the "source" array and allowing the "makepkg" to download them.
And I avoided the first method because:
1. The npm does a poor caching job; if it fails to download a package (which is likely to happen with a lot of dependencies; at least for those users who do not use the npm regularly and so do not have those packages downloaded in their cache folder previously), it will fail completely. That is, running "npm install" again will try to download everything (including downloaded packages) from scratch (no caching and no resumption).
2. Even if npm can be improved in next versions to solve the above item, a good PKGBUILD must be able to run the "build()" function without access to the Internet (so it can be built as while as its source files are provided in its source files path by some other means).

macxcool commented on 2015-12-21 16:25

I know that the new Sozi is not an inkscape plugin anymore but I don't understand why there are so many 'source' files to download and process... more than 300MB. Why are you doing things this way? I'm just curious.
Thanks for all the work that obviously went into this.

luuuciano commented on 2015-12-21 00:25

Wow... my notebook almost burned out! lol...
Thanks a lot, installed it ok now...

sbmomeni commented on 2015-12-20 21:17

There is a problem with website. Downloading the droid-sans multiple times, creates zip files with the same contained files and the same file sizes, but with different sha1sums!
I switched the droid-sans source to website to fix it.

And about inspection of a lot of source files:
You can filter npm packages out with "ll | grep -v tgz" command.

luuuciano commented on 2015-12-20 20:04

When I tried to install it shows: droid-sans ... HAS FAILED
(when checking files, a LOT of files)

It is just me?

sbmomeni commented on 2015-12-19 08:36

Sozi is updated to version 15.11 and is no longer a plugin of inkscape.
You can use any SVG editor to build the original SVG file and then use the Sozi independent GUI to add transitions to it.

Run it from the command line as "sozi" without any argument and wait until it shows the "Load local file" button (this will take a few minutes...) and then select the SVG file.

qqqqqqqqq9 commented on 2015-11-08 19:50

Hi Distag,

i haven't found an email address on the page. Since you seem to care a lot, take over the package.

qqqqqqqqq9 commented on 2015-09-29 11:07

The installation process has changed completely. I'll wait for the instructions to appear here.

qqqqqqqqq9 commented on 2015-09-28 13:37

Where does it say "stable"?

qqqqqqqqq9 commented on 2015-06-12 12:15

15.05. is a preview release. Please don't flag aur3-Packages.

orschiro commented on 2014-12-08 06:55


Maybe using ?

rabarrett commented on 2014-12-07 23:27

Any chance someone will put up 14 in beta?

BrunoSpy commented on 2014-04-06 10:52
Sozi 13.11 is out :)

xrchz commented on 2013-11-02 17:23

The source URL is broken. I think it should look like this:

Clauz commented on 2013-03-21 10:39

gtk-engines should perhaps be a dependency to avoid gtk warnings?

Anonymous comment on 2012-04-30 09:56

You forgot to move in "/usr/share/inkscape/extensions/" even "": Sozi does not work without it...

Anonymous comment on 2012-04-30 09:54

You forgot to move in "/usr/share/inkscape/extensions/" even "": Sozi does not work without it...

BrunoSpy commented on 2012-04-06 06:33

Sozi asks for python2-lxml...

Anonymous comment on 2012-03-07 10:59

New 12.03 version has been released. Please update.

orbisvicis commented on 2011-04-13 19:24

^ should be an array

Cilyan commented on 2011-03-24 21:06

Update here:

linkmauve commented on 2010-12-04 21:29

Updated version and dependencies. Thanks unhammer!

unhammer commented on 2010-12-01 13:54

I think python-lxml should be a dependency, I get an error message if I try without. Otherwise, works great :)