mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-17 11:04:10 -04:00
Merge updates from master
This commit is contained in:
@@ -1,2 +1 @@
|
||||
DIST waydroid-1.4.0.tar.gz 237562 BLAKE2B 28f711bf0fe8b5254739d1a6769f466bcc593f3c61df1bef9e2a3fab80a97fe44b9509907c100e3178e343fd264955894b38ee1be5b6ce0c6ea5d473b6958a7f SHA512 2f1e4c112dbe68ad15d69441a37ba631d148c95810f0ca1e6e1c45461089d5f5e0990a58c2324449b69199b6b24d32c110063c4dfaf89b537779915ec3f3b69d
|
||||
DIST waydroid-1.4.2.tar.gz 242536 BLAKE2B 77a6ba3a00bc2c95f767bec9ec93d1e4dcd3e20cf39d8c3ce0dea00f6c1c2a1eb6399f2ef0d8017958584205d067646d0e50d0f865c954284b7384f4a492a084 SHA512 0d3eba799895c853545b7087e3c07160d593d4a3166822039973669bc0ee93a8a6b9c394a7d982e57cfbbfbd8df1ba7991dd33b1b1517d79fcbe191d8a86890a
|
||||
|
||||
@@ -1,87 +0,0 @@
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
inherit linux-info xdg python-single-r1
|
||||
|
||||
DESCRIPTION="Container-based approach to boot a full Android system on Linux systems"
|
||||
HOMEPAGE="https://waydro.id"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
IUSE="systemd apparmor"
|
||||
|
||||
DEPEND="|| ( virtual/linux-sources virtual/dist-kernel )"
|
||||
RDEPEND="
|
||||
systemd? ( sys-apps/systemd )
|
||||
app-containers/lxc[systemd?,apparmor?,seccomp]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/pygobject[${PYTHON_USEDEP}]
|
||||
>=dev-python/gbinder-1.1.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyclip-0.7.0[wayland,${PYTHON_USEDEP}]
|
||||
dev-python/dbus-python[${PYTHON_USEDEP}]
|
||||
')
|
||||
net-firewall/nftables
|
||||
net-dns/dnsmasq
|
||||
>=dev-libs/libglibutil-1.0.67
|
||||
>=dev-libs/gbinder-1.1.21
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
CONFIG_CHECK="
|
||||
~ANDROID_BINDER_IPC
|
||||
~ANDROID_BINDERFS
|
||||
~MEMFD_CREATE
|
||||
"
|
||||
ERROR_ANDROID_BINDERFS="CONFIG_ANDROID_BINDERFS: need for creating Android-specific binder IPC channels"
|
||||
ERROR_ANDROID_BINDER_IPC="CONFIG_ANDROID_BINDER_IPC: need for creating Android-specific binder IPC channels"
|
||||
ERROR_MEMFD_CREATE="CONFIG_MEMFD_CREATE: it completely replaced deprecated ISHMEM drivers,
|
||||
therefore it's vital for android-specific memory management"
|
||||
|
||||
src_compile() {
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
python_fix_shebang waydroid.py
|
||||
emake install DESTDIR="${D}" USE_NFTABLES=1 USE_SYSTEMD=$(usex systemd 1 0)
|
||||
if ! use systemd; then
|
||||
elog "Installing waydroid OpenRC daemon"
|
||||
doinitd "${FILESDIR}"/waydroid
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
elog "After package installation run either 'emerge --config app-containers/waydroid'"
|
||||
elog "or 'waydroid init' from root shell to install android container runtime"
|
||||
elog "To run waydroid, 1. Start container: 'rc-service waydroid start'"
|
||||
elog "2. start wayland channel (from user shell) 'waydroid session start'"
|
||||
elog "Contact https://docs.waydro.id/usage/install-on-desktops for how-to guides"
|
||||
elog "(does not cover Gentoo-specific things sadly)"
|
||||
elog
|
||||
|
||||
ewarn "Make sure you have NFTABLES up and running in your kernel. See"
|
||||
ewarn "https://wiki.gentoo.org/wiki/Nftables for how-to details"
|
||||
ewarn
|
||||
|
||||
if ! use apparmor; then
|
||||
ewarn "If you use app-containers/lxc without apparmor, make sure you deleted or commented out in waydroid LXC config"
|
||||
ewarn "(generated after waydroid init) in /var/lib/waydroid/lxc/waydroid/config the following string:"
|
||||
ewarn "lxc.apparmor.profile = unconfined"
|
||||
ewarn "or waydroid experiences crash during launch"
|
||||
ewarn "See also https://github.com/waydroid/waydroid/issues/652"
|
||||
else
|
||||
ewarn "Apparmor support has not been tested by package maintainer yet"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
"${EROOT}"/usr/bin/waydroid init
|
||||
}
|
||||
@@ -1 +1 @@
|
||||
DIST beancount-2.3.5.gh.tar.gz 1718715 BLAKE2B 2bcbf250e6947c6ea93f7c4308fac2ea03c0b5b722dc4a6eb396133880ca201235ceb8cbb2e3a6e63afe573e1b3ab8bb945444a1edc73791b73200fb4d45bd18 SHA512 a3f1343ddf54cf13ef60802de210dc89e9ae202bca802b1b4eb532588f71d51fa4b71672b4e6a1e9676135d406fd55c421b80c439fa2f5f4279e61211f558a2a
|
||||
DIST beancount-2.3.6.gh.tar.gz 1720239 BLAKE2B 769aa27a9edc201e33a85f92780b4140b1758a35ca865255183bdcaf4c515ba3bf4c6711aa2842c9219027a44a7cc334c39b48eb36f5145caa689ba90cda64d5 SHA512 52b65f99753e9473aae7736419d104e46b422b33f854170cc0242a95c1d12483aae95264138f81d28c9a7b50ca961e75163cce83868db5bcc9afe7d2337f3036
|
||||
|
||||
@@ -1,16 +1,19 @@
|
||||
# Copyright 2021-2023 Gentoo Authors
|
||||
# Copyright 2021-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
DISTUTILS_SINGLE_IMPL=1
|
||||
|
||||
inherit distutils-r1 toolchain-funcs
|
||||
|
||||
DESCRIPTION="A double-entry accounting system that uses text files as input"
|
||||
HOMEPAGE="https://beancount.github.io https://github.com/beancount/beancount"
|
||||
HOMEPAGE="
|
||||
https://beancount.github.io
|
||||
https://github.com/beancount/beancount
|
||||
"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
@@ -1,2 +1 @@
|
||||
DIST PySnooper-1.1.1.tar.gz 45534 BLAKE2B d3adea166bda59a6b5691ccfd2952381b3d5e199944eaa3b1789fc4188711bcfa6040cae9f0f2d8ea35db1ed1d3d04859a606315bb3e9c771fae090de099c783 SHA512 9170b558d8ea00a359c27855e3eee3c2852bb11aaff534e40f8a8c3a95ceb79f58f2102f8d68c9b4f5c0045a65d0910bc44b0409921fff1706ee93c9b5e2c698
|
||||
DIST PySnooper-1.2.0.tar.gz 46224 BLAKE2B e40b779bf446b79513e7a6a11e95d476571a077ca0204a1f54cff71ecf9ff85f2dd8db2d0eb6ca9d104467ae64f0cea54a0f772da41d29606847f559117c8527 SHA512 0bcd5f65e102bf048304ce8a6d25827bff6602c664836a1f2a69bdf7a036d86df0179097a227c6a6eaab41ce66355b1a3b2c981e2593cf4dcee1953154de9655
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYPI_PN="PySnooper"
|
||||
PYPI_NO_NORMALIZE=1
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Never use print for debugging again"
|
||||
HOMEPAGE="
|
||||
https://pypi.org/project/pysnooper/
|
||||
https://github.com/cool-RR/PySnooper
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
@@ -1,9 +1,9 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Copyright 2023-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYPI_PN="PySnooper"
|
||||
PYPI_NO_NORMALIZE=1
|
||||
|
||||
@@ -1,14 +1,18 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Copyright 2023-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="HTTP REST client, simplified for Python"
|
||||
HOMEPAGE="https://github.com/sendgrid/python-http-client https://pypi.org/project/python-http-client/"
|
||||
HOMEPAGE="
|
||||
https://github.com/sendgrid/python-http-client
|
||||
https://pypi.org/project/python-http-client/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
@@ -25,8 +29,4 @@ BDEPEND="
|
||||
dev-python/pytest[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
python_test() {
|
||||
py.test -v -v || die
|
||||
}
|
||||
|
||||
distutils_enable_tests pytest
|
||||
@@ -2,9 +2,10 @@
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
DISTUTILS_EXT=1
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Pack a set of rectangles into a bounding box with minimum area"
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
# Copyright 2021-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
inherit distutils-r1
|
||||
|
||||
MY_COMMIT="e8bdad312fa99c89c74f8651a1240afba8a9f3bd"
|
||||
|
||||
DESCRIPTION="Decrypt and encrypt 'Stanford Javascript Crypto Library'-compatible messages"
|
||||
HOMEPAGE="https://github.com/berlincode/sjcl"
|
||||
|
||||
# pypi tarball doesn't contains the tests
|
||||
SRC_URI="https://github.com/berlincode/sjcl/archive/${MY_COMMIT}.tar.gz -> ${PN}-${MY_COMMIT}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${MY_COMMIT}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
distutils_enable_tests setup.py
|
||||
|
||||
RDEPEND="
|
||||
dev-python/pycryptodome[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
@@ -1,10 +1,11 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Copyright 2023-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYPI_NO_NORMALIZE=1
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
@@ -25,9 +26,4 @@ BDEPEND="
|
||||
dev-python/pytest[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
python_test() {
|
||||
py.test -v -v || die
|
||||
}
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
|
||||
DISTUTILS_USE_SETUPTOOLS=no
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
@@ -22,7 +22,7 @@ SLOT="0"
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
rm ${S}/Makefile || die
|
||||
rm "${S}"/Makefile || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
|
||||
@@ -20,7 +20,9 @@ LICENSE="BSD"
|
||||
SLOT="0"
|
||||
|
||||
src_prepare() {
|
||||
rm ${S}/makefile || die
|
||||
default
|
||||
|
||||
rm "${S}"/Makefile || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
# Copyright 2022 Gentoo Authors
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11} )
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
inherit python-single-r1
|
||||
|
||||
DESCRIPTION="Steam Play compatibility tool to run DOS games using native Linux DOSBox"
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Copyright 2023-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
inherit python-any-r1 xdg meson
|
||||
|
||||
DESCRIPTION="Send JACK audio over a network"
|
||||
|
||||
@@ -1,3 +1 @@
|
||||
DIST syncplay-1.6.9.tar.gz 1900259 BLAKE2B d535f5057a790ac860e6d0ac376069565fa02076dbc0c1d9eb7f54f87f96bbf7aef85136c8c5b67f1a5cf64a5204a617db26e6931368ba490a3ea9128282e473 SHA512 317e7cc966182259e552898ae05e620caf0f8e0ae0b6917235c391bcae1ef9679f1e97cfb46f6d8c6edcd9a5c573e5ab4ff5e27b5e203980a99ade065d9a6b65
|
||||
DIST syncplay-1.7.1.tar.gz 1983931 BLAKE2B 510a3da1f0d52d8033b744b66b87916411051d8f1fdbebd2f098e11e1cf58b2ab81bb491bb3b4aa68d630b53d4b85ad7440bc0b4715a7d9aa23a1c6728bf674c SHA512 aca2eb0503ab853175414663301813f1bc7ebfd38836d3f67d072c4721dc84aa9c4559ef00377641ec25e842ee479af31771ef004fc57f466c0c92df31940276
|
||||
DIST syncplay-1.7.3.tar.gz 1986541 BLAKE2B 204874b02fdb4d889b1718173fb34bd715ce6f66d051cfa5be102f93d4b8ae209af64b0f8096c146e6f439f9f9bf0c92bb6849324c0d067c90784c4a60b2f089 SHA512 144c9b4de9272943f7e3624f602e5d36a18871f78588b60f22d699465ecf3b1c63e733441b9fdd26d6e05db032e7a090e544ce7861532377a34bbc9183e3ce10
|
||||
|
||||
@@ -1,88 +0,0 @@
|
||||
diff --git a/syncplay/ui/ConfigurationGetter.py b/syncplay/ui/ConfigurationGetter.py
|
||||
index dd1d8ec..6d83c65 100755
|
||||
--- a/syncplay/ui/ConfigurationGetter.py
|
||||
+++ b/syncplay/ui/ConfigurationGetter.py
|
||||
@@ -513,10 +513,10 @@ class ConfigurationGetter(object):
|
||||
self._overrideConfigWithArgs(args)
|
||||
if not self._config['noGui']:
|
||||
try:
|
||||
- from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2
|
||||
+ from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2, IsPyQt5
|
||||
from syncplay.vendor.Qt.QtCore import QCoreApplication
|
||||
from syncplay.vendor import qt5reactor
|
||||
- if not (IsPySide2 or IsPySide):
|
||||
+ if not (IsPySide2 or IsPySide or IsPyQt5):
|
||||
raise ImportError
|
||||
if QCoreApplication.instance() is None:
|
||||
self.app = QtWidgets.QApplication(sys.argv)
|
||||
diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
|
||||
index 9ce6a42..1ad5bd7 100755
|
||||
--- a/syncplay/ui/GuiConfiguration.py
|
||||
+++ b/syncplay/ui/GuiConfiguration.py
|
||||
@@ -11,7 +11,7 @@ from syncplay.players.playerFactory import PlayerFactory
|
||||
from syncplay.utils import isBSD, isLinux, isMacOS, isWindows
|
||||
from syncplay.utils import resourcespath, posixresourcespath
|
||||
|
||||
-from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2
|
||||
+from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2, IsPyQt5
|
||||
from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine, QEventLoop, Signal
|
||||
from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
|
||||
from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage, QDesktopServices
|
||||
@@ -445,7 +445,7 @@ class ConfigDialog(QtWidgets.QDialog):
|
||||
defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.HomeLocation)
|
||||
else:
|
||||
defaultdirectory = ""
|
||||
- elif IsPySide2:
|
||||
+ elif IsPySide2 or IsPyQt5:
|
||||
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
|
||||
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
||||
elif os.path.isdir(self.mediadirectory):
|
||||
diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
|
||||
index b7a9a9f..d2ad6e5 100755
|
||||
--- a/syncplay/ui/gui.py
|
||||
+++ b/syncplay/ui/gui.py
|
||||
@@ -19,7 +19,7 @@ from syncplay.utils import resourcespath
|
||||
from syncplay.utils import isLinux, isWindows, isMacOS
|
||||
from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
|
||||
from syncplay.vendor import Qt
|
||||
-from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2
|
||||
+from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2, IsPyQt5
|
||||
from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
|
||||
applyDPIScaling = True
|
||||
if isLinux():
|
||||
@@ -32,6 +32,8 @@ if hasattr(QtCore.Qt, 'AA_UseHighDpiPixmaps'):
|
||||
QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, applyDPIScaling)
|
||||
if IsPySide2:
|
||||
from PySide2.QtCore import QStandardPaths
|
||||
+if IsPyQt5:
|
||||
+ from PyQt5.QtCore import QStandardPaths
|
||||
if isMacOS() and IsPySide:
|
||||
from Foundation import NSURL
|
||||
from Cocoa import NSString, NSUTF8StringEncoding
|
||||
@@ -808,7 +810,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||
self.listTreeView.setFirstColumnSpanned(roomtocheck, self.listTreeView.rootIndex(), True)
|
||||
roomtocheck += 1
|
||||
self.listTreeView.header().setStretchLastSection(False)
|
||||
- if IsPySide2:
|
||||
+ if IsPySide2 or IsPyQt5:
|
||||
self.listTreeView.header().setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents)
|
||||
self.listTreeView.header().setSectionResizeMode(1, QtWidgets.QHeaderView.ResizeToContents)
|
||||
self.listTreeView.header().setSectionResizeMode(2, QtWidgets.QHeaderView.ResizeToContents)
|
||||
@@ -822,7 +824,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||
if self.listTreeView.header().width() < (NarrowTabsWidth+self.listTreeView.header().sectionSize(3)):
|
||||
self.listTreeView.header().resizeSection(3, self.listTreeView.header().width()-NarrowTabsWidth)
|
||||
else:
|
||||
- if IsPySide2:
|
||||
+ if IsPySide2 or IsPyQt5:
|
||||
self.listTreeView.header().setSectionResizeMode(3, QtWidgets.QHeaderView.Stretch)
|
||||
if IsPySide:
|
||||
self.listTreeView.header().setResizeMode(3, QtWidgets.QHeaderView.Stretch)
|
||||
@@ -1003,7 +1005,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||
defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)
|
||||
else:
|
||||
defaultdirectory = ""
|
||||
- elif IsPySide2:
|
||||
+ elif IsPySide2 or IsPyQt5:
|
||||
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
|
||||
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
||||
elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
|
||||
@@ -1,32 +0,0 @@
|
||||
diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
|
||||
index 96915814..e0713adf 100755
|
||||
--- a/syncplay/ui/GuiConfiguration.py
|
||||
+++ b/syncplay/ui/GuiConfiguration.py
|
||||
@@ -1181,7 +1181,7 @@ def addMessageTab(self):
|
||||
|
||||
self.displaySettingsGroup = QtWidgets.QGroupBox(getMessage("messages-other-title"))
|
||||
self.displaySettingsLayout = QtWidgets.QVBoxLayout()
|
||||
- self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
|
||||
+ self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
|
||||
self.displaySettingsFrame = QtWidgets.QFrame()
|
||||
|
||||
self.showDurationNotificationCheckbox = QCheckBox(getMessage("showdurationnotification-label"))
|
||||
@@ -1193,7 +1193,7 @@ def addMessageTab(self):
|
||||
self.languageLayout.setContentsMargins(0, 0, 0, 0)
|
||||
self.languageFrame.setLayout(self.languageLayout)
|
||||
self.languageFrame.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
|
||||
- self.languageLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
|
||||
+ self.languageLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
|
||||
self.languageLabel = QLabel(getMessage("language-label"), self)
|
||||
self.languageCombobox = QtWidgets.QComboBox(self)
|
||||
self.languageCombobox.addItem(getMessage("automatic-language").format(getMessage("LANGUAGE", getInitialLanguage())))
|
||||
@@ -1214,7 +1214,7 @@ def addMessageTab(self):
|
||||
|
||||
self.displaySettingsGroup.setLayout(self.displaySettingsLayout)
|
||||
self.displaySettingsGroup.setMaximumHeight(self.displaySettingsGroup.minimumSizeHint().height())
|
||||
- self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
|
||||
+ self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
|
||||
self.messageLayout.addWidget(self.displaySettingsGroup)
|
||||
|
||||
# messageFrame
|
||||
|
||||
@@ -1,150 +0,0 @@
|
||||
diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
|
||||
index c59c5697..2a4bd1a5 100755
|
||||
--- a/syncplay/ui/gui.py
|
||||
+++ b/syncplay/ui/gui.py
|
||||
@@ -139,7 +139,7 @@ def __init__(self, parent=None):
|
||||
self.setWindowTitle(getMessage("about-dialog-title"))
|
||||
if isWindows():
|
||||
self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
|
||||
- self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
|
||||
+ self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
|
||||
nameLabel = QtWidgets.QLabel("<center><strong>Syncplay</strong></center>")
|
||||
nameLabel.setFont(QtGui.QFont("Helvetica", 18))
|
||||
linkLabel = QtWidgets.QLabel()
|
||||
@@ -202,7 +202,7 @@ def __init__(self, tlsData, parent=None):
|
||||
self.setWindowTitle(getMessage("tls-information-title"))
|
||||
if isWindows():
|
||||
self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
|
||||
- self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
|
||||
+ self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
|
||||
statusLabel = QtWidgets.QLabel(getMessage("tls-dialog-status-label").format(tlsData["subject"]))
|
||||
descLabel = QtWidgets.QLabel(getMessage("tls-dialog-desc-label").format(tlsData["subject"]))
|
||||
connDataLabel = QtWidgets.QLabel(getMessage("tls-dialog-connection-label").format(tlsData["protocolVersion"], tlsData["cipher"]))
|
||||
@@ -614,11 +614,11 @@ def showUserList(self, currentUser, rooms):
|
||||
|
||||
if isControlledRoom:
|
||||
if room == currentUser.room and currentUser.isController():
|
||||
- roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock_open.png'))
|
||||
+ roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_open.png')))
|
||||
else:
|
||||
- roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock.png'))
|
||||
+ roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock.png')))
|
||||
else:
|
||||
- roomitem.setIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png'))
|
||||
+ roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png')))
|
||||
|
||||
for user in rooms[room]:
|
||||
useritem = QtGui.QStandardItem(user.username)
|
||||
@@ -719,31 +719,31 @@ def openPlaylistMenu(self, position):
|
||||
pathFound = self._syncplayClient.fileSwitch.findFilepath(firstFile) if not isURL(firstFile) else None
|
||||
if self._syncplayClient.userlist.currentUser.file is None or firstFile != self._syncplayClient.userlist.currentUser.file["name"]:
|
||||
if isURL(firstFile):
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
|
||||
elif pathFound:
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
|
||||
if pathFound:
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"),
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")),
|
||||
getMessage('open-containing-folder'),
|
||||
lambda: utils.open_system_file_browser(pathFound))
|
||||
if self._syncplayClient.isUntrustedTrustableURI(firstFile):
|
||||
domain = utils.getDomainFromURL(firstFile)
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "delete.png"), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "delete.png")), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
|
||||
menu.addSeparator()
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "arrow_undo.png"), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "film_edit.png"), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_undo.png")), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_edit.png")), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
|
||||
menu.addSeparator()
|
||||
menu.addAction(getMessage("loadplaylistfromfile-menu-label"),lambda: self.OpenLoadPlaylistFromFileDialog()) # TODO: Add icon
|
||||
menu.addAction("Load and shuffle playlist from file",lambda: self.OpenLoadPlaylistFromFileDialog(shuffle=True)) # TODO: Add icon and messages_en
|
||||
menu.addAction(getMessage("saveplaylisttofile-menu-label"),lambda: self.OpenSavePlaylistToFileDialog()) # TODO: Add icon
|
||||
menu.addSeparator()
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "film_folder_edit.png"), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "shield_edit.png"), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_folder_edit.png")), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_edit.png")), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
|
||||
menu.exec_(self.playlist.viewport().mapToGlobal(position))
|
||||
|
||||
def openRoomMenu(self, position):
|
||||
@@ -778,25 +778,25 @@ def openRoomMenu(self, position):
|
||||
elif username and filename and filename != getMessage("nofile-note"):
|
||||
if self.config['sharedPlaylistEnabled'] and not self.isItemInPlaylist(filename):
|
||||
if isURL(filename):
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
|
||||
else:
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
|
||||
|
||||
if self._syncplayClient.userlist.currentUser.file is None or filename != self._syncplayClient.userlist.currentUser.file["name"]:
|
||||
if isURL(filename):
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
|
||||
else:
|
||||
pathFound = self._syncplayClient.fileSwitch.findFilepath(filename)
|
||||
if pathFound:
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
|
||||
if self._syncplayClient.isUntrustedTrustableURI(filename):
|
||||
domain = utils.getDomainFromURL(filename)
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
|
||||
|
||||
if not isURL(filename) and filename != getMessage("nofile-note"):
|
||||
path = self._syncplayClient.fileSwitch.findFilepath(filename)
|
||||
if path:
|
||||
- menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
|
||||
+ menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
|
||||
else:
|
||||
return
|
||||
menu.exec_(self.listTreeView.viewport().mapToGlobal(position))
|
||||
@@ -1410,7 +1410,7 @@ def addTopLayout(self, window):
|
||||
window.chatInput.setMaxLength(constants.MAX_CHAT_MESSAGE_LENGTH)
|
||||
window.chatInput.returnPressed.connect(self.sendChatMessage)
|
||||
window.chatButton = QtWidgets.QPushButton(
|
||||
- QtGui.QPixmap(resourcespath + 'email_go.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'email_go.png')),
|
||||
getMessage("sendmessage-label"))
|
||||
window.chatButton.pressed.connect(self.sendChatMessage)
|
||||
window.chatLayout = QtWidgets.QHBoxLayout()
|
||||
@@ -1445,7 +1445,7 @@ def addTopLayout(self, window):
|
||||
window.listlabel = QtWidgets.QLabel(getMessage("userlist-heading-label"))
|
||||
if isMacOS:
|
||||
window.listlabel.setMinimumHeight(21)
|
||||
- window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14),"")
|
||||
+ window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14)),"")
|
||||
window.sslButton.setVisible(False)
|
||||
window.sslButton.setFixedHeight(21)
|
||||
window.sslButton.setFixedWidth(21)
|
||||
@@ -1453,7 +1453,7 @@ def addTopLayout(self, window):
|
||||
window.sslButton.setStyleSheet("QPushButton:!hover{border: 1px solid gray;} QPushButton:hover{border:2px solid black;}")
|
||||
else:
|
||||
window.listlabel.setMinimumHeight(27)
|
||||
- window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png'),"")
|
||||
+ window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png')),"")
|
||||
window.sslButton.setVisible(False)
|
||||
window.sslButton.setFixedHeight(27)
|
||||
window.sslButton.setFixedWidth(27)
|
||||
@@ -1485,7 +1485,7 @@ def addTopLayout(self, window):
|
||||
window.roomsCombobox.setEditable(True)
|
||||
#window.roomsCombobox.setMaxLength(constants.MAX_ROOM_NAME_LENGTH)
|
||||
window.roomButton = QtWidgets.QPushButton(
|
||||
- QtGui.QPixmap(resourcespath + 'door_in.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
|
||||
getMessage("joinroom-label"))
|
||||
window.roomButton.pressed.connect(self.joinRoom)
|
||||
window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
|
||||
@@ -1,167 +0,0 @@
|
||||
diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
|
||||
index c59c5697..2a4bd1a5 100755
|
||||
--- a/syncplay/ui/gui.py
|
||||
+++ b/syncplay/ui/gui.py
|
||||
@@ -1620,24 +1620,24 @@ def addPlaybackLayout(self, window):
|
||||
window.playbackFrame.setLayout(window.playbackLayout)
|
||||
window.seekInput = QtWidgets.QLineEdit()
|
||||
window.seekInput.returnPressed.connect(self.seekFromButton)
|
||||
- window.seekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'clock_go.png'), "")
|
||||
+ window.seekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')), "")
|
||||
window.seekButton.setToolTip(getMessage("seektime-menu-label"))
|
||||
window.seekButton.pressed.connect(self.seekFromButton)
|
||||
window.seekInput.setText("0:00")
|
||||
window.seekInput.setFixedWidth(60)
|
||||
window.playbackLayout.addWidget(window.seekInput)
|
||||
window.playbackLayout.addWidget(window.seekButton)
|
||||
- window.unseekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'arrow_undo.png'), "")
|
||||
+ window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
|
||||
window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
|
||||
window.unseekButton.pressed.connect(self.undoSeek)
|
||||
|
||||
window.miscLayout = QtWidgets.QHBoxLayout()
|
||||
window.playbackLayout.addWidget(window.unseekButton)
|
||||
- window.playButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_play_blue.png'), "")
|
||||
+ window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
|
||||
window.playButton.setToolTip(getMessage("play-menu-label"))
|
||||
window.playButton.pressed.connect(self.play)
|
||||
window.playbackLayout.addWidget(window.playButton)
|
||||
- window.pauseButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_pause_blue.png'), "")
|
||||
+ window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
|
||||
window.pauseButton.setToolTip(getMessage("pause-menu-label"))
|
||||
window.pauseButton.pressed.connect(self.pause)
|
||||
window.playbackLayout.addWidget(window.pauseButton)
|
||||
@@ -1657,13 +1657,13 @@ def populateMenubar(self, window):
|
||||
# File menu
|
||||
|
||||
window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
|
||||
- window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'folder_explore.png'),
|
||||
+ window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
|
||||
getMessage("openmedia-menu-label"))
|
||||
window.openAction.triggered.connect(self.browseMediapath)
|
||||
- window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'world_explore.png'),
|
||||
+ window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
|
||||
getMessage("openstreamurl-menu-label"))
|
||||
window.openAction.triggered.connect(self.promptForStreamURL)
|
||||
- window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'film_folder_edit.png'),
|
||||
+ window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
|
||||
getMessage("setmediadirectories-menu-label"))
|
||||
window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
|
||||
|
||||
@@ -1671,7 +1671,7 @@ def populateMenubar(self, window):
|
||||
if isMacOS():
|
||||
window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
|
||||
else:
|
||||
- window.exitAction.setIcon(QtGui.QPixmap(resourcespath + 'cross.png'))
|
||||
+ window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
|
||||
window.exitAction.triggered.connect(self.exitSyncplay)
|
||||
|
||||
if(window.editMenu is not None):
|
||||
@@ -1683,19 +1683,19 @@ def populateMenubar(self, window):
|
||||
|
||||
window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
|
||||
window.playAction = window.playbackMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'control_play_blue.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
|
||||
getMessage("play-menu-label"))
|
||||
window.playAction.triggered.connect(self.play)
|
||||
window.pauseAction = window.playbackMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'control_pause_blue.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
|
||||
getMessage("pause-menu-label"))
|
||||
window.pauseAction.triggered.connect(self.pause)
|
||||
window.seekAction = window.playbackMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'clock_go.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
|
||||
getMessage("seektime-menu-label"))
|
||||
window.seekAction.triggered.connect(self.seekPositionDialog)
|
||||
window.unseekAction = window.playbackMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'arrow_undo.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
|
||||
getMessage("undoseek-menu-label"))
|
||||
window.unseekAction.triggered.connect(self.undoSeek)
|
||||
|
||||
@@ -1705,17 +1705,17 @@ def populateMenubar(self, window):
|
||||
|
||||
window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
|
||||
window.setoffsetAction = window.advancedMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'timeline_marker.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
|
||||
getMessage("setoffset-menu-label"))
|
||||
window.setoffsetAction.triggered.connect(self.setOffset)
|
||||
window.setTrustedDomainsAction = window.advancedMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'shield_edit.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
|
||||
getMessage("settrusteddomains-menu-label"))
|
||||
window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
|
||||
window.createcontrolledroomAction = window.advancedMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'page_white_key.png'), getMessage("createcontrolledroom-menu-label"))
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
|
||||
window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
|
||||
- window.identifyascontroller = window.advancedMenu.addAction(QtGui.QPixmap(resourcespath + 'key_go.png'),
|
||||
+ window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
|
||||
getMessage("identifyascontroller-menu-label"))
|
||||
window.identifyascontroller.triggered.connect(self.identifyAsController)
|
||||
|
||||
@@ -1725,7 +1725,7 @@ def populateMenubar(self, window):
|
||||
|
||||
window.windowMenu = QtWidgets.QMenu(getMessage("window-menu-label"), self)
|
||||
|
||||
- window.editroomsAction = window.windowMenu.addAction(QtGui.QPixmap(resourcespath + 'door_open_edit.png'), getMessage("roomlist-msgbox-label"))
|
||||
+ window.editroomsAction = window.windowMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_open_edit.png')), getMessage("roomlist-msgbox-label"))
|
||||
window.editroomsAction.triggered.connect(self.openEditRoomsDialog)
|
||||
window.menuBar.addMenu(window.windowMenu)
|
||||
|
||||
@@ -1743,18 +1743,18 @@ def populateMenubar(self, window):
|
||||
window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
|
||||
|
||||
window.userguideAction = window.helpMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'help.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'help.png')),
|
||||
getMessage("userguide-menu-label"))
|
||||
window.userguideAction.triggered.connect(self.openUserGuide)
|
||||
window.updateAction = window.helpMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'application_get.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'application_get.png')),
|
||||
getMessage("update-menu-label"))
|
||||
window.updateAction.triggered.connect(self.userCheckForUpdates)
|
||||
|
||||
if not isMacOS():
|
||||
window.helpMenu.addSeparator()
|
||||
window.about = window.helpMenu.addAction(
|
||||
- QtGui.QPixmap(resourcespath + 'syncplay.png'),
|
||||
+ QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')),
|
||||
getMessage("about-menu-label"))
|
||||
else:
|
||||
window.about = window.helpMenu.addAction("&About")
|
||||
@@ -1835,16 +1835,16 @@ def changeAutoplayState(self, source=None):
|
||||
def updateReadyIcon(self):
|
||||
ready = self.readyPushButton.isChecked()
|
||||
if ready:
|
||||
- self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
|
||||
+ self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
|
||||
else:
|
||||
- self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
|
||||
+ self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
|
||||
|
||||
def updateAutoPlayIcon(self):
|
||||
ready = self.autoplayPushButton.isChecked()
|
||||
if ready:
|
||||
- self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
|
||||
+ self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
|
||||
else:
|
||||
- self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
|
||||
+ self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
|
||||
|
||||
def automaticUpdateCheck(self):
|
||||
currentDateTimeValue = QDateTime.currentDateTime()
|
||||
@@ -2060,7 +2060,7 @@ def __init__(self, passedBar=None):
|
||||
self.populateMenubar(self)
|
||||
self.addMainFrame(self)
|
||||
self.loadSettings()
|
||||
- self.setWindowIcon(QtGui.QPixmap(resourcespath + "syncplay.png"))
|
||||
+ self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + "syncplay.png")))
|
||||
self.setWindowFlags(self.windowFlags() & Qt.WindowCloseButtonHint & Qt.WindowMinimizeButtonHint & ~Qt.WindowContextHelpButtonHint)
|
||||
self.show()
|
||||
self.setAcceptDrops(True)
|
||||
|
||||
@@ -1,158 +0,0 @@
|
||||
diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
|
||||
index e0713adf..9ce6a429 100755
|
||||
--- a/syncplay/ui/GuiConfiguration.py
|
||||
+++ b/syncplay/ui/GuiConfiguration.py
|
||||
@@ -1394,7 +1394,7 @@ def __init__(self, config, playerpaths, error, defaultConfig):
|
||||
self.publicServerAddresses = []
|
||||
|
||||
self._playerProbeThread = GetPlayerIconThread()
|
||||
- self._playerProbeThread.done.connect(self._updateExecutableIcon)
|
||||
+ self._playerProbeThread.done.connect(lambda iconpath, playerpath: self._updateExecutableIcon(iconpath, playerpath))
|
||||
self._playerProbeThread.start()
|
||||
|
||||
if self.config['clearGUIData'] == True:
|
||||
diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
|
||||
index 2a4bd1a5..b7a9a9f0 100755
|
||||
--- a/syncplay/ui/gui.py
|
||||
+++ b/syncplay/ui/gui.py
|
||||
@@ -1457,7 +1457,7 @@ def addTopLayout(self, window):
|
||||
window.sslButton.setVisible(False)
|
||||
window.sslButton.setFixedHeight(27)
|
||||
window.sslButton.setFixedWidth(27)
|
||||
- window.sslButton.pressed.connect(self.openSSLDetails)
|
||||
+ window.sslButton.pressed.connect(lambda: self.openSSLDetails())
|
||||
window.sslButton.setToolTip(getMessage("sslconnection-tooltip"))
|
||||
window.listFrame = QtWidgets.QFrame()
|
||||
window.listFrame.setLineWidth(0)
|
||||
@@ -1487,7 +1487,7 @@ def addTopLayout(self, window):
|
||||
window.roomButton = QtWidgets.QPushButton(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
|
||||
getMessage("joinroom-label"))
|
||||
- window.roomButton.pressed.connect(self.joinRoom)
|
||||
+ window.roomButton.pressed.connect(lambda room=None: self.joinRoom(room))
|
||||
window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
|
||||
window.roomLayout = QtWidgets.QHBoxLayout()
|
||||
window.roomFrame = QtWidgets.QFrame()
|
||||
@@ -1539,10 +1539,10 @@ def addBottomLayout(self, window):
|
||||
window.playlist.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
|
||||
window.playlist.setDefaultDropAction(Qt.MoveAction)
|
||||
window.playlist.setDragDropMode(QtWidgets.QAbstractItemView.InternalMove)
|
||||
- window.playlist.doubleClicked.connect(self.playlistItemClicked)
|
||||
+ window.playlist.doubleClicked.connect(lambda item: self.playlistItemClicked(item))
|
||||
window.playlist.setContextMenuPolicy(Qt.CustomContextMenu)
|
||||
window.playlist.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)
|
||||
- window.playlist.customContextMenuRequested.connect(self.openPlaylistMenu)
|
||||
+ window.playlist.customContextMenuRequested.connect(lambda position: self.openPlaylistMenu(position))
|
||||
self.playlistUpdateTimer = task.LoopingCall(self.playlistChangeCheck)
|
||||
self.playlistUpdateTimer.start(0.1, True)
|
||||
noteFont = QtGui.QFont()
|
||||
@@ -1579,7 +1579,7 @@ def addBottomLayout(self, window):
|
||||
window.autoplayPushButton.setText(getMessage("autoplay-guipushbuttonlabel"))
|
||||
window.autoplayPushButton.setCheckable(True)
|
||||
window.autoplayPushButton.setAutoExclusive(False)
|
||||
- window.autoplayPushButton.toggled.connect(self.changeAutoplayState)
|
||||
+ window.autoplayPushButton.toggled.connect(lambda source=None: self.changeAutoplayState(source))
|
||||
window.autoplayPushButton.setFont(autoPlayFont)
|
||||
if isMacOS():
|
||||
window.autoplayFrame.setMinimumWidth(window.listFrame.sizeHint().width())
|
||||
@@ -1600,7 +1600,7 @@ def addBottomLayout(self, window):
|
||||
window.autoplayThresholdSpinbox.setMinimum(2)
|
||||
window.autoplayThresholdSpinbox.setMaximum(99)
|
||||
window.autoplayThresholdSpinbox.setToolTip(getMessage("autoplay-tooltip"))
|
||||
- window.autoplayThresholdSpinbox.valueChanged.connect(self.changeAutoplayThreshold)
|
||||
+ window.autoplayThresholdSpinbox.valueChanged.connect(lambda source=None: self.changeAutoplayThreshold(source))
|
||||
window.autoplayLayout.addWidget(window.autoplayPushButton, Qt.AlignRight)
|
||||
window.autoplayLayout.addWidget(window.autoplayLabel, Qt.AlignRight)
|
||||
window.autoplayLayout.addWidget(window.autoplayThresholdSpinbox, Qt.AlignRight)
|
||||
@@ -1629,17 +1629,17 @@ def addPlaybackLayout(self, window):
|
||||
window.playbackLayout.addWidget(window.seekButton)
|
||||
window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
|
||||
window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
|
||||
- window.unseekButton.pressed.connect(self.undoSeek)
|
||||
+ window.unseekButton.pressed.connect(lambda: self.undoSeek())
|
||||
|
||||
window.miscLayout = QtWidgets.QHBoxLayout()
|
||||
window.playbackLayout.addWidget(window.unseekButton)
|
||||
window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
|
||||
window.playButton.setToolTip(getMessage("play-menu-label"))
|
||||
- window.playButton.pressed.connect(self.play)
|
||||
+ window.playButton.pressed.connect(lambda: self.play())
|
||||
window.playbackLayout.addWidget(window.playButton)
|
||||
window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
|
||||
window.pauseButton.setToolTip(getMessage("pause-menu-label"))
|
||||
- window.pauseButton.pressed.connect(self.pause)
|
||||
+ window.pauseButton.pressed.connect(lambda: self.pause())
|
||||
window.playbackLayout.addWidget(window.pauseButton)
|
||||
window.playbackFrame.setMaximumHeight(window.playbackFrame.sizeHint().height())
|
||||
window.playbackFrame.setMaximumWidth(window.playbackFrame.sizeHint().width())
|
||||
@@ -1659,20 +1659,20 @@ def populateMenubar(self, window):
|
||||
window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
|
||||
window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
|
||||
getMessage("openmedia-menu-label"))
|
||||
- window.openAction.triggered.connect(self.browseMediapath)
|
||||
+ window.openAction.triggered.connect(lambda: self.browseMediapath())
|
||||
window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
|
||||
getMessage("openstreamurl-menu-label"))
|
||||
- window.openAction.triggered.connect(self.promptForStreamURL)
|
||||
+ window.openAction.triggered.connect(lambda: self.promptForStreamURL())
|
||||
window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
|
||||
getMessage("setmediadirectories-menu-label"))
|
||||
- window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
|
||||
+ window.openAction.triggered.connect(lambda: self.openSetMediaDirectoriesDialog())
|
||||
|
||||
window.exitAction = window.fileMenu.addAction(getMessage("exit-menu-label"))
|
||||
if isMacOS():
|
||||
window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
|
||||
else:
|
||||
window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
|
||||
- window.exitAction.triggered.connect(self.exitSyncplay)
|
||||
+ window.exitAction.triggered.connect(lambda: self.exitSyncplay())
|
||||
|
||||
if(window.editMenu is not None):
|
||||
window.menuBar.insertMenu(window.editMenu.menuAction(), window.fileMenu)
|
||||
@@ -1685,11 +1685,11 @@ def populateMenubar(self, window):
|
||||
window.playAction = window.playbackMenu.addAction(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
|
||||
getMessage("play-menu-label"))
|
||||
- window.playAction.triggered.connect(self.play)
|
||||
+ window.playAction.triggered.connect(lambda: self.play())
|
||||
window.pauseAction = window.playbackMenu.addAction(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
|
||||
getMessage("pause-menu-label"))
|
||||
- window.pauseAction.triggered.connect(self.pause)
|
||||
+ window.pauseAction.triggered.connect(lambda: self.pause())
|
||||
window.seekAction = window.playbackMenu.addAction(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
|
||||
getMessage("seektime-menu-label"))
|
||||
@@ -1697,7 +1697,7 @@ def populateMenubar(self, window):
|
||||
window.unseekAction = window.playbackMenu.addAction(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
|
||||
getMessage("undoseek-menu-label"))
|
||||
- window.unseekAction.triggered.connect(self.undoSeek)
|
||||
+ window.unseekAction.triggered.connect(lambda: self.undoSeek())
|
||||
|
||||
window.menuBar.addMenu(window.playbackMenu)
|
||||
|
||||
@@ -1707,17 +1707,17 @@ def populateMenubar(self, window):
|
||||
window.setoffsetAction = window.advancedMenu.addAction(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
|
||||
getMessage("setoffset-menu-label"))
|
||||
- window.setoffsetAction.triggered.connect(self.setOffset)
|
||||
+ window.setoffsetAction.triggered.connect(lambda: self.setOffset())
|
||||
window.setTrustedDomainsAction = window.advancedMenu.addAction(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
|
||||
getMessage("settrusteddomains-menu-label"))
|
||||
- window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
|
||||
+ window.setTrustedDomainsAction.triggered.connect(lambda: self.openSetTrustedDomainsDialog())
|
||||
window.createcontrolledroomAction = window.advancedMenu.addAction(
|
||||
QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
|
||||
- window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
|
||||
+ window.createcontrolledroomAction.triggered.connect(lambda: self.createControlledRoom())
|
||||
window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
|
||||
getMessage("identifyascontroller-menu-label"))
|
||||
- window.identifyascontroller.triggered.connect(self.identifyAsController)
|
||||
+ window.identifyascontroller.triggered.connect(lambda: self.identifyAsController())
|
||||
|
||||
window.menuBar.addMenu(window.advancedMenu)
|
||||
|
||||
|
||||
@@ -1,75 +0,0 @@
|
||||
# Copyright 2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
DISTUTILS_SINGLE_IMPL=1
|
||||
|
||||
inherit desktop distutils-r1 optfeature xdg
|
||||
|
||||
DESCRIPTION="Client/server to synchronize media playback"
|
||||
HOMEPAGE="https://github.com/Syncplay/syncplay https://syncplay.pl"
|
||||
SRC_URI="https://github.com/${PN^}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
IUSE="+client server +gui"
|
||||
REQUIRED_USE="|| ( client server )"
|
||||
|
||||
RDEPEND="
|
||||
$( python_gen_cond_dep \
|
||||
'>=dev-python/certifi-2018.11.29[${PYTHON_USEDEP}]
|
||||
>=dev-python/twisted-16.4.0[${PYTHON_USEDEP},ssl]'
|
||||
)
|
||||
client? (
|
||||
gui? (
|
||||
$( python_gen_cond_dep \
|
||||
'dev-python/QtPy[${PYTHON_USEDEP},gui,pyside2]'
|
||||
)
|
||||
)
|
||||
|| (
|
||||
media-video/vlc[lua]
|
||||
media-video/mpv[lua]
|
||||
media-video/mplayer
|
||||
)
|
||||
)
|
||||
"
|
||||
|
||||
python_install() {
|
||||
python_domodule syncplay
|
||||
|
||||
if use gui; then
|
||||
for size in 256 128 96 64 48 32 24 16; do
|
||||
doicon -s ${size} "${PN}/resources/hicolor/${size}x${size}/apps/syncplay.png"
|
||||
done
|
||||
fi
|
||||
if use client; then
|
||||
python_newscript syncplayClient.py syncplay
|
||||
if use gui; then
|
||||
domenu syncplay/resources/syncplay.desktop
|
||||
fi
|
||||
fi
|
||||
if use server; then
|
||||
if use gui; then
|
||||
domenu syncplay/resources/syncplay-server.desktop
|
||||
fi
|
||||
python_newscript syncplayServer.py syncplay-server
|
||||
newinitd "${FILESDIR}/${PN}-server-init" "${PN}"
|
||||
newconfd "${FILESDIR}/${PN}-server-init-conf" "${PN}"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
if use client; then
|
||||
optfeature_header "Syncplay is compatible with the following players, install:"
|
||||
optfeature "VLC support" media-video/vlc[lua]
|
||||
optfeature "MPV support" media-video/mpv[lua]
|
||||
optfeature "MPlayer support" media-video/mplayer
|
||||
fi
|
||||
}
|
||||
@@ -1,81 +0,0 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
DISTUTILS_SINGLE_IMPL=1
|
||||
|
||||
inherit desktop distutils-r1 optfeature xdg
|
||||
|
||||
DESCRIPTION="Client/server to synchronize media playback"
|
||||
HOMEPAGE="https://github.com/Syncplay/syncplay https://syncplay.pl"
|
||||
SRC_URI="https://github.com/${PN^}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
IUSE="+client server +gui"
|
||||
REQUIRED_USE="|| ( client server )"
|
||||
|
||||
RDEPEND="
|
||||
$( python_gen_cond_dep \
|
||||
'>=dev-python/certifi-2018.11.29[${PYTHON_USEDEP}]
|
||||
>=dev-python/twisted-16.4.0[${PYTHON_USEDEP},ssl]
|
||||
>=dev-python/pem-21.2.0[${PYTHON_USEDEP}]'
|
||||
)
|
||||
client? (
|
||||
gui? (
|
||||
$( python_gen_cond_dep \
|
||||
'dev-python/QtPy[${PYTHON_USEDEP},gui,pyside2]' \
|
||||
python3_{10,11}
|
||||
)
|
||||
$( python_gen_cond_dep \
|
||||
'dev-python/QtPy[${PYTHON_USEDEP},gui,pyside6]' \
|
||||
python3_12
|
||||
)
|
||||
)
|
||||
|| (
|
||||
media-video/vlc[lua]
|
||||
media-video/mpv[lua]
|
||||
media-video/mplayer
|
||||
)
|
||||
)
|
||||
"
|
||||
|
||||
python_install() {
|
||||
python_domodule syncplay
|
||||
|
||||
if use gui; then
|
||||
for size in 256 128 96 64 48 32 24 16; do
|
||||
doicon -s ${size} "${PN}/resources/hicolor/${size}x${size}/apps/syncplay.png"
|
||||
done
|
||||
fi
|
||||
if use client; then
|
||||
python_newscript syncplayClient.py syncplay
|
||||
if use gui; then
|
||||
domenu syncplay/resources/syncplay.desktop
|
||||
fi
|
||||
fi
|
||||
if use server; then
|
||||
if use gui; then
|
||||
domenu syncplay/resources/syncplay-server.desktop
|
||||
fi
|
||||
python_newscript syncplayServer.py syncplay-server
|
||||
newinitd "${FILESDIR}/${PN}-server-init" "${PN}"
|
||||
newconfd "${FILESDIR}/${PN}-server-init-conf" "${PN}"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
if use client; then
|
||||
optfeature_header "Syncplay is compatible with the following players, install:"
|
||||
optfeature "VLC support" media-video/vlc[lua]
|
||||
optfeature "MPV support" media-video/mpv[lua]
|
||||
optfeature "MPlayer support" media-video/mplayer
|
||||
fi
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
MISC-FREE Unicode-3.0 Unicode_Fonts_for_Ancient_Scripts canfep noweb powell sunpro
|
||||
MISC-FREE Unicode_Fonts_for_Ancient_Scripts canfep noweb powell sunpro
|
||||
OPEN-CONTENT CC-BY-2.0 CC-BY-2.5 CC-BY-3.0 CC-BY-4.0 CC-BY-SA-1.0 CC-BY-SA-2.0 CC-BY-SA-2.5 CC-BY-SA-3.0 CC-BY-SA-4.0 CC0-1.0
|
||||
OPEN-DEFINITION @OPEN-CONTENT FDL-1.1 FDL-1.1+ FDL-1.2 FDL-1.2+ FDL-1.3 FDL-1.3+ Free-Art-1.2 Free-Art-1.3 MirOS OAL-1.0.1 ODC-By-1.0
|
||||
OSI-APPROVED-FREE OSL-3.0
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
DIST auto-cpufreq-1.9.6.tar.gz 28393 BLAKE2B a4204cdfe549743c6781c4cf26c97133e488735d806d97205af2d956500b7b867c1635f6f20ee9940d9b98377b20fc83a31953099319e4e245a381754e35e8ee SHA512 55892a4ed27fbc8ffad8b67c9cfa9f70e510342bb2c4fbf8b84c8e4da0a4ca51940f34e02a052f97efdc41085cf4ff8db5323328a1b7ce948d9a87338a209798
|
||||
DIST auto-cpufreq-2.1.0.tar.gz 211221 BLAKE2B ee376e44b31cd93ae37c3a800fd1b7e89af3b696e1d128d2bc8d335b1240d2e2b0d5aa0e90cd1465185bfff9cee02069ee1d46120be014b1dc61ce056308d4a1 SHA512 e01e6f03e7fcd3e0640ebd829234a07043c8d88bd1feabbcc6df463007b2e93410935394257bc28ed1297b294292425adfe4079a3dff0ec5636c23c3cbdd9ee0
|
||||
|
||||
@@ -1,82 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
inherit distutils-r1 systemd
|
||||
|
||||
DESCRIPTION="Automatic CPU speed & power optimizer for Linux"
|
||||
HOMEPAGE="https://github.com/AdnanHodzic/auto-cpufreq"
|
||||
SRC_URI="https://github.com/AdnanHodzic/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="systemd"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/psutil
|
||||
dev-python/click
|
||||
dev-python/distro
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
DOCS=( README.md )
|
||||
PATCHES=( "${FILESDIR}/${PN}-remove-setuptools_git_versioning.patch" )
|
||||
|
||||
src_prepare() {
|
||||
sed -i 's|usr/local|usr|g' "scripts/${PN}.service" "scripts/${PN}-openrc" auto_cpufreq/core.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_install() {
|
||||
distutils-r1_python_install
|
||||
|
||||
exeinto "/usr/share/${PN}/scripts"
|
||||
doexe scripts/cpufreqctl.sh
|
||||
|
||||
if use systemd; then
|
||||
systemd_douserunit "scripts/${PN}.service"
|
||||
else
|
||||
doinitd "scripts/${PN}-openrc"
|
||||
mv "${D}/etc/init.d/${PN}-openrc" "${D}/etc/init.d/${PN}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
touch /var/log/auto-cpufreq.log
|
||||
|
||||
elog ""
|
||||
elog "Enable auto-cpufreq daemon service at boot:"
|
||||
if use systemd; then
|
||||
elog "systemctl enable --now auto-cpufreq"
|
||||
else
|
||||
elog "rc-update add auto-cpufreq default"
|
||||
fi
|
||||
elog ""
|
||||
elog "To view live log, run:"
|
||||
elog "auto-cpufreq --stats"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Remove auto-cpufreq log file
|
||||
if [ -f "/var/log/auto-cpufreq.log" ]; then
|
||||
rm /var/log/auto-cpufreq.log || die
|
||||
fi
|
||||
|
||||
# Remove auto-cpufreq's cpufreqctl binary
|
||||
# it overwrites cpufreqctl.sh
|
||||
if [ -f "/usr/bin/cpufreqctl" ]; then
|
||||
rm /usr/bin/cpufreqctl || die
|
||||
fi
|
||||
|
||||
# Restore original cpufreqctl binary if backup was made
|
||||
if [ -f "/usr/bin/cpufreqctl.auto-cpufreq.bak" ]; then
|
||||
mv /usr/bin/cpufreqctl.auto-cpufreq.bak /usr/bin/cpufreqctl || die
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user