Bug 4256

Summary: Review request: aegisub - Tool for creating and modifying subtitles
Product: Package Reviews Reporter: Michal Ambroz <rebus>
Component: Review RequestAssignee: RPM Fusion Package Review <rpmfusion-package-review>
Status: RESOLVED FIXED    
Severity: enhancement CC: frederic.germain, kwizart, musuruan, rebus, rpmfusion-package-review, vascom2, xavier
Priority: P1 Flags: kwizart: fedora-review+
rebus: needinfo+
Version: Current   
Hardware: x86_64   
OS: GNU/Linux   
URL: http://www.aegisub.org
namespace:
Bug Depends on: 4225    
Bug Blocks:    

Description Michal Ambroz 2016-09-14 01:02:43 CEST
SPEC: https://rebus.fedorapeople.org/SPECS/aegisub.spec
SRPM: https://rebus.fedorapeople.org/SRPMS/aegisub-3.2.2-1.fc23.src.rpm

Description:
Aegisub is a free, cross-platform open source tool for creating and
modifying subtitles. Aegisub makes it quick and easy to time
subtitles to audio, and features many powerful tools for styling them,
including a built-in real-time video preview.

Why this package is not eligible to be included in Fedora:
Package depends on ffms2 library, which depends on the ffmpeg.

$ rpmlint aegisub.spec ../SRPMS/aegisub-3.2.2-1.fc23.src.rpm ../RPMS/x86_64/aegisub-3.2.2-1.fc23.x86_64.rpm 
aegisub.x86_64: W: no-manual-page-for-binary aegisub-3.2
2 packages and 1 specfiles checked; 0 errors, 1 warnings.

Mention if this is your first RPM Fusion package. 
This is not my first package and I am also Fedora packager.
Comment 1 Vasiliy Glazov 2016-09-21 13:31:09 CEST
1. Remove
%global         gituser         Aegisub
%global         gitname         Aegisub
And use %{url instead of https://github.com/%{gituser}/%{gitname} in Source0.

2. Change
%autosetup -n %{gitname}-%{version} -p 1
to
%autosetup -n Aegisub-%{version} -p 1

It is not so often used to make %global macro.

3. Remove rm -rf %{buildroot}.

4. Make desktop-file validation.
Comment 2 Michal Ambroz 2016-09-22 09:40:40 CEST
Hello Vasiliy,
thanks for review.

>1. Remove
>It is not so often used to make %global macro.
I would prefer to keep the github macros. I believe it is quite common in the Fedora SPECS and I believe there is no rule which should say I must not use that.

>3. Remove rm -rf %{buildroot}.
>4. Make desktop-file validation.
I Will do.

Mik
Comment 3 Vasiliy Glazov 2016-09-22 09:47:30 CEST
Also simplify
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/*

to
%{_datadir}/%{name}
Comment 4 Vasiliy Glazov 2016-09-22 09:51:56 CEST
And add
Requires:       hicolor-icon-theme
Comment 5 Vasiliy Glazov 2016-09-22 10:02:27 CEST
And add
BuildRequires:	intltool

Check build for rawhide instead of F23.

And I recommend add --without-openal to %configure
Comment 7 Vasiliy Glazov 2016-09-29 09:05:20 CEST
1. As you can see in build.log http://koji.russianfedora.pro/kojifiles/work/tasks/106/90106/build.log
OpenAL doesn't work an disabled. So I recommend add --without-openal to configure.

2. I think it is better remove version suffix from bin-file name.
Add before configure:
#remove version postfix
sed -e 's/aegisub-3\.2/aegisub/' -e 's/aegisub-32/aegisub/' -i configure

Change 
%find_lang %{name}
%files -f %{name}-32.lang
%{_bindir}/%{name}*

to
%find_lang %{name}
%files -f %{name}.lang
%{_bindir}/%{name}
Comment 8 Michal Ambroz 2016-10-22 23:45:50 CEST
I used your suggestion to remove the version.

Regarding openal - seems I was having missing dependency to libcxx-devel which is used when checking presence for openal-devel. But it seems to work fine on FC23 and FC24 so why not to keep in the support for it. Unfortunately my copr respository with ffms2 and aegisub was removed without notice earlier than I was able to check whether it worked or not for rawhide.

SPEC: https://rebus.fedorapeople.org/SPECS/aegisub.spec
SRPM: https://rebus.fedorapeople.org/SRPMS/aegisub-3.2.2-3.fc24.src.rpm
Comment 9 Vasiliy Glazov 2016-10-28 10:20:04 CEST
PACKAGE APPROVED FOR FREE REPO
Comment 11 Vasiliy Glazov 2016-10-28 10:30:30 CEST
But OpenAL still not work and disabled during configure.
Comment 12 Frederic Germain 2017-01-04 17:04:24 CET
I tried aegisub-3.2.2-1.fc23.src.rpm on fedora 25 (latest update from 2017/01/04), and it crashes when launched

A little bit of digging is that it's linked somehow to https://fedoraproject.org/wiki/Changes/WaylandByDefault

"GTK+ applications that use X11-specific APIs need to be patched to explicitly use the GDK X backend"

Actually, aegisub is not at fault. wxwidget (wxGTK3-3.0.2-30.fc25.src.rpm) expect to run on gtk with x11 backend (some hardcoded macro related to getting the current x11 display to use xv...). On my F25, the default gtk backend is now wayland (I ran my own aegisub on F24 without trouble.

And when running "GDK_BACKEND=x11 aegisub" there is no crashes

For me, the bug is in wxGTK3-3.0.2-30.fc25.src.rpm though. There is a few bugs on the subject upstream (http://trac.wxwidgets.org/search?q=wayland).

Also, any news as why the previous package didn't land on F24 yet ? aegisub is awesome and it would be great that everyone can enjoy it.
Comment 13 Nicolas Chauvet 2017-01-05 13:06:16 CET
@michal, ffms2 is been imported, you should be able to import your package by then.
But first you need to create an account into our fas, you do not seems to have one already. (ideally using the same fedora fas account name).
Can you create it.
Thx
Comment 14 Nicolas Chauvet 2017-01-05 16:57:10 CET
Nevermind, I've found your RPM Fusion fas name and have proceeded with the git module creation. Please import your package.
Thx
Comment 15 Michal Ambroz 2017-01-06 13:49:00 CET
(In reply to Nicolas Chauvet from comment #14)

Thank you Nicolas, yes I was waiting for the ffms2. i will work on importing aegisub on weekend.
Mik
Comment 16 Michal Ambroz 2017-03-19 03:51:30 CET
I have impoerted the package, but build fails on dependencied, when instlalling ffmpeg-libs

Error: from the build logs:
http://koji.rpmfusion.org/kojifiles/work/tasks/9448/89448/root.log
DEBUG util.py:439:  Error: nothing provides libbluray.so.1()(64bit) needed by ffmpeg-libs-3.2.4-1.fc26.x86_64
Comment 17 Xavier Bachelot 2017-03-19 10:39:39 CET
Hi Michal,

Sorry about that, this is more or less my fault.

2 days ago, I built latest version of libbluray for Rawhide and Fedora 26.
The update for Fedora 26 will be part of the gnome update that is going to happen next week, because gvfs depends on libbluray.

RPM Fusion still builds against Fedora 26, and the libbluray update has been added as a buildroot override as I was about to rebuild all packages that depend on libbluray, including ffmpeg.
However, there is an RPM Fusion mass rebuild coming for F26 both to match Fedora 26's rebuild for gcc 7, but also to enable ppc64, ppc64le and aarch64 in RPM Fusion. It was discussed and agreed on #rpmfusion to wait for the mass rebuild to happen, which should be real soon, rather than rebuild the affected packages.
I'll send a mail to rpmfusion-devel so everyone knows.

The aegisub F26 build will be taken care of by the mass rebuild.
Meanwhile, building for F25 and F24 should be OK.

Again, sorry for the inconveniences.

Regards,
Xavier
Comment 18 Michal Ambroz 2017-03-19 11:19:50 CET
Hi Xavier,
no problem at at all, it is not anything urgent to me. I will try to rebuild in a week or two.
Mik
Comment 19 Xavier Bachelot 2017-03-19 11:41:38 CET
You won't have to resubmit, the mass rebuild will do it for you.

Regards,
Xavier