Projects
Extra
discord
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 11
View file
discord.spec
Changed
@@ -1,8 +1,7 @@ # # spec file for package discord # -# Copyright (c) 2023-2026 SUSE LLC. -# Copyright (c) 2021 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 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 @@ -19,61 +18,38 @@ # Require bash for extglob in install section. %global _buildshell /bin/bash - +%global __requires_exclude ^(libffmpeg|libnode).* +%global __provides_exclude ^(libffmpeg|libnode).* +# This is to enable build with patent encoumbered codecs. Not allowed in OBS +%bcond_with x264 Name: discord -Version: 1.0.152 +Version: 0.0.10 Release: 0 Summary: Voice and Text Chat for Gamers License: SUSE-NonFree -Group: Productivity/Networking/Instant Messenger +Group: chat voice-chat URL: https://discordapp.com/ Source0: https://dl.discordapp.net/apps/linux/%{version}/%{name}-%{version}.tar.gz -Source1: discord-symbolic.svg -Source2: https://raw.githubusercontent.com/flathub/com.discordapp.Discord/master/com.discordapp.Discord.appdata.xml - -# Wrapper script to disable updates in user's Discord settings.json file -# Then the script calls the actual Discord's executable in lib. -Source3: disable-updates.sh - -# Permission file to distribute this package legally. -# This file is included as a kind of LICENSE. -Source4: PERMISSION - -# Discord is only available for x86_64 architecture at the moment. +#Source0: https://discordapp.com/api/download?platform=linux&format=tar.gz +Source2: discord-symbolic.svg +Source99: PERMISSION ExclusiveArch: x86_64 - -# Build dependencies needed to extract the .tar.gz and validate appstream metadata. BuildRequires: desktop-file-utils BuildRequires: hicolor-icon-theme +BuildRequires: update-desktop-files BuildRequires: unzip -BuildRequires: AppStream - -# For the wrapper script: -Requires: grep -Requires: sed -Requires: coreutils - -# Runtime dependencies required by the Discord package. -Requires: atk -Requires: cairo -Requires: pango -Requires: gtk3 -Requires: at-spi2-core -Requires: zenity -Requires: hicolor-icon-theme >= 0.15 - -# basic infrastructure -Requires: glibc -Requires: mozilla-nspr >= 4.13 -Requires: mozilla-nss >= 3.27 - -# Recommended packages -Recommends: libva-utils -Recommends: pipewire - -Provides: discord = %{version} -Conflicts: discord-bootstrap < %{version} -Obsoletes: discord < %{version} +Conflicts: discord +Requires: libgtk-2_0-0 libnotify-tools libasound2 gconf2 mozilla-nss dbus-1-glib libXtst6 libX11-6 libstdc++6 libc++1 libatomic1 + +#Patent free ffmpeg config +#Snippets from https://github.com/orionhealth/electron-packager-plugin-non-proprietary-codecs-ffmpeg/blob/master/src/downloadFFMPEG.js +%define electronVersion 4.0.1 +%define ffmpegarch x64 +%define ffmpegplatform linux +%define ffmpegFileName ffmpeg-v%{electronVersion}-%{ffmpegplatform}-%{ffmpegarch}.zip +#eg. https://github.com/electron/electron/releases/download/v1.6.11/ffmpeg-v1.6.11-linux-x64.zip +Source1: https://github.com/electron/electron/releases/download/v%{electronVersion}/%{ffmpegFileName} + %description Discord is a voice and text chat for gamers. The Text chat supports @@ -82,68 +58,64 @@ Server-to-client communications are encrypted. %prep -%setup -q -n Discord +%setup -n Discord +%setup -T -a 1 -c -n ffmpeg %build -# Nothing to do +%if %{with x264} +# nothing to do +: +%else +rm %{_builddir}/Discord/libffmpeg.so +cp %{_builddir}/ffmpeg/libffmpeg.so %{_builddir}/Discord/ +%endif %install -# Install the icon in the correct location. cd %{_builddir}/Discord -install -Dm644 discord.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/discord.png - -# Make sure the desktop file is installed with the correct Exec path to the wrapper script in bin. +install -Dm644 discord.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{name}.png desktop-file-install \ --dir=%{buildroot}%{_datadir}/applications \ --set-key=Exec \ - --set-value=%{_bindir}/discord \ - discord.desktop + --set-value=%{_bindir}/%{name} \ + %{name}.desktop -# Install the symbolic icon, appdata and permission files in the correct locations. -install -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/discord-symbolic.svg -install -Dm644 %{SOURCE2} %{buildroot}%{_datadir}/appdata/com.discordapp.Discord.appdata.xml -install -Dm644 %{SOURCE4} %{buildroot}%{_datadir}/licenses/discord/PERMISSION +install -Dm755 chrome-sandbox %{buildroot}%{_libdir}/%{name}/chrome-sandbox +install -Dm755 libffmpeg.so %{buildroot}%{_libdir}/%{name}/libffmpeg.so +install -Dm755 libEGL.so %{buildroot}%{_libdir}/%{name}/libEGL.so +install -Dm755 libGLESv2.so %{buildroot}%{_libdir}/%{name}/libGLESv2.so +install -Dm755 %SOURCE1 %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps/%{name}-symbolic.svg -# Install the extracted files from the Discord tarball in lib64/discord. -mkdir -p %{buildroot}%{_libdir}/discord +# install share +mkdir -p %{buildroot}%{_libdir}/%{name} shopt -s extglob -cp -r * %{buildroot}%{_libdir}/discord +cp -r !(discord*|*.so) %{buildroot}%{_libdir}/%{name} shopt -u extglob -# Fix missing icon in some environments -ln -sf %{_datadir}/icons/hicolor/256x256/apps/discord.png %{buildroot}%{_libdir}/discord +# fix missing icon in some envoronments +ln -sf %{_datadir}/icons/hicolor/256x256/apps/%{name}.png /%{buildroot}%{_libdir}/%{name} # Executable checks for resources in its directory so it cannot be in bin. -# Instead, we install a wrapper script in bin that calls the executable in lib. -# And the wrapper script disables updates to prevent the program from breaking. mkdir -p %{buildroot}%{_bindir} -install -v -m 755 %{SOURCE3} %{buildroot}%{_bindir}/discord +ln -s %{_libdir}/%{name}/Discord %{buildroot}%{_bindir}/%{name} -%check -# Validate the desktop file and appstream metadata. -desktop-file-validate %{buildroot}%{_datadir}/applications/discord.desktop -appstreamcli validate --no-net %{buildroot}%{_datadir}/appdata/com.discordapp.Discord.appdata.xml +%post +%if 0%{?suse_version} < 1500 +%desktop_database_post +%endif +chmod 0755 %{_libdir}/%{name}/Discord -%files -# Set file attributes -%defattr(-,root,root) - -# Software distribution permission as a LICENSE file for the package. -%dir %{_datadir}/licenses/discord -%license %{_datadir}/licenses/discord/PERMISSION - -# Main Discord bootstrap files -%{_libdir}/discord +%if 0%{?suse_version} < 1500 +%postun +%desktop_database_postun +%endif -# Wrapper script to disable updates -%{_bindir}/discord -# Desktop files and icons -%{_datadir}/applications/discord.desktop -%{_datadir}/icons/hicolor/256x256/apps/discord.png -%{_datadir}/icons/hicolor/symbolic/apps/discord-symbolic.svg - -# Appstream metadata files -%{_datadir}/appdata/com.discordapp.Discord.appdata.xml +%files +%defattr(-,root,root) +%{_bindir}/%{name} +%{_datadir}/applications/%{name}.desktop +%{_datadir}/icons/hicolor/256x256/apps/%{name}.png +%{_datadir}/icons/hicolor/symbolic/apps/%{name}-symbolic.svg +%{_libdir}/%{name} %changelog
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.