GithubHelp home page GithubHelp logo

ikedas / sympa-rpm Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 2.0 522 KB

Sympa RPM spec & sources for RHEL/CentOS/Fedora HAVE BEEN MOVED. Follow the link below.

Home Page: https://src.fedoraproject.org/rpms/sympa

Shell 100.00%
sympa rpm

sympa-rpm's People

Contributors

ikedas avatar mpkut avatar xavierba avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

xavierba mpkut

sympa-rpm's Issues

EL6: "error: File must begin with "/": %{_rundir}/sympa/"

Build fails with mock-1.3.5 using epel-6-i386.cfg (modified):

<<snip>>

Processing files: sympa-6.2.19b.2-1.20170910.RHEL6.i686
error: File must begin with "/": %{_rundir}/sympa/
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.R1uEeO
+ umask 022
+ cd /builddir/build/BUILD
+ cd sympa-6.2.19b.2
+ DOCDIR=/builddir/build/BUILDROOT/sympa-6.2.19b.2-1.20170910.RHEL6.i386/usr/share/doc/sympa-6.2.19b.2
+ export DOCDIR
+ rm -rf /builddir/build/BUILDROOT/sympa-6.2.19b.2-1.20170910.RHEL6.i386/usr/share/doc/sympa-6.2.19b.2
+ /bin/mkdir -p /builddir/build/BUILDROOT/sympa-6.2.19b.2-1.20170910.RHEL6.i386/usr/share/doc/sympa-6.2.19b.2
+ cp -pr __doc/AUTHORS.md __doc/NEWS.md __doc/OChangeLog __doc/ONEWS __doc/README.RPM.md __doc/README.md __doc/README.perltidy __doc/dot.perltidyrc __doc/samples __doc/smtpc.1.md /builddir/build/BUILDROOT/sympa-6.2.19b.2-1.20170910.RHEL6.i386/usr/share/doc/sympa-6.2.19b.2
+ cp -pr COPYING /builddir/build/BUILDROOT/sympa-6.2.19b.2-1.20170910.RHEL6.i386/usr/share/doc/sympa-6.2.19b.2
+ exit 0


RPM build errors:
    File must begin with "/": %{_rundir}/sympa/
ERROR: Exception(/usr/local/work/rpmbuild/sympa/SRPMS/EL6/sympa-6.2.19b.2-1.20170910.RHEL.src.rpm) Config(EL6-i386) 3 minutes 12 seconds
INFO: Results and/or logs in: /var/lib/mock/EL6-i386/result
ERROR: Command failed. See logs for output.
 # bash --login -c /usr/bin/rpmbuild -bb --target i686 --nodeps /builddir/build/SPECS/sympa-6.2.spec

Crash with earlier version of perl-LDAP

With EL7, when Sympa uses any LDAP feature, it may crash with message such as:

Mmm dd hh:mm:ss xxxxxxxx wwsympa[XXXXX]: err main::#1571 > main::do_sso_login#3692 > Sympa::WWW::Auth::get_email_by_net_id#370 > Sympa::Database::connect#123 > (eval)#2 > (eval)#31 > (eval)#31 > Net::LDAP::BEGIN#31 > (eval)#31 DIED: Can't locate IO/Socket/INET6.pm in @INC (@INC contains: /usr/share/sympa/lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/share/perl5/vendor_perl/Net/LDAP.pm line 31.

This is due to a bug in perl-ldap 0.64 or earlier. See RT 100151. EL7 bundles perl-ldap (perl-LDAP) 0.56.

A workaround seems installing perl-IO-Socket-INET6 (even if the host did not enable IPv6). Should we add it to dependency of EL7 package?

RHEL/CentOS 8

I'd like not to provide EL8 (and later) packages on Sympa-JA.org. @xavierba, can you provide them with COPR, and do you know when COPR will begin supporting EL8?

EL6: AutoReq misses some dependencies

With mock-1.35 using epel-6 configuration, following packages are not included in dependencies.

  • perl(Class::Singleton) >= 1.03

    This is mandatory. Perhaps why it is not included is that this is always imported as use base qw(Class::Singleton);.

    Another example is perl(HTML::Parser) (not matter because it is required by another dependencies).

  • perl(Clone) >= 0.28

  • perl(Unicode::Normalize) >= 0.23

    These are optional but IMO recommended. They would be added manually.

Aliases location

Hi Soji,

Currently the sympa aliases are located in 3 places:

  • /etc/sympa/aliases.sympa.sendmail for sendmail robot aliases
  • /etc/sympa/aliases.sympa.postfix for postfix robot aliases
  • /var/lib/sympa/sympa_aliases for list aliases

First, I'm not sure the tiny difference between the sendmail and postfix aliases file really needs to split them in two. Probably, merging them and adding a comment would be enough.
Also, the rpm would need to ship empty /etc/sympa/aliases.sympa.sendmail.db and /etc/sympa/aliases.sympa.postfix.db owned by root:root and mode 644 so the newaliases command would work out of the box.

Second, I'm not sure to understand why the split between the robot and list aliases is done. My uneducated opinion is it adds yet another complexity to the setup, one needs to define 2 aliases files in the MTA.
Also, same issue as above with the missing 644 root:root /var/lib/sympa/sympa_aliases.db
Both files would need to be created in %post, only if they don't exist.
I'd rather have them directly shipped in the rpm and marked as %config(noreplace), but then rpmlint would rightly complain about config files not in /etc.

I would like to suggest to gather them all in /etc/sympa/aliases, for ease of setup and packaging.

I have a branch which implements these changes (although the merge of sendmail/postfix aliases and .db creation is in one commit which would be better split in two).
https://github.com/xavierba/sympa-rpm/tree/aliases
In case we follow that path, some additional commits will be needed to update the doc and ensure smooth migration of the aliases, but I'd rather add them once we have an agreement on the way forward.

I'm probably missing some background and all my changes might not make sense. You know the codebase much better than I ever will, so I'd really like to have your educated opinion.
I think this is the last thing to address before the package is ready for a review.

Regards,
Xavier

font-awesome is removed

Version: 6.2.23b.3
Platform: CentOS 6.9

If fontawesome-fonts(-web) have already been installed, then sympa package is updated to 6.2.23b.3, files included in fontawesome are removed.

# yum install fontawesome-fonts-web
...
# yum update sympa
...
$ rpm -qV fontawesome-fonts fontawesome-fonts-web
missing     /usr/share/fonts/fontawesome/FontAwesome.otf
missing     /usr/share/fonts/fontawesome/fontawesome-webfont.ttf
missing     /usr/share/font-awesome-web/css/font-awesome.css
missing     /usr/share/font-awesome-web/css/font-awesome.min.css
missing     /usr/share/fonts/fontawesome/fontawesome-webfont.eot
missing     /usr/share/fonts/fontawesome/fontawesome-webfont.svg
missing     /usr/share/fonts/fontawesome/fontawesome-webfont.woff
missing     /usr/share/fonts/fontawesome/fontawesome-webfont.woff2
$

SELinux rules

SELinux rules for sympa services and web interface would be bundled in package.

EL6: Missing Requires

On CentOS 6 package, following dependent packages are missed

  • HTML::FormatText
  • HTML::StripScripts::Parser
# sympa.pl --health_check
Base class package "HTML::FormatText" is empty.
    (Perhaps you need to 'use' the module which defines that package first,
    or make that module available in @INC (@INC contains: /usr/share/sympa/lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .).
 at /usr/share/sympa/lib/Sympa/HTML/FormatText.pm line 34
BEGIN failed--compilation aborted at /usr/share/sympa/lib/Sympa/HTML/FormatText.pm line 34.
Compilation failed in require at /usr/share/sympa/lib/Sympa/Message.pm line 52.
BEGIN failed--compilation aborted at /usr/share/sympa/lib/Sympa/Message.pm line 52.
Compilation failed in require at /usr/share/sympa/lib/Sympa/Upgrade.pm line 47.
BEGIN failed--compilation aborted at /usr/share/sympa/lib/Sympa/Upgrade.pm line 47.
Compilation failed in require at /usr/sbin/sympa.pl line 54.
BEGIN failed--compilation aborted at /usr/sbin/sympa.pl line 54.

Splitting package for web interface

I feel it's too late, but can we split package for web interface?

Advantages I think are:

  • a user who wants to use web interface but don't want to use prepared HTTPd configurations (e.g. using another server software) may install only sympa and sympa-www below.
  • replacement of web interface in the future may be easy.

Idea is that sympa-www package including executables, modules etc. for web interface but not including configuration for each HTTP server. For example:

  • /etc/sympa/custom_actions/
  • /etc/sympa/sympa.wsdl
  • /etc/sympa/web_tt2
  • /usr/libexec/sympa/sympa_soap_server-wrapper.fcgi
  • /usr/libexec/sympa/sympa_soap_server.fcgi
  • /usr/libexec/sympa/wwsympa-wrapper.fcgi
  • /usr/libexec/sympa/wwsympa.fcgi
  • /usr/share/locale/*/LC_MESSAGES/web_help.mo
  • /usr/share/man/man1/upgrade_shared_repository.1.gz
  • /usr/share/man/man3/Sympa::WWW::*.3Sympa.gz
  • /usr/share/man/man5/sympa.wsdl.5.gz
  • /usr/share/man/man5/trusted_applications.conf.5.gz
  • /usr/share/man/man8/sympa_soap_server.8.gz
  • /usr/share/man/man8/wwsympa.8.gz
  • /usr/share/sympa/bin/upgrade_shared_repository.pl
  • /usr/share/sympa/default/sympa.wsdl
  • /usr/share/sympa/default/web_tt2/*
  • /usr/share/sympa/lib/Sympa/WWW/*
  • /usr/share/sympa/static_content/*
  • /var/lib/sympa/css
  • /var/lib/sympa/pictures

(Note: above is incomplete list.)

Below would be included in sympa-www, but are referred to by recent code used by core sympa package.

  • /etc/sympa/auth.conf
  • /etc/sympa/crawlers_detection.conf
  • /usr/share/man/man1/upgrade_sympa_password.1.gz
  • /usr/share/man/man5/auth.conf.5.gz
  • /usr/share/man/man5/crawlers_detection.conf.5.gz
  • /usr/share/sympa/bin/upgrade_sympa_password.pl
  • /usr/share/sympa/default/auth.conf
  • /usr/share/sympa/default/crawlers_detection.conf

2018-03-29 Updated file list.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.