]> git.pld-linux.org Git - packages/etckeeper.git/blob - etckeeper.spec
bce461abf2db0d594010c7a95bfb5d1433af75c9
[packages/etckeeper.git] / etckeeper.spec
1 # TODO:
2 # - Subpackages for yum and apt plugins
3 # - Subpackages for backends (git, etc)
4 # - Write PLD %pre and %post macros that trigger pre-install and post-install runs
5 # - %{py_sitescriptdir}/bzrlib/plugins also created by qbzr package?
6 Summary:        Store /etc in a SCM system (git, mercurial, bzr or darcs)
7 Name:           etckeeper
8 Version:        1.0
9 Release:        0.4
10 License:        GPL v2
11 Group:          Applications/System
12 Source0:        http://ftp.debian.org/debian/pool/main/e/etckeeper/%{name}_%{version}.tar.gz
13 # Source0-md5:  1d7e402b41721f2a9ea0b217b969ba89
14 URL:            http://kitenet.net/~joey/code/etckeeper/
15 BuildRequires:  bzr
16 BuildRequires:  rpm-pythonprov
17 BuildRequires:  rpmbuild(macros) >= 1.219
18 BuildRequires:  sed >= 4.0
19 Requires:       perl
20 Requires:       python-modules
21 Suggests:       %{name}-bash-completions
22 Suggests:       %{name}-bzr
23 Suggests:       git-core >= 1.6.1-1
24 Obsoletes:      yum-etckeeper
25 BuildArch:      noarch
26 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27
28 %description
29 The etckeeper program is a tool to let /etc be stored in a git,
30 mercurial, bzr or darcs repository. It hooks into APT to automatically
31 commit changes made to /etc during package upgrades. It tracks file
32 metadata that version control systems do not normally support, but
33 that is important for /etc, such as the permissions of /etc/shadow.
34 It's quite modular and configurable, while also being simple to use if
35 you understand the basics of working with version control.
36
37 The default backend is git, if want to use a another backend please
38 install the appropriate tool (mercurial, darcs or bzr). To use bzr as
39 backend, please also install the %{name}-bzr package.
40
41 To start using the package please read
42 %{_docdir}/%{name}-%{version}/README
43
44 %package bzr
45 Summary:        Support for bzr with etckeeper
46 Group:          Applications/System
47 Requires:       %{name} = %{version}-%{release}
48 Requires:       bzr
49
50 %description bzr
51 This package provides a bzr backend for etckeeper, if you want to use
52 etckeeper with bzr backend, install this package.
53
54 %package -n bash-completion-%{name}
55 Summary:        Bash completion routines for %{name}
56 Group:          Applications/Shells
57 Requires:       %{name} = %{version}-%{release}
58 Requires:       bash-completion
59 Obsoletes:      etckeeper-bash-completions
60
61 %description -n bash-completion-%{name}
62 Bash completion routines for etckeeper.
63
64 %prep
65 %setup -qc
66 mv %{name} .tmp
67 mv .tmp/* .
68 %{__sed} -i -e '
69         s|HIGHLEVEL_PACKAGE_MANAGER=apt|HIGHLEVEL_PACKAGE_MANAGER=poldek|;
70         s|LOWLEVEL_PACKAGE_MANAGER=dpkg|LOWLEVEL_PACKAGE_MANAGER=rpm|;
71 ' %{name}.conf
72
73 %build
74 %{__make}
75
76 %install
77 rm -rf $RPM_BUILD_ROOT
78 install -d $RPM_BUILD_ROOT{/etc/cron.daily,%{_localstatedir}/cache/%{name}}
79 %{__make} install \
80         LOWLEVEL_PACKAGE_MANAGER=rpm \
81         HIGHLEVEL_PACKAGE_MANAGER=poldek \
82         INSTALL="install -p" \
83         DESTDIR=$RPM_BUILD_ROOT
84
85 install -p debian/cron.daily $RPM_BUILD_ROOT/etc/cron.daily/%{name}
86
87 %py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
88 %py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
89 %py_postclean
90
91 %clean
92 rm -rf $RPM_BUILD_ROOT
93
94 %if 0
95 %post
96 if [ $1 -gt 1 ] ; then
97         %{_bindir}/%{name} update-ignore
98 fi
99 %endif
100
101 %files
102 %defattr(644,root,root,755)
103 %doc INSTALL TODO README
104 %dir %{_sysconfdir}/%{name}
105 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.conf
106 %dir %{_sysconfdir}/%{name}/*.d
107 %attr(755,root,root) %{_sysconfdir}/%{name}/*.d/[0-9]*
108 %{_sysconfdir}/%{name}/*.d/README
109
110 %attr(755,root,root) /etc/cron.daily/%{name}
111 %attr(755,root,root) %{_bindir}/%{name}
112 %{_mandir}/man8/%{name}.8*
113
114 %dir %attr(750,root,root) %{_localstatedir}/cache/%{name}
115
116 %files bzr
117 %defattr(644,root,root,755)
118 %dir %{py_sitescriptdir}/bzrlib
119 %dir %{py_sitescriptdir}/bzrlib/plugins
120 %dir %{py_sitescriptdir}/bzrlib/plugins/%{name}
121 %{py_sitescriptdir}/bzrlib/plugins/%{name}/*.py[co]
122 %{py_sitescriptdir}/bzr_etckeeper-*.egg-info
123
124 %files -n bash-completion-%{name}
125 %defattr(644,root,root,755)
126 %{_sysconfdir}/bash_completion.d/%{name}
This page took 0.068643 seconds and 3 git commands to generate.