yaws.spec

Paweł Zuzelski z w xatka.net
Nie, 25 Paź 2009, 10:47:33 CET


On Fri, 23 Oct 2009, Krzysztof Goliński wrote:

> Witam,
> 
> Popełniłem speca dla yaws (http://yaws.hyber.org/) i szukam
> developera, który go wrzuci na CVS. Yaws był wpisany na listę
> PLD-specs-TODO.
To chyba ja wrzuciłem, także na wstępie - dzięki :)

> # TODO: don't add yaws.pdf to doc. I don't know why. See -> install source2 and %doc in %file
Nie rozumiem.

> Source1:	%{name}.init
> Source2:	http://yaws.hyber.org/%{name}.pdf
Jeśli podajesz pełen URL do źródła, to znaczy, że chcesz żeby źródło
poszło do DF (w przypadku PDF ma to sens), a zatem musisz podać
Source2-md5. Jeżeli plik ma być trzymany w CVS, to nie podajesz URLa
a tylko nazwę pliku, co najwyżej w komentarzu info skąd się ten plik
bierze.

> URL:		http://yaws.hyber.org/
> BuildRequires:	erlang
> Requires(pre):	/usr/sbin/groupadd
> Requires(pre):	/usr/sbin/useradd
> Requires:	/sbin/chkconfig
> Requires:	erlang
> Requires:	rc-scripts

Odnośnie użytkowników i grup:
  1. jeżeli spec dodaje grupę/użytkownika, musisz:
     - znaleźć wolne numerki w PLD-doc/uid_gid.db.txt
     - dodać wpis do PLD-doc/uid_gid.db.txt
     - dodać odpowiednie Provides (zobacz na przykład tomcat.spec,
       albo apache.spec))
  2. nie wiem, czy czasem yaws nie powinien dodawać jeszcze grupy
     http i przypisać się do tej grupy. Popatrz na spece od innych
     offowych serwerów http (lighttpd.spec)

> #Conflicts:	apache
???

> %pre
> %groupadd -g 103  yaws
> %useradd -u 103 -r -d /home/services/yaws -s /bin/false -c "Yaws HTTP user" -g yaws yaws
> 
> %post
> /sbin/chkconfig --add yaws
> %service yaws start
> 
> %preun
> if [ "$1" = "0" ]; then
>          %service yaws stop
>          /sbin/chkconfig --del yaws
> fi
Jak dodajesz grupy, to przydałoby się jeszcze je gdzieś usunąć.

> #%doc ChangeLog LICENSE yaws.pdf # don't add yaws.pdf to doc. I don't known why.
Ale o co chodzi? To czemu piszesz, żeby nie dodawać, skoro nie wiesz
dlaczego?

> %doc ChangeLog LICENSE
> %dir /var/yaws
> #/var/yaws/*
A cóż to za katalog?

> %dir /var/log/yaws
> %dir %{_sysconfdir}/yaws
> %attr(754,root,root) /etc/rc.d/init.d/yaws
> %{_sysconfdir}/yaws/*
> %{_pkgconfigdir}/yaws.pc
> %{_mandir}/man1/yaws.1*
> %{_mandir}/man5/yaws.conf.5*
> %{_mandir}/man5/yaws_api.5*
> /home/services/yaws/*
A samo /home/servicesyaws?

> %dir %{_libdir}/yaws/ebin
> %dir %{_libdir}/yaws/include
> %dir %{_libdir}/yaws/priv
> %dir %{_libdir}/yaws/priv/lib
A co z %{_libdir}/yaws ?

> #!/bin/bash
bash to zło.

A w ogóle initskrypty należy tworzyć na podstawie
/usr/share/doc/rc-scripts-*/template.init.gz

-- 
Pozdrawiam,
Paweł


Więcej informacji o liście dyskusyjnej pld-devel-pl