This service will be undergoing maintenance at 00:00 UTC, 2016-08-01. It is expected to last about 1 hours
Bug 1111362 - Review Request: sigram - Telegram client from Sialan.labs
Review Request: sigram - Telegram client from Sialan.labs
Status: CLOSED WONTFIX
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
unspecified Severity medium
: ---
: ---
Assigned To: Nobody's working on this, feel free to take it
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2014-06-19 16:43 EDT by Markus Dorfer
Modified: 2015-07-21 08:56 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-07-06 11:44:47 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Markus Dorfer 2014-06-19 16:43:30 EDT
Spec URL: http://blog.startx.de/sigram/sigram.spec
SRPM URL: http://blog.startx.de/sigram/sigram-0.5.5.2-2.fc20.src.rpm
Description: a telegram client for linux written in qt.
Fedora Account System Username: faxe

this is my first package. i already built the package in fedora koji.
http://koji.fedoraproject.org/koji/taskinfo?taskID=7059911
so i kindly ask, that somebody sponsors my request.
Comment 1 Christopher Meng 2014-06-19 23:19:51 EDT
I just started packaging this.

Welcome to Fedora, your SPEC doesn't follow the guidelines well:

1. These tags should be dropped:

Group:      System/GUI/Other
Packager:   Markus Dorfer<markus.dorfer@startx.de>
---

rm -rf %{buildroot}

---

%defattr(-,root,root,-)

---

2. URL:        https://github.com/sialan-labs/sigram.git

I would use this link:

http://labs.sialan.org/projects/sigram

3. Summary tag should be:

Telegram client from Sialan.labs

4. BuildRequires: openssl-devel
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qtdeclarative-devel
BuildRequires: unzip

First, you need to know that it's better for Qt packages to use pkgconfig when finding qt modules:

http://fedoraproject.org/wiki/Packaging:PkgConfigBuildRequires

Then for some of these lines below, you shouldn't include them in SPEC as RPM has dependency generator, when you BuildRequires something, the Requires will be finished by RPM during the install:

Requires:   qt5-qtquickcontrols >= 5
Requires:   qt5-qtbase >= 5
Requires:   qt5-qtbase-gui >= 5
Requires:   qt5-qtdeclarative >= 5
Requires:   qt5-qtgraphicaleffects >= 5

e.g if you BR'ed 

BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qtdeclarative-devel

As declared before, these should be finished by RPM:

Requires:   qt5-qtbase >= 5
Requires:   qt5-qtdeclarative >= 5

yum install qt-creator qt5-qtbase qt5-qtbase-devel qt5-qtdeclarative qt5-qtquick1 qt5-qtquick1-devel kde-plasma-applicationname kde-plasma-nm qt5-qtdeclarative-devel qt5-qtdeclarative-static qt5-qtgraphicaleffects

Seems that qt5-qtquick1-devel is missing in your spec?

The last, no need to add ">= 5", it's nonsensical.

5. %description
Telegram Client for Linux written in QT5.

Too short, please take a look at the upstream website/readme file to rewrite a new one.

6. %build

mkdir build && cd build
qmake-qt5 -o Makefile ../SialanTelegram.pro

make %{?_snmp_mflags} 

1) You should use RPM macro %_qt5_qmake, the meaning of this macro can be found via:

$ rpm -E %_qt5_qmake

And I think %_qt5_qmake ../SialanTelegram.pro is enough, no other option needed.

2) make %{?_snmp_mflags}

Typo, should be:

make %{?_smp_mflags}

7. %install

install -d %{buildroot}/usr/bin/
install -d %{buildroot}/usr/share/applications/
install -d %{buildroot}/usr/share/sigram/
install -d %{buildroot}/usr/share/pixmaps/
cp -r $RPM_BUILD_DIR/%{name}-%{version}/build/countries database emojis fonts translations %{buildroot}%{_datadir}/sigram/
cp -r $RPM_BUILD_DIR/%{name}-%{version}/build/icons/icon.png %{buildroot}%{_datadir}/pixmaps/sigram.png
install $RPM_BUILD_DIR/%{name}-%{version}/build/tg-server.pub %{buildroot}%{_datadir}/sigram/
install $RPM_BUILD_DIR/%{name}-%{version}/build/SialanTelegram %{buildroot}%{_datadir}/sigram/
install %{SOURCE2} %{buildroot}%{_datadir}/applications/sigram.desktop
install -m 0755 %{SOURCE1} %{buildroot}/usr/bin/%{name}

1) install -d %{buildroot}/usr/bin/
install -d %{buildroot}/usr/share/applications/
install -d %{buildroot}/usr/share/sigram/
install -d %{buildroot}/usr/share/pixmaps/

*Please learn how to use macros consistently*:

https://fedoraproject.org/wiki/Packaging:RPMMacros

2) Please preserve timestamps while doing file actions.

https://fedoraproject.org/wiki/Packaging:Guidelines#Timestamps

3) install %{SOURCE2} %{buildroot}%{_datadir}/applications/sigram.desktop

Please learn how to use desktop-file-install:

https://fedoraproject.org/wiki/Packaging:Guidelines#Desktop_files

8. Source0:    %{name}-%{version}.tar.gz

Ask upstream to tag the project, and follow the tarball link trick here:

http://pkgs.fedoraproject.org/cgit/git-cola.git/tree/git-cola.spec#n7

---------------------------

Based on your spec I think you have 0 knowledge of Fedora guidelines, please follow this page step by step if you want to be sponsored successfully:

https://fedoraproject.org/wiki/Join_the_package_collection_maintainers
Comment 2 Sergio Monteiro Basto 2015-07-05 22:07:51 EDT
Why Christopher why not packaging tdesktop ? 

https://github.com/telegramdesktop/tdesktop
Comment 3 Markus S. 2015-07-06 11:44:47 EDT
Telegram Desktop relies on a patched Qt5 fork and that results in bugs like this one: https://github.com/telegramdesktop/tdesktop/issues/702

Btw Sigram appears to be dead (there is a fork called Curegram). IMO therefore this issue can be closed.
Comment 4 Sergio Monteiro Basto 2015-07-06 12:05:56 EDT
yeah , for reference we got some projects in copr: 

dnf copr search telegram

Matched: telegram 

rrix/bitlbee-tg-hc : Bitlbee with support for Telegram and Hipchat
jreznik/cutegram : Cutegram is a cross platform, free and opensource telegram clients, focusing on user friendly, compatibility with
                 : desktop environments. Cutegram is using Qt5, QML, libqtelegram, libappindication, AsemanQtTools technologies and Faenza
                 : icons and Twitter emojies graphic sets. It's free and released under GPLv3 license.
rommon/telegram : telegram desktop app
lsof/telegram-purple : Telegram-purple is a Libpurple plugin that adds support for the Telegram messenger to Pidgin.
iranzo/telegram-cli : Telegram CLI rpm based on https://github.com/vysheng/tg code

Thanks,

Note You need to log in before you can comment on or make changes to this bug.