File drawpile.spec of Package drawpile
#
# spec file for package drawpile
#
# Copyright (c) 2025 mantarimay
# Copyright (c) 2025 SUSE LLC
#
# 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/
#
# drawpile needs gcc >=8 at least
%if 0%{?sle_version} && 0%{?sle_version} < 160000
%global force_gcc_version 12
%endif
Name: drawpile
Version: 2.2.2
Release: 0
Summary: A collaborative drawing program
License: GPL-3.0-or-later
Group: Productivity/Graphics/Other
URL: https://drawpile.net/
Source0: https://github.com/drawpile/Drawpile/archive/v%{version}/Drawpile-%{version}.tar.gz
Source1: vendor.tar.zst
BuildRequires: cargo-packaging
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: gcc%{?force_gcc_version}-c++
BuildRequires: giflib-devel
BuildRequires: hicolor-icon-theme
BuildRequires: karchive-devel
BuildRequires: kdnssd-framework-devel
BuildRequires: libminiupnpc-devel
BuildRequires: libsodium-devel
BuildRequires: libvpx-devel
BuildRequires: pkgconfig
BuildRequires: update-desktop-files
BuildRequires: xdg-utils
BuildRequires: zstd
BuildRequires: libwebp-devel
BuildRequires: libzip-tools
BuildRequires: qt6-base-devel
BuildRequires: qt6-multimedia-devel
BuildRequires: qt6-svg-devel
BuildRequires: qt6-tools-devel
BuildRequires: qtkeychain-qt6-devel
BuildRequires: pkgconfig(libzip)
BuildRequires: pkgconfig(libmicrohttpd)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(systemd)
%description
DrawPile is a sketching oriented drawing program with a twist:
you can share your drawing live with other users.
There are no restrictions on who may draw where; every user has full access
to the whole picture simultaneously.
Feature highlights:
* Shared canvas using the built-in server or a dedicated server
* Record, play back and export drawing sessions
* Simple animation support
* Layers and blending modes
* Text layers
* Supports pressure sensitive Wacom tablets
* Built-in chat
* Supports OpenRaster file format
* Encrypted connections using SSL
* Automatic port forwarding with UPnP
%prep
%autosetup -n Drawpile-%{version} -a1
%build
%if 0%{?force_gcc_version}
export CXX="g++-%{force_gcc_version}"
%endif
%cmake --preset linux-release-qt6-all-make
%make_build
%install
%cmake_install
%fdupes %{buildroot}%{_datadir}
%files
%license LICENSE.txt
%doc AUTHORS ChangeLog README.md doc/*
%{_bindir}/%{name}
%{_bindir}/%{name}-cmd
%{_bindir}/%{name}-timelapse
%{_bindir}/%{name}-srv
%{_bindir}/dprectool
%exclude %{_datadir}/doc/drawpile
%{_datadir}/man/drawpile*
%{_datadir}/%{name}/
%{_datadir}/applications/net.drawpile.drawpile.desktop
%{_datadir}/metainfo/net.drawpile.drawpile.appdata.xml
%dir %{_datadir}/mime/{application,text}
%{_datadir}/mime/{application,text}/vnd.drawpile.recording.xml
%{_datadir}/icons/hicolor/*/apps/drawpile*
%{_datadir}/icons/hicolor/*/mimetypes/*
%changelog