Помогите доделать спек

Ответить
Аватара пользователя
Zeffanyx
Сообщения: 1273
Зарегистрирован: 12 сен 2011, 14:25
Operating system: Rosa Fresh R11, OpenMandriva Lx 4 (Cooker)
Откуда: Санкт-Петербург

Помогите доделать спек

Сообщение Zeffanyx » 23 апр 2018, 13:16

Мне удалось сделать версию plasma5-workspace с бэкпортом gmenudbusmenuproxy из ещё не вышедшей Plasma 5.13. Однако, там есть и второй компонент - appmenu-gtk. Я взялся переделывать spec-файл из openSUSE, но что-то пока не выходит. Из одного спека там должно получиться несколько пакетов, но на выходе я виже это:

Код: Выделить всё

Ошибки сборки пакетов:
    Файл должен начинаться с "/": GPLv3
    Файл должен начинаться с "/": LICENSE
    Файл должен начинаться с "/": GPLv3
    Файл должен начинаться с "/": LICENSE*
    Файл должен начинаться с "/": GPLv3
    Файл должен начинаться с "/": LICENSE
Также, хотелось бы понять, как использовать макросы %{libname} и %{devname} в строках типа:
%package -n libappmenu-gtk-parser-devel
?

Код: Выделить всё

#
# spec file for package appmenu-gtk-module
#
# Copyright (c) 2018 SUSE LINUX 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/
#


%define sover 0
Name:           appmenu-gtk-module
Version:        0.6.1
Release:        1
Summary:        GTK+ module for exporting old-style menus as GMenuModels
License:        GPLv3
Group:          Graphical desktop/KDE
URL:            https://github.com/rilian-la-te/vala-panel-appmenu
Source:         https://github.com/rilian-la-te/vala-panel-appmenu/releases/download/%{version}/appmenu-gtk-module.tar.gz
BuildRequires:  cmake >= 2.8.0
BuildRequires:  pkgconfig
BuildRequires:  systemd
BuildRequires:  pkgconfig(gtk+-2.0) >= 2.24.0
BuildRequires:  pkgconfig(gtk+-3.0) >= 3.2.0
BuildRequires:  pkgconfig(x11)

%description
Many applications implement menus as GtkMenuShells and GtkMenuItems
and aren't looking to migrate to the newer GMenuModel API.
This GTK+ module watches for these types of menus and exports the
appropriate GMenuModel implementation.

%package -n libappmenu-gtk-parser-devel
Summary:        Common development-files for libappmenu-gtk{2,3}-parser
BuildRequires:  gtk-doc
BuildArch:      noarch

%description -n libappmenu-gtk-parser-devel
This package contains common headers and documentation for
libappmenu-gtk{2,3}-parser.

%package -n libappmenu-gtk2-parser%{sover}
Summary:        Gtk2MenuShell to GMenuModel parser

%description -n libappmenu-gtk2-parser%{sover}
This library converts Gtk2MenuShells into GMenuModels.

%package -n libappmenu-gtk2-parser-devel
Summary:        Development-files for libappmenu-gtk2-parser
Requires:       libappmenu-gtk-parser-devel = %{version}-%{release}
Requires:       libappmenu-gtk2-parser%{?_isa} = %{version}-%{release}

%description -n libappmenu-gtk2-parser-devel
This package contains development-files for libappmenu-gtk2-parser.

%package -n libappmenu-gtk3-parser%{sover}
Summary:        GtkMenuShell to GMenuModel parser

%description -n libappmenu-gtk3-parser%{sover}
This library converts GtkMenuShells into GMenuModels.

%package -n libappmenu-gtk3-parser-devel
Summary:        Development-files for libappmenu-gtk3-parser
Requires:       libappmenu-gtk-parser-devel = %{version}-%{release}
Requires:       libappmenu-gtk3-parser%{?_isa} = %{version}-%{release}

%description -n libappmenu-gtk3-parser-devel
This package contains development-files for libappmenu-gtk3-parser.

%package -n appmenu-gtk2-module
Summary:        GtkMenuShell D-Bus exporter (GTK+ 2)
Requires:       appmenu-gtk-module = %{version}-%{release}
Provides:       appmenu-gtk = %{version}-%{release}

%description -n appmenu-gtk2-module
This GTK 2 module exports GtkMenuShells over D-Bus.

%package -n appmenu-gtk3-module
Summary:        GtkMenuShell D-Bus exporter (GTK+ 3)
Requires:       appmenu-gtk-module = %{version}-%{release}
Provides:       appmenu-gtk3 = %{version}-%{release}

%description -n appmenu-gtk3-module
This GTK 3 module exports GtkMenuShells over D-Bus.

%prep
%setup -q -n appmenu-gtk-module

cat > %{name}.sh << EOF
if [ -n "$GTK_MODULES" ]; then
    GTK_MODULES="${GTK_MODULES}:appmenu-gtk-module"
else
    GTK_MODULES="appmenu-gtk-module"
fi

if [ -z "$UBUNTU_MENUPROXY" ]; then
    UBUNTU_MENUPROXY=1
fi

export GTK_MODULES
export UBUNTU_MENUPROXY
EOF
cat > %{name}.csh << EOF
if [ -n "$GTK_MODULES" ]; then
    GTK_MODULES="${GTK_MODULES}:appmenu-gtk-module"
else
    GTK_MODULES="appmenu-gtk-module"
fi

if [ -z "$UBUNTU_MENUPROXY" ]; then
    UBUNTU_MENUPROXY=1
fi

export GTK_MODULES
export UBUNTU_MENUPROXY
EOF

%build
%cmake
make %{?_smp_mflags}

%install
%makeinstall_std -C build
# Setup systemd.
mkdir -p %{buildroot}%{_userunitdir}/default.target.wants
ln -s						\
	%{_userunitdir}/%{name}.service				\
	%{buildroot}%{_userunitdir}/default.target.wants/%{name}.service
install -Dpm 0644 %{name}.sh %{buildroot}%{_sysconfdir}/profile.d/%{name}.sh
install -Dpm 0644 %{name}.csh %{buildroot}%{_sysconfdir}/profile.d/%{name}.csh
# Remove unneeded files
rm -rf %{buildroot}%{_datadir}/locale/


%post -n libappmenu-gtk2-parser%{sover} -p /sbin/ldconfig
%postun -n libappmenu-gtk2-parser%{sover} -p /sbin/ldconfig
%post -n libappmenu-gtk3-parser%{sover} -p /sbin/ldconfig
%postun -n libappmenu-gtk3-parser%{sover} -p /sbin/ldconfig
%postun
if [ $1 -eq 0 ] ; then
	%{_bindir}/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
fi

%posttrans
%{_bindir}/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :

%postun -n appmenu-gtk2-module
%{_bindir}/gtk-query-immodules-2.0-%{__isa_bits} --update-cache &> /dev/null || :

%post -n appmenu-gtk2-module
if [ $1 -eq 1 ] ; then
	%{_bindir}/gtk-query-immodules-2.0-%{__isa_bits} --update-cache &> /dev/null || :
fi

%postun -n appmenu-gtk3-module
%{_bindir}/gtk-query-immodules-3.0-%{__isa_bits} --update-cache &> /dev/null || :

%post -n appmenu-gtk3-module
if [ $1 -eq 1 ] ; then
	%{_bindir}/gtk-query-immodules-3.0-%{__isa_bits} --update-cache &> /dev/null || :
fi

%files -n libappmenu-gtk-parser-devel
%{_includedir}/appmenu-gtk-parser

%files -n libappmenu-gtk2-parser%{sover}
%license LICENSE*
%{_libdir}/libappmenu-gtk2-parser.so.%{sover}*

%files -n libappmenu-gtk2-parser-devel
%{_libdir}/libappmenu-gtk2-parser.so
%{_libdir}/pkgconfig/appmenu-gtk2-parser.pc

%files -n libappmenu-gtk3-parser%{sover}
%license LICENSE
%{_libdir}/libappmenu-gtk3-parser.so.%{sover}*

%files -n libappmenu-gtk3-parser-devel
%{_libdir}/libappmenu-gtk3-parser.so
%{_libdir}/pkgconfig/appmenu-gtk3-parser.pc

%files
%license LICENSE
%config %{_sysconfdir}/profile.d/%{name}.*
%{_datadir}/glib-2.0/schemas/*
%{_userunitdir}/appmenu-gtk-module.service
%dir %{_userunitdir}/default.target.wants
%{_userunitdir}/default.target.wants/appmenu-gtk-module.service

%files -n appmenu-gtk2-module
%{_libdir}/gtk-2.0/modules/libappmenu-gtk-module.so

%files -n appmenu-gtk3-module
%{_libdir}/gtk-3.0/modules/libappmenu-gtk-module.so

%changelog
* Mon Mar  5 2018 cornelis@solcon.nl
- Inital package (based on the spec file by Konstantin (ria.freelander@gmail.com)

Аватара пользователя
VictorR2007
Сообщения: 5767
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Re: Помогите доделать спек

Сообщение VictorR2007 » 23 апр 2018, 20:33

Смотри в пакетах с файлами.
Там есть строки примерно такого вида, точно не помню.

%files
LICENSE

Вот эту строчку со словом LICENSE нужно убрать, и ошибка исчезнет.

Аватара пользователя
VictorR2007
Сообщения: 5767
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Re: Помогите доделать спек

Сообщение VictorR2007 » 23 апр 2018, 21:24

Но наверное проще взять свой спек от plasma5-workspace-5.12.4.
https://abf.rosalinux.ru/import/plasma5 ... space.spec

Аватара пользователя
Zeffanyx
Сообщения: 1273
Зарегистрирован: 12 сен 2011, 14:25
Operating system: Rosa Fresh R11, OpenMandriva Lx 4 (Cooker)
Откуда: Санкт-Петербург

Re: Помогите доделать спек

Сообщение Zeffanyx » 23 апр 2018, 22:34

VictorR2007 писал(а):
23 апр 2018, 21:24
Но наверное проще взять свой спек от plasma5-workspace-5.12.4.
https://abf.rosalinux.ru/import/plasma5 ... space.spec
Я так и сделал, просто вопрос был про другой пакет.
За LICENSE спасибол, сейчас поправлю.

Аватара пользователя
Zeffanyx
Сообщения: 1273
Зарегистрирован: 12 сен 2011, 14:25
Operating system: Rosa Fresh R11, OpenMandriva Lx 4 (Cooker)
Откуда: Санкт-Петербург

Помогите доделать спек

Сообщение Zeffanyx » 17 дек 2018, 01:32

Подниму тему, потому что если собрать пакет у меня нормально получается, то сама сборка appmenu-gtk выходит неполноценная.
Проблема в том, что у меня собирается только модуль для GTK3, а GTK2 - не собирается, якобы из-за отсутствия GDK. Лог прикладываю.
Команда для настройки такая:

Код: Выделить всё

cmake -DCMAKE_INSTALL_PREFIX=/usr -DLIBRARY_OUTPUT_PATH=/usr/lib64 -DCMAKE_SHARED_LINKER_FLAGS="" -DCMAKE_INSTALL_LIBEXECDIR=/usr/libexec -DENABLE_APPMENU_GTK_MODULE=ON -DGSETTINGS_COMPILE=OFF -DENABLE_XFCE=ON -DENABLE_VALAPANEL=OFF -DENABLE_BUDGIE=OFF -DENABLE_MATE=ON -DMAKE_BOLD_APPNAME=ON -DENABLE_JAYATANA=OFF .. > log.txt
Вроде бы все devel-пакеты у меня стоят, а всё равно не получается.
Может, у кого-то ещё получится...
Вложения
log.txt
(4.34 КБ) 259 скачиваний

Аватара пользователя
VictorR2007
Сообщения: 5767
Зарегистрирован: 12 сен 2011, 13:00
Operating system: ROSA 2016.1
Откуда: Северодвинск

Помогите доделать спек

Сообщение VictorR2007 » 17 дек 2018, 02:55

А в спеке пакет gdk_pixbuf2.0-devel записан?

В журнале написано что нет vala-panel.
-- Checking for module 'vala-panel'
-- No package 'vala-panel' found
Наверное можно попробовать собрать этот пакет
https://fedora.pkgs.org/29/rpm-sphere/v ... 4.rpm.html
Далее, нет пакета budgie.
-- Checking for module 'budgie-1.0'
-- No package 'budgie-1.0' found
Быстрый поиск https://www.google.com/search?client=fi ... 0%27+found
Может это про пакет typelib_1_0-Budgie-0_1 из https://opensuse.pkgs.org/tumbleweed/op ... 4.rpm.html
Ну и Java.
-- Could NOT find Java (missing: Java_JAVA_EXECUTABLE Java_JAR_EXECUTABLE Java_JAVAC_EXECUTABLE Java_JAVAH_EXECUTABLE Java_JAVADOC_EXECUTABLE) (Required is at least version "1.8")
и
-- Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)

Аватара пользователя
Zeffanyx
Сообщения: 1273
Зарегистрирован: 12 сен 2011, 14:25
Operating system: Rosa Fresh R11, OpenMandriva Lx 4 (Cooker)
Откуда: Санкт-Петербург

Помогите доделать спек

Сообщение Zeffanyx » 17 дек 2018, 12:35

VictorR2007 писал(а):
17 дек 2018, 02:55
В журнале написано что нет vala-panel.
-- Checking for module 'vala-panel'
-- No package 'vala-panel' found
Наверное можно попробовать собрать этот пакет
https://fedora.pkgs.org/29/rpm-sphere/v ... 4.rpm.html
Далее, нет пакета budgie.
-- Checking for module 'budgie-1.0'
-- No package 'budgie-1.0' found
Быстрый поиск https://www.google.com/search?client=fi ... 0%27+found
Может это про пакет typelib_1_0-Budgie-0_1 из https://opensuse.pkgs.org/tumbleweed/op ... 4.rpm.html
Ну и Java.
-- Could NOT find Java (missing: Java_JAVA_EXECUTABLE Java_JAR_EXECUTABLE Java_JAVAC_EXECUTABLE Java_JAVAH_EXECUTABLE Java_JAVADOC_EXECUTABLE) (Required is at least version "1.8")
и
-- Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)
Это опциональные компоненты, они по идее не должны мешать сборке appmenu-gtk2. Vala-panel может и нужен, посмотрю.

Аватара пользователя
Zeffanyx
Сообщения: 1273
Зарегистрирован: 12 сен 2011, 14:25
Operating system: Rosa Fresh R11, OpenMandriva Lx 4 (Cooker)
Откуда: Санкт-Петербург

Помогите доделать спек

Сообщение Zeffanyx » 18 дек 2018, 11:30

Пока что не выходит:

Код: Выделить всё

-- Could NOT find GTK (missing:  GDK) (found suitable version "2.24.30", minimum required is "2.24")
При этом:

Код: Выделить всё

zeffanyx@zeffanyx-VirtualBox ~/Загрузки/appmenu-gtk-module/build $ rpm -qa *gdk*dev* *gtk*dev*
lib64gdk_pixbuf2.0-devel-2.36.11-2-rosa2016.1.x86_64
lib64gtk+2.0-devel-2.24.30-3-rosa2016.1.x86_64
lib64gdk_pixbuf_xlib2.0-devel-2.36.11-2-rosa2016.1.x86_64
lib64gtk+-devel-1.2.10-63-rosa2016.1.x86_64
lib64gdkimlib-devel-1.9.15-23-rosa2016.1.x86_64
lib64gtkcairo2-devel-0.3-8-rosa2016.1.x86_64
lib64gtkgl-devel-2.0.1-19-rosa2016.1.x86_64
lib64dbusmenu-gtk-devel-0.6.2-7-rosa2016.1.x86_64
lib64gtk+3.0-devel-3.22.24-1-rosa2016.1.x86_64
zeffanyx@zeffanyx-VirtualBox ~/Загрузки/appmenu-gtk-module/build $ 

Аватара пользователя
Алзим
Сообщения: 4361
Зарегистрирован: 18 июн 2015, 11:57
Operating system: ROSA Desktop Fresh R10
Откуда: Интернет

Помогите доделать спек

Сообщение Алзим » 18 дек 2018, 13:41

Zeffanyx писал(а):
18 дек 2018, 11:30
Пока что не выходит:

Код: Выделить всё

-- Could NOT find GTK (missing:  GDK) (found suitable version "2.24.30", minimum required is "2.24")
При этом:

Код: Выделить всё

zeffanyx@zeffanyx-VirtualBox ~/Загрузки/appmenu-gtk-module/build $ rpm -qa *gdk*dev* *gtk*dev*
lib64gdk_pixbuf2.0-devel-2.36.11-2-rosa2016.1.x86_64
lib64gtk+2.0-devel-2.24.30-3-rosa2016.1.x86_64
lib64gdk_pixbuf_xlib2.0-devel-2.36.11-2-rosa2016.1.x86_64
lib64gtk+-devel-1.2.10-63-rosa2016.1.x86_64
lib64gdkimlib-devel-1.9.15-23-rosa2016.1.x86_64
lib64gtkcairo2-devel-0.3-8-rosa2016.1.x86_64
lib64gtkgl-devel-2.0.1-19-rosa2016.1.x86_64
lib64dbusmenu-gtk-devel-0.6.2-7-rosa2016.1.x86_64
lib64gtk+3.0-devel-3.22.24-1-rosa2016.1.x86_64
zeffanyx@zeffanyx-VirtualBox ~/Загрузки/appmenu-gtk-module/build $ 
Попробуй добавить в спек

Код: Выделить всё

# egl and gl are from 'Requires.private' of epoxy.pc
# However, we can port adding '--print-requires-private' from https://github.com/rpm-software-management/rpm/commit/0cc5e818a
Requires:	pkgconfig(egl)
Requires:	pkgconfig(gl)

Аватара пользователя
Zeffanyx
Сообщения: 1273
Зарегистрирован: 12 сен 2011, 14:25
Operating system: Rosa Fresh R11, OpenMandriva Lx 4 (Cooker)
Откуда: Санкт-Петербург

Помогите доделать спек

Сообщение Zeffanyx » 19 дек 2018, 16:08

Получилось. Надо было всего лишь собирать версию 0.6, а не 0.7.
Теперь осталось исправить мелкие ошибки, и можно будет публиковать.

Код: Выделить всё

%define sover 0
%define shortname appmenu
%define libname %mklibname %{shortname}
%define devname %mklibname %{shortname} -d
Name:           appmenu-gtk-module
Version:        0.6.1
Release:        1
Summary:        GTK+ module for exporting old-style menus as GMenuModels
License:        LGPLv3
Group:          System/Libraries
URL:            https://github.com/rilian-la-te/vala-panel-appmenu
Source:         https://github.com/rilian-la-te/vala-panel-appmenu/releases/download/%{version}/appmenu-gtk-module.tar.gz
BuildRequires:  cmake >= 2.8.0
BuildRequires:  pkgconfig
BuildRequires:  systemd
BuildRequires:  pkgconfig(gtk+-2.0) >= 2.24.0
BuildRequires:  pkgconfig(gtk+-3.0) >= 3.2.0
BuildRequires:  pkgconfig(x11)
Obsoletes:      unity-gtk-module-common
Provides:       unity-gtk-module-common

%description
Many applications implement menus as GtkMenuShells and GtkMenuItems
and aren't looking to migrate to the newer GMenuModel API.
This GTK+ module watches for these types of menus and exports the
appropriate GMenuModel implementation.

%package -n %{shortname}-systemd
Summary:        Systemd files for %{libname}-gtk{2,3}-parser

%description -n %{shortname}-systemd
This package contains Systemd files for %{libname}-gtk{2,3}-parser

%package -n %{name}-common
Summary:        Common development-files for %{libname}-gtk{2,3}-parser
BuildRequires:  gtk-doc
BuildArch:      noarch

%description -n %{name}-common
This package contains common headers and documentation for
%{libname}-gtk{2,3}-parser.

%package -n %{libname}-gtk2-parser%{sover}
Summary:        Gtk2MenuShell to GMenuModel parser
Obsoletes:      libunity-gtk2-parser0
Provides:       libunity-gtk2-parser0

%description -n %{libname}-gtk2-parser%{sover}
This library converts Gtk2MenuShells into GMenuModels.

%package -n %{libname}-gtk2-parser-devel
Summary:        Development-files for %{libname}-gtk2-parser
Requires:       %{name}-common = %{version}-%{release}
Requires:       %{libname}-gtk2-parser%{sover} = %{version}-%{release}

%description -n %{libname}-gtk2-parser-devel
This package contains development-files for %{libname}-gtk2-parser.

%package -n %{libname}-gtk3-parser%{sover}
Summary:        GtkMenuShell to GMenuModel parser
Obsoletes:      libunity-gtk3-parser0
Provides:       libunity-gtk3-parser0

%description -n %{libname}-gtk3-parser%{sover}
This library converts GtkMenuShells into GMenuModels.

%package -n %{libname}-gtk3-parser-devel
Summary:        Development-files for %{libname}-gtk3-parser
Requires:       %{name}-common = %{version}-%{release}
Requires:       %{libname}-gtk3-parser%{sover} = %{version}-%{release}

%description -n %{libname}-gtk3-parser-devel
This package contains development-files for %{libname}-gtk3-parser.

%package -n appmenu-gtk2-module
Summary:        GtkMenuShell D-Bus exporter (GTK+ 2)
Requires:       %{name}-common = %{version}-%{release}
Provides:       appmenu-gtk = %{version}-%{release}
Obsoletes:      unity-gtk2-module
Provides:       unity-gtk2-module

%description -n appmenu-gtk2-module
This GTK 2 module exports GtkMenuShells over D-Bus.

%package -n appmenu-gtk3-module
Summary:        GtkMenuShell D-Bus exporter (GTK+ 3)
Requires:       %{name}-common = %{version}-%{release}
Provides:       appmenu-gtk3 = %{version}-%{release}
Obsoletes:      unity-gtk3-module
Provides:       unity-gtk3-module

%description -n appmenu-gtk3-module
This GTK 3 module exports GtkMenuShells over D-Bus.

%prep
%setup -q -n appmenu-gtk-module

cat > %{name}.sh << EOF
if [ -n "$GTK_MODULES" ]; then
    GTK_MODULES="${GTK_MODULES}:appmenu-gtk-module"
else
    GTK_MODULES="appmenu-gtk-module"
fi

if [ -z "$UBUNTU_MENUPROXY" ]; then
    UBUNTU_MENUPROXY=1
fi

export GTK_MODULES
export UBUNTU_MENUPROXY
EOF
cat > %{name}.csh << EOF
if [ -n "$GTK_MODULES" ]; then
    GTK_MODULES="${GTK_MODULES}:appmenu-gtk-module"
else
    GTK_MODULES="appmenu-gtk-module"
fi

if [ -z "$UBUNTU_MENUPROXY" ]; then
    UBUNTU_MENUPROXY=1
fi

export GTK_MODULES
export UBUNTU_MENUPROXY
EOF

%build
%cmake
%make

%install
cd build
%makeinstall_std
# Setup systemd.
mkdir -p %{buildroot}%{_userunitdir}/default.target.wants
ln -s						\
	%{_userunitdir}/%{name}.service				\
	%{buildroot}%{_userunitdir}/default.target.wants/%{name}.service
install -Dpm 0644 ../%{name}.sh %{buildroot}%{_sysconfdir}/profile.d/%{name}.sh
install -Dpm 0644 ../%{name}.csh %{buildroot}%{_sysconfdir}/profile.d/%{name}.csh
# Remove unneeded files
rm -rf %{buildroot}%{_datadir}/locale/


%post -n %{libname}-gtk2-parser%{sover} -p /sbin/ldconfig
%postun -n %{libname}-gtk2-parser%{sover} -p /sbin/ldconfig
%post -n %{libname}-gtk3-parser%{sover} -p /sbin/ldconfig
%postun -n %{libname}-gtk3-parser%{sover} -p /sbin/ldconfig
%postun
if [ $1 -eq 0 ] ; then
	%{_bindir}/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
fi

%posttrans
%{_bindir}/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :

%postun -n appmenu-gtk2-module
%{_bindir}/gtk-query-immodules-2.0-%{__isa_bits} --update-cache &> /dev/null || :

%post -n appmenu-gtk2-module
if [ $1 -eq 1 ] ; then
	%{_bindir}/gtk-query-immodules-2.0-%{__isa_bits} --update-cache &> /dev/null || :
fi

%postun -n appmenu-gtk3-module
%{_bindir}/gtk-query-immodules-3.0-%{__isa_bits} --update-cache &> /dev/null || :

%post -n appmenu-gtk3-module
if [ $1 -eq 1 ] ; then
	%{_bindir}/gtk-query-immodules-3.0-%{__isa_bits} --update-cache &> /dev/null || :
fi

%files -n %{name}-common
%{_includedir}/appmenu-gtk-parser
%config %{_sysconfdir}/profile.d/%{name}.*

%files -n %{libname}-gtk2-parser%{sover}
%{_libdir}/lib%{shortname}-gtk2-parser.so.%{sover}*

%files -n %{libname}-gtk2-parser-devel
%{_libdir}/lib%{shortname}-gtk2-parser.so
%{_libdir}/pkgconfig/appmenu-gtk2-parser.pc

%files -n %{libname}-gtk3-parser%{sover}
%{_libdir}/lib%{shortname}-gtk3-parser.so.%{sover}

%files -n %{libname}-gtk3-parser-devel
%{_libdir}/lib%{shortname}-gtk3-parser.so
%{_libdir}/pkgconfig/appmenu-gtk3-parser.pc

%files -n %{shortname}-systemd
%{_datadir}/glib-2.0/schemas/*
%{_userunitdir}/appmenu-gtk-module.service
%dir %{_userunitdir}/default.target.wants
%{_userunitdir}/default.target.wants/appmenu-gtk-module.service

%files -n appmenu-gtk2-module
%{_libdir}/gtk-2.0/modules/lib%{shortname}-gtk-module.so

%files -n appmenu-gtk3-module
%{_libdir}/gtk-3.0/modules/lib%{shortname}-gtk-module.so

%changelog

Ответить