SHA256
1
0
forked from pool/hxtools
hxtools/hxtools.spec

225 lines
6.6 KiB
RPMSpec
Raw Normal View History

#
# spec file for package hxtools
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: hxtools
Version: 20120107
Release: 0
Url: http://jengelh.medozas.de/projects/hxtools/
Summary: Collection of day-to-day tools (binaries)
License: GPL-2.0+
Group: System/Base
Source: %name-%version.tar.xz
Source2: %name-%version.tar.xz.asc
Patch1: 7a4b085-capabilities.diff
BuildRequires: fdupes
BuildRequires: libcap-devel >= 2
# xorg-x11 for "bdftopcf"
%if 0%{?suse_version}
BuildRequires: xorg-x11
%endif
%if 0%{?rhel_version} || 0%{?fedora_version}
BuildRequires: bdftopcf
%endif
BuildRequires: pkgconfig >= 0.21
BuildRequires: xz
%if 0%{?suse_version} >= 1130
BuildRequires: pkgconfig(libHX) >= 3.12
%else
BuildRequires: libHX-devel >= 3.12
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: %name-scripts = %version
%if 0%{?suse_version} >= 1100
Recommends: %name-man = %version
%else
Requires: %name-man = %version
%endif
%define build_profile 1
%description
A collection of various tools. Some of the important ones:
* declone(1) break hardlinks
* fd0ssh(1) pipe for password-over-stdin support to ssh
* newns(8) clone current filesystem namespace and start a process
* ofl(1) open file lister (replaces fuser and lsof -m)
* tailhex(1) hex dumper with tail-following support
* utmp_register(1) make entries in the utmp/wtmp database
* vfontas(1) VGA font file assembler
%package scripts
Summary: Collection of day-to-day tools (scripts)
Group: System/Base
%if 0%{?suse_version} >= 1120
BuildArch: noarch
%endif
Requires: %name
%if 0%{?suse_version} >= 1100
Recommends: %name-man
%else
Requires: %name-man
%endif
Requires: perl(Data::Dumper), perl(File::Find)
Requires: perl(File::Find::Rule)
Requires: perl(Getopt::Long), perl(IPC::Open2), perl(Text::CSV_XS)
%description scripts
Architecture-independent programs from hxtools.
* checkbrack(1) check parenthesis and bracket count
* cwdiff(1) run wdiff with color
* diff2php(1) transform patch to self-serving PHP file
* doxygen-kerneldoc-filter(1) filter for Doxygen to support kerneldoc
* filenameconv(1) convert file name encoding
* flv2avi(1) repackage Flash video into an AVI container with PCM audio
* fnt2bdf(1) convert VGA raw fonts to X11 BDF
* git-author-stat(1) show commit author statistics of a git repository
* git-export-patch(1) produce perfect patch from git comits for mail submission
* git-forest(1) display the commit history forest
* git-new-root(1) start a new root in the git history
* git-revert-stats(1) show reverting statistics of a git repository
* git-track(1) set up branch for tracking a remote
* man2html(1) convert nroff manpages to HTML
* pesubst(1) perl-regexp stream substitution (replaces sed for sub stitutions)
* pmap_dirty(1) display amount of RAM a process uses hard
* recursive_lower(1) recursively lowercase all filenames
* spec-beautifier(1) program to clean up RPM .spec files
* sysinfo(1) print IRC-style system information banner
* vcsaview(8) display a screen dump in VCSA format
* wktimer(1) work timer
%package man
Summary: Manual pages for the hxtools suite
Group: Documentation/Man
%if 0%{?suse_version} >= 1120
BuildArch: noarch
%endif
%description man
This package contains the manual pages for the binaries and scripts
from hxtools.
%package data
Summary: Collection of day-to-day tools (data)
Group: System/Base
%if 0%{?suse_version} >= 1120
BuildArch: noarch
%endif
%description data
Architecture-independent data from hxtools.
* VAIO U3 keymap
* additional fonts for console and xterm
* additional syntax highlighting definitions for mcedit
%package profile
Summary: The hxtools shell environment
Group: System/Base
Requires: %name = %version, %name-scripts = %version
Requires: %name-data = %version
%if 0%{?suse_version} >= 1120
BuildArch: noarch
%endif
%description profile
Bash environment settings from hxtools. Particularly, this provides
the SUSE 6.x ls color scheme, and an uncluttered PS1 that shows
only important parts of a path.
%prep
%if 0%{?__xz:1}
%setup -q
%else
tar -xf "%{S:0}" --use=xz;
%setup -DTq
%endif
%patch -P 1 -p1
%build
%configure \
--datadir=%_datadir/%name \
--with-keymapdir=%_datadir/kbd/keymaps \
--with-vgafontdir=%_datadir/kbd/consolefonts \
--with-x11fontdir=%_datadir/fonts
make %{?_smp_mflags};
%install
o="$PWD";
b="%buildroot";
make install DESTDIR="$b";
install -dm0755 "$b/%_datadir/mc/syntax";
install -pm0644 cooledit/*.syntax "$b/%_datadir/mc/syntax/";
install -dm0755 "$b/%_sysconfdir/openldap/schema";
ln -s "%_datadir/hxtools/rfc2307bis-utf8.schema" \
"$b/%_sysconfdir/openldap/schema/";
cd "$b";
find ./%_bindir ./%_libexecdir ! -type d -exec grep -l ELF {} + | \
perl -pe 's{^\./+}{/}' >"$o/binary.lst";
find ./%_bindir ./%_libexecdir ! -type d -exec grep -L ELF {} + | \
perl -pe 's{^\./+}{/}' >"$o/scripts.lst";
%if 0%{?build_profile}
mkdir -p "$b/%_sysconfdir/bashrc.d";
ln -s "%_datadir/%name/hxtools_bashrc.bash" "$b/%_sysconfdir/bashrc.d/";
mkdir -p "$b/%_sysconfdir/profile.d";
ln -s "%_datadir/%name/hxtools_profile.bash" "$b/%_sysconfdir/profile.d/z_hxtools_profile.sh";
%else
rm -Rf "$b/%_sysconfdir/profile.d" "$b/%_sysconfdir"/hx*;
%endif
%fdupes %buildroot
%files -f binary.lst
%defattr(-,root,root)
%dir %_libexecdir/%name
%files scripts -f scripts.lst
%defattr(-,root,root)
%dir %_libexecdir/%name
%files man
%defattr(-,root,root)
%doc %_mandir/man*/*
%files data
%defattr(-,root,root)
%dir %_sysconfdir/openldap
%dir %_sysconfdir/openldap/schema
%config %_sysconfdir/openldap/schema/*
%_datadir/%name
%_datadir/kbd
%_datadir/fonts/misc
%_datadir/mc
%if 0%{?build_profile}
%files profile
%defattr(-,root,root)
%config %_sysconfdir/hxloginpref.conf
%dir %_sysconfdir/bashrc.d
%config %_sysconfdir/bashrc.d/*
%config %_sysconfdir/profile.d/*
%endif
%changelog