Sisyphus
: 16 2019 | : 17499 | : 15277626
en ru br
ALT
S:1.12.12-alt2
5.1: 1.2.16-alt2
4.1: 1.2.12-alt1.M41.1
+updates:1.2.4-alt0.M41.1
4.0: 1.0.3-alt1.M40.2
3.0: 0.36.2-alt1
www.altlinux.org/Changes

Upstream:1.1.20

:: /
: dbus

             Sources      Gear   Bugs and FR  Repocop 

%define base_name      dbus

%define version        1.0.3
%define source_name    %base_name
%define source_version %version
%define release        alt1.M40.2

%def_disable static

%define dbus_user      messagebus
%define dbus_group     messagebus

%define system_socket_dir /var/run/dbus
%define session_socket_dir %system_socket_dir/users

%define system_socket %system_socket_dir/system_bus_socket

Name:    %base_name
Version: %version
Release: %release

Summary: D-BUS is a simple IPC framework based on messages.
Summary(ru_RU.UTF-8): D-BUS это простая среда межпроцессного взаимодействия, построенная на сообщениях
License: GPL or Academic Free License
Group: System/Servers
Url: http://www.freedesktop.org/Software/dbus

Packager: Igor Zubkov <icesik at altlinux.org>

Requires: lib%name = %version, shadow-utils

BuildRequires: doxygen gcc-c++ libexpat-devel libSM-devel libX11-devel xmlto

Source0: http://freedesktop.org/Software/dbus/%name-%version.tar.gz
Source1: dbus-daemon.sh

Patch1: dbus-1.0.1-altify_init_script.patch

%description
D-BUS is a system for low-latency, low-overhead, easy to use interprocess
communication (IPC). In more detail:

 o D-BUS is low-latency because it is designed to avoid round trips and
   allow asynchronous operation, much like the X protocol.

 o D-BUS is low-overhead because it uses a binary protocol, and does not
   have to convert to and from a text format such as XML. Because D-BUS is
   intended for potentially high-resolution same-machine IPC, not primarily
   for Internet IPC, this is an interesting optimization.

 o D-BUS is easy to use because it works in terms of messages rather than
   byte streams, and automatically handles a lot of the hard IPC issues.
   Also, the D-BUS library is designed to be wrapped in a way that lets
   developers use their framework's existing object/type system, rather
   than learning a new one specifically for IPC.

This package contains D-BUS daemon and system utilities.

%description -l ru_RU.UTF-8
D-BUS - это система для межпроцессного взаимодействия (IPC), которое имело бы
маленькое время реакции (low-latency), не требовало бы большого количества
ресурсов и было бы легким в использовании. Более подробно:

 o D-BUS имеет маленькое время реакции, т.к. ее строение позволяет избежать
   циклов ожидания и выполнять операции асинхронно, подобно тому, как устроен
   X протокол

 o D-BUS экономно относится к русурсам, т.к. в ее основе лежит двоичный протокол,
   и нет нужды преобразовывать данные из/в текстовый формат, н-р, XML. Поскольку
   D-BUS предназначен для высокоскоростного взаимодействия в пределах одного
   компьютера, а не в Internet, это является эффективной оптимизацией.

 o D-BUS легка в использовании, т.к. предполагает работу в терминах сообщений,
   а не потоков байтов, и автоматически выполняет большую часть сложных задач
   IPC. Кроме того, библиотека D-BUS специально написана так, чтобы конечные
   пользователи работали не с самой библиотекой, а с ее обертками, подогнанными
   под конкретные прикладные среды программирования.

В этом пакете находятся сервер и системные утилиты D-BUS.

%package tools
Summary: D-BUS user helper tools
Summary(ru_RU.UTF-8): Пользовательские утилиты D-BUS
Group: Monitoring
Provides: dbus-userhelpers = %version-%release
Obsoletes: dbus-userhelpers

%description tools
D-BUS is a system for low-latency, low-overhead, easy to use interprocess
communication (IPC). In more detail:

 o D-BUS is low-latency because it is designed to avoid round trips and
   allow asynchronous operation, much like the X protocol.

 o D-BUS is low-overhead because it uses a binary protocol, and does not
   have to convert to and from a text format such as XML. Because D-BUS is
   intended for potentially high-resolution same-machine IPC, not primarily
   for Internet IPC, this is an interesting optimization.

 o D-BUS is easy to use because it works in terms of messages rather than
   byte streams, and automatically handles a lot of the hard IPC issues.
   Also, the D-BUS library is designed to be wrapped in a way that lets
   developers use their framework's existing object/type system, rather
   than learning a new one specifically for IPC.

This package includes user tools for launching D-BUS service on session startup.

%description -l ru_RU.UTF-8 tools
D-BUS - это система для межпроцессного взаимодействия (IPC), которое имело бы
маленькое время реакции (low-latency), не требовало бы большого количества
ресурсов и было бы легким в использовании. Более подробно:

 o D-BUS имеет маленькое время реакции, т.к. ее строение позволяет избежать
   циклов ожидания и выполнять операции асинхронно, подобно тому, как устроен
   X протокол

 o D-BUS экономно относится к русурсам, т.к. в ее основе лежит двоичный протокол,
   и нет нужды преобразовывать данные из/в текстовый формат, н-р, XML. Поскольку
   D-BUS предназначен для высокоскоростного взаимодействия в пределах одного
   компьютера, а не в Internet, это является эффективной оптимизацией.

 o D-BUS легка в использовании, т.к. предполагает работу в терминах сообщений,
   а не потоков байтов, и автоматически выполняет большую часть сложных задач
   IPC. Кроме того, библиотека D-BUS специально написана так, чтобы конечные
   пользователи работали не с самой библиотекой, а с ее обертками, подогнанными
   под конкретные прикладные среды программирования.

В данный пакет включены пользовательские утилиты для запуска сервиса D-BUS при старте сессии.

%package tools-gui
Summary:  D-BUS user helper tools
Group: Monitoring

%description tools-gui
D-BUS is a system for low-latency, low-overhead, easy to use interprocess
communication (IPC). In more detail:

 o D-BUS is low-latency because it is designed to avoid round trips and
   allow asynchronous operation, much like the X protocol.

 o D-BUS is low-overhead because it uses a binary protocol, and does not
   have to convert to and from a text format such as XML. Because D-BUS is
   intended for potentially high-resolution same-machine IPC, not primarily
   for Internet IPC, this is an interesting optimization.

 o D-BUS is easy to use because it works in terms of messages rather than
   byte streams, and automatically handles a lot of the hard IPC issues.
   Also, the D-BUS library is designed to be wrapped in a way that lets
   developers use their framework's existing object/type system, rather
   than learning a new one specifically for IPC.

This package includes user tools for launching D-BUS service on session startup.

%package -n lib%name
Summary: D-BUS shared libraries
Group: System/Libraries

%description -n lib%name
D-BUS is a system for low-latency, low-overhead, easy to use interprocess
communication (IPC). In more detail:

 o D-BUS is low-latency because it is designed to avoid round trips and
   allow asynchronous operation, much like the X protocol.

 o D-BUS is low-overhead because it uses a binary protocol, and does not
   have to convert to and from a text format such as XML. Because D-BUS is
   intended for potentially high-resolution same-machine IPC, not primarily
   for Internet IPC, this is an interesting optimization.

 o D-BUS is easy to use because it works in terms of messages rather than
   byte streams, and automatically handles a lot of the hard IPC issues.
   Also, the D-BUS library is designed to be wrapped in a way that lets
   developers use their framework's existing object/type system, rather
   than learning a new one specifically for IPC.

This package contains D-BUS shared libraries.

%description -n lib%name -l ru_RU.UTF-8
D-BUS - это система для межпроцессного взаимодействия (IPC), которое имело бы
маленькое время реакции (low-latency), не требовало бы большого количества
ресурсов и было бы легким в использовании. Более подробно:

 o D-BUS имеет маленькое время реакции, т.к. ее строение позволяет избежать
   циклов ожидания и выполнять операции асинхронно, подобно тому, как устроен
   X протокол

 o D-BUS экономно относится к русурсам, т.к. в ее основе лежит двоичный протокол,
   и нет нужды преобразовывать данные из/в текстовый формат, н-р, XML. Поскольку
   D-BUS предназначен для высокоскоростного взаимодействия в пределах одного
   компьютера, а не в Internet, это является эффективной оптимизацией.

 o D-BUS легка в использовании, т.к. предполагает работу в терминах сообщений,
   а не потоков байтов, и автоматически выполняет большую часть сложных задач
   IPC. Кроме того, библиотека D-BUS специально написана так, чтобы конечные
   пользователи работали не с самой библиотекой, а с ее обертками, подогнанными
   под конкретные прикладные среды программирования.

В этом пакете находятся разделяемые библиотеки D-BUS.

%package -n lib%name-devel
Summary: D-BUS development files
Group: Development/C
Requires: lib%name = %version-%release
%description -n lib%name-devel
D-BUS is a system for low-latency, low-overhead, easy to use interprocess
communication (IPC). In more detail:

 o D-BUS is low-latency because it is designed to avoid round trips and
   allow asynchronous operation, much like the X protocol.

 o D-BUS is low-overhead because it uses a binary protocol, and does not
   have to convert to and from a text format such as XML. Because D-BUS is
   intended for potentially high-resolution same-machine IPC, not primarily
   for Internet IPC, this is an interesting optimization.

 o D-BUS is easy to use because it works in terms of messages rather than
   byte streams, and automatically handles a lot of the hard IPC issues.
   Also, the D-BUS library is designed to be wrapped in a way that lets
   developers use their framework's existing object/type system, rather
   than learning a new one specifically for IPC.

This package contains D-BUS development files (headers and libraries links).

%description -n lib%name-devel -l ru_RU.UTF-8
D-BUS - это система для межпроцессного взаимодействия (IPC), которое имело бы
маленькое время реакции (low-latency), не требовало бы большого количества
ресурсов и было бы легким в использовании. Более подробно:

 o D-BUS имеет маленькое время реакции, т.к. ее строение позволяет избежать
   циклов ожидания и выполнять операции асинхронно, подобно тому, как устроен
   X протокол

 o D-BUS экономно относится к русурсам, т.к. в ее основе лежит двоичный протокол,
   и нет нужды преобразовывать данные из/в текстовый формат, н-р, XML. Поскольку
   D-BUS предназначен для высокоскоростного взаимодействия в пределах одного
   компьютера, а не в Internet, это является эффективной оптимизацией.

 o D-BUS легка в использовании, т.к. предполагает работу в терминах сообщений,
   а не потоков байтов, и автоматически выполняет большую часть сложных задач
   IPC. Кроме того, библиотека D-BUS специально написана так, чтобы конечные
   пользователи работали не с самой библиотекой, а с ее обертками, подогнанными
   под конкретные прикладные среды программирования.

В этом пакете находятся файлы для разработки с использованием D-BUS (заголовочные
файлы и библиотеки).

%if_enabled static
%package -n  lib%name-devel-static
Summary: D-BUS static libraries
Group: Development/C
Requires: lib%name-devel = %version-%release

%description -n lib%name-devel-static
D-BUS is a system for low-latency, low-overhead, easy to use interprocess
communication (IPC). In more detail:

 o D-BUS is low-latency because it is designed to avoid round trips and
   allow asynchronous operation, much like the X protocol.

 o D-BUS is low-overhead because it uses a binary protocol, and does not
   have to convert to and from a text format such as XML. Because D-BUS is
   intended for potentially high-resolution same-machine IPC, not primarily
   for Internet IPC, this is an interesting optimization.

 o D-BUS is easy to use because it works in terms of messages rather than
   byte streams, and automatically handles a lot of the hard IPC issues.
   Also, the D-BUS library is designed to be wrapped in a way that lets
   developers use their framework's existing object/type system, rather
   than learning a new one specifically for IPC.

This package contains D-BUS static development libraries.

%description -n lib%name-devel-static -l ru_RU.UTF-8
D-BUS - это система для межпроцессного взаимодействия (IPC), которое имело бы
маленькое время реакции (low-latency), не требовало бы большого количества
ресурсов и было бы легким в использовании. Более подробно:

 o D-BUS имеет маленькое время реакции, т.к. ее строение позволяет избежать
   циклов ожидания и выполнять операции асинхронно, подобно тому, как устроен
   X протокол

 o D-BUS экономно относится к русурсам, т.к. в ее основе лежит двоичный протокол,
   и нет нужды преобразовывать данные из/в текстовый формат, н-р, XML. Поскольку
   D-BUS предназначен для высокоскоростного взаимодействия в пределах одного
   компьютера, а не в Internet, это является эффективной оптимизацией.

 o D-BUS легка в использовании, т.к. предполагает работу в терминах сообщений,
   а не потоков байтов, и автоматически выполняет большую часть сложных задач
   IPC. Кроме того, библиотека D-BUS специально написана так, чтобы конечные
   пользователи работали не с самой библиотекой, а с ее обертками, подогнанными
   под конкретные прикладные среды программирования.

В этом пакете находятся статические библиотеки разработки для D-BUS.
%endif

%undefine __libtoolize

%prep
%setup -q -n %source_name-%source_version

%patch1 -p1

%build
%__autoreconf
%configure \
--enable-dependency-tracking \
--enable-xml-docs \
--with-x \
--enable-dnotify \
--with-xml=expat \
--enable-shared \
%{subst_enable static} \
--with-system-pid-file=%_var/run/messagebus.pid \
--with-system-socket=%system_socket \
--with-session-socket-dir=%session_socket_dir \
--enable-doxygen-docs \
--localstatedir=%_var \
--disable-tests --disable-asserts

%make_build

doxygen Doxyfile

mv doc/api/html api

%install
%make DESTDIR=%buildroot install

mkdir -p %buildroot%system_socket_dir
mkdir -p %buildroot%session_socket_dir
chmod 1777 %buildroot%session_socket_dir

mkdir -p %buildroot%_localstatedir/dbus/

mkdir -p %buildroot%_sysconfdir/X11/profile.d/

install -p -m755 %_sourcedir/dbus-daemon.sh \
%buildroot%_sysconfdir/X11/profile.d/

%pre
/usr/sbin/groupadd -r -f %dbus_group 2> /dev/null ||:
/usr/sbin/useradd -r -n -g %dbus_group -d %system_socket_dir -s /dev/null \
-c "D-Bus System User" %dbus_user 2> /dev/null ||:

%post
%post_service messagebus
%_bindir/dbus-uuidgen --ensure

%preun
%preun_service messagebus

%post -n lib%name
%post_ldconfig

%postun -n lib%name
%postun_ldconfig

%triggerpostun -n %name -- %name <= 1.0.2-alt3
/sbin/chkconfig messagebus resetpriorities

%files
%dir %_sysconfdir/dbus-1/
%config(noreplace) %_sysconfdir/dbus-1/*.conf
%dir %_sysconfdir/dbus-1/system.d
%dir %_sysconfdir/dbus-1/session.d
%attr(755,root,root) %config(noreplace) %_initdir/messagebus
%_bindir/dbus-cleanup-sockets
%_bindir/dbus-daemon
%_man1dir/dbus-cleanup-sockets.*
%_man1dir/dbus-daemon.*
%_bindir/dbus-uuidgen
%_man1dir/dbus-uuidgen.*
%attr(0755,root,root) %dir %system_socket_dir
%attr(1777,root,root) %dir %session_socket_dir
%dir %_datadir/dbus-1/
%attr(-,root,root) %_datadir/dbus-1/services
%dir %_localstatedir/dbus/

%files tools
%_bindir/dbus-send
%_man1dir/dbus-send.*
%_bindir/dbus-monitor
%_man1dir/dbus-monitor.*

%files tools-gui
%config(noreplace) %_sysconfdir/X11/profile.d/*
%_bindir/dbus-launch
%_man1dir/dbus-launch.*

%files -n lib%name
%_libdir/libdbus-1.so.*

%files -n lib%name-devel
%doc doc/TODO doc/dbus-*.html doc/dbus-*.xml doc/dcop-howto.txt
%doc HACKING NEWS README AUTHORS
%doc api
%_libdir/libdbus-1.so
%dir %_includedir/dbus-1.0/dbus/
%_includedir/dbus-1.0/dbus/dbus*.h
%dir %_libdir/dbus-1.0/
%_libdir/dbus-1.0/
%_libdir/pkgconfig/dbus-1.pc

%if_enabled static
%files -n lib%name-devel-static
%_libdir/libdbus-1.a
%endif

%changelog

changelog

 
: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
: Michael Shigorin