]>
Commit | Line | Data |
---|---|---|
d6df6cfb | 1 | Summary: A WebDAV server in Python |
379dd378 | 2 | Summary(pl.UTF-8): Serwer WebDAV napisany w Pythonie |
d6df6cfb | 3 | Name: PyFileServer |
4 | Version: 0.2.1 | |
b6821af1 | 5 | Release: 1 |
d6df6cfb | 6 | License: BSD |
7 | Group: Networking/Daemons | |
8 | Source0: http://download.berlios.de/pyfilesync/PyFileServer-0.2.1.zip | |
9 | # Source0-md5: 7a46d3f94e05d81b4110e6d0780c642b | |
10 | URL: http://pyfilesync.berlios.de/pyfileserver.html | |
e28aca42 | 11 | BuildRequires: rpmbuild(macros) >= 1.710 |
45788365 | 12 | Patch0: %{name}-setup_py.patch |
d6df6cfb | 13 | BuildRequires: python >= 2.3 |
896b5459 | 14 | BuildRequires: python-setuptools |
d6df6cfb | 15 | BuildRequires: unzip |
16 | %pyrequires_eq python-modules | |
17 | Requires: python-PyXML | |
18 | BuildArch: noarch | |
19 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
20 | ||
21 | %description | |
35a1569b JB |
22 | PyFileServer implements up to Class 2 of the WebDAV specification, |
23 | including support for shared and exclusive write locking, and setting | |
24 | arbitrary dead properties. It also implements HTTP user authentication | |
25 | using both basic and digest schemes, HTTP single range retrievals and | |
d6df6cfb | 26 | conditional processing headers (If_Match, If_Modified_Since, etc). |
27 | ||
35a1569b | 28 | PyFileServer also allows custom components to be developed easily by |
d6df6cfb | 29 | having clear interfaces for: |
30 | - Resource Abstraction Layer | |
31 | - Lock Manager | |
32 | - Property Manager | |
33 | - Domain Controllers | |
34 | ||
b12a1b42 JR |
35 | %description -l pl.UTF-8 |
36 | PyFileSerwer implementuje specyfikację WebDAV do klasy 2 włącznie, | |
37 | wraz z obsługą współdzielonych i wyłącznych blokad zapisu oraz | |
38 | ustawianiem dowolnych martwych własności. Implementuje także | |
39 | uwierzytelnianie użytkowników po HTTP przy użyciu schematów basic i | |
40 | digest, pojedyncze zakresy ściągania danych po HTTP oraz nagłówki | |
35a1569b JB |
41 | przetwarzania warunkowego (If_Match, If_Modified_Since itp.). |
42 | ||
b12a1b42 JR |
43 | PyFileServer pozwala także na łatwe tworzenie własnych komponentów |
44 | udostępniając przejrzyste interfejsy do: | |
45 | - warstwy abstrakcji zasobów (Resource Abstraction Layer) | |
46 | - zarządcy blokad (Lock Manager) | |
47 | - zarządcy własności (Property Manager) | |
48 | - kontrolerów domen (Domain Controllers) | |
d6df6cfb | 49 | |
50 | %prep | |
51 | %setup -q -n %{name} | |
45788365 | 52 | %patch0 |
d6df6cfb | 53 | |
54 | %build | |
9225ab9b | 55 | %py_build |
d6df6cfb | 56 | |
57 | %install | |
58 | rm -rf $RPM_BUILD_ROOT | |
9225ab9b | 59 | %py_install \ |
b6821af1 | 60 | --single-version-externally-managed \ |
61 | --optimize=2 \ | |
62 | --root=$RPM_BUILD_ROOT | |
d6df6cfb | 63 | |
d6df6cfb | 64 | |
b6821af1 | 65 | |
66 | install -d $RPM_BUILD_ROOT%{_bindir} | |
d6df6cfb | 67 | echo "#!/usr/bin/python" > $RPM_BUILD_ROOT%{_bindir}/PyFileServer.py |
68 | cat ext_wsgiutils_server.py >> $RPM_BUILD_ROOT%{_bindir}/PyFileServer.py | |
d6df6cfb | 69 | %py_postclean |
70 | ||
71 | %clean | |
72 | rm -rf $RPM_BUILD_ROOT | |
73 | ||
74 | %files | |
75 | %defattr(644,root,root,755) | |
76 | %doc ADDONS.txt DEVELOPERS.txt PyFileServer-example.conf README.txt | |
77 | %doc THANKS.txt TODO.txt TUTORIAL.txt | |
78 | %attr(755,root,root) %{_bindir}/* | |
79 | %{py_sitescriptdir}/pyfileserver | |
b6821af1 | 80 | %{py_sitescriptdir}/PyFileServer* |