]> git.pld-linux.org Git - packages/anyterm.git/blobdiff - anyterm.spec
- tabs in preamble
[packages/anyterm.git] / anyterm.spec
index a1f237ca8f30247e4b33b95e67a63e4312f6e99e..1c93f6bbc30ec45b5c7e2a83b4e9b95ef9104763 100644 (file)
@@ -1,8 +1,13 @@
+# TODO
+# - anygetty hangs due /bin/login calling vhangup()
+#   http://anyterm.org/1.0/config.html
+# - put anygetty to separate package?
 %define        apxs            /usr/sbin/apxs
 Summary:       Terminal emulator in a web browser
+Summary(pl.UTF-8):     Emulator terminala działający w przeglądarce WWW
 Name:          anyterm
 Version:       1.1.4
-Release:       0.3
+Release:       0.10
 Epoch:         0
 License:       GPL
 Group:         Networking/Daemons
@@ -10,20 +15,24 @@ Source0:    http://anyterm.org/download/%{name}-%{version}.tbz2
 # Source0-md5: cf841703b7438866e573f5a33137ff6f
 Patch0:                %{name}-makefile.patch
 URL:           http://anyterm.org/
+BuildRequires: %{apxs}
 BuildRequires: apache-devel >= 2.0.52-2
 BuildRequires: apr-devel
 BuildRequires: rote-devel >= 0.2.8
 BuildRequires: rpmbuild(macros) >= 1.228
-BuildRequires: %{apxs}
 Requires:      apache >= 2.0.52-2
+Requires:      apache(modules-api) = %apache_modules_api
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _appdir         %{_datadir}/%{name}
 %define                _pkglibdir      %(%{apxs} -q LIBEXECDIR 2>/dev/null)
-%define                _sysconfdir /etc/httpd
+%define                _sysconfdir     %(%{apxs} -q SYSCONFDIR 2>/dev/null)
 
 %description
-An apache module plus scripts to make a terminal within a web browser.
+An Apache module plus scripts to make a terminal within a web browser.
+
+%description -l pl.UTF-8
+Moduł Apache'a i skrypty tworzące terminal w przeglądarce WWW.
 
 %prep
 %setup -q
@@ -31,37 +40,59 @@ An apache module plus scripts to make a terminal within a web browser.
 mv -f browser/.htaccess htaccess
 
 %build
-rm -rf $RPM_BUILD_ROOT
-cd apachemod
-%{__make} \
+%{__make} -C apachemod \
        INCLUDES='-I%{_includedir}/apr-util' \
        APXS2=%{apxs} \
        APR_CONFIG=apr-1-config
-cd ..
-cd anygetty
-%{__make}
-cd ..
+%{__make} -C anygetty
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_sbindir},%{_sysconfdir}/httpd.conf,%{_pkglibdir},%{_mandir}/man8,%{_appdir}}
 
-cat > $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf/70_anyterm.conf <<END
+cat > $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf/70_anyterm.conf <<'END'
 LoadModule anyterm modules/%{name}.so
 <IfModule anyterm>
        Alias /%{name} "%{_appdir}"
-       anyterm_command '%{_sbindir}/anygetty --remotehost "Anyterm: %h"'
+       # hangs on login:
+#      anyterm_command '%{_sbindir}/anygetty --remotehost "Anyterm: %h"'
+       # works for me:
+       anyterm_command "USER=%u; exec /usr/bin/ssh ${USER:+$USER@}localhost"
 
        <Files anyterm-module>
                SetHandler anyterm
+               <IfModule mod_setenv.c>
+                       # for this to work you need to change CustomLog:
+                       # CustomLog /path/to/logfile combined env=!DONTLOG
+                       # http://anyterm.org/security.html
+                       SetEnv DONTLOG
+               </IfModule>
        </Files>
+
+       <IfModule !mod_auth.c>
+               <Location /%{name}>
+                       allow from all
+               </Location>
+       </IfModule>
+
+       <IfModule mod_auth.c>
+               <Location /%{name}>
+                       AuthType Basic
+                       AuthUserFile /etc/httpd/user
+                       AuthGroupFile /etc/httpd/group
+                       AuthName "AnyTerm"
+                       require group anyterm
+                       satisfy any
+                       order allow,deny
+               </Location>
+       </IfModule>
 </IfModule>
 # vim: filetype=apache ts=4 sw=4 et
 END
 
 install apachemod/.libs/%{name}.so $RPM_BUILD_ROOT%{_pkglibdir}/%{name}.so
 cp -a browser/* $RPM_BUILD_ROOT%{_appdir}
-install anygetty/anygetty $RPM_BUILD_ROOT/%{_sbindir}
+install anygetty/anygetty $RPM_BUILD_ROOT%{_sbindir}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -69,8 +100,9 @@ rm -rf $RPM_BUILD_ROOT
 %post
 %service httpd restart
 
-%banner %{name} <<EOF
-For full function, setuid %{_sbindir}/anygetty.
+%banner %{name} <<-EOF
+To use anygetty, you need to setuid it:
+chmod 4755 %{_sbindir}/anygetty
 EOF
 
 %preun
@@ -80,7 +112,7 @@ fi
 
 %files
 %defattr(644,root,root,755)
-%doc README htaccess
+%doc README CHANGELOG htaccess
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf/*
 %attr(755,root,root) %{_pkglibdir}/%{name}.so
 %attr(755,root,root) %{_sbindir}/anygetty
This page took 0.066144 seconds and 4 git commands to generate.