File spectrwm.spec of Package spectrwm
#
# spec file for package spectrwm
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2012-2017 Malcolm J Lewis <malcolmlewis@opensuse.org>
#
# 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 https://bugs.opensuse.org/
#
%define soname 0_0
%define gitrelease 3_5_0
Name: spectrwm
Version: 3.5.0
Release: 0
Summary: Small dynamic tiling window manager for X11
License: ISC
Group: System/GUI/Other
URL: https://github.com/conformal/%{name}/wiki
Source0: https://github.com/conformal/%{name}/archive/SPECTRWM_%{gitrelease}.tar.gz#/SPECTRWM_%{gitrelease}.tar.gz
# PATCH-FIX-OPENSUSE spectrwm-fix-makefile.patch -- Clean up install locations.
Patch0: spectrwm-fix-makefile.patch
BuildRequires: libX11-devel
BuildRequires: libXcursor-devel
BuildRequires: libXft-devel
BuildRequires: libXrandr-devel
BuildRequires: libXt-devel
BuildRequires: libxcb-devel
BuildRequires: unzip
BuildRequires: xcb-util-devel
BuildRequires: xcb-util-keysyms-devel
BuildRequires: xcb-util-wm-devel
Requires: dmenu
Requires: libswmhack%{soname} = %{version}
Requires: xlockmore
Requires: xterm
%description
spectrwm is a small dynamic tiling window manager for X11. It tries to stay
out of the way so that valuable screen real estate can be used for much
more important stuff. It has sane defaults and does not require one to learn
a language to do any configuration. It was written by hackers for hackers
and it strives to be small, compact and fast.
%package doc
Summary: Small dynamic tiling window manager for X11 doc and example files
Group: System/GUI/Other
Requires: spectrwm = %{version}
%description doc
spectrwm is a small dynamic tiling window manager for X11. It tries to stay
out of the way so that valuable screen real estate can be used for much
more important stuff. It has sane defaults and does not require one to learn
a language to do any configuration. It was written by hackers for hackers
and it strives to be small, compact and fast.
This package contain documentation and example files distributed with
source package
%package -n libswmhack%{soname}
Summary: Small dynamic tiling window manager for X11
Group: System/GUI/Other
%description -n libswmhack%{soname}
spectrwm is a small dynamic tiling window manager for X11. It tries to stay
out of the way so that valuable screen real estate can be used for much
more important stuff. It has sane defaults and does not require one to learn
a language to do any configuration. It was written by hackers for hackers
and it strives to be small, compact and fast.
%prep
%autosetup -p1 -n %{name}-SPECTRWM_%{gitrelease}
%build
cd linux
%make_build OPTFLAGS="%{optflags}"
%install
cd linux
%make_install
# Add a default configuration file
install -Dm0644 ../spectrwm.conf %{buildroot}%{_sysconfdir}/spectrwm.conf
%post -p /sbin/ldconfig -n libswmhack%{soname}
%postun -p /sbin/ldconfig -n libswmhack%{soname}
%files
%config (noreplace) %{_sysconfdir}/spectrwm.conf
# Spectrwm used to named Scrotwm. It got renamed so keep
# backward compability with symlink
%{_bindir}/scrotwm
%{_bindir}/spectrwm
%{_mandir}/man1/spectrwm.1%{?ext_man}
%{_datadir}/xsessions/spectrwm.desktop
%files doc
%{_docdir}/*
%files -n libswmhack%{soname}
%{_libdir}/libswmhack.so*
%changelog