On Sun, 23 Oct 2016 20:21:08 +0300 Theodoros Foradis <theodoros....@openmailbox.org> wrote:
> On 2016-10-22 23:30, Julien Lepiller wrote: > > Hi, > > > > I made three patches to add aegisub. It needs icu support in boost. > > > > Currently, the window acts strangely. Widgets resize when resizing > > the window, but not when maximizing it, they don't all show at > > first. The video part should resize with the mouse wheel, but the > > containing frame only resizes after resizing the window. sliders > > don't visually move, but they are functionnal. Sound can't play (it > > defaults to alsa which doesn't work on my system, and crashes when > > selecting pulseaudio with "Assertion 'c->callback' failed at > > pulsecore/socket-client.c:126, function do_call(). Aborting."). > > > > So I need some help here. > > > > Also the testing suite depends on a lua package that is not in guix > > yet and has a lot of dependencies not in guix. So I disabled it for > > now. > > Hello, > > I have been packaging kicad (which uses wxwidgets), and I came across > the > same window resizing issues. I got around them by adding a version of > wxwidgets-3.0.2 which uses gtk+-2 as an input. > > I plan to post the patches soon, but if it works for aegisub, you can > add it first. I use the following package definition: > > (define-public wxwidgets-gtk2 > (package (inherit wxwidgets) > (inputs `(("gtk+" ,gtk+-2) > ,@(alist-delete > "gtk+" > (package-inputs wxwidgets)))) > (name "wxwidgets-gtk2"))) Thank you so much! That's a lot better :) So now I only have one issue left: no sound. Alsa doesn't work: ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave and setting to pulseaudio crashes: Assertion 'c->callback' failed at pulsecore/socket-client.c:126, function do_call(). Aborting. Any idea?
>From c08329ba9cca3469c49ec374dcd9316943d2ad5c Mon Sep 17 00:00:00 2001 From: Julien Lepiller <jul...@lepiller.eu> Date: Sun, 23 Oct 2016 21:58:24 +0200 Subject: [PATCH 1/4] gnu: Add wxwidgets-gtk2 * gnu/packages/wxwidgets.scm (wxwidgets-gtk2): New variable. --- gnu/packages/wxwidgets.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/wxwidgets.scm b/gnu/packages/wxwidgets.scm index 31da2a9..a8ab028 100644 --- a/gnu/packages/wxwidgets.scm +++ b/gnu/packages/wxwidgets.scm @@ -109,3 +109,11 @@ and many other languages.") (assoc-ref %outputs "out") "/lib")) ;; No 'check' target. #:tests? #f)))) + +(define-public wxwidgets-gtk2 + (package (inherit wxwidgets) + (inputs `(("gtk+" ,gtk+-2) + ,@(alist-delete + "gtk+" + (package-inputs wxwidgets)))) + (name "wxwidgets-gtk2"))) -- 2.10.1
>From d901b1096d40889dbadc39f5291f242bf5626df3 Mon Sep 17 00:00:00 2001 From: Julien Lepiller <jul...@lepiller.eu> Date: Sun, 23 Oct 2016 21:59:23 +0200 Subject: [PATCH 2/4] gnu: Add ffms2. * gnu/packages/video.scm (ffms2): New variable. --- gnu/packages/video.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index bd82eb8..d6da6c0 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -586,6 +586,32 @@ audio/video codec library.") flag)) ,flags)))))) +(define-public ffms2 + (package + (name "ffms2") + (version "2.23") + (home-page "https://github.com/FFMS/ffms2/";) + (source (origin + (method url-fetch) + (uri (string-append home-page "archive/" version ".tar.gz")) + (sha256 + (base32 + "1vbkab8vrplxz5xgag8ggzkwp4f7nf285pd0l2a7zy66n6i2m6xh")))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags + (list "--enable-avresample"))) + (inputs `(("zlib" ,zlib))) + (propagated-inputs `(("ffmpeg" ,ffmpeg))) + (native-inputs `(("pkg-config" ,pkg-config))) + (synopsis "Cross-plateform wrapper around ffmpeg/libav") + (description + "FFMpegSource is a wrapper library around ffmpeg/libav that allows +programmers to access a standard API to open and decompress media files") + (license license:gpl2+))) ; inherits from ffmpeg + ; sources are distributed under a different license that the binary. + ; see https://github.com/FFMS/ffms2/blob/master/COPYING + (define-public vlc (package (name "vlc") -- 2.10.1
>From d68a49ed2a518abddfbba5316222b94300ab749c Mon Sep 17 00:00:00 2001 From: Julien Lepiller <jul...@lepiller.eu> Date: Sun, 23 Oct 2016 22:00:12 +0200 Subject: [PATCH 3/4] boost: Add icu support. * gnu/packages/boost.scm (boost): Add icu4c as input. --- gnu/packages/boost.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index ab31fa8..c4a607e 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -27,6 +27,7 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages compression) + #:use-module (gnu packages icu4c) #:use-module (gnu packages python) #:use-module (gnu packages shells) #:use-module (gnu packages perl)) @@ -45,7 +46,8 @@ (base32 "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5")))) (build-system gnu-build-system) - (inputs `(("zlib" ,zlib))) + (inputs `(("zlib" ,zlib) + ("icu4c" ,icu4c))) (native-inputs `(("perl" ,perl) ("python" ,python-2) @@ -86,7 +88,8 @@ (zero? (system* "./bootstrap.sh" (string-append "--prefix=" out) - "--with-toolset=gcc"))))) + "--with-toolset=gcc" + "--with-icu"))))) (replace 'build (lambda* (#:key outputs make-flags #:allow-other-keys) -- 2.10.1
>From 250a1c91ad1644ce998518eab77460869fab49ac Mon Sep 17 00:00:00 2001 From: Julien Lepiller <jul...@lepiller.eu> Date: Sun, 23 Oct 2016 22:01:00 +0200 Subject: [PATCH 4/4] gnu: Add aegisub. * gnu/packages/video.scm (aegisub): New variable. --- gnu/packages/video.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index d6da6c0..cc70e3d 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -88,6 +88,10 @@ #:use-module (gnu packages xiph) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) + #:use-module (gnu packages wxwidgets) + #:use-module (gnu packages boost) + #:use-module (gnu packages gnome) + #:use-module (gnu packages libreoffice) ; hunspell #:use-module (gnu packages assembly) #:use-module (gnu packages zip)) @@ -612,6 +616,51 @@ programmers to access a standard API to open and decompress media files") ; sources are distributed under a different license that the binary. ; see https://github.com/FFMS/ffms2/blob/master/COPYING +(define-public aegisub + (package + (name "aegisub") + (version "3.2.2") + (home-page "http://www.aegisub.org/";) + (source (origin + (method url-fetch) + (uri (string-append + "http://ftp.aegisub.org/pub/archives/releases/source/"; + name "-" version ".tar.xz")) + (sha256 + (base32 + "11b83qazc8h0iidyj1rprnnjdivj1lpphvpa08y53n42bfa36pn5")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list "--disable-update-checker" + "--without-portaudio" + "--without-openal" + "--without-oss") + ;#:test-target "test")) ;; requires busted, a lua package we don't have yet + #:tests? #f)) + (inputs `(("boost" ,boost) + ("desktop-file-utils" ,desktop-file-utils) + ("ffms2" ,ffms2) + ("fftw" ,fftw) + ("hunspell" ,hunspell) + ("mesa" ,mesa) + ("libass" ,libass) + ("alsa-lib" ,alsa-lib) + ("pulseaudio$" ,pulseaudio) + ("libx11" ,libx11) + ("freetype" ,freetype) + ("wxwidgets-gtk2" ,wxwidgets-gtk2))) + (native-inputs `(("intltool" ,intltool) + ("pkg-config" ,pkg-config))) + (synopsis "Subtitle engine") + (description "Aegisub helps translators create subtitles for video") + (license (list license:bsd-3 ; the package is licensed under the bsd-3, except + license:mpl1.1 ; for vendor/universalchardet under the mpl1.1 + license:expat)))) ; and src/gl that is under a license similar + ; the the Expat license, with a rewording (Software -> Materials). (called MIT + ; by upstream). See https://github.com/Aegisub/Aegisub/blob/master/LICENCE + ; src/MatroskaParser.(c|h) is under bsd-3 with permission from the author + (define-public vlc (package (name "vlc") -- 2.10.1