%global selinuxtype targeted %global modulename userspacevt Name: userspacevt Version: 0.2 Release: 0 Summary: Scripts required to use an userspace Virtual Terminal License: MIT Group: System/Console URL: https://gitlab.com/kdj0c/userspacevt.git Source: https://gitlab.com/kdj0c/userspacevt/-/archive/%{version}/%{name}-%{version}.tar.bz2 Requires: bash BuildRequires: libselinux-devel, selinux-policy-devel, systemd BuildArch: noarch %description userspacevt is a set of systemd units and shell scripts, to replace your VT with a userspace terminal %package selinux Summary: SELinux policies for userspacevt Requires: selinux-policy-%{selinuxtype} Requires(post): selinux-policy-%{selinuxtype} BuildRequires: selinux-policy-devel BuildArch: noarch %{?selinux_requires} %description selinux SELinux policy modules for userspacevt. %prep %setup -q -n %{name}-%{version} %build %install pushd %{name} cp -a usr %{buildroot}/ pushd selinux make install DESTDIR=%{buildroot} popd popd %pre selinux %selinux_relabel_pre -s %{selinuxtype} %post selinux %selinux_modules_install -s %{selinuxtype} %{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2 %selinux_relabel_post -s %{selinuxtype} %postun selinux if [ $1 -eq 0 ]; then %selinux_modules_uninstall -s %{selinuxtype} %{modulename} %selinux_relabel_post -s %{selinuxtype} fi %files %license LICENSE %{_libexecdir}/%{name}/*.sh %{_unitdir}/*.service %{_unitdir}/*.path %files selinux %{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.* %ghost %verify(not md5 size mode mtime) %{_sharedstatedir}/selinux/%{selinuxtype}/active/modules/200/%{modulename} %changelog * Fri Apr 11 2025 Jocelyn Falempe jfalempe@redhat.com - Initial spec file