Compare commits
160 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
054783e440
|
|||
|
5bf39db045
|
|||
|
cc3f194264
|
|||
|
3cfd4dd6d4
|
|||
|
b4aa1ce8f8
|
|||
|
a91e0e101e
|
|||
|
533fa3277c
|
|||
|
95a95bc102
|
|||
|
e546a5e9e2
|
|||
|
15e050a9f1
|
|||
|
38c88b7aba
|
|||
|
7a5b2b0100
|
|||
|
6c4b02d3ad
|
|||
|
fa5c8d9a0a
|
|||
|
80f3d8705b
|
|||
|
717959b216
|
|||
|
33bfe69df9
|
|||
|
fc55f1b8c8
|
|||
|
8490512c97
|
|||
|
a487e924b3
|
|||
|
e83e27b909
|
|||
|
abc39f460a
|
|||
|
cd5177d487
|
|||
|
3ac49b561a
|
|||
|
3eae90ddfa
|
|||
|
92398208c5
|
|||
|
e497014148
|
|||
|
73da7a7928
|
|||
|
b3f6870b39
|
|||
|
a73d0924aa
|
|||
|
b3c04240e4
|
|||
|
6652870db2
|
|||
|
3909ca25e3
|
|||
|
fc59ee6334
|
|||
|
e11c4de2f3
|
|||
|
fe8b383f6d
|
|||
|
ee47df35a8
|
|||
|
49bcfa0150
|
|||
|
a63da34706
|
|||
|
52c09f8c05
|
|||
|
1c642788b3
|
|||
|
fe91500d8d
|
|||
|
47080c9cd9
|
|||
|
36a75988ff
|
|||
|
dbe2ac4f4f
|
|||
|
4d76e0de64
|
|||
|
027b80325a
|
|||
|
21b99e9550
|
|||
|
7e9817ee87
|
|||
|
5061b80f04
|
|||
|
ad4e6e81c9
|
|||
|
b94d515753
|
|||
|
cdb48fe460
|
|||
|
e59eba373e
|
|||
|
c8b1fede25
|
|||
|
6398c0ac0b
|
|||
|
9e7b3a6318
|
|||
|
5a95034b33
|
|||
|
5d514a839f
|
|||
|
5561f32a42
|
|||
|
7121637700
|
|||
|
e1e5d39b07
|
|||
|
3f595b1324
|
|||
|
efc09b22d0
|
|||
|
3e9053bdcc
|
|||
|
5e80a784e8
|
|||
|
000203bf3d
|
|||
|
0e5ec1a1a9
|
|||
|
24f2aa24d6
|
|||
|
047c5d3312
|
|||
|
5cdb624a95
|
|||
|
8cb1cbc674
|
|||
|
6dd236eb3c
|
|||
|
b58c92b583
|
|||
|
2e0cb7e605
|
|||
|
48f0cea3c9
|
|||
|
0da5f29e34
|
|||
|
8e19594216
|
|||
|
a65243087a
|
|||
|
6a5e482ade
|
|||
|
4a5c3bb943
|
|||
|
945b561fcf
|
|||
|
5c06efea8b
|
|||
|
3e69566598
|
|||
|
41d07fcece
|
|||
|
352a73843e
|
|||
|
45ff0697e8
|
|||
|
f104c247bc
|
|||
|
e6eb038d7a
|
|||
|
e11f2eccda
|
|||
|
54909f7090
|
|||
|
b7e4a521fd
|
|||
|
5b16489120
|
|||
|
30964fa03f
|
|||
|
37ee1202f3
|
|||
|
5ac6ecd8bf
|
|||
|
98dc01849f
|
|||
|
c8ee5c6b43
|
|||
|
837d79a9bb
|
|||
|
8e80eb173f
|
|||
|
4a8458991a
|
|||
|
db4eef60f7
|
|||
|
4f01a68e36
|
|||
|
678ff7ec78
|
|||
|
728b97f464
|
|||
|
9a649d3723
|
|||
|
b0e79963d0
|
|||
|
c4e3bc469b
|
|||
|
a41d4ecf0e
|
|||
|
bdcc62de5d
|
|||
|
4a0e4a57ee
|
|||
|
4225b557a0
|
|||
|
fae7b25c62
|
|||
|
d81ae44894
|
|||
|
484935071f
|
|||
|
11b357c77a
|
|||
|
fa097bfc5c
|
|||
|
5dec6cec51
|
|||
|
6227fd2749
|
|||
|
e6471e84b1
|
|||
|
39d9a5a9e4
|
|||
|
c89a6a7b01
|
|||
|
8367972879
|
|||
|
e952dfceb4
|
|||
|
c7a77f065a
|
|||
|
71f4007454
|
|||
|
42b93d27c4
|
|||
|
1bb65b2512
|
|||
|
eb0ef50036
|
|||
|
18e68472a4
|
|||
|
049fec2449
|
|||
|
a806c7cb67
|
|||
|
edafc3f18c
|
|||
|
95f22b2859
|
|||
|
1965532271
|
|||
|
2ccd7af262
|
|||
|
dcbb644a6c
|
|||
|
7f367ee687
|
|||
|
4e0d8afcf6
|
|||
|
4868542e84
|
|||
|
0fe07e8e66
|
|||
|
b5965eaefb
|
|||
|
748022bbac
|
|||
|
e2e6d0ef44
|
|||
|
8dbbfffaab
|
|||
|
6e2dd0b6f2
|
|||
|
f9e90e66d3
|
|||
|
8c09fd6c45
|
|||
|
401705e143
|
|||
|
c2e037e350
|
|||
|
7075d34710
|
|||
|
e2f55d448a
|
|||
|
6e2f9b8c60
|
|||
|
f1c31b2acf
|
|||
|
57e2862c2e
|
|||
|
8526d23dce
|
|||
|
91f6ce9f2f
|
|||
|
a1284a8431
|
|||
|
40e8ed1f8d
|
|||
|
405cb1de61
|
@@ -1,3 +1,3 @@
|
||||
DIST feffe-pwgen-1.0.tar.gz 6392 BLAKE2B 104969c8da4eaeede7889fae4d1364b7fba660866cfecaf1342db44cef36da6b797e2711a372b2e6a807494288941c6d02c3063a168f399b721d32326643a2b9 SHA512 9111b3604d2d9166a65a3f641b0d64196e4a8f700c60a82072dac8d6e3bdc7c8f281cb5c278fac59d38b30d50614334cb0b28b5835cecfaf70d045a4df85eff0
|
||||
EBUILD feffe-pwgen-1.0.ebuild 603 BLAKE2B 32bc71a73a096d8b3aed18682f055946a23340aa7df57ff20e08ff79d8c1dfde60bebfe83387d909cbddcf06e68a2387e808d2f6099556dbd47ea2bfdeccc099 SHA512 5a26257d1cf46ebd1c3b4ee67591f994d4da6ba28ccba26dbb03012ee20e77779144da95816a57cc12f52ca1ed49cb47a998d28865ec74d71059600deb01c759
|
||||
EBUILD feffe-pwgen-9999.ebuild 603 BLAKE2B 32bc71a73a096d8b3aed18682f055946a23340aa7df57ff20e08ff79d8c1dfde60bebfe83387d909cbddcf06e68a2387e808d2f6099556dbd47ea2bfdeccc099 SHA512 5a26257d1cf46ebd1c3b4ee67591f994d4da6ba28ccba26dbb03012ee20e77779144da95816a57cc12f52ca1ed49cb47a998d28865ec74d71059600deb01c759
|
||||
EBUILD feffe-pwgen-1.0-r1.ebuild 650 BLAKE2B 3751a3f5c71fc48b148ebd3e148f65db728d6a9bdda4c0baa95899ad6b4859932f323ba6dd46f3ecc2da752a413855ebcca837e11b7ce72950be6ce472c59536 SHA512 9eabea1bb96f51cf0a77c5de31328cd293f9a8e90968f295d0db1d1a1332f1f3b1c80a34b2db3bbc24cedd2a0bb852c53cdc5ae10858bbc3568a1b052253e383
|
||||
EBUILD feffe-pwgen-9999.ebuild 650 BLAKE2B 3751a3f5c71fc48b148ebd3e148f65db728d6a9bdda4c0baa95899ad6b4859932f323ba6dd46f3ecc2da752a413855ebcca837e11b7ce72950be6ce472c59536 SHA512 9eabea1bb96f51cf0a77c5de31328cd293f9a8e90968f295d0db1d1a1332f1f3b1c80a34b2db3bbc24cedd2a0bb852c53cdc5ae10858bbc3568a1b052253e383
|
||||
|
||||
+4
-2
@@ -1,9 +1,10 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
@@ -20,6 +21,7 @@ else
|
||||
fi
|
||||
|
||||
|
||||
RESTRICT="mirror"
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
@@ -1,9 +1,10 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
@@ -20,6 +21,7 @@ else
|
||||
fi
|
||||
|
||||
|
||||
RESTRICT="mirror"
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
AUX puppet-systemd.patch 481 BLAKE2B 8ca58755e5c3a235c60eed11c98e20bbd3cb27c81531709b27981ee61f6f5dea63d2487d49761ff84e7590b608c170bcd369fe7ef3700a5df1bd03b29c66ec71 SHA512 08bb997cedea378efa4614e4b2ff04acdd68cdc376fde422677b64dc56b8256ecf7221210c20529bb5a9a49fa8c92f67667c7acd6ac64b665e79639318a3df97
|
||||
AUX puppet.init 751 BLAKE2B b873fd1e51e2b5c148d31da4f861ee8cc60c71ef7950f10f1ba78c8ce740fcc67d8fbcd274667c383f2e7f83b2c6f76abc138348cc172f02f667b766ecf302fa SHA512 566912034aa2e1306a65d59fafdfaf3d660693331c4f5020611bc806e7e5aa14047122bc31e229fd5ab9eb48979c04c436fbb5aa765f598b7416839b67640655
|
||||
AUX tmpfiles.d-2 35 BLAKE2B 333994788552e5c52273752f4e3c2947666737d03f9d340e16ada790607efe77da1ba9bb4852bc8274174fbb96ce0c7ae81062f7197e63ea4701e539b2650b3b SHA512 fdf00147c497bd822a14f0e42bad825a43ce0977ec6c0265d267dedeef56295e3ce319f7972d0ec2ab9f04f2407856947f4261d6e62054a36c6e1672b45f86f0
|
||||
DIST openvox-8.26.2.tar.gz 3748048 BLAKE2B 3266e46093d0a152e141f2412fc3dd9dd859221723f515effb90a9150c5110c484855d6f34d25eed09e820d89de96ae51b79eff501b7cb9745529e49281c4555 SHA512 7b5ffdde88d937cd556efe872f9acab43eab99f914ffb1388b02dff41b41a7d208d4a887328b6fc816577ca2c66a65414372cca75fef86829b470cfb38945e0f
|
||||
EBUILD openvox-8.26.2.ebuild 2986 BLAKE2B fccc42584e6eef600434f5cf451d0d458ea2b2ba387008accd5318948bcab24fc4b0c4fd9f477f2ed77623a29e7843fd010ece0b1630665ad5231f714f23fde0 SHA512 1d5007daeb5204fc7629964ffa52dc81ad8331528c3c6743e9d77ed8516b306153dee60d8ccb3e0bb95b8798634309a80a574c6bdc492d3e377ffc8c4a49559d
|
||||
@@ -0,0 +1,10 @@
|
||||
--- ext/systemd/puppet.service 2017-02-02 18:28:58.000000000 -0600
|
||||
+++ ext/systemd/puppet.service 2017-03-09 10:56:59.091489324 -0600
|
||||
@@ -17,7 +17,7 @@
|
||||
EnvironmentFile=-/etc/sysconfig/puppetagent
|
||||
EnvironmentFile=-/etc/sysconfig/puppet
|
||||
EnvironmentFile=-/etc/default/puppet
|
||||
-ExecStart=/opt/puppetlabs/puppet/bin/puppet agent $PUPPET_EXTRA_OPTS --no-daemonize
|
||||
+ExecStart=/usr/bin/puppet agent $PUPPET_EXTRA_OPTS --no-daemonize
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
KillMode=process
|
||||
@@ -0,0 +1,29 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
PUPPET_PID_DIR="${PUPPET_PID_DIR:-/run/puppet}"
|
||||
|
||||
pidfile="${PUPPET_PID_DIR}/puppet.pid"
|
||||
PUPPET_LOG_DIR="/var/log/puppet"
|
||||
|
||||
command="/usr/bin/puppet"
|
||||
extra_started_commands="reload"
|
||||
|
||||
command_args="agent --pidfile ${pidfile} --confdir /etc/puppetlabs/puppet ${PUPPET_EXTRA_OPTS}"
|
||||
|
||||
depend() {
|
||||
need localmount
|
||||
use dns logger puppetmaster netmount
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
checkpath --directory --owner puppet:puppet "${PUPPET_PID_DIR}"
|
||||
checkpath --directory --owner puppet:puppet --mode 750 ${PUPPET_LOG_DIR}
|
||||
}
|
||||
|
||||
reload() {
|
||||
ebegin "Reloading $RC_SVCNAME"
|
||||
start-stop-daemon --signal SIGHUP --pidfile "${pidfile}"
|
||||
eend $?
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
D /run/puppet 0755 puppet puppet -
|
||||
@@ -0,0 +1,117 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
USE_RUBY="ruby33 ruby34"
|
||||
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
|
||||
RUBY_FAKEGEM_TASK_DOC="doc:all"
|
||||
RUBY_FAKEGEM_EXTRAINSTALL="locales"
|
||||
|
||||
inherit ruby-fakegem systemd tmpfiles
|
||||
|
||||
DESCRIPTION="A system automation and configuration management software"
|
||||
HOMEPAGE="https://voxpupuli.org/openvox/"
|
||||
SRC_URI="https://github.com/OpenVoxProject/openvox/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0 GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
|
||||
IUSE="augeas diff doc emacs hiera ldap rrdtool selinux shadow sqlite vim-syntax"
|
||||
RESTRICT="test"
|
||||
|
||||
ruby_add_rdepend "
|
||||
hiera? ( dev-ruby/hiera )
|
||||
dev-ruby/json:=
|
||||
dev-ruby/semantic_puppet
|
||||
>=dev-ruby/facter-4.4.1
|
||||
dev-ruby/deep_merge
|
||||
dev-ruby/concurrent-ruby
|
||||
augeas? ( dev-ruby/ruby-augeas )
|
||||
diff? ( dev-ruby/diff-lcs )
|
||||
doc? ( dev-ruby/rdoc )
|
||||
ldap? ( dev-ruby/ruby-ldap )
|
||||
shadow? ( dev-ruby/ruby-shadow )
|
||||
sqlite? ( dev-ruby/sqlite3 )
|
||||
virtual/ruby-ssl
|
||||
dev-ruby/hocon"
|
||||
|
||||
ruby_add_bdepend "
|
||||
doc? ( dev-ruby/yard )
|
||||
test? (
|
||||
dev-ruby/mocha
|
||||
dev-ruby/rack
|
||||
dev-ruby/rspec-its
|
||||
)"
|
||||
# this should go in the above lists, but isn't because of test deps not being keyworded
|
||||
# dev-ruby/rspec-collection_matchers
|
||||
|
||||
RDEPEND+=" ${RDEPEND}
|
||||
rrdtool? ( >=net-analyzer/rrdtool-1.2.23[ruby] )
|
||||
selinux? (
|
||||
sys-libs/libselinux[ruby]
|
||||
sec-policy/selinux-puppet
|
||||
)
|
||||
vim-syntax? ( >=app-vim/puppet-syntax-3.0.1 )
|
||||
>=app-portage/eix-0.18.0
|
||||
acct-user/puppet
|
||||
acct-group/puppet
|
||||
!app-admin/puppet
|
||||
!app-admin/puppet-agent"
|
||||
PDEPEND="emacs? ( >=app-emacs/puppet-mode-0.3-r1 )"
|
||||
|
||||
all_ruby_prepare() {
|
||||
# fix systemd path
|
||||
eapply -p0 "${FILESDIR}/puppet-systemd.patch"
|
||||
}
|
||||
|
||||
each_ruby_install() {
|
||||
each_fakegem_install
|
||||
# dosym "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${P}" \
|
||||
# "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${PN}"
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
all_fakegem_install
|
||||
|
||||
# systemd stuffs
|
||||
systemd_dounit "${WORKDIR}/all/${P}/ext/systemd/puppet.service"
|
||||
|
||||
# tmpfiles stuff
|
||||
newtmpfiles "${FILESDIR}/tmpfiles.d-2" "puppet.conf"
|
||||
|
||||
# openrc init stuff
|
||||
newinitd "${FILESDIR}"/puppet.init puppet
|
||||
|
||||
keepdir /etc/puppetlabs/puppet/ssl
|
||||
|
||||
keepdir /var/lib/puppet/facts
|
||||
keepdir /var/lib/puppet/files
|
||||
fowners -R puppet:puppet /var/lib/puppet
|
||||
|
||||
fperms 0750 /var/lib/puppet
|
||||
|
||||
fperms 0750 /etc/puppetlabs
|
||||
fperms 0750 /etc/puppetlabs/puppet
|
||||
fperms 0750 /etc/puppetlabs/puppet/ssl
|
||||
fowners -R :puppet /etc/puppetlabs
|
||||
fowners -R :puppet /var/lib/puppet
|
||||
|
||||
# ext and examples files
|
||||
for f in $(find ext examples -type f) ; do
|
||||
docinto "$(dirname ${f})"
|
||||
dodoc "${f}"
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
tmpfiles_process puppet.conf
|
||||
|
||||
elog
|
||||
elog "Please, *don't* include the --ask option in EMERGE_EXTRA_OPTS as this could"
|
||||
elog "cause puppet to hang while installing packages."
|
||||
elog
|
||||
elog "Portage Puppet module with Gentoo-specific resources:"
|
||||
elog "http://forge.puppetlabs.com/gentoo/portage"
|
||||
elog
|
||||
}
|
||||
@@ -1,2 +1,2 @@
|
||||
DIST beancount-2.3.6.tar.gz 1720239 BLAKE2B 769aa27a9edc201e33a85f92780b4140b1758a35ca865255183bdcaf4c515ba3bf4c6711aa2842c9219027a44a7cc334c39b48eb36f5145caa689ba90cda64d5 SHA512 52b65f99753e9473aae7736419d104e46b422b33f854170cc0242a95c1d12483aae95264138f81d28c9a7b50ca961e75163cce83868db5bcc9afe7d2337f3036
|
||||
EBUILD beancount-2.3.6.ebuild 613 BLAKE2B 8654c6bbd2dcc897109b75503ccf4f0f53fbff607d521f837470a56d74e35c3962e5d338330ea602efeb19a495fc026326896ac89dc76d73af58ca249cc513cb SHA512 4bee9e1dd6c8bd63a862d161d38b370f029e05d990054b5c8e7360615acc4b82bf77b1788570fc84763011a21aa47a65971dc1a30fa692151ced0070b43be09f
|
||||
DIST beancount-3.2.2.tar.gz 591777 BLAKE2B 55d8c2c6eb39060e46d4844fd29e711e39038e5b7ca7e61b834dd2d5104b5bd2d917c7cfc44129471daad1d5345f49e650738bebbb59367fc1fd00705da8bceb SHA512 efaaa6ef55f56d955565c166eebd604640a8376b6107c131942f7988bbbe05044affe696e1e1af6a5efa53feb3eed1ed5ebb83956a1f5342b3881b9e955aad1e
|
||||
EBUILD beancount-3.2.2.ebuild 664 BLAKE2B 2e1ea6d683626b4343d5fd5e1b734a2a7910123ec0f6a8852d1acb77ac1a2d5f964c1012e9b551e7dbfacddeeb2978bc4254473384c32c00e10c3ca7ecae5b3d SHA512 0604634064bde86c177d8e7b01ebc7c33c44ccd8d1bd2880394ff4a6d87cb2d168ebfa13f2bed2e0b45948aeca2c95b198c9dc6a2ad266bc6f3e9daedb7531c4
|
||||
|
||||
+7
-5
@@ -3,7 +3,9 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_USE_PEP517=meson-python
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
@@ -18,11 +20,11 @@ KEYWORDS="amd64 ~arm64"
|
||||
DEPEND="
|
||||
dev-python/python-dateutil
|
||||
dev-python/click
|
||||
dev-python/pytest
|
||||
dev-python/python-magic
|
||||
dev-python/bottle"
|
||||
dev-python/regex
|
||||
dev-python/mypy
|
||||
dev-python/python-magic"
|
||||
RDEPEND="${DEPEND}"
|
||||
BDEPEND=""
|
||||
|
||||
# Because I have no idea...
|
||||
RESTRICT="test"
|
||||
RESTRICT="mirror test"
|
||||
@@ -0,0 +1,2 @@
|
||||
DIST beangulp-0.2.0.tar.gz 224326 BLAKE2B 078e37cb7eb5ddeed704e4be57f3dffa0eb3c16e31710db63339876c9cbee712e93475fd2c03b2b28b10c837eedb92a0a020bda168a2dd5dd43caa7ab40d53d9 SHA512 7c4fbe98068dacff4726f08cb4e3b2403ed23e5322244c7f07cd245b187edf6bc80fc3274c3171c66f554472e1f2ac9ee8dd23eb437bf892fe2224578b6be2d3
|
||||
EBUILD beangulp-0.2.0.ebuild 811 BLAKE2B 089e108345d8a03811104dca31d5984667ad2ee9768516a9d0a01d6ef452dc517fe9ee0319409acdc450c068e8af5b0a50d10a48538d75bbb0ba9c11d0b7ca98 SHA512 86367219b08912fb22edc3d33e7ca1929a077d7599259b412d72420780d5ee7d38a220b6dd48fd2ab770f63395341a54cbf5529c80935d766ba0e3acd65746bc
|
||||
@@ -0,0 +1,40 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
#DISTUTILS_EXT=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Importers framework for Beancount"
|
||||
HOMEPAGE="https://github.com/beancount/beangulp"
|
||||
SRC_URI="https://github.com/beancount/beangulp/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm64"
|
||||
|
||||
DEPEND="
|
||||
app-office/beancount
|
||||
dev-python/beautifulsoup4
|
||||
dev-python/chardet
|
||||
dev-python/click
|
||||
dev-python/deprecation
|
||||
dev-python/lxml
|
||||
dev-python/python-magic"
|
||||
#petl
|
||||
RDEPEND="${DEPEND}"
|
||||
BDEPEND=""
|
||||
|
||||
# Because I have no idea...
|
||||
RESTRICT="mirror test"
|
||||
|
||||
src_prepare() {
|
||||
eapply_user
|
||||
rm -rf "${WORKDIR}/${PF}/examples"
|
||||
rm -rf "${WORKDIR}/${PF}/tools"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
DIST ocrmypdf-17.4.2.tar.gz 7392178 BLAKE2B b65042a33e10cc48bd20e14109385872ca5e69ebc29320f4d364d74d7586f580ac9130d1f2464cc245bc505b0076230defb98e1a63a0f51f8fb449ae8bdae1b5 SHA512 9bb2bda016aea2d1f3ef9908cd11349267f8c4e98b41b7da7d150f4fe2abca3b9f25202a52fb7383eaed832873b5378e073b40783b8933c6c1de8a5071b8ef62
|
||||
EBUILD OCRmyPDF-17.4.2.ebuild 2463 BLAKE2B 8d51be2567427d5c2055e2a40a2f07e80b2bb0b53f981671a43a8b5c7cb6e06e59224d3b4c31946ea595c03fec716d00cbc028ce41fe2425f5cff8a5875ccfd5 SHA512 86434a79badc3ca134609ded49f3a9a2a1347c7218da00bf985dd22c998951ea9f594798a658cffdec29793fdf54ac5857559037d0066320935e85dad5397030
|
||||
@@ -0,0 +1,94 @@
|
||||
# Copyright 2020-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=hatchling
|
||||
PYTHON_COMPAT=( python3_{13..14} )
|
||||
|
||||
inherit distutils-r1 optfeature pypi shell-completion
|
||||
|
||||
DESCRIPTION="OCRmyPDF adds an OCR text layer to scanned PDF files"
|
||||
HOMEPAGE="https://github.com/ocrmypdf/OCRmyPDF"
|
||||
|
||||
LICENSE="CC-BY-SA-2.5 CC-BY-SA-4.0 MIT MPL-2.0 ZLIB"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64"
|
||||
|
||||
RDEPEND="
|
||||
app-text/unpaper
|
||||
>=app-text/ghostscript-gpl-10.01.2
|
||||
>=app-text/pdfminer-20220319[${PYTHON_USEDEP}]
|
||||
>=app-text/tesseract-4.1.1[jpeg,tiff,png,webp]
|
||||
>=dev-python/deprecation-2.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/packaging-20[${PYTHON_USEDEP}]
|
||||
>=dev-python/pikepdf-8.10.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pillow-10.0.1[jpeg2k,lcms,${PYTHON_USEDEP}]
|
||||
>=dev-python/pluggy-1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/rich-13.0[${PYTHON_USEDEP}]
|
||||
>=media-gfx/img2pdf-0.5[${PYTHON_USEDEP}]
|
||||
>=dev-python/pydantic-2.11.7[${PYTHON_USEDEP}]
|
||||
media-fonts/noto
|
||||
media-fonts/noto-cjk
|
||||
media-fonts/noto-emoji
|
||||
"
|
||||
# TODO: package PyMuPDF for tests
|
||||
BDEPEND="
|
||||
dev-python/hatch-vcs[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
app-text/tessdata_fast[l10n_de,l10n_en]
|
||||
>=app-text/unpaper-6.1
|
||||
>=dev-python/python-xmp-toolkit-2.0.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/reportlab-3.6.8[${PYTHON_USEDEP}]
|
||||
>=media-gfx/pngquant-2.5
|
||||
>=media-libs/jbig2enc-0.29
|
||||
)
|
||||
"
|
||||
|
||||
#PATCHES=(
|
||||
# "${FILESDIR}"/${PN}-16.10.2-suppress-runtime-error.patch
|
||||
# "${FILESDIR}"/${PN}-16.10.2-xfail-tests.patch
|
||||
#)
|
||||
|
||||
EPYTEST_PLUGINS=( hypothesis )
|
||||
EPYTEST_XDIST="yes"
|
||||
EPYTEST_IGNORE=(
|
||||
# Useless test
|
||||
tests/test_completion.py
|
||||
)
|
||||
EPYTEST_DESELECT=(
|
||||
# Fails if Tesseract was compiled with Clang
|
||||
tests/test_rotation.py::test_rotate_deskew_ocr_timeout
|
||||
|
||||
# XFAIL reason should be a string, not a tuple
|
||||
tests/test_metadata.py::test_malformed_docinfo
|
||||
)
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
distutils_enable_sphinx docs \
|
||||
dev-python/sphinx-issues \
|
||||
dev-python/sphinx-rtd-theme
|
||||
|
||||
export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
|
||||
|
||||
python_test() {
|
||||
epytest -o addopts=
|
||||
}
|
||||
|
||||
src_install() {
|
||||
distutils-r1_src_install
|
||||
|
||||
newbashcomp misc/completion/ocrmypdf.bash ocrmypdf
|
||||
dofishcomp misc/completion/ocrmypdf.fish
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "image cleaning support" app-text/unpaper
|
||||
optfeature "JBIG2 optimization support" media-libs/jbig2enc
|
||||
optfeature "PNG optimization support" media-gfx/pngquant
|
||||
|
||||
# TODO: package pi-heif
|
||||
#optfeature "HEIF image format support" dev-python/pi-heif
|
||||
}
|
||||
RESTRICT="mirror test"
|
||||
@@ -1,2 +1,2 @@
|
||||
DIST pystray-0.19.5.tar.gz 48142 BLAKE2B 34bea3d14cfde7ee7a7d2594da2386265fba34b36f4699b5877ea393dbf7e844fe441a1bda384bb6b3f279a544cba897e04509f7c47d69cb5168793665ae73d4 SHA512 6b8854d995bded41fd6eaefd4bc421ec40f81c200c84a0050095ab654c6d4afc261571bcd397c0a83f60147fe25ee8a48ed8ec49db348d925880b109143f1b3a
|
||||
EBUILD pystray-0.19.5.ebuild 583 BLAKE2B 0137a14c221b726817f404ff86a48eb24161eb91237c15dc1d0e75f31937be75434a2852573e3f0ce02a9ddfd9a31c5b9013662b9cb3f0ad11b3bbba1e39671d SHA512 a5eb62deecc4e1bcd22ff9df16fa6bbee632dbf0af740c4ff9a93b1a1e7f404021f1b6ad0cc3ea8aed70a29e1cf4f06eb8edf20367be0875445bec2a32d8af07
|
||||
EBUILD pystray-0.19.5.ebuild 580 BLAKE2B 482c2951fd4c12ffd30018a1b1c1cf539a7d65ba538e836fc948f4bb670d87292e397aa22ec1233edb3323614f00fae9c4f67531d0fdffb5e3db941b4817f57a SHA512 2e48a05961b1bbfa7f70781ffe96eadf2ad86ec396d9cb0a43d587e5cae9a5fa07382b81cb6a8e8223c6197de95f50aa332118a2c6481a1fe8f58c4a15f14118
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="This library allows you to create a system tray icon."
|
||||
|
||||
@@ -1 +1 @@
|
||||
EBUILD adbb-9999.ebuild 658 BLAKE2B 5f0c977727e8de4b3b68c20029b1c056fdcd14ca532605c8fdbaf23cc578456ffe206447be6665eab47c9e630dc890ee663c2035744c8070b782aa0edb3d7dc6 SHA512 64b719dfd170a60ab9405517bda1b2fce1eebfcfe5ff1f6a086ffaa7bf49abfb9bdacd3eab3ec7a215af0cdd9f0ad34ddd6573253fc2150a6f96cc973902a65c
|
||||
EBUILD adbb-9999.ebuild 710 BLAKE2B 049e4ee2aa29817de210fac60a8abcfc89a1690eb4c27339d72fb8df45cb30b5898ce9120d3aa4fd9cc23fe6d0a9566e7f1d1dd2063eba4598b758e13571df37 SHA512 753e90ba3262f2ed447eeb959a8578aabc05cb62bb9f1d8498c0009de5aca2eba65ba6359a9e8797a05ce7f2bd2d59814e2947f04738cf6107b6025165cef4df
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
@@ -13,13 +14,14 @@ if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/winterbird-code/adbb.git"
|
||||
inherit git-r3
|
||||
KEYWORDS="~amd64"
|
||||
#else
|
||||
#SRC_URI="https://gitea.fulh.ax/feffe/zsnapper/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
#S="${WORKDIR}/zsnapper"
|
||||
#KEYWORDS="amd64"
|
||||
else
|
||||
SRC_URI="https://github.com/winterbird-code/adbb/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/adbb"
|
||||
KEYWORDS="amd64"
|
||||
fi
|
||||
|
||||
|
||||
RESTRICT="mirror"
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
DIST jellyfin-apiclient-python-1.9.2.tar.gz 29535 BLAKE2B ba12075a54df646c02fe437c576e3a19f38082080e6c136d88abf45f2eaba5d308259f16df46b4c7a5d76978ebf3392111fd0b3b3d2ee2c9496acf64fb8553b6 SHA512 43f1850c2904f200a9055b8f579534c486f0f29ca04004bd5cda58f6d2a24275a5e4ceb356344335a660f53cc81f47aa4749c048642e5f4e05b640e11a574e37
|
||||
EBUILD jellyfin-apiclient-python-1.9.2.ebuild 729 BLAKE2B 26ebb0e1eb985405dc609c83f93299e5c2b6f7c2d39d810a4dc221f35c3757b4c8ad0fcd45e016600dfbc27a76290733e4872a5bb1a2f5fd6bede9988bce77f4 SHA512 3e95bb065fb5fda303734d91b0cf236fd59941e581474421a0b48f903b4a318b61fb259ca775e631ca398b155229e6b7030865617d46e94decba99e23f0fe589
|
||||
AUX set_build_backend.patch 286 BLAKE2B 4baa101d9c9943760520a976a199f9a41e868a45b993ade42866e78e137d25c7a20810344b84c1a6f97bcba693a4ba4830c0fbc2ff77d22b521458172d4d7308 SHA512 be3e0ed5094375be9f1d3e04e332118e9b902a17e644ded3c0554e48f116a2b9655f2e6988882f6b6cf23926d1a91167f9de0ea164634cbed1bc194b5e6f1e88
|
||||
DIST jellyfin-apiclient-python-1.11.0.tar.gz 36454 BLAKE2B 057dacb9640a3cc938ddafc4503b472bc4b690c86c01e706bdf53289d065455ea03d0b4bf37173b5e2195615c79d6a5acc5e8d633c6812f9d9836629d8e8492c SHA512 980ff946f2cdd8ff2e0628a0bf3e245c3fa708d8b92d505e5de4b062a8328cea68cb36451467b87b7230a65b27cb6f29b814f18ec972e322855a2dc43e307693
|
||||
EBUILD jellyfin-apiclient-python-1.11.0.ebuild 818 BLAKE2B d29c5ac934ba260191f944bdf360779a8e9bd2047e8d604f0df13b318bcbefc93712f7dacf6a8b1778ea83689e0d5eb5f1fb6194ded1a3127022fb980913c32e SHA512 1af0d6cfc42ee40b72a5cf1f84e9dc47f5172aeecb1ddf0a25de6143a6435ed48c5d6a3df2eac5181132bf28ca66b88c8bd86edc2aec97ec6b08b825f2285634
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
diff --git a/pyproject.toml.orig b/pyproject.toml
|
||||
index dece500..89c9ad9 100644
|
||||
--- a/pyproject.toml.orig
|
||||
+++ b/pyproject.toml
|
||||
@@ -1,5 +1,6 @@
|
||||
[build-system]
|
||||
requires = [ "setuptools>=61.0.0",]
|
||||
+build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "jellyfin-apiclient-python"
|
||||
+8
-3
@@ -1,9 +1,10 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
@@ -18,6 +19,11 @@ else
|
||||
KEYWORDS="amd64"
|
||||
fi
|
||||
|
||||
RESTRICT="mirror test"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/set_build_backend.patch"
|
||||
)
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
@@ -27,7 +33,6 @@ DEPEND="
|
||||
dev-python/requests
|
||||
dev-python/urllib3
|
||||
dev-python/websocket-client
|
||||
dev-python/six
|
||||
dev-python/certifi
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
@@ -1,2 +1,2 @@
|
||||
DIST python-mpv-jsonipc-1.2.0.tar.gz 11949 BLAKE2B 7f8c02de20e6405e7bf9b5950b240bf78e21e41d1eef52726a50181556607090e418f1775fa830de191c8af47ef78c145c37efdf213bd9255915bd34a20a86e8 SHA512 036d4cc1ee5b08049a64b39847bddebf7061c49c2178f78134e8187fabea38508e1e52f4cde6f6e5bb8fbc5f89faaebedbc86f5ff647d59a7f3e003c3d996e3f
|
||||
EBUILD python-mpv-jsonipc-1.2.0.ebuild 681 BLAKE2B bb4d5d11b7ee1f10c0de51cd8546491f23fae7334b47a2d15193c925737a9dd0d2cf1f3c91d0a96aabe574daca51df730a99244504b0afcd1ebbfae1bf7ebb36 SHA512 7732794d5123f24e5d5243902f479e4bfe852659c56f2c2c900c49b4ad2944020a24f622d9405636b1acaccf4a328578df4d393d80f677ef701d599211853d8b
|
||||
DIST python-mpv-jsonipc-1.2.1.tar.gz 11961 BLAKE2B dc80bf634178a630971ab36f99301285743542c17e11e232f46dd6f34ce212890a1b45710431d83fa0ceb98cd08429c800e3f73245274e664ffe73890721db40 SHA512 e55e4a52ea36d5d9ef0447ccd1da367c04e6487edce233902c1a1ec45db4aa29006ddd4528ae160f449811dccbc26e7efc6011f69d7fb40b26a74e8e0ec0467e
|
||||
EBUILD python-mpv-jsonipc-1.2.1.ebuild 678 BLAKE2B 80587914dc2517f6d509cc7d040287db6dfc4b37a9e4725663278cdf6f6fe58196d66495d6d535318b5e5ed32d534b1f6238e66e28dabceaf6edc064f2264ac3 SHA512 d39205dd27ea737f3e0a1bf9956c93470ecb2a205cfd252b02fb6a6841ff1b49c39c9132965048a459366cf9f0ab954ed3408cde071e025bcae0e4ee80f8711c
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
DIST bento4-1.6.0-639-7-Omega.tar.gz 5481533 BLAKE2B 0636f0c94ebb3246c8720e120f3b505e4a82ed2e37d9ed44351875dcf3fab8bc2e53b83e0be43fb711aac3144d6df3d8ae2ead24fcd55bd116f3c54f07e3c19f SHA512 bf257e5831eec44db944d1313858262c1ba32b6e67564bb8f809a1aa0fc8a55faaaac2357d80f1ce2e794914f6bec5263548e77802db2b9e52998af2b6276809
|
||||
DIST kodi-inputstream-adaptive-20.3.18.tar.gz 779751 BLAKE2B 201702996b976fde820c8df6abe43b04977946e4ed0d13752e5713db1ca944146915fcdb60b1d6ebdbd42b57678a8f518bc2b683cfc0dc7ba196be85e0cfbef6 SHA512 87435271bedc1e0371356d953a170233c3a259c773f0caec7bf314c23432925215e138c5cac83da1b016fcfd0c9c1a6cbd18c87911a7ef990bc7199ffe2a67de
|
||||
EBUILD kodi-inputstream-adaptive-20.3.18.ebuild 1074 BLAKE2B 5c000ed0126ea920bada537101c440164a7acfc21ddb9243c8ba875cb6ac132b07df3faa4aacf9e904d42c12eafbcc689d5c8336e8572d6842629c0c1a882d51 SHA512 d277c9361c9a995614af3c74c0e9d0556571f7565c1968d0ce16afa078a720d291be4f4d48fec631c855f0fe46a77b27185e3661118ef79b3258da4cc7fe32e2
|
||||
@@ -1,49 +0,0 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit kodi-addon
|
||||
|
||||
DESCRIPTION="Kodi's Adaptive inputstream addon"
|
||||
HOMEPAGE="https://github.com/xbmc/inputstream.adaptive.git"
|
||||
|
||||
CODENAME="Nexus"
|
||||
BENTO4_VERSION="1.6.0-639-7-Omega"
|
||||
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
SRC_URI="https://github.com/xbmc/inputstream.adaptive/archive/${PV}-${CODENAME}.tar.gz -> ${P}.tar.gz
|
||||
https://github.com/xbmc/Bento4/archive/${BENTO4_VERSION}.tar.gz -> bento4-${BENTO4_VERSION}.tar.gz"
|
||||
S="${WORKDIR}/inputstream.adaptive-${PV}-${CODENAME}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
RESTRICT="!test? ( test )"
|
||||
IUSE="test"
|
||||
|
||||
COMMON_DEPEND="
|
||||
dev-libs/expat
|
||||
=media-tv/kodi-20*
|
||||
"
|
||||
DEPEND="
|
||||
${COMMON_DEPEND}
|
||||
test? ( dev-cpp/gtest )
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${P}.tar.gz
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_TESTING=$(usex test)
|
||||
-DENABLE_INTERNAL_BENTO4=ON
|
||||
-DBENTO4_URL="${DISTDIR}/bento4-${BENTO4_VERSION}.tar.gz"
|
||||
-DCMAKE_INSTALL_LIBDIR="${EPREFIX}/usr/$(get_libdir)/kodi"
|
||||
-Wno-dev
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
AUX kodi-inputstream-ffmpegdirect-20.5.0-Fix-use-after-free-in-TimeshiftSegment.patch 1001 BLAKE2B ee4624253c0ab6bddd22a8ce5da969eb4e7acd22eb658eaf091fc826f714aa1314898b26a283b4e64233d4c5e5f4766a465bbbea4d4fe7b1997740a46f375d91 SHA512 608b45bf89b1430b6d25cf75f402567c1615e6457c20997efe7175aa631501eb967b5961b5dd9ff1b373de32c5d88f9a4b6da0cb92ef1866dfd81d149938e8aa
|
||||
AUX kodi-inputstream-ffmpegdirect-20.5.0-Get-extradata-with-extract_extradata-BSF.patch 9834 BLAKE2B d26b4a56ddad02488868c94670440ab369a2016416a606b9f05386b615367028379279e270771d6635c69370e670178bd4dc80d4296d8ea69165b297708ded38 SHA512 77964f8d726e6bad4ea20fc9c5320f36a20047d9d9b999cc154f78e1f38612624a742c23a45ae060289e8507cc122fbd828b6f460e9449fa3e44bbc22ac61c14
|
||||
AUX kodi-inputstream-ffmpegdirect-20.5.0-ffmpeg5.patch 13078 BLAKE2B 50fa84e7790b06960177cc48a097fca12d1f984bd41db335f98e01ebd2ecca5c4fad8e917af5af8a6d8bcc3408856542d44784834fecbd119a82ee75ec243df4 SHA512 63427c395dea7533c0909cbc43fecf8e14998bb108da50a43c2e755f8fa94cdd74751ce4b09ebc8db1780eaaf1fc717f5e4ed156443f78c9fdd6fb3bf730482b
|
||||
AUX kodi-inputstream-ffmpegdirect-20.5.0-ffmpeg6.patch 1467 BLAKE2B 1a82346927a978c059e0d69bde63451a5463fec0035b8f32ea735a1fd26374254aec3f4b60041f13a49993542f9244ebf232c734b4aff5c5cece0d1bdde2320f SHA512 6c385aad0afa07379235ee7bd70a11e434befabde46dd5185c90ad85258d4ac5451c8426354f4d6e1e16b4e7c6e6a267843c4abba9a2e6601677c2e7023ce9b1
|
||||
AUX kodi-inputstream-ffmpegdirect-20.5.0-gcc13.patch 1260 BLAKE2B 601ad71dfe4859e3fda621ce58f5687941e454214295514082e4f463bcc886588b83624b7afb28e204d9479c27ea9ed0bbe3b8b845716ce57cde4df164fbf8a8 SHA512 fbeaa550c562b6c29555c88108813cc6f19699506395e3efe9de54022676ebf3e6da893dde8803ea4d84f6b81563a886aac7c62ddeaab8e427d5e48dd3351eba
|
||||
DIST kodi-inputstream-ffmpegdirect-20.5.0.tar.gz 289362 BLAKE2B 2e8c63bd47d54f84cade2acb092a8e3ef11c31170071f66b5f22d4aa6fd27992a22b19ecb8070ce7d952f80882fe617e5eaed70dcf325b9bdb579220ddd59688 SHA512 9db8e25f04400635e13cf7c79f7079be9c7ffbf427423abcfc449dcd06f6259dcf9ed1ad1eae1563db239978c8399e054e7c6adcbebb5cc70c4de1c01643d074
|
||||
EBUILD kodi-inputstream-ffmpegdirect-20.5.0-r1.ebuild 1041 BLAKE2B 1da6ae5dffb038656247fa85e5ab6a495519dbf40b732c9e9a0fdba6fedf8b23c9a231a0a0861c8891ddb2a788cfe9b236d5be853021ae3f7f70fb1fa016daec SHA512 a0a53583c144d39edc7958be3ecd2eebfbfd8b60ccc048b360f0d6fc53386d08569885851c2e4d5962e1837530073b7a53a1df388312fb005ad4768271926a43
|
||||
-25
@@ -1,25 +0,0 @@
|
||||
From e6541a98b64631836336de17e57efa8e8e0b8425 Mon Sep 17 00:00:00 2001
|
||||
From: Vasyl Gello <vasek.gello@gmail.com>
|
||||
Date: Sat, 15 Oct 2022 16:09:20 +0000
|
||||
Subject: [PATCH] Fix use-after-free in TimeshiftSegment
|
||||
|
||||
Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
|
||||
---
|
||||
src/stream/TimeshiftSegment.cpp | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/stream/TimeshiftSegment.cpp b/src/stream/TimeshiftSegment.cpp
|
||||
index 9323a44a..9e1cd09c 100644
|
||||
--- a/src/stream/TimeshiftSegment.cpp
|
||||
+++ b/src/stream/TimeshiftSegment.cpp
|
||||
@@ -90,8 +90,8 @@ void TimeshiftSegment::AddPacket(DEMUX_PACKET* packet)
|
||||
m_packetBuffer.emplace_back(newPacket);
|
||||
|
||||
int secondsSinceStart = 0;
|
||||
- if (packet->pts != STREAM_NOPTS_VALUE && packet->pts > 0)
|
||||
- secondsSinceStart = packet->pts / STREAM_TIME_BASE;
|
||||
+ if (newPacket->pts != STREAM_NOPTS_VALUE && newPacket->pts > 0)
|
||||
+ secondsSinceStart = newPacket->pts / STREAM_TIME_BASE;
|
||||
|
||||
if (secondsSinceStart != m_lastPacketSecondsSinceStart)
|
||||
{
|
||||
-290
@@ -1,290 +0,0 @@
|
||||
From 07ea26d7ce6bde1350ceb15380f4908da454f004 Mon Sep 17 00:00:00 2001
|
||||
From: Vasyl Gello <vasek.gello@gmail.com>
|
||||
Date: Sat, 15 Oct 2022 16:17:48 +0000
|
||||
Subject: [PATCH] ffmpeg5: Get extradata with extract_extradata BSF
|
||||
|
||||
Fixes the transport stream playback failures described in
|
||||
https://bugs.debian.org/1016925
|
||||
|
||||
@Rogo95 made an excellent technical analysis of the root cause
|
||||
and reported that to the bug thread.
|
||||
|
||||
Later on, James Almer (@jamrial) suggested the solution to use
|
||||
extract_extradata bitstream filter to replace the removed split()
|
||||
function.
|
||||
|
||||
Finally, I adapted the following code snippet:
|
||||
https://gist.github.com/moonpfe/f6795d51294d91ee0f82f62ff6985db0
|
||||
to Kodi and tested it by playing the affected files in TS format.
|
||||
|
||||
Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
|
||||
---
|
||||
src/stream/FFmpegStream.cpp | 222 ++++++++++++++++++++++++++++++------
|
||||
src/stream/FFmpegStream.h | 2 +
|
||||
2 files changed, 192 insertions(+), 32 deletions(-)
|
||||
|
||||
diff --git a/src/stream/FFmpegStream.cpp b/src/stream/FFmpegStream.cpp
|
||||
index f2140a17..95d1da83 100644
|
||||
--- a/src/stream/FFmpegStream.cpp
|
||||
+++ b/src/stream/FFmpegStream.cpp
|
||||
@@ -29,6 +29,7 @@
|
||||
#endif
|
||||
|
||||
extern "C" {
|
||||
+#include <libavcodec/bsf.h>
|
||||
#include <libavutil/dict.h>
|
||||
#include <libavutil/opt.h>
|
||||
}
|
||||
@@ -1586,6 +1587,168 @@ bool FFmpegStream::SeekTime(double time, bool backwards, double* startpts)
|
||||
return false;
|
||||
}
|
||||
|
||||
+int FFmpegStream::GetPacketExtradata(const AVPacket* pkt, const AVCodecParserContext* parserCtx, AVCodecContext* codecCtx, uint8_t **p_extradata)
|
||||
+{
|
||||
+ int extradata_size = 0;
|
||||
+
|
||||
+ if (!pkt || !p_extradata)
|
||||
+ return 0;
|
||||
+
|
||||
+ *p_extradata = nullptr;
|
||||
+
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 0, 100)
|
||||
+ /* extract_extradata bitstream filter is implemented only
|
||||
+ * for certain codecs, as noted in discussion of PR#21248
|
||||
+ */
|
||||
+
|
||||
+ AVCodecID codecId = codecCtx->codec_id;
|
||||
+
|
||||
+ // clang-format off
|
||||
+ if (
|
||||
+ codecId != AV_CODEC_ID_MPEG1VIDEO &&
|
||||
+ codecId != AV_CODEC_ID_MPEG2VIDEO &&
|
||||
+ codecId != AV_CODEC_ID_H264 &&
|
||||
+ codecId != AV_CODEC_ID_HEVC &&
|
||||
+ codecId != AV_CODEC_ID_MPEG4 &&
|
||||
+ codecId != AV_CODEC_ID_VC1 &&
|
||||
+ codecId != AV_CODEC_ID_AV1 &&
|
||||
+ codecId != AV_CODEC_ID_AVS2 &&
|
||||
+ codecId != AV_CODEC_ID_AVS3 &&
|
||||
+ codecId != AV_CODEC_ID_CAVS
|
||||
+ )
|
||||
+ // clang-format on
|
||||
+ return 0;
|
||||
+
|
||||
+ AVBSFContext *bsf = nullptr;
|
||||
+ AVPacket *dst_pkt = nullptr;
|
||||
+ const AVBitStreamFilter *f;
|
||||
+ AVPacket *pkt_ref = nullptr;
|
||||
+ int ret = 0;
|
||||
+ uint8_t *ret_extradata = nullptr;
|
||||
+ size_t ret_extradata_size = 0;
|
||||
+
|
||||
+ f = av_bsf_get_by_name("extract_extradata");
|
||||
+ if (!f)
|
||||
+ return 0;
|
||||
+
|
||||
+ bsf = nullptr;
|
||||
+ ret = av_bsf_alloc(f, &bsf);
|
||||
+ if (ret < 0)
|
||||
+ return 0;
|
||||
+
|
||||
+ bsf->par_in->codec_id = codecCtx->codec_id;
|
||||
+
|
||||
+ ret = av_bsf_init(bsf);
|
||||
+ if (ret < 0)
|
||||
+ {
|
||||
+ av_bsf_free(&bsf);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ dst_pkt = av_packet_alloc();
|
||||
+ pkt_ref = dst_pkt;
|
||||
+
|
||||
+ ret = av_packet_ref(pkt_ref, pkt);
|
||||
+ if (ret < 0)
|
||||
+ {
|
||||
+ av_bsf_free(&bsf);
|
||||
+ av_packet_free(&dst_pkt);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ ret = av_bsf_send_packet(bsf, pkt_ref);
|
||||
+ if (ret < 0)
|
||||
+ {
|
||||
+ av_packet_unref(pkt_ref);
|
||||
+ av_bsf_free(&bsf);
|
||||
+ av_packet_free(&dst_pkt);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ ret = 0;
|
||||
+ while (ret >= 0)
|
||||
+ {
|
||||
+ ret = av_bsf_receive_packet(bsf, pkt_ref);
|
||||
+ if (ret < 0)
|
||||
+ {
|
||||
+ if (ret != AVERROR(EAGAIN) && ret != AVERROR_EOF)
|
||||
+ break;
|
||||
+
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
+ ret_extradata = av_packet_get_side_data(pkt_ref,
|
||||
+ AV_PKT_DATA_NEW_EXTRADATA,
|
||||
+ &ret_extradata_size);
|
||||
+ if (ret_extradata &&
|
||||
+ ret_extradata_size > 0 &&
|
||||
+ ret_extradata_size < FF_MAX_EXTRADATA_SIZE)
|
||||
+ {
|
||||
+ *p_extradata = (uint8_t*)av_malloc(ret_extradata_size + AV_INPUT_BUFFER_PADDING_SIZE);
|
||||
+ if (!*p_extradata)
|
||||
+ {
|
||||
+ Log(LOGLEVEL_ERROR,
|
||||
+ "%s - failed to allocate %zu bytes for extradata",
|
||||
+ __FUNCTION__,
|
||||
+ ret_extradata_size);
|
||||
+
|
||||
+ av_packet_unref(pkt_ref);
|
||||
+ av_bsf_free(&bsf);
|
||||
+ av_packet_free(&dst_pkt);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ Log(LOGLEVEL_DEBUG,
|
||||
+ "%s - fetching extradata, extradata_size(%zu)",
|
||||
+ __FUNCTION__,
|
||||
+ ret_extradata_size);
|
||||
+
|
||||
+ memcpy(*p_extradata, ret_extradata, ret_extradata_size);
|
||||
+ memset(*p_extradata + ret_extradata_size, 0, AV_INPUT_BUFFER_PADDING_SIZE);
|
||||
+ extradata_size = ret_extradata_size;
|
||||
+
|
||||
+ av_packet_unref(pkt_ref);
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ av_packet_unref(pkt_ref);
|
||||
+ }
|
||||
+
|
||||
+ av_bsf_free(&bsf);
|
||||
+ av_packet_free(&dst_pkt);
|
||||
+#else
|
||||
+ if (codecCtx && parserCtx && parserCtx->parser && parserCtx->parser->split)
|
||||
+ extradata_size = parserCtx->parser->split(codecCtx, pkt->data, pkt->size);
|
||||
+
|
||||
+ if (extradata_size <= 0 || extradata_size >= FF_MAX_EXTRADATA_SIZE)
|
||||
+ {
|
||||
+ Log(LOGLEVEL_DEBUG, "%s - fetched extradata of weird size %zd",
|
||||
+ __FUNCTION__, extradata_size);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ *p_extradata = (uint8_t*)av_malloc(extradata_size + AV_INPUT_BUFFER_PADDING_SIZE);
|
||||
+ if (!*p_extradata)
|
||||
+ {
|
||||
+ Log(LOGLEVEL_ERROR,
|
||||
+ "%s - failed to allocate %zd bytes for extradata",
|
||||
+ __FUNCTION__,
|
||||
+ extradata_size);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ Log(LOGLEVEL_DEBUG,
|
||||
+ "%s - fetching extradata, extradata_size(%zd)",
|
||||
+ __FUNCTION__,
|
||||
+ extradata_size);
|
||||
+
|
||||
+ memcpy(*p_extradata, pkt->data, extradata_size);
|
||||
+ memset(*p_extradata + extradata_size, 0, AV_INPUT_BUFFER_PADDING_SIZE);
|
||||
+#endif
|
||||
+
|
||||
+ return extradata_size;
|
||||
+}
|
||||
+
|
||||
void FFmpegStream::ParsePacket(AVPacket* pkt)
|
||||
{
|
||||
AVStream* st = m_pFormatContext->streams[pkt->stream_index];
|
||||
@@ -1617,43 +1780,38 @@ void FFmpegStream::ParsePacket(AVPacket* pkt)
|
||||
|
||||
if (parser->second->m_parserCtx &&
|
||||
parser->second->m_parserCtx->parser &&
|
||||
- parser->second->m_parserCtx->parser->split &&
|
||||
!st->codecpar->extradata)
|
||||
{
|
||||
- int i = parser->second->m_parserCtx->parser->split(parser->second->m_codecCtx, pkt->data, pkt->size);
|
||||
- if (i > 0 && i < FF_MAX_EXTRADATA_SIZE)
|
||||
+ int i = GetPacketExtradata(pkt,
|
||||
+ parser->second->m_parserCtx,
|
||||
+ parser->second->m_codecCtx,
|
||||
+ &st->codecpar->extradata);
|
||||
+ if (i > 0)
|
||||
{
|
||||
- st->codecpar->extradata = (uint8_t*)av_malloc(i + AV_INPUT_BUFFER_PADDING_SIZE);
|
||||
- if (st->codecpar->extradata)
|
||||
- {
|
||||
- Log(LOGLEVEL_DEBUG, "CDVDDemuxFFmpeg::ParsePacket() fetching extradata, extradata_size(%d)", i);
|
||||
- st->codecpar->extradata_size = i;
|
||||
- memcpy(st->codecpar->extradata, pkt->data, i);
|
||||
- memset(st->codecpar->extradata + i, 0, AV_INPUT_BUFFER_PADDING_SIZE);
|
||||
+ st->codecpar->extradata_size = i;
|
||||
|
||||
- if (parser->second->m_parserCtx->parser->parser_parse)
|
||||
+ if (parser->second->m_parserCtx->parser->parser_parse)
|
||||
+ {
|
||||
+ parser->second->m_codecCtx->extradata = st->codecpar->extradata;
|
||||
+ parser->second->m_codecCtx->extradata_size = st->codecpar->extradata_size;
|
||||
+ const uint8_t* outbufptr;
|
||||
+ int bufSize;
|
||||
+ parser->second->m_parserCtx->flags |= PARSER_FLAG_COMPLETE_FRAMES;
|
||||
+ parser->second->m_parserCtx->parser->parser_parse(parser->second->m_parserCtx,
|
||||
+ parser->second->m_codecCtx,
|
||||
+ &outbufptr, &bufSize,
|
||||
+ pkt->data, pkt->size);
|
||||
+ parser->second->m_codecCtx->extradata = nullptr;
|
||||
+ parser->second->m_codecCtx->extradata_size = 0;
|
||||
+
|
||||
+ if (parser->second->m_parserCtx->width != 0)
|
||||
{
|
||||
- parser->second->m_codecCtx->extradata = st->codecpar->extradata;
|
||||
- parser->second->m_codecCtx->extradata_size = st->codecpar->extradata_size;
|
||||
- const uint8_t* outbufptr;
|
||||
- int bufSize;
|
||||
- parser->second->m_parserCtx->flags |= PARSER_FLAG_COMPLETE_FRAMES;
|
||||
- parser->second->m_parserCtx->parser->parser_parse(parser->second->m_parserCtx,
|
||||
- parser->second->m_codecCtx,
|
||||
- &outbufptr, &bufSize,
|
||||
- pkt->data, pkt->size);
|
||||
- parser->second->m_codecCtx->extradata = nullptr;
|
||||
- parser->second->m_codecCtx->extradata_size = 0;
|
||||
-
|
||||
- if (parser->second->m_parserCtx->width != 0)
|
||||
- {
|
||||
- st->codecpar->width = parser->second->m_parserCtx->width;
|
||||
- st->codecpar->height = parser->second->m_parserCtx->height;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- Log(LOGLEVEL_ERROR, "CDVDDemuxFFmpeg::ParsePacket() invalid width/height");
|
||||
- }
|
||||
+ st->codecpar->width = parser->second->m_parserCtx->width;
|
||||
+ st->codecpar->height = parser->second->m_parserCtx->height;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ Log(LOGLEVEL_ERROR, "CDVDDemuxFFmpeg::ParsePacket() invalid width/height");
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/src/stream/FFmpegStream.h b/src/stream/FFmpegStream.h
|
||||
index 356905dd..f0634d0f 100644
|
||||
--- a/src/stream/FFmpegStream.h
|
||||
+++ b/src/stream/FFmpegStream.h
|
||||
@@ -109,6 +109,8 @@ class FFmpegStream
|
||||
bool IsPaused() { return m_speed == STREAM_PLAYSPEED_PAUSE; }
|
||||
virtual bool CheckReturnEmptyOnPacketResult(int result);
|
||||
|
||||
+ int GetPacketExtradata(const AVPacket* pkt, const AVCodecParserContext* parserCtx, AVCodecContext* codecCtx, uint8_t **p_extradata);
|
||||
+
|
||||
int64_t m_demuxerId;
|
||||
mutable std::recursive_mutex m_mutex;
|
||||
double m_currentPts; // used for stream length estimation
|
||||
-319
@@ -1,319 +0,0 @@
|
||||
From fcad1884954ec1998f353750dd7332501e204ddb Mon Sep 17 00:00:00 2001
|
||||
From: Vasyl Gello <vasek.gello@gmail.com>
|
||||
Date: Sat, 15 Oct 2022 16:08:14 +0000
|
||||
Subject: [PATCH] Adapt AlwinEsch's ffmpeg5 port patch
|
||||
|
||||
Signed-off-by: Vasyl Gello <vasek.gello@gmail.com>
|
||||
---
|
||||
src/stream/FFmpegStream.cpp | 96 ++++++++++++++++++++++++++++++++-----
|
||||
src/stream/FFmpegStream.h | 6 ++-
|
||||
src/utils/FFmpegCompat.h | 20 ++++++++
|
||||
3 files changed, 107 insertions(+), 15 deletions(-)
|
||||
create mode 100644 src/utils/FFmpegCompat.h
|
||||
|
||||
diff --git a/src/stream/FFmpegStream.cpp b/src/stream/FFmpegStream.cpp
|
||||
index 73e0963c..f2140a17 100644
|
||||
--- a/src/stream/FFmpegStream.cpp
|
||||
+++ b/src/stream/FFmpegStream.cpp
|
||||
@@ -462,7 +462,14 @@ DEMUX_PACKET* FFmpegStream::DemuxRead()
|
||||
// we already check for a valid m_streams[pPacket->iStreamId] above
|
||||
else if (stream->type == INPUTSTREAM_TYPE_AUDIO)
|
||||
{
|
||||
- if (static_cast<DemuxStreamAudio*>(stream)->iChannels != m_pFormatContext->streams[pPacket->iStreamId]->codecpar->channels ||
|
||||
+#if LIBAVCODEC_BUILD >= AV_VERSION_INT(59, 37, 100) && \
|
||||
+ LIBAVUTIL_BUILD >= AV_VERSION_INT(57, 28, 100)
|
||||
+ int codecparChannels =
|
||||
+ m_pFormatContext->streams[pPacket->iStreamId]->codecpar->ch_layout.nb_channels;
|
||||
+#else
|
||||
+ int codecparChannels = m_pFormatContext->streams[pPacket->iStreamId]->codecpar->channels;
|
||||
+#endif
|
||||
+ if (static_cast<DemuxStreamAudio*>(stream)->iChannels != codecparChannels ||
|
||||
static_cast<DemuxStreamAudio*>(stream)->iSampleRate != m_pFormatContext->streams[pPacket->iStreamId]->codecpar->sample_rate)
|
||||
{
|
||||
// content has changed
|
||||
@@ -658,7 +665,7 @@ bool FFmpegStream::Aborted()
|
||||
|
||||
bool FFmpegStream::Open(bool fileinfo)
|
||||
{
|
||||
- AVInputFormat* iformat = NULL;
|
||||
+ FFMPEG_FMT_CONST AVInputFormat* iformat = nullptr;
|
||||
std::string strFile;
|
||||
m_streaminfo = !m_isRealTimeStream && !m_reopen;;
|
||||
m_currentPts = STREAM_NOPTS_VALUE;
|
||||
@@ -729,6 +736,8 @@ bool FFmpegStream::Open(bool fileinfo)
|
||||
m_streaminfo = true;
|
||||
}
|
||||
|
||||
+ // https://github.com/FFmpeg/FFmpeg/blob/56450a0ee4/doc/APIchanges#L18-L26
|
||||
+#if LIBAVFORMAT_BUILD < AV_VERSION_INT(59, 0, 100)
|
||||
if (iformat && (strcmp(iformat->name, "mov,mp4,m4a,3gp,3g2,mj2") == 0))
|
||||
{
|
||||
CURL url(m_streamUrl);
|
||||
@@ -736,6 +745,7 @@ bool FFmpegStream::Open(bool fileinfo)
|
||||
if (!url.GetProtocol().empty() && !url.IsProtocol("file"))
|
||||
m_pFormatContext->iformat->flags |= AVFMT_NOGENSEARCH;
|
||||
}
|
||||
+#endif
|
||||
|
||||
// we need to know if this is matroska, avi or sup later
|
||||
m_bMatroska = strncmp(m_pFormatContext->iformat->name, "matroska", 8) == 0; // for "matroska.webm"
|
||||
@@ -785,8 +795,11 @@ bool FFmpegStream::Open(bool fileinfo)
|
||||
// if format can be nonblocking, let's use that
|
||||
m_pFormatContext->flags |= AVFMT_FLAG_NONBLOCK;
|
||||
|
||||
- // deprecated, will be always set in future versions
|
||||
+ // https://github.com/FFmpeg/FFmpeg/blob/d682ae70b4/doc/APIchanges#L18-L21
|
||||
+#if LIBAVFORMAT_BUILD < AV_VERSION_INT(57, 66, 105) && \
|
||||
+ LIBAVCODEC_BUILD < AV_VERSION_INT(57, 83, 101)
|
||||
m_pFormatContext->flags |= AVFMT_FLAG_KEEP_SIDE_DATA;
|
||||
+#endif
|
||||
|
||||
UpdateCurrentPTS();
|
||||
|
||||
@@ -828,12 +841,23 @@ bool FFmpegStream::Open(bool fileinfo)
|
||||
{
|
||||
int idx = m_pFormatContext->programs[i]->stream_index[j];
|
||||
AVStream* st = m_pFormatContext->streams[idx];
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 3, 100)
|
||||
+ // Related to https://patchwork.ffmpeg.org/project/ffmpeg/patch/20210429143825.53040-1-jamrial@gmail.com/
|
||||
+ // has been replaced with AVSTREAM_EVENT_FLAG_NEW_PACKETS.
|
||||
+ if ((st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO && (st->event_flags & AVSTREAM_EVENT_FLAG_NEW_PACKETS)) ||
|
||||
+ (st->codecpar->codec_type == AVMEDIA_TYPE_AUDIO && st->codecpar->sample_rate > 0))
|
||||
+ {
|
||||
+ nProgram = i;
|
||||
+ break;
|
||||
+ }
|
||||
+#else
|
||||
if ((st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO && st->codec_info_nb_frames > 0) ||
|
||||
(st->codecpar->codec_type == AVMEDIA_TYPE_AUDIO && st->codecpar->sample_rate > 0))
|
||||
{
|
||||
nProgram = i;
|
||||
break;
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -870,7 +894,7 @@ bool FFmpegStream::Open(bool fileinfo)
|
||||
return true;
|
||||
}
|
||||
|
||||
-bool FFmpegStream::OpenWithFFmpeg(AVInputFormat* iformat, const AVIOInterruptCB& int_cb)
|
||||
+bool FFmpegStream::OpenWithFFmpeg(FFMPEG_FMT_CONST AVInputFormat* iformat, const AVIOInterruptCB& int_cb)
|
||||
{
|
||||
Log(LOGLEVEL_INFO, "%s - IO handled by FFmpeg's AVFormat", __FUNCTION__);
|
||||
|
||||
@@ -959,7 +983,7 @@ bool FFmpegStream::OpenWithFFmpeg(AVInputFormat* iformat, const AVIOInterruptCB&
|
||||
return true;
|
||||
}
|
||||
|
||||
-bool FFmpegStream::OpenWithCURL(AVInputFormat* iformat)
|
||||
+bool FFmpegStream::OpenWithCURL(FFMPEG_FMT_CONST AVInputFormat* iformat)
|
||||
{
|
||||
Log(LOGLEVEL_INFO, "%s - IO handled by Kodi's cURL", __FUNCTION__);
|
||||
|
||||
@@ -1039,8 +1063,7 @@ bool FFmpegStream::OpenWithCURL(AVInputFormat* iformat)
|
||||
// is present, we assume it is PCM audio.
|
||||
// AC3 is always wrapped in iec61937 (ffmpeg "spdif"), while DTS
|
||||
// may be just padded.
|
||||
- AVInputFormat* iformat2;
|
||||
- iformat2 = av_find_input_format("spdif");
|
||||
+ FFMPEG_FMT_CONST AVInputFormat* iformat2 = av_find_input_format("spdif");
|
||||
|
||||
if (iformat2 && iformat2->read_probe(&pd) > AVPROBE_SCORE_MAX / 4)
|
||||
{
|
||||
@@ -1147,11 +1170,19 @@ void FFmpegStream::UpdateCurrentPTS()
|
||||
if (idx >= 0)
|
||||
{
|
||||
AVStream* stream = m_pFormatContext->streams[idx];
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 3, 100)
|
||||
+ if (stream && m_pkt.pkt.dts != (int64_t)AV_NOPTS_VALUE)
|
||||
+ {
|
||||
+ double ts = ConvertTimestamp(m_pkt.pkt.dts, stream->time_base.den, stream->time_base.num);
|
||||
+ m_currentPts = ts;
|
||||
+ }
|
||||
+#else
|
||||
if (stream && stream->cur_dts != (int64_t)AV_NOPTS_VALUE)
|
||||
{
|
||||
double ts = ConvertTimestamp(stream->cur_dts, stream->time_base.den, stream->time_base.num);
|
||||
m_currentPts = ts;
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1230,9 +1261,15 @@ bool FFmpegStream::IsProgramChange()
|
||||
return true;
|
||||
if (m_pFormatContext->streams[idx]->codecpar->codec_id != stream->codec)
|
||||
return true;
|
||||
+#if LIBAVCODEC_BUILD >= AV_VERSION_INT(59, 37, 100) && \
|
||||
+ LIBAVUTIL_BUILD >= AV_VERSION_INT(57, 28, 100)
|
||||
+ int codecparChannels =
|
||||
+ m_pFormatContext->streams[idx]->codecpar->ch_layout.nb_channels;
|
||||
+#else
|
||||
+ int codecparChannels = m_pFormatContext->streams[idx]->codecpar->channels;
|
||||
+#endif
|
||||
if (m_pFormatContext->streams[idx]->codecpar->codec_type == AVMEDIA_TYPE_AUDIO &&
|
||||
- m_pFormatContext->streams[idx]->codecpar->channels !=
|
||||
- static_cast<DemuxStreamAudio*>(stream)->iChannels)
|
||||
+ codecparChannels != static_cast<DemuxStreamAudio*>(stream)->iChannels)
|
||||
return true;
|
||||
if (m_pFormatContext->streams[idx]->codecpar->extradata_size != static_cast<int>(stream->ExtraSize))
|
||||
return true;
|
||||
@@ -1564,7 +1601,7 @@ void FFmpegStream::ParsePacket(AVPacket* pkt)
|
||||
|
||||
parser->second->m_parserCtx = av_parser_init(st->codecpar->codec_id);
|
||||
|
||||
- AVCodec* codec = avcodec_find_decoder(st->codecpar->codec_id);
|
||||
+ FFMPEG_FMT_CONST AVCodec* codec = avcodec_find_decoder(st->codecpar->codec_id);
|
||||
if (codec == nullptr)
|
||||
{
|
||||
Log(LOGLEVEL_ERROR, "%s - can't find decoder", __FUNCTION__);
|
||||
@@ -1641,7 +1678,11 @@ TRANSPORT_STREAM_STATE FFmpegStream::TransportStreamAudioState()
|
||||
{
|
||||
if (!m_startTime)
|
||||
{
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 3, 100)
|
||||
+ m_startTime = av_rescale(m_pkt.pkt.dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#else
|
||||
m_startTime = av_rescale(st->cur_dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#endif
|
||||
m_seekStream = idx;
|
||||
}
|
||||
return TRANSPORT_STREAM_STATE::READY;
|
||||
@@ -1661,7 +1702,11 @@ TRANSPORT_STREAM_STATE FFmpegStream::TransportStreamAudioState()
|
||||
{
|
||||
if (!m_startTime)
|
||||
{
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 3, 100)
|
||||
+ m_startTime = av_rescale(m_pkt.pkt.dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#else
|
||||
m_startTime = av_rescale(st->cur_dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#endif
|
||||
m_seekStream = i;
|
||||
}
|
||||
return TRANSPORT_STREAM_STATE::READY;
|
||||
@@ -1694,7 +1739,11 @@ TRANSPORT_STREAM_STATE FFmpegStream::TransportStreamVideoState()
|
||||
{
|
||||
if (!m_startTime)
|
||||
{
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 3, 100)
|
||||
+ m_startTime = av_rescale(m_pkt.pkt.dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#else
|
||||
m_startTime = av_rescale(st->cur_dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#endif
|
||||
m_seekStream = idx;
|
||||
}
|
||||
return TRANSPORT_STREAM_STATE::READY;
|
||||
@@ -1714,7 +1763,11 @@ TRANSPORT_STREAM_STATE FFmpegStream::TransportStreamVideoState()
|
||||
{
|
||||
if (!m_startTime)
|
||||
{
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 3, 100)
|
||||
+ m_startTime = av_rescale(m_pkt.pkt.dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#else
|
||||
m_startTime = av_rescale(st->cur_dts, st->time_base.num, st->time_base.den) - 0.000001;
|
||||
+#endif
|
||||
m_seekStream = i;
|
||||
}
|
||||
return TRANSPORT_STREAM_STATE::READY;
|
||||
@@ -1824,14 +1877,31 @@ DemuxStream* FFmpegStream::AddStream(int streamIdx)
|
||||
{
|
||||
DemuxStreamAudioFFmpeg* st = new DemuxStreamAudioFFmpeg(pStream);
|
||||
stream = st;
|
||||
- st->iChannels = pStream->codecpar->channels;
|
||||
+#if LIBAVCODEC_BUILD >= AV_VERSION_INT(59, 37, 100) && \
|
||||
+ LIBAVUTIL_BUILD >= AV_VERSION_INT(57, 28, 100)
|
||||
+ int codecparChannels = pStream->codecpar->ch_layout.nb_channels;
|
||||
+ int codecparChannelLayout = pStream->codecpar->ch_layout.u.mask;
|
||||
+#else
|
||||
+ int codecparChannels = pStream->codecpar->channels;
|
||||
+ int codecparChannelLayout = pStream->codecpar->channel_layout;
|
||||
+#endif
|
||||
+ st->iChannels = codecparChannels;
|
||||
+ st->iChannelLayout = codecparChannelLayout;
|
||||
st->iSampleRate = pStream->codecpar->sample_rate;
|
||||
st->iBlockAlign = pStream->codecpar->block_align;
|
||||
st->iBitRate = static_cast<int>(pStream->codecpar->bit_rate);
|
||||
st->iBitsPerSample = pStream->codecpar->bits_per_raw_sample;
|
||||
- st->iChannelLayout = pStream->codecpar->channel_layout;
|
||||
char buf[32] = { 0 };
|
||||
+ // https://github.com/FFmpeg/FFmpeg/blob/6ccc3989d15/doc/APIchanges#L50-L53
|
||||
+#if LIBAVCODEC_BUILD >= AV_VERSION_INT(59, 37, 100) && \
|
||||
+ LIBAVUTIL_BUILD >= AV_VERSION_INT(57, 28, 100)
|
||||
+ AVChannelLayout layout = {};
|
||||
+ av_channel_layout_from_mask(&layout, st->iChannelLayout);
|
||||
+ av_channel_layout_describe(&layout, buf, sizeof(buf));
|
||||
+ av_channel_layout_uninit(&layout);
|
||||
+#else
|
||||
av_get_channel_layout_string(buf, 31, st->iChannels, st->iChannelLayout);
|
||||
+#endif
|
||||
st->m_channelLayoutName = buf;
|
||||
if (st->iBitsPerSample == 0)
|
||||
st->iBitsPerSample = pStream->codecpar->bits_per_coded_sample;
|
||||
@@ -2070,7 +2140,7 @@ std::string FFmpegStream::GetStreamCodecName(int iStreamId)
|
||||
return strName;
|
||||
}
|
||||
|
||||
- AVCodec* codec = avcodec_find_decoder(stream->codec);
|
||||
+ FFMPEG_FMT_CONST AVCodec* codec = avcodec_find_decoder(stream->codec);
|
||||
if (codec)
|
||||
strName = codec->name;
|
||||
}
|
||||
diff --git a/src/stream/FFmpegStream.h b/src/stream/FFmpegStream.h
|
||||
index bf8a50f9..356905dd 100644
|
||||
--- a/src/stream/FFmpegStream.h
|
||||
+++ b/src/stream/FFmpegStream.h
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
+#include "../utils/FFmpegCompat.h"
|
||||
#include "../utils/HttpProxy.h"
|
||||
#include "../utils/Properties.h"
|
||||
#include "BaseStream.h"
|
||||
@@ -33,6 +34,7 @@ extern "C"
|
||||
#include <libavcodec/avcodec.h>
|
||||
#include <libavformat/avformat.h>
|
||||
#include <libavutil/mastering_display_metadata.h>
|
||||
+#include <libavutil/version.h>
|
||||
}
|
||||
|
||||
#ifndef __GNUC__
|
||||
@@ -117,8 +119,8 @@ class FFmpegStream
|
||||
|
||||
private:
|
||||
bool Open(bool fileinfo);
|
||||
- bool OpenWithFFmpeg(AVInputFormat* iformat, const AVIOInterruptCB& int_cb);
|
||||
- bool OpenWithCURL(AVInputFormat* iformat);
|
||||
+ bool OpenWithFFmpeg(FFMPEG_FMT_CONST AVInputFormat* iformat, const AVIOInterruptCB& int_cb);
|
||||
+ bool OpenWithCURL(FFMPEG_FMT_CONST AVInputFormat* iformat);
|
||||
AVDictionary* GetFFMpegOptionsFromInput();
|
||||
void ResetVideoStreams();
|
||||
double ConvertTimestamp(int64_t pts, int den, int num);
|
||||
diff --git a/src/utils/FFmpegCompat.h b/src/utils/FFmpegCompat.h
|
||||
new file mode 100644
|
||||
index 00000000..46cff53f
|
||||
--- /dev/null
|
||||
+++ b/src/utils/FFmpegCompat.h
|
||||
@@ -0,0 +1,20 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2005-2022 Team Kodi
|
||||
+ * This file is part of Kodi - https://kodi.tv
|
||||
+ *
|
||||
+ * SPDX-License-Identifier: GPL-2.0-or-later
|
||||
+ * See LICENSES/README.md for more information.
|
||||
+ */
|
||||
+
|
||||
+#pragma once
|
||||
+
|
||||
+extern "C" {
|
||||
+#include <libavformat/avformat.h>
|
||||
+}
|
||||
+
|
||||
+// https://github.com/FFmpeg/FFmpeg/blob/56450a0ee4/doc/APIchanges#L18-L26
|
||||
+#if LIBAVFORMAT_BUILD >= AV_VERSION_INT(59, 0, 100)
|
||||
+#define FFMPEG_FMT_CONST const
|
||||
+#else
|
||||
+#define FFMPEG_FMT_CONST
|
||||
+#endif
|
||||
-31
@@ -1,31 +0,0 @@
|
||||
From 98ccdd2f4263eb1590c65f175c11deeec18fe6c2 Mon Sep 17 00:00:00 2001
|
||||
From: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
Date: Fri, 3 Mar 2023 19:33:04 +0100
|
||||
Subject: [PATCH] Fix build with ffmpeg 6.0
|
||||
|
||||
This feature was removed from ffmpeg:
|
||||
http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=add33e370d241d947209c914de1bf062fe44d58e
|
||||
---
|
||||
src/stream/FFmpegStream.cpp | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git a/src/stream/FFmpegStream.cpp b/src/stream/FFmpegStream.cpp
|
||||
index 341062ed..0996b446 100644
|
||||
--- a/src/stream/FFmpegStream.cpp
|
||||
+++ b/src/stream/FFmpegStream.cpp
|
||||
@@ -920,7 +920,6 @@ bool FFmpegStream::OpenWithFFmpeg(const AVInputFormat* iformat, const AVIOInterr
|
||||
// We only process this condition for manifest streams when this setting is disabled
|
||||
if (!kodi::addon::GetSettingBoolean("useFastOpenForManifestStreams") || m_manifestType.empty())
|
||||
{
|
||||
- m_pFormatContext->flags |= AVFMT_FLAG_PRIV_OPT;
|
||||
if (avformat_open_input(&m_pFormatContext, strFile.c_str(), iformat, &options) < 0)
|
||||
{
|
||||
Log(LOGLEVEL_DEBUG, "Error, could not open file %s", CURL::GetRedacted(strFile).c_str());
|
||||
@@ -935,7 +934,6 @@ bool FFmpegStream::OpenWithFFmpeg(const AVInputFormat* iformat, const AVIOInterr
|
||||
}
|
||||
|
||||
m_pFormatContext->interrupt_callback = int_cb;
|
||||
- m_pFormatContext->flags &= ~AVFMT_FLAG_PRIV_OPT;
|
||||
options = GetFFMpegOptionsFromInput();
|
||||
av_dict_set_int(&options, "load_all_variants", 0, AV_OPT_SEARCH_CHILDREN);
|
||||
|
||||
-47
@@ -1,47 +0,0 @@
|
||||
From fd7bd5ad86fd0006ad571a051fa5d5603a47e4b4 Mon Sep 17 00:00:00 2001
|
||||
From: Rudi Heitbaum <rudi@heitbaum.com>
|
||||
Date: Wed, 26 Apr 2023 17:15:00 +0000
|
||||
Subject: [PATCH] include missing <cstdint> to support gcc-13
|
||||
|
||||
gcc 13 moved some includes around and as a result <cstdint> is no longer transitively
|
||||
included [1]. Explicitly include it for uint{32,64}_t.
|
||||
|
||||
[1] https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes
|
||||
|
||||
Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
|
||||
---
|
||||
src/utils/DiskUtils.h | 1 +
|
||||
src/utils/HttpProxy.h | 3 ++-
|
||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/utils/DiskUtils.h b/src/utils/DiskUtils.h
|
||||
index 79e34268..f900ec58 100644
|
||||
--- a/src/utils/DiskUtils.h
|
||||
+++ b/src/utils/DiskUtils.h
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
+#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
namespace ffmpegdirect
|
||||
diff --git a/src/utils/HttpProxy.h b/src/utils/HttpProxy.h
|
||||
index eb0c99cb..d203ce36 100644
|
||||
--- a/src/utils/HttpProxy.h
|
||||
+++ b/src/utils/HttpProxy.h
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
+#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
namespace ffmpegdirect
|
||||
@@ -36,4 +37,4 @@ namespace ffmpegdirect
|
||||
std::string m_user;
|
||||
std::string m_password;
|
||||
};
|
||||
-} //namespace ffmpegdirect
|
||||
\ No newline at end of file
|
||||
+} //namespace ffmpegdirect
|
||||
-51
@@ -1,51 +0,0 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit kodi-addon
|
||||
|
||||
DESCRIPTION="Kodi's FFMpeg Direct Inputstream addon"
|
||||
HOMEPAGE="https://github.com/xbmc/inputstream.ffmpegdirect"
|
||||
SRC_URI=""
|
||||
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
CODENAME="Nexus"
|
||||
SRC_URI="https://github.com/xbmc/inputstream.ffmpegdirect/archive/${PV}-${CODENAME}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/inputstream.ffmpegdirect-${PV}-${CODENAME}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
COMMON_DEPEND="
|
||||
media-video/ffmpeg:=[encode,libxml2,zlib]
|
||||
virtual/libiconv
|
||||
app-arch/bzip2
|
||||
=media-tv/kodi-20*
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
${COMMON_DEPEND}
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-ffmpeg5.patch
|
||||
"${FILESDIR}"/${P}-Get-extradata-with-extract_extradata-BSF.patch
|
||||
"${FILESDIR}"/${P}-Fix-use-after-free-in-TimeshiftSegment.patch
|
||||
"${FILESDIR}"/${P}-ffmpeg6.patch
|
||||
"${FILESDIR}"/${P}-gcc13.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
[ -d depends ] && rm -rf depends || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
@@ -1,2 +0,0 @@
|
||||
DIST kodi-pvr-hts-20.7.2.tar.gz 218776 BLAKE2B e09b9462f9b8913b1e156c2fa966170e4f59b5d6a88b5694159027006e22ce610a9217eae345f41752a81083a450b3f466db685e03231ae30ffd26884b21675b SHA512 ef16355ff0a9e00a44717ab5216bd88d9a63e745f656694dace73e35437b945034ae852cf1415c04ebab7c1bb102a8cf8b913c7fc8bce49237aa7c3c96c2f290
|
||||
EBUILD kodi-pvr-hts-20.7.2.ebuild 533 BLAKE2B 07c143a1238780c37408bf45965d13126d554f4bb5cb0e10f1b319ee51f283265b189a949dedf60a4d6a7adfd43bb156524d187523247ecff70af7dcb95ae36c SHA512 aa3072bb411bc3c393f80767d68a217ac56873997eddb38c721a2a668c770b69d85781cfd90538751f32cc518554776a8e9f4b16d98ad94359fbceade63f423f
|
||||
@@ -1,27 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake kodi-addon
|
||||
|
||||
DESCRIPTION="Tvheadend Live TV and Radio PVR client addon for Kodi"
|
||||
HOMEPAGE="https://github.com/kodi-pvr/pvr.hts"
|
||||
SRC_URI=""
|
||||
|
||||
CODENAME="Nexus"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
SRC_URI="https://github.com/kodi-pvr/pvr.hts/archive/${PV}-${CODENAME}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/pvr.hts-${PV}-${CODENAME}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="
|
||||
=media-tv/kodi-20*
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
@@ -1,2 +0,0 @@
|
||||
DIST kodi-vfs-sftp-20.1.0.tar.gz 45904 BLAKE2B f9c0f4359075609122627fbec2c945d643a844d7cb07eb09d7ab1581856a2c46790a36398e414ba9ef03c4b36eb361f2ea5a5a23aef980a83a8e6124e1b19f52 SHA512 ea2b205a5b4f279f8211a5744d0f5e6efb6346052ba927aef95733e1c964df5b97fc1176e2fa5d2b378561464f868cdc37e564ca120079f6ff70d2e79b48667c
|
||||
EBUILD kodi-vfs-sftp-20.1.0.ebuild 738 BLAKE2B 82b07146904bf3c2f3af62da6ab1cd80040c8246e86a9d0706af5d024d462bdeb516cf8f14f002870c06b851d6521d88e1114ab181276c3ef6817b50b411ff1f SHA512 774f4ac5d310e7826d120a9e9029b8a631df8159cb331e00c45b595b444a7003859ab9a05a8412c4bb0090a0a3fe26704226fb5d7a4ae5b0f0e0469603e21fd2
|
||||
@@ -1,40 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake kodi-addon
|
||||
|
||||
DESCRIPTION="SFTP VFS addon for Kodi"
|
||||
HOMEPAGE="https://github.com/xbmc/vfs.sftp"
|
||||
SRC_URI=""
|
||||
|
||||
case ${PV} in
|
||||
9999)
|
||||
SRC_URI=""
|
||||
EGIT_REPO_URI="https://github.com/xbmc/vfs.sftp.git"
|
||||
EGIT_BRANCH="Omega"
|
||||
inherit git-r3
|
||||
;;
|
||||
*)
|
||||
CODENAME="Nexus"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
SRC_URI="https://github.com/xbmc/vfs.sftp/archive/${PV}-${CODENAME}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/vfs.sftp-${PV}-${CODENAME}"
|
||||
;;
|
||||
esac
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="
|
||||
net-libs/libssh[sftp]
|
||||
>=media-tv/kodi-20
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
[ -d depends ] && rm -rf depends || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
@@ -1,2 +1,2 @@
|
||||
DIST jellyfin-ffmpeg_6.0.1-7_portable_linux64-gpl.tar.xz 52477444 BLAKE2B c428a5f3b52e605b864c33fecc02bc6f5566906ee36a9db210719f06cbf2bbb1624ef884caee4f3fa566897f6aca9b3dbcbbb68e74987f7feca81af5b19221e8 SHA512 d9fa03401f53c017a8cbff68d8e38f1155832fa1b9f6a8d92c8ad5c57a1385cc8efcdb114208d1c4bb5e7af4e44584b3103fb5bd796bb96d25b1ca36dcdc7178
|
||||
EBUILD jellyfin-ffmpeg-6.0.1.7.ebuild 851 BLAKE2B da97503165196227f19e0e2a5708eeb61d4495545872cb51e868507a77959572ce2c039fc6097a10f0da2bb17d09a9bb982272e37fb3b6eee33148c06f9833f8 SHA512 9f3e2e65e3cfa863112eba753f6ff6965d84824a0ba138e136ce05f070758888799a23a7cbe9315b2a72bff00373947a73fd242f43cca061f52dfd636bf99365
|
||||
DIST jellyfin-ffmpeg_7.1.3-6_portable_linux64-gpl.tar.xz 58366628 BLAKE2B 6305035b0ae597c697bbfa273122f53e5cb7a178b5911d2c71507c11fe6b4e950b145c59a5a2857e08fefb3adb486b129e1432f2b858cdec697a51a64e650164 SHA512 05624bc76cbf30e2f86774e29c894b079e54ad6c9fa0ad567a274ad60dba91595cee22597fcbcef2b8d84248cdcb250c628f8996d02b39e2204f6c8d0a81c614
|
||||
EBUILD jellyfin-ffmpeg-7.1.3.6.ebuild 801 BLAKE2B d32db6c1a4ccbc816163cf8c3086f76264a2240581319b512c2770ffea4c5a188cb1de7cd539528fe4f8659a789e9cda40568600142cf72645b72db1119c0128 SHA512 1becbe94ab7653190c9083d531b79ff9b4dfb2fc7ea17eac12a98c8888e9551a58ee63d62dd4b844275e70c36362855cadb9e73771c581e19ce159dcfe8ee539
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media."
|
||||
DESCRIPTION="Jellyfin build of ffmpeg with streaming enhancements."
|
||||
|
||||
UPSTREAM_VERSION="${PV%.*}-${PV##*.}"
|
||||
HOMEPAGE="https://jellyfin.readthedocs.io/en/latest/"
|
||||
@@ -1,3 +1,3 @@
|
||||
AUX no-shaders.patch 390 BLAKE2B 24e024a92a67f27500ed780c7d29289499b9a3bbe414c5d47fec97c17d94bc5e2919112394bb0305644626cb360b4a77eea14128e74c4ba475d47c91b3287393 SHA512 b3b745be2954c934a2aa5a041aec1e7ea7c031ba654b9c2f41344d22dda23cd8ac7a08b921458a81ff107a85893d9543a5f8ecbab50eb2e64a6b01574735b168
|
||||
DIST jellyfin-mpv-shim-2.8.0.tar.gz 570311 BLAKE2B 72eadc434fd09706cd617752487f39686775274ac20b45085aa26490fba6d43d37ec0f6984a91f4001df40e5b31253c17a978f9a9ec8e5ea14bc3ab8015001d9 SHA512 7d26307625ed5a543a333143285d757db70bd2f8337c26cb42257c77f53fd8f8257ffc51ca70788c39b0f17b77c6c44bafb46b28a81a2381530970ee49df9653
|
||||
EBUILD jellyfin-mpv-shim-2.8.0.ebuild 985 BLAKE2B ea633d721416f4517e1d9ea44158a938fdd29119e5d47c21b2e5663dfe1bef1df67acc94dd01ef19577bf59c3c5ee4f47d410727d2f396f855e2c38e9d3c13b8 SHA512 b76b13fb0cd23af37134bf5f3cb488d079a4cee734ad07c0d0ffd8f055139b1ca01140843b7c7da1bae33e538f5c617306fc25f896ea86bbbf397c0b9ffcd9fd
|
||||
DIST jellyfin-mpv-shim-2.9.0.tar.gz 578962 BLAKE2B 2892baaa822d784f3a1b96086bcdb9ebdb8ea4711b92c071dc47ea6ce4f4b5934acc020d55c7ed9d1a643fd5c236117c3d045c759d1f6eb460483c11853241bb SHA512 9b01cd3f592e0cc6f6907a6e2af971427132662557e4f4ab98e9a54e2cb8f97846bc8fa4e6da14856aa70e3a1549610e919ba8e43ae569f70e06f3d4b71ff2dc
|
||||
EBUILD jellyfin-mpv-shim-2.9.0.ebuild 982 BLAKE2B 836bba2b65367e7e343fc6b77df00577b399b8b10c142212aa4919ffe91537deb2d0d6e6bf1f3e0805fc8aab0dbbb1543aa3d97b2dc91671cc40640aa05c8e68 SHA512 e680aee8ad166f2d35477a022231694729f29e6b9e495ef03c07f2c0396df3626597e6b0dc5482c1b39e63c7f138abaf7e1410a53dfb453ead7634754945ce14
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
PYTHON_COMPAT=( python3_{13,14} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
DIST v0.0.1.tar.gz 3154 BLAKE2B 02a9f0b6ac313597ae04aac98fef28e7f5cbb5d99bd0a4f03d105a9e1448cb2090547bc44cbbc124500fdeddf6d3e778422059266ca3833d975012564b496e34 SHA512 94d205ad24dde3d68e836699794e4cd8bc7243765a57808926aee479959be3d9ca57e05628e33fffa2419a475d040b38cc0437859722c82ff25b6a5e807e7934
|
||||
EBUILD check_service-0.0.1.ebuild 466 BLAKE2B 9bb858824e375741f427b2535e477da904998434f912ac2171bc3387cc5f145900c0ff8e1c6a7e4fb9ebe934ebc39cbd706cfde6d0d327cbf35d3c74e77de250 SHA512 90f6f835d89a372f3bcaec176fe778f454d5dcc2cfde168df0601f1dfcb2f8fe9fa9cfddc9c73744049e2f4a06337c367a5f4f60b8ab58b7989fb53dd3fe8012
|
||||
EBUILD check_service-0.0.1.ebuild 514 BLAKE2B 7f3dcf9390668cab7800ada432b39c7c9221e46694ab76db35675f7109e33942896cdd27cde68445e93ec8477e5f25470bdb5f4a3e28bb45120652bf8daec06a SHA512 d8d8922f1a564a2be827c4cffb18ca20649bd237eec0cf173bc66fa0f10ddd6a317fa72b13acbc132ad1656b2c80b47ef0b62b83d9054e858a81effb0d2ee9c5
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
PYTHON_COMPAT=( python3_{13..14} )
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Icinga/Nagios Check for system services"
|
||||
@@ -13,6 +14,7 @@ SRC_URI="https://gitea.fulh.ax/feffe/check_service/archive/v${PV}.tar.gz"
|
||||
|
||||
S="${WORKDIR}/check_service"
|
||||
|
||||
RESTRICT="mirror"
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86 arm64"
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
AUX nextcloud-client-3.14.2-doc-fix.patch 1253 BLAKE2B 8e0c44c5fdb02fc6d815c70a3fb8a9b28fe7d68e2d8b3a5a297a26c194a8866c39222df740cb1ecd70d7f615f491dea5f229b5bf9bf5ec3f7995d2f20254e518 SHA512 b9efc5723eb2f52ba7fc90325696fada2ddc88b47d47df576cfc74750a97b55bad77acda274983530f43c503ded8e4d7cc444005dd62b699926f46fdb2bd87aa
|
||||
AUX nextcloud-client-3.15.2-netrc.patch 1769 BLAKE2B f1d0e790feead13940c62c20ec54414ff498b2abb1850af21f509476857b51111c2893db024c5af2b56711b5aa220d2179e8efbf6d24e0a28866113fabf9d7fd SHA512 fe738c200b610c7f881ffce0399ee5abc17fe284b95dcd78666961a50b9e4d67d0e9c57919c04a9b5b56005445bd41f581a355f59d7477131008d3c12f0d682d
|
||||
AUX nextcloud-client-3.6.6-no-redefine-fortify-source.patch 1447 BLAKE2B 14a3a1a1206a0a0027aa9c59e07b6d81174428aaaf90fba5706e9c7a2f076753a4b2f364ffa0f22dabf785d58832dde1aeba61e3cb3cc92feffa8b4b614c5d65 SHA512 808c10f8ea1905d54f62f895b2089c2acb602e838143f6a4268a5ab1e966ffe6ff01f132b8b65e0eebde21435a859cc7fb4f868a2ca81da4dcaa02292a337ed7
|
||||
DIST nextcloud-client-3.15.2-fix-macosvfs-file-sharing.png.patch 727 BLAKE2B 77d87c47caa28c0d60afdef161c05a365d953e31e7331fd4b07adfe232ddd04a6108ad325a25befe961862dccb118c251239b84cfb63f1c72c205df31055ad69 SHA512 d4d8928aa63b7e174c7fe8099d349a5779e8be1b1a71dfecfded9f971533ba677fc85013c53c7cafdc05e1aed81820c6ef3b5e7c3f6a5cae62fc284a2a9371db
|
||||
DIST nextcloud-client-3.15.2.tar.gz 15671238 BLAKE2B ea98587f4183d42d3e6ace54c0cd8b2208e7e21bfbb2385af84c8688b2d5464171f90e287302c5d6081b234b8cbec4e2b05635d1385a2980f133bba7127a6203 SHA512 982b74d57954440496f973781aa6a719d316b3651fecbb5da4d4b211dda0574094b2ba35f83c6afe2e67c7be095528e0cf8544e9214e8d9db445f1ab95c8c256
|
||||
EBUILD nextcloud-client-3.15.2-r1.ebuild 3205 BLAKE2B 8f42717f3f09eaf080f49082c39bc73064e085bf2a4fccb4c9d8fef7559b06698769736a4951b0ea162ba86b17d15378417e056104339f5ae57eb1abad3c505f SHA512 4aaa95ac4b9dd7f1715a962bb8d3f79a9f5f431550cd4f4d54c92d4722f518714034b6f15a9738e3624bc3620ab378c9001755215adcc971f02099a13719364a
|
||||
MISC metadata.xml 712 BLAKE2B 423b16fa8879b0bc21d8ff1c692e5e592f571b5d69dcdd35fe79dae08b770c0d5beb2cbf71af2e7410d1dfd6917d15bac0482a84a40ce602ab03ab0f59940355 SHA512 2cfeff27549192c2aaa9c64369545e75b3a056c123d7647c96505dd410490230027401961e95ef88c93b0485393bd54aa11ddc922bcaf2782f9e68a2d8d17b32
|
||||
@@ -0,0 +1,35 @@
|
||||
From 463b4e63046a907581d5f4899aaddfa0afd9120a Mon Sep 17 00:00:00 2001
|
||||
From: Florian Schmaus <flo@geekplace.eu>
|
||||
Date: Tue, 22 Oct 2024 12:18:31 +0200
|
||||
Subject: [PATCH] doc: delete section containing non-existing images
|
||||
|
||||
Those images where deleted in 6d3335bd60ba ("Update instructions to
|
||||
build on Windows.") and are no longer available. Hence, drop the
|
||||
whole section referencing them.
|
||||
|
||||
Fixes: 6d3335bd60ba1cb499985fc15e0b918fe8c404f4
|
||||
--- a/doc/building.rst
|
||||
+++ b/doc/building.rst
|
||||
@@ -215,19 +215,6 @@ System requirements
|
||||
- Microsoft Visual Studio 2022 and tools to compile C++
|
||||
- `KDE Craft <https://community.kde.org/Craft>`_
|
||||
|
||||
-Setting up Microsoft Visual Studio
|
||||
-----------------------------------
|
||||
-
|
||||
-1. Click on 'Modify' in the Visual Studio Installer:
|
||||
-
|
||||
- .. image:: ./images/building/visual-studio-installer.png
|
||||
- :alt: Visual Studio Installer
|
||||
-
|
||||
-2. Select 'Desktop development with C++'
|
||||
-
|
||||
- .. image:: ./images/building/desktop-development-with-cpp.png
|
||||
- :alt: Desktop development with C++
|
||||
-
|
||||
Handling the dependencies
|
||||
-------------------------
|
||||
We handle the dependencies using `KDE Craft <https://community.kde.org/Craft>`_ because it is easy to set it up and it makes the maintenance much more reliable in all platforms.
|
||||
--
|
||||
2.45.2
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
diff --git a/src/cmd/netrcparser.cpp b/src/cmd/netrcparser.cpp
|
||||
index 266fe4f..15417e1 100644
|
||||
--- a/src/cmd/netrcparser.cpp
|
||||
+++ b/src/cmd/netrcparser.cpp
|
||||
@@ -14,8 +14,7 @@
|
||||
|
||||
#include <QDir>
|
||||
#include <QFile>
|
||||
-#include <QTextStream>
|
||||
-#include <QStringTokenizer>
|
||||
+#include <QRegularExpression>
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
@@ -58,32 +57,33 @@ bool NetrcParser::parse()
|
||||
}
|
||||
QString content = netrc.readAll();
|
||||
|
||||
- auto tokenizer = QStringTokenizer{content, u" \n\t"};
|
||||
+ auto tokens = content.split(QRegularExpression("\\s+"));
|
||||
|
||||
LoginPair pair;
|
||||
QString machine;
|
||||
bool isDefault = false;
|
||||
- for(auto itToken = tokenizer.cbegin(); itToken != tokenizer.cend(); ++itToken) {
|
||||
- const auto key = *itToken;
|
||||
+ for(int i=0; i<tokens.count(); i++) {
|
||||
+ const auto key = tokens[i];
|
||||
if (key == defaultKeyword) {
|
||||
tryAddEntryAndClear(machine, pair, isDefault);
|
||||
isDefault = true;
|
||||
continue; // don't read a value
|
||||
}
|
||||
|
||||
- if (itToken != tokenizer.cend()) {
|
||||
+ i++;
|
||||
+ if (i > tokens.count()) {
|
||||
qDebug() << "error fetching value for" << key;
|
||||
return false;
|
||||
}
|
||||
- auto value = *(++itToken);
|
||||
+ auto value = tokens[i];
|
||||
|
||||
if (key == machineKeyword) {
|
||||
tryAddEntryAndClear(machine, pair, isDefault);
|
||||
- machine = value.toString();
|
||||
+ machine = value;
|
||||
} else if (key == loginKeyword) {
|
||||
- pair.first = value.toString();
|
||||
+ pair.first = value;
|
||||
} else if (key == passwordKeyword) {
|
||||
- pair.second = value.toString();
|
||||
+ pair.second = value;
|
||||
} // ignore unsupported tokens
|
||||
}
|
||||
tryAddEntryAndClear(machine, pair, isDefault);
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
Gentoo's toolchain always sets F_S (level 2 at minimum) by default.
|
||||
|
||||
https://bugs.gentoo.org/890072
|
||||
--- a/cmake/modules/DefineCompilerFlags.cmake
|
||||
+++ b/cmake/modules/DefineCompilerFlags.cmake
|
||||
@@ -47,12 +47,6 @@ if (${CMAKE_C_COMPILER_ID} MATCHES "(GNU|Clang)")
|
||||
|
||||
if (CMAKE_BUILD_TYPE)
|
||||
string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LOWER)
|
||||
- if (CMAKE_BUILD_TYPE_LOWER MATCHES "(release|relwithdebinfo|minsizerel)" AND (NOT ${CMAKE_C_FLAGS} MATCHES "FORTIFY_SOURCE=[3-9]"))
|
||||
- check_c_compiler_flag("-Wp,-D_FORTIFY_SOURCE=2" WITH_FORTIFY_SOURCE)
|
||||
- if (WITH_FORTIFY_SOURCE)
|
||||
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wp,-D_FORTIFY_SOURCE=2")
|
||||
- endif (WITH_FORTIFY_SOURCE)
|
||||
- endif()
|
||||
endif()
|
||||
endif (${CMAKE_C_COMPILER_ID} MATCHES "(GNU|Clang)")
|
||||
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -31,10 +31,6 @@ if(NOT MSVC)
|
||||
endif()
|
||||
|
||||
string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LOWER)
|
||||
- if(CMAKE_BUILD_TYPE_LOWER MATCHES "(release|relwithdebinfo|minsizerel)" AND ((NOT ${CMAKE_C_FLAGS} MATCHES "FORTIFY_SOURCE=[3-9]") AND (NOT ${CMAKE_CXX_FLAGS} MATCHES "FORTIFY_SOURCE=[3-9]")))
|
||||
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_FORTIFY_SOURCE=2")
|
||||
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_FORTIFY_SOURCE=2")
|
||||
- endif()
|
||||
|
||||
if (CMAKE_CXX_COMPILER MATCHES "Clang")
|
||||
# Calling Qt's qCWarning(category, ...) with no params for "..." is a GNU
|
||||
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>voyageur@gentoo.org</email>
|
||||
<name>Bernard Cafarelli</name>
|
||||
</maintainer>
|
||||
<maintainer type="person">
|
||||
<name>Florian Schmaus</name>
|
||||
<email>flow@gentoo.org</email>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="dolphin">Install the <pkg>kde-apps/dolphin</pkg> extension</flag>
|
||||
<flag name="nautilus">Install the <pkg>gnome-base/nautilus</pkg> extension</flag>
|
||||
<flag name="webengine">Enable old Flow1 login using <pkg>dev-qt/qtwebengine</pkg></flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="github">nextcloud/desktop</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
@@ -0,0 +1,124 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake virtualx xdg
|
||||
|
||||
DESCRIPTION="Desktop Syncing Client for Nextcloud"
|
||||
HOMEPAGE="https://github.com/nextcloud/desktop"
|
||||
SRC_URI="
|
||||
https://github.com/nextcloud/desktop/archive/v${PV/_/-}.tar.gz
|
||||
-> ${P}.tar.gz
|
||||
https://github.com/nextcloud/desktop/commit/49a7c8d7874643da2550793877115c7f3dbd2d05.patch
|
||||
-> ${PN}-3.15.2-fix-macosvfs-file-sharing.png.patch
|
||||
"
|
||||
S="${WORKDIR}/desktop-${PV/_/-}"
|
||||
|
||||
LICENSE="CC-BY-3.0 GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm64 ~ppc64 ~x86"
|
||||
IUSE="doc dolphin nautilus test webengine"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-db/sqlite-3.34:3
|
||||
dev-libs/glib:2
|
||||
>=dev-libs/openssl-1.1.0:0=
|
||||
>=dev-libs/qtkeychain-0.14.2:=[qt6(+)]
|
||||
dev-qt/qt5compat:6
|
||||
>=dev-qt/qtbase-6.6.0:6[dbus,gui,network,sql,sqlite,widgets]
|
||||
dev-qt/qtdeclarative:6[widgets]
|
||||
dev-qt/qtsvg:6
|
||||
dev-qt/qtwebsockets:6
|
||||
kde-frameworks/karchive:6
|
||||
kde-frameworks/kguiaddons:6
|
||||
net-libs/libcloudproviders
|
||||
sys-libs/zlib
|
||||
dolphin? (
|
||||
kde-frameworks/kcoreaddons:6
|
||||
kde-frameworks/kio:6
|
||||
)
|
||||
nautilus? ( dev-python/nautilus-python )
|
||||
webengine? ( dev-qt/qtwebengine:6[widgets] )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
dev-qt/qtbase:6[concurrent,xml]
|
||||
|| (
|
||||
gnome-base/librsvg
|
||||
media-gfx/inkscape
|
||||
)
|
||||
doc? (
|
||||
dev-python/sphinx
|
||||
dev-tex/latexmk
|
||||
dev-texlive/texlive-latexextra
|
||||
virtual/latex-base
|
||||
)
|
||||
test? (
|
||||
dev-util/cmocka
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
dev-qt/qttools:6[linguist]
|
||||
dolphin? ( >=kde-frameworks/extra-cmake-modules-5.106.0 )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.6.6-no-redefine-fortify-source.patch
|
||||
# https://github.com/nextcloud/desktop/pull/7383
|
||||
"${FILESDIR}"/${PN}-3.14.2-doc-fix.patch
|
||||
# https://github.com/nextcloud/desktop/pull/7691
|
||||
"${DISTDIR}"/${PN}-3.15.2-fix-macosvfs-file-sharing.png.patch
|
||||
# https://github.com/nextcloud/desktop/pull/7698
|
||||
"${FILESDIR}"/${PN}-3.15.2-netrc.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# Keep tests in ${T}
|
||||
sed -i -e "s#\"/tmp#\"${T}#g" test/test*.cpp || die
|
||||
# The image under images/building/path.png does no longer
|
||||
# exist. This is already fixed upstream and can be dropped on the
|
||||
# next bump
|
||||
sed -i '/images\/building\/path.png/d' doc/building.rst || die
|
||||
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
|
||||
-DBUILD_UPDATER=OFF
|
||||
$(cmake_use_find_package doc Sphinx)
|
||||
$(cmake_use_find_package doc PdfLatex)
|
||||
-DBUILD_WITH_WEBENGINE=$(usex webengine)
|
||||
-DBUILD_SHELL_INTEGRATION_DOLPHIN=$(usex dolphin)
|
||||
-DBUILD_SHELL_INTEGRATION_NAUTILUS=$(usex nautilus)
|
||||
-DBUILD_TESTING=$(usex test)
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
TEST_VERBOSE=1 virtx cmake_src_test
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local compile_targets=(all)
|
||||
if use doc; then
|
||||
compile_targets+=(doc doc-man)
|
||||
fi
|
||||
cmake_src_compile ${compile_targets[@]}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
if ! has_version -r "dev-libs/qtkeychain[keyring]"; then
|
||||
elog "dev-libs/qtkeychain has not been build with the 'keyring' USE flag."
|
||||
elog "Please consider enabling the 'keyring' USE flag. Otherwise you may"
|
||||
elog "have to authenticate manually every time you start the nextlcoud client."
|
||||
elog "See https://bugs.gentoo.org/912844 for more information."
|
||||
fi
|
||||
}
|
||||
+1
-1
@@ -1,2 +1,2 @@
|
||||
gentoo:default/linux/arm64/23.0/hardened/selinux/systemd
|
||||
../../../../../../targets/rpi4
|
||||
../../../../../../targets/rpi
|
||||
@@ -1,4 +1,4 @@
|
||||
amd64 default/linux/amd64/23.0/feffe/server exp
|
||||
amd64 default/linux/amd64/23.0/feffe/server/systemd exp
|
||||
amd64 default/linux/amd64/23.0/feffe/desktop exp
|
||||
arm64 default/linux/arm64/23.0/feffe/rpi4 exp
|
||||
arm64 default/linux/arm64/23.0/feffe/rpi exp
|
||||
|
||||
@@ -8,27 +8,24 @@ ABI_X86="64 32"
|
||||
|
||||
POLICY_TYPES="mcs"
|
||||
|
||||
PYTHON_SINGLE_TARGET="-* python3_11"
|
||||
PYTHON_TARGETS="python3_11 python3_12"
|
||||
|
||||
USE="${USE}
|
||||
kerberos ldap gssapi
|
||||
X gui widgets rdp vnc wayland tray systray
|
||||
fcitx4 truetype fontconfig spell harfbuzz xft
|
||||
opengl vaapi xinerama libkms dri egl qsv vulkan vmaf libplacebo shaderc opencl
|
||||
bluray drm dvd lcms bdplus v4l aacs colord optical udf archive
|
||||
pulseaudio ogg mp3 alsa vorbis native-headset ofono-headset opus
|
||||
jpeg zimg png tiff gif exif xmp svg hdri heif corefonts webp raw x265 libde265 wallpapers vpx gdk-pixbuf libdovi
|
||||
pulseaudio pipewire ogg mp3 alsa vorbis native-headset ofono-headset opus
|
||||
jpeg zimg png tiff gif exif xmp svg hdri heif corefonts webp raw x265 libde265 wallpapers vpx gdk-pixbuf libdovi jpeg2k
|
||||
udisks smartcard cryptsetup pkcs7 gpg
|
||||
bluetooth usb
|
||||
gdbm
|
||||
gtk cairo
|
||||
wifi
|
||||
modemmanager networkmanager nftables conntrack
|
||||
modemmanager networkmanager nftables conntrack libproxy
|
||||
cups scanner ocr printsupport
|
||||
libnotify
|
||||
hwaccel
|
||||
qt qt5
|
||||
qt qt5 qt6 qml kf6compat
|
||||
rustfmt
|
||||
libxml2
|
||||
"
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
=dev-python/cchardet-2.1.7 ~amd64
|
||||
=dev-python/sip-6.3.1 ~amd64
|
||||
=dev-python/PyQt-builder-1.10.3 ~amd64
|
||||
=dev-python/PyQt5-5.15.5_pre2107091435 ~amd64
|
||||
=dev-python/PyQtWebEngine-5.15.5_pre2108100905 ~amd64
|
||||
app-text/calibre ~amd64
|
||||
@@ -2,5 +2,5 @@ media-libs/libva ~amd64
|
||||
media-libs/gmmlib ~amd64
|
||||
media-libs/libvpl ~amd64
|
||||
media-libs/libvmaf ~amd64
|
||||
media-libs/oneVPL-intel-gpu ~amd64
|
||||
media-libs/vpl-gpu-rt ~amd64
|
||||
media-libs/libva-intel-media-driver ~amd64
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
=media-libs/mesa-24.2.6* ~amd64
|
||||
=dev-util/intel_clc-24.2.6* ~amd64
|
||||
@@ -0,0 +1 @@
|
||||
=media-video/mkvtoolnix-88.0
|
||||
@@ -1,2 +1 @@
|
||||
=mail-client/thunderbird-78.14.0 ~amd64
|
||||
=net-libs/nodejs-22.4.1 ~amd64
|
||||
<dev-util/cargo-c-0.11.0 ~amd64
|
||||
|
||||
@@ -1 +1 @@
|
||||
=dev-python/python-mpv-1.0.7
|
||||
=dev-python/python-mpv-1.0.8
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
media-libs/babl introspection
|
||||
media-libs/gegl introspection
|
||||
@@ -0,0 +1 @@
|
||||
media-video/mkvtoolnix dbus gui
|
||||
@@ -0,0 +1 @@
|
||||
media-video/pipewire pipewire-alsa sound-server
|
||||
@@ -1 +1 @@
|
||||
app-admin/puppet -ldap
|
||||
app-admin/openvox -ldap
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
dev-python/PyQt6 quick qml webchannel
|
||||
dev-python/pyqt6 quick qml webchannel
|
||||
dev-python/pyqt6-webengine quick
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
|
||||
-*net-analyzer/icinga2
|
||||
-*app-admin/puppet
|
||||
-*app-admin/openvox
|
||||
|
||||
dev-libs/bemenu
|
||||
gui-wm/sway
|
||||
media-video/mpv
|
||||
www-client/firefox
|
||||
gui-apps/foot
|
||||
x11-terms/ghostty
|
||||
|
||||
media-fonts/noto
|
||||
media-fonts/noto-cjk
|
||||
media-fonts/noto-emoji
|
||||
|
||||
@@ -18,4 +18,7 @@ USE="${USE}
|
||||
-X
|
||||
pi4
|
||||
policykit
|
||||
dbus
|
||||
"
|
||||
|
||||
RUBY_TARGETS="ruby32 ${RUBY_TARGETS}"
|
||||
@@ -0,0 +1,2 @@
|
||||
net-analyzer/icinga2 ~arm64
|
||||
net-analyzer/monitoring-plugins ~arm64
|
||||
@@ -0,0 +1,6 @@
|
||||
~app-admin/openvox-8.25.0 ~arm64
|
||||
~dev-ruby/semantic_puppet-1.1.1 ~arm64
|
||||
~dev-ruby/facter-4.10.0 ~arm64
|
||||
~dev-ruby/deep_merge-1.2.2 ~arm64
|
||||
~dev-ruby/hocon-1.4.0 ~arm64
|
||||
~dev-ruby/sys-filesystem-1.5.3 ~arm64
|
||||
@@ -0,0 +1,7 @@
|
||||
=sys-auth/pam_yubico-2.27 **
|
||||
sys-auth/pam_yubico
|
||||
sys-auth/libyubikey
|
||||
=sys-auth/ykclient-2.15 **
|
||||
sys-auth/ykclient
|
||||
sys-auth/ykpers
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
media-libs/freetype harfbuzz
|
||||
@@ -1,7 +1,7 @@
|
||||
-*app-editor/nano
|
||||
|
||||
*net-analyzer/icinga2
|
||||
*app-admin/puppet
|
||||
*app-admin/openvox
|
||||
|
||||
*app-admin/rsyslog
|
||||
*app-admin/logrotate
|
||||
@@ -10,13 +10,9 @@
|
||||
*sys-power/cpupower
|
||||
*sys-apps/sau
|
||||
*app-editors/vim
|
||||
*net-analyzer/check_service
|
||||
*net-misc/chrony
|
||||
*sys-apps/rotator
|
||||
*sys-apps/cronwrapper
|
||||
*mail-mta/postfix
|
||||
*app-admin/sudo
|
||||
*sys-process/cronie
|
||||
*net-firewall/nftables
|
||||
*app-portage/eix
|
||||
*app-portage/cpuid2cpuflags
|
||||
@@ -24,6 +20,6 @@
|
||||
*mail-client/mailx
|
||||
*net-analyzer/tcpdump
|
||||
|
||||
*media-libs/raspberrypi-userland
|
||||
*dev-embedded/raspberrypi-utils
|
||||
*sys-boot/raspberrypi-firmware
|
||||
*sys-kernel/raspberrypi-image
|
||||
@@ -1,2 +0,0 @@
|
||||
=net-analyzer/icinga2-2.14.2 ~arm64
|
||||
=net-analyzer/monitoring-plugins-2.3.5 ~arm64
|
||||
@@ -1,5 +0,0 @@
|
||||
=sys-auth/pam_yubico-2.27 **
|
||||
=sys-auth/libyubikey-1.13 ~arm64
|
||||
=sys-auth/ykclient-2.15 **
|
||||
=sys-auth/ykpers-1.20.0-r1 ~arm64
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
=app-admin/puppet-8.5.1 ~arm64
|
||||
=dev-ruby/semantic_puppet-1.1.0 ~arm64
|
||||
=dev-ruby/facter-4.4.1 ~arm64
|
||||
=dev-ruby/deep_merge-1.2.2 ~arm64
|
||||
=dev-ruby/hocon-1.4.0 ~arm64
|
||||
@@ -27,4 +27,8 @@ USE="${USE}
|
||||
lapack
|
||||
vpx
|
||||
lm-sensors
|
||||
opus
|
||||
"
|
||||
NGINX_MODULES_HTTP="${NGINX_MODULES_HTTP} v2 v3 realip"
|
||||
|
||||
RUBY_TARGETS="ruby32 ${RUBY_TARGETS}"
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
=dev-ruby/highline-3.1.2
|
||||
@@ -1 +1,3 @@
|
||||
www-apps/jellyfin ~amd64
|
||||
www-apps/jellyfin-bin ~amd64
|
||||
www-apps/jackett-bin ~amd64
|
||||
www-apps/flaresolverr-bin ~amd64
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
=sys-fs/zfs-2.0.4-r1 ~amd64
|
||||
=sys-fs/zfs-kmod-2.0.4-r1 ~amd64
|
||||
=sys-fs/zfs-2.4.0* ~amd64
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
# firefox build failure https://bugs.gentoo.org/936013
|
||||
=net-libs/nodejs-22.3.0
|
||||
=dev-python/chardet-6.0.0_p1
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
app-antivirus/clamav rar clamonacc
|
||||
@@ -0,0 +1 @@
|
||||
media-libs/freetype harfbuzz
|
||||
@@ -0,0 +1 @@
|
||||
net-libs/libssh static-libs
|
||||
@@ -0,0 +1,2 @@
|
||||
x11-base/xorg-server xvfb
|
||||
media-libs/libglvnd X
|
||||
@@ -0,0 +1 @@
|
||||
media-video/mkvtoolnix -dbus
|
||||
@@ -0,0 +1 @@
|
||||
app-admin/openvox shadow
|
||||
@@ -1 +0,0 @@
|
||||
app-admin/puppet shadow
|
||||
@@ -1,7 +1,7 @@
|
||||
-*app-editor/nano
|
||||
|
||||
*net-analyzer/icinga2
|
||||
*app-admin/puppet
|
||||
*app-admin/openvox
|
||||
|
||||
*app-admin/rsyslog
|
||||
*app-admin/logrotate
|
||||
@@ -10,13 +10,9 @@
|
||||
*sys-power/acpid
|
||||
*sys-apps/sau
|
||||
*app-editors/vim
|
||||
*net-analyzer/check_service
|
||||
*net-misc/chrony
|
||||
*sys-apps/rotator
|
||||
*sys-apps/cronwrapper
|
||||
*mail-mta/postfix
|
||||
*app-admin/sudo
|
||||
*sys-process/cronie
|
||||
*net-firewall/nftables
|
||||
*app-portage/eix
|
||||
*app-portage/cpuid2cpuflags
|
||||
@@ -24,3 +20,5 @@
|
||||
*mail-client/mailx
|
||||
*net-analyzer/tcpdump
|
||||
*sys-apps/sysalert
|
||||
*sys-apps/watchdog
|
||||
*app-admin/rasdaemon
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
DIST cronwrapper-0.1.5.tar.gz 4363 BLAKE2B 274d20068c0803bcb5305c7d7611e1a921b318f101353864cfba39cbe172658297f7b972eca771f0ddb245ec20496265db62a19757bc518959ba0ec8bbe1d1d2 SHA512 33125f96bc6fdbebf81f927584076ccfab320e215a089b3c3bd4a746a0ba73cff2a9e4c091c2790eac5235e6aceb57885664c6d88877b49018e59c5b8853cfb9
|
||||
EBUILD cronwrapper-0.1.5.ebuild 621 BLAKE2B 6ac6ff2c7d8abb3298ba20d0330b093d3a74e542d63a6685b9c7e8f9781d8198c5806d9b6e0faf0a8bdad2028d72f7403d35e7d737c9d22190f3a9bf7fb42d1c SHA512 8556db92c8d07c0512c21d23adb89ff691ce6b2ef12970f5fa7e28837b0655260b5a5a8c3f9baf9fba699c323ea6c11dea726ec4bae35cc5c3dafa3457f70ca5
|
||||
EBUILD cronwrapper-9999.ebuild 621 BLAKE2B 6ac6ff2c7d8abb3298ba20d0330b093d3a74e542d63a6685b9c7e8f9781d8198c5806d9b6e0faf0a8bdad2028d72f7403d35e7d737c9d22190f3a9bf7fb42d1c SHA512 8556db92c8d07c0512c21d23adb89ff691ce6b2ef12970f5fa7e28837b0655260b5a5a8c3f9baf9fba699c323ea6c11dea726ec4bae35cc5c3dafa3457f70ca5
|
||||
@@ -1,29 +0,0 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Tool for managing cronjob in a sane way"
|
||||
HOMEPAGE="https://gitea.fulh.ax/feffe/cronwrapper"
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://gitea.fulh.ax/feffe/cronwrapper.git"
|
||||
inherit git-r3
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
else
|
||||
SRC_URI="https://gitea.fulh.ax/feffe/cronwrapper/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="amd64 arm64"
|
||||
S="${WORKDIR}/cronwrapper"
|
||||
fi
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
BDEPEND=""
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Tool for managing cronjob in a sane way"
|
||||
HOMEPAGE="https://gitea.fulh.ax/feffe/cronwrapper"
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://gitea.fulh.ax/feffe/cronwrapper.git"
|
||||
inherit git-r3
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
else
|
||||
SRC_URI="https://gitea.fulh.ax/feffe/cronwrapper/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="amd64 arm64"
|
||||
S="${WORKDIR}/cronwrapper"
|
||||
fi
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
BDEPEND=""
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
DIST rotator-0.1.1.tar.gz 5098 BLAKE2B ac752018f2f04571e9b1cd5fa6e0fc3a6e2ac83f62d5b4d1191335ba555a5da8a9dd6e750b1afe3f0267fd3376aa9c648f900d678b0eca65492f5d14d5cda493 SHA512 325c3c745849f2f3c8df20af38aac4099e7355c1c29b05190e19684033f2acbbbf604f1cd9fc74f60b49deab096efc9e2bc216aa8c2072fc27d19806be100cdc
|
||||
EBUILD rotator-0.1.1.ebuild 596 BLAKE2B dea840a54efd56c91a7037f054d0a1df0fa7978798ff40e2f2ce09d50654d86170556e3874621cfa10c8dcc96e5cc167f13f5076576cb89fb58f69ab5643d464 SHA512 5a69ecb7c5440f4e19b5a48d77586d9aac0cafdc3bd0577cfb256bfb1e52e5ce2ae45211e5fc0660e0d8fc1c11f08aa5c55e476dd17c37b2dadb1505d096d9f2
|
||||
EBUILD rotator-9999.ebuild 596 BLAKE2B dea840a54efd56c91a7037f054d0a1df0fa7978798ff40e2f2ce09d50654d86170556e3874621cfa10c8dcc96e5cc167f13f5076576cb89fb58f69ab5643d464 SHA512 5a69ecb7c5440f4e19b5a48d77586d9aac0cafdc3bd0577cfb256bfb1e52e5ce2ae45211e5fc0660e0d8fc1c11f08aa5c55e476dd17c37b2dadb1505d096d9f2
|
||||
@@ -1,29 +0,0 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Tool for rotating backup files"
|
||||
HOMEPAGE="https://gitea.fulh.ax/feffe/rotator"
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://gitea.fulh.ax/feffe/rotator.git"
|
||||
inherit git-r3
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
else
|
||||
SRC_URI="https://gitea.fulh.ax/feffe/rotator/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="amd64 arm64"
|
||||
S="${WORKDIR}/rotator"
|
||||
fi
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
BDEPEND=""
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12,13} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Tool for rotating backup files"
|
||||
HOMEPAGE="https://gitea.fulh.ax/feffe/rotator"
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://gitea.fulh.ax/feffe/rotator.git"
|
||||
inherit git-r3
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
else
|
||||
SRC_URI="https://gitea.fulh.ax/feffe/rotator/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="amd64 arm64"
|
||||
S="${WORKDIR}/rotator"
|
||||
fi
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=""
|
||||
BDEPEND=""
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
DIST sau-1.2.0.tar.gz 9826 BLAKE2B 008e9683e99435d5c812e49ff6b9286d5dc0f4a6097eb56eac28c8ede77bed8ee1bd0382ffc02061ca71b856a03d71685a8f5021e1a8b52c41a2b6c0e57be2b0 SHA512 da38580b2989c04a7edf93d1f6222446e1ad9775e6d337aaf32d0a53019265a30457dc0351f7d18040c0f87bd6707105663d445410a330c41a2232ce2b4c1941
|
||||
EBUILD sau-1.2.0.ebuild 646 BLAKE2B 36ebe6dcf3b28d63c214bd903a648c73aa0661f69c8b8557cf8347f34e1a087b23748a38b6eca8ddf9029d85e26a5533e0ff41d153683df173622a8152a879e5 SHA512 416226753408db6406e6ccc96f71ca8c05bd1f3f383f6f39b811a4a2e65fe501e3e66ab29d518f4d29dccc802e977a48c92d340dc65c2f6bcc240b0e362fe213
|
||||
EBUILD sau-9999.ebuild 645 BLAKE2B 7625af641139a08799fadf2caafeac921f81dde1773b8c7f047bb31a3c98ef42bf35d862378018b8ea299acf11edcc385817d37f1bcd45f8581b92cc85514168 SHA512 959e853dc4f5694ee511edc5b3ceb58308e9e5cadd46f92dd4c4de140d60ed20fd2106ce81a29e2dd13eda2aa5598743f2ebd9410824ac281410446c20bf1c7a
|
||||
DIST sau-1.5.2.tar.gz 11989 BLAKE2B 6f190bafc7762cef5b3e6d34013570292970183cf846561c7ccca17498c930a9d90cb5461c618bf68aa54e6004450618be5143082d7a74ee17b1c693521d52f7 SHA512 a987ba788002b01726a4a0559992988f8ddff0a76f6c95f853a28c7f4ae3bf128764b7b9739922d8f4d564819a1bfe4ac2308147ad1b0168410c0eb619984f90
|
||||
EBUILD sau-1.5.2.ebuild 716 BLAKE2B 32f250522bd52a22077bab70cebb6edc1c9c76cc38046c1c38e39486383a3bf32cbbd4e46f418069a31ca67eb920e35d5efc309dab30b6236a1e2a5d1c13c0d5 SHA512 6f848c0198260491ff2cc7fd46b5aaa52b202c78714a940e6cc2141396203a28a7bff461d6cad61b5c627ae50ebd5d42d089b84f440478bd385898c315c887a7
|
||||
EBUILD sau-9999.ebuild 716 BLAKE2B 32f250522bd52a22077bab70cebb6edc1c9c76cc38046c1c38e39486383a3bf32cbbd4e46f418069a31ca67eb920e35d5efc309dab30b6236a1e2a5d1c13c0d5 SHA512 6f848c0198260491ff2cc7fd46b5aaa52b202c78714a940e6cc2141396203a28a7bff461d6cad61b5c627ae50ebd5d42d089b84f440478bd385898c315c887a7
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user