Sync with portage [Thu Apr 30 09:40:50 MSK 2020].

develop 1649
root 4 years ago
parent 2e01f35ff9
commit 842b6fd989

Binary file not shown.

Binary file not shown.

@ -0,0 +1,106 @@
From 15f5a1bda22bc4586e7ad8d24222befd1933a822 Mon Sep 17 00:00:00 2001
From: Andre lorbach <alorbach@adiscon.com>
Date: Wed, 29 Apr 2020 09:24:10 +0200
Subject: [PATCH] SKIP librelp tlscmd tests if librelp was build without
openssl support
closes https://github.com/rsyslog/rsyslog/issues/4131
---
tests/imrelp-tls-cfgcmd.sh | 23 ++++++++++++-----------
tests/sndrcv_relp_tls-cfgcmd.sh | 25 +++++++++++++------------
2 files changed, 25 insertions(+), 23 deletions(-)
diff --git a/tests/imrelp-tls-cfgcmd.sh b/tests/imrelp-tls-cfgcmd.sh
index bbd63c9cd3..bb1af4ec91 100755
--- a/tests/imrelp-tls-cfgcmd.sh
+++ b/tests/imrelp-tls-cfgcmd.sh
@@ -1,6 +1,7 @@
#!/bin/bash
# addd 2019-11-14 by alorbach, released under ASL 2.0
. ${srcdir:=.}/diag.sh init
+require_relpEngineSetTLSLibByName
export NUMMESSAGES=1000
export RSYSLOG_DEBUG="debug nologfuncflow noprintmutexaction nostdout"
export RSYSLOG_DEBUGLOG="$RSYSLOG_DYNNAME.receiver.debuglog"
@@ -27,21 +28,21 @@ tcpflood --check-only -k "Protocol=-ALL,TLSv1.2" -u "openssl" -Trelp-tls -acertv
shutdown_when_empty
wait_shutdown
-content_check --check-only "parameter tls.tlslib ignored" ${RSYSLOG_DEBUGLOG}
+content_check --check-only "relpTcpTLSSetPrio_gtls" ${RSYSLOG_DEBUGLOG}
ret=$?
if [ $ret == 0 ]; then
- echo "SKIP: Parameter tls.tlslib not supported"
+ echo "SKIP: LIBRELP was build without OPENSSL Support"
+ skip_test
+fi
+
+content_check --check-only "OpenSSL Version too old" ${RSYSLOG_DEBUGLOG}
+ret=$?
+if [ $ret == 0 ]; then
+ echo "SKIP: OpenSSL Version too old"
skip_test
else
- content_check --check-only "OpenSSL Version too old" ${RSYSLOG_DEBUGLOG}
- ret=$?
- if [ $ret == 0 ]; then
- echo "SKIP: OpenSSL Version too old"
- skip_test
- else
- # Kindly check for a failed session
- content_check "relp connect failed with return 10031" ${RSYSLOG_DYNNAME}.tcpflood
- fi
+ # Kindly check for a failed session
+ content_check "relp connect failed with return 10031" ${RSYSLOG_DYNNAME}.tcpflood
fi
exit_test
\ No newline at end of file
diff --git a/tests/sndrcv_relp_tls-cfgcmd.sh b/tests/sndrcv_relp_tls-cfgcmd.sh
index ff7b3bb75c..57e0f720f0 100755
--- a/tests/sndrcv_relp_tls-cfgcmd.sh
+++ b/tests/sndrcv_relp_tls-cfgcmd.sh
@@ -1,6 +1,7 @@
#!/bin/bash
# added 2019-11-13 by alorbach
. ${srcdir:=.}/diag.sh init
+require_relpEngineSetTLSLibByName
export PORT_RCVR="$(get_free_port)"
export RSYSLOG_DEBUG="debug nologfuncflow noprintmutexaction nostdout"
export RSYSLOG_DEBUGLOG="$RSYSLOG_DYNNAME.receiver.debuglog"
@@ -40,22 +41,22 @@ wait_shutdown 2
shutdown_when_empty
wait_shutdown
-content_check --check-only "parameter tls.tlslib ignored" ${RSYSLOG_DEBUGLOG}
+content_check --check-only "relpTcpConnectTLSInit_gnutls" ${RSYSLOG_DEBUGLOG}
ret=$?
if [ $ret == 0 ]; then
- echo "SKIP: Parameter tls.tlslib not supported"
+ echo "SKIP: LIBRELP was build without OPENSSL Support"
+ skip_test
+fi
+
+content_check --check-only "OpenSSL Version too old" $RSYSLOG_DEBUGLOG
+ret=$?
+if [ $ret == 0 ]; then
+ echo "SKIP: OpenSSL Version too old"
skip_test
else
- content_check --check-only "OpenSSL Version too old" $RSYSLOG_DEBUGLOG
- ret=$?
- if [ $ret == 0 ]; then
- echo "SKIP: OpenSSL Version too old"
- skip_test
- else
- # Kindly check for a failed session
- content_check "librelp error 10031" $RSYSLOG_DEBUGLOG
- # content_check "OpenSSL Error Stack:"
- fi
+ # Kindly check for a failed session
+ content_check "librelp error 10031" $RSYSLOG_DEBUGLOG
+# content_check "OpenSSL Error Stack:"
fi
exit_test
\ No newline at end of file

@ -98,6 +98,8 @@ if [[ ${PV} == "9999" ]]; then
DEPEND+=" >=dev-python/docutils-0.12"
fi
PATCHES=( "${FILESDIR}"/${P}-skip-librelp-openssl-specific-tests.patch )
CONFIG_CHECK="~INOTIFY_USER"
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"

@ -1,2 +1,3 @@
DIST salt-2018.3.4.tar.gz 14404085 BLAKE2B 932b30b1ba60aefd3a6874a8ebe4cb6c469d82e31f6acdbe8a5641d09e3316796b5403ef803a355cec6255c1aede8bac3b66af179bd1bbaa5418c7076229cef9 SHA512 f17e06fdbf4741f231d9e769be57de4f6079e9283881b4bafa0d23928d7626a1f9c02b9f49c654b29c3e6ee8ed3d3ddf42c21baecef158ad63a97dc87895b21b
DIST salt-2019.2.3.tar.gz 14572686 BLAKE2B 770b815f43ca8651408c1c057377b02c8037e673584c719e0a9b5c56c13c8db2db0e2c8641a17323f2b890d4a69d1508b0090624c7067869d9fa84303c2f8585 SHA512 cd694ca19696a84e3370e39c61da180e508592253713d99dd6dd5342b57c2814fee22e46bade30d7604f5730d9e1a736e59c3a512161f744d3f097f74a2836c5
DIST salt-2019.2.4.tar.gz 14572556 BLAKE2B a1057baa5ab6c0a07f34ce658a1d5bc644f968600663d28d084eb712b55faaee93b8410d81c4b5324944e6e1f2067ffb102200088832e1b0076fed78c8542ae6 SHA512 9e621cbd78ead1060a2b0c07e7ef02e8c4590360a95c51ac29fa8c1add34f617e4407dd28b67cae3b0fd68b333782185edcf1159edd2db08e8b4e79b6b07a63f
DIST salt-3000.2.tar.gz 15231513 BLAKE2B 2090d0f52f953a42f1685ad190750e9c76ad6e862a3272444fef063a7605f69a6c542f04165a41fb9cdaa126a878cc133d4857faa70edc5eac4bf49bdde937ab SHA512 88e8876ed8cd18e942c2194686cda68f40fa49e69e317ca488bf58e095bcf6cdf8771d93eba7960038941cc5863e13a4eea4dad5256c12da7cd8288a2c61f59d

@ -0,0 +1,58 @@
diff --git a/tests/unit/fileserver/test_roots.py b/tests/unit/fileserver/test_roots.py
index e0d939a086..33a9b6dc35 100644
--- a/tests/unit/fileserver/test_roots.py
+++ b/tests/unit/fileserver/test_roots.py
@@ -11,7 +11,7 @@ import tempfile
# Import Salt Testing libs
from tests.support.mixins import AdaptedConfigurationTestCaseMixin, LoaderModuleMockMixin
-from tests.support.unit import TestCase
+from tests.support.unit import TestCase, skipIf
from tests.support.mock import patch
from tests.support.runtests import RUNTIME_VARS
@@ -165,6 +165,7 @@ class RootsTest(TestCase, AdaptedConfigurationTestCaseMixin, LoaderModuleMockMix
self.assertIn('empty_dir', ret)
self.assertIn(UNICODE_DIRNAME, ret)
+ @skipIf(True, "doesn't like sandbox")
def test_symlink_list(self):
orig_file_roots = self.opts['file_roots']
try:
diff --git a/tests/unit/modules/test_dockermod.py b/tests/unit/modules/test_dockermod.py
index 191bfc123f..1956127f0b 100644
--- a/tests/unit/modules/test_dockermod.py
+++ b/tests/unit/modules/test_dockermod.py
@@ -793,6 +793,7 @@ class DockerTestCase(TestCase, LoaderModuleMockMixin):
},
ret)
+ @skipIf(True, "Doesn't work with sandbox")
def test_call_success(self):
'''
test module calling inside containers
diff --git a/tests/unit/states/test_pip_state.py b/tests/unit/states/test_pip_state.py
index 13c158b309..27e10e6161 100644
--- a/tests/unit/states/test_pip_state.py
+++ b/tests/unit/states/test_pip_state.py
@@ -384,6 +384,7 @@ class PipStateUtilsTest(TestCase):
@skipIf(salt.utils.path.which_bin(KNOWN_BINARY_NAMES) is None, 'virtualenv not installed')
+@skipIf(True, "Needs network access")
class PipStateInstallationErrorTest(TestCase):
def test_importable_installation_error(self):
diff --git a/tests/unit/utils/test_jinja.py b/tests/unit/utils/test_jinja.py
index f48fa9d42c..bb57929cfa 100644
--- a/tests/unit/utils/test_jinja.py
+++ b/tests/unit/utils/test_jinja.py
@@ -1268,7 +1268,7 @@ class TestCustomExtensions(TestCase):
dict(opts=self.local_opts, saltenv='test', salt=self.local_salt))
self.assertEqual(rendered, '16777216')
- @flaky
+ @skipIf("True", "Needs network access")
def test_http_query(self):
'''
Test the `http_query` Jinja filter.

@ -0,0 +1,79 @@
From 11c23a526ae926ca082ee7ad92246e085c51b8e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blaisot?= <sebastien@blaisot.org>
Date: Fri, 17 Jan 2020 17:06:42 +0100
Subject: [PATCH] Import abstract base classes from collection.abc in python
3.3+
---
salt/modules/file.py | 6 +++++-
salt/modules/win_file.py | 5 ++++-
salt/states/file.py | 6 +++++-
salt/utils/dictdiffer.py | 5 ++++-
4 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/salt/modules/file.py b/salt/modules/file.py
index 771b204d63fe..d1ec5e4c295d 100644
--- a/salt/modules/file.py
+++ b/salt/modules/file.py
@@ -29,7 +29,11 @@
import glob
import hashlib
import mmap
-from collections import Iterable, Mapping, namedtuple
+try:
+ from collections.abc import Iterable, Mapping
+except ImportError:
+ from collections import Iterable, Mapping
+from collections import namedtuple
from functools import reduce # pylint: disable=redefined-builtin
# pylint: disable=import-error,no-name-in-module,redefined-builtin
diff --git a/salt/modules/win_file.py b/salt/modules/win_file.py
index 4fd3eebcdd81..5bc983786a98 100644
--- a/salt/modules/win_file.py
+++ b/salt/modules/win_file.py
@@ -17,7 +17,10 @@
import logging
# pylint: disable=W0611
import operator # do not remove
-from collections import Iterable, Mapping # do not remove
+try:
+ from collections.abc import Iterable, Mapping # do not remove
+except ImportError:
+ from collections import Iterable, Mapping # do not remove
from functools import reduce # do not remove
import datetime # do not remove.
import tempfile # do not remove. Used in salt.modules.file.__clean_tmp
diff --git a/salt/states/file.py b/salt/states/file.py
index 23c3d3c53955..36231c69cff6 100644
--- a/salt/states/file.py
+++ b/salt/states/file.py
@@ -291,7 +291,11 @@ def run():
import sys
import time
import traceback
-from collections import Iterable, Mapping, defaultdict
+try:
+ from collections.abc import Iterable, Mapping
+except ImportError:
+ from collections import Iterable, Mapping
+from collections import defaultdict
from datetime import datetime, date # python3 problem in the making?
# Import salt libs
diff --git a/salt/utils/dictdiffer.py b/salt/utils/dictdiffer.py
index 30e87e885436..da6bd5ed944c 100644
--- a/salt/utils/dictdiffer.py
+++ b/salt/utils/dictdiffer.py
@@ -13,7 +13,10 @@
'''
from __future__ import absolute_import, print_function, unicode_literals
import copy
-from collections import Mapping
+try:
+ from collections.abc import Mapping
+except ImportError:
+ from collections import Mapping
from salt.ext import six

@ -0,0 +1,460 @@
diff --git a/salt/config/__init__.py b/salt/config/__init__.py
index 70b34ec949..4304d99bf7 100644
--- a/salt/config/__init__.py
+++ b/salt/config/__init__.py
@@ -8,6 +8,7 @@ from __future__ import absolute_import, print_function, unicode_literals, genera
import os
import re
import sys
+import copy
import glob
import time
import codecs
@@ -3191,7 +3192,7 @@ def apply_cloud_providers_config(overrides, defaults=None):
# Merge provided extends
keep_looping = False
for alias, entries in six.iteritems(providers.copy()):
- for driver, details in six.iteritems(entries):
+ for driver, details in copy.copy(entries).items():
if 'extends' not in details:
# Extends resolved or non existing, continue!
diff --git a/salt/grains/core.py b/salt/grains/core.py
index 9b244def9c..ede3a94de9 100644
--- a/salt/grains/core.py
+++ b/salt/grains/core.py
@@ -1939,7 +1939,7 @@ def os_data():
)
(osname, osrelease, oscodename) = \
[x.strip('"').strip("'") for x in
- linux_distribution(supported_dists=_supported_dists)]
+ linux_distribution()]
# Try to assign these three names based on the lsb info, they tend to
# be more accurate than what python gets from /etc/DISTRO-release.
# It's worth noting that Ubuntu has patched their Python distribution
diff --git a/salt/modules/boto_route53.py b/salt/modules/boto_route53.py
index a663ec7207..8d3d8c2105 100644
--- a/salt/modules/boto_route53.py
+++ b/salt/modules/boto_route53.py
@@ -158,7 +158,7 @@ def describe_hosted_zones(zone_id=None, domain_name=None, region=None,
else:
marker = None
ret = None
- while marker is not '':
+ while marker != '':
r = conn.get_all_hosted_zones(start_marker=marker,
zone_list=ret)
ret = r['ListHostedZonesResponse']['HostedZones']
diff --git a/salt/modules/file.py b/salt/modules/file.py
index b5b70e2d4c..41a9229eb4 100644
--- a/salt/modules/file.py
+++ b/salt/modules/file.py
@@ -2744,7 +2744,7 @@ def blockreplace(path,
if block_found:
diff = __utils__['stringutils.get_diff'](orig_file, new_file)
- has_changes = diff is not ''
+ has_changes = diff != ''
if has_changes and not dry_run:
# changes detected
# backup file attrs
diff --git a/salt/modules/iptables.py b/salt/modules/iptables.py
index e232c6931f..9708f45256 100644
--- a/salt/modules/iptables.py
+++ b/salt/modules/iptables.py
@@ -905,7 +905,7 @@ def insert(table='filter', chain=None, position=None, rule=None, family='ipv4'):
rules = get_rules(family=family)
size = len(rules[table][chain]['rules'])
position = (size + position) + 1
- if position is 0:
+ if position == 0:
position = 1
wait = '--wait' if _has_option('--wait', family) else ''
@@ -1040,7 +1040,7 @@ def _parse_conf(conf_file=None, in_mem=False, family='ipv4'):
ret_args = {}
chain = parsed_args['append']
for arg in parsed_args:
- if parsed_args[arg] and arg is not 'append':
+ if parsed_args[arg] and arg != 'append':
ret_args[arg] = parsed_args[arg]
if parsed_args['comment'] is not None:
comment = parsed_args['comment'][0].strip('"')
diff --git a/salt/modules/lxd.py b/salt/modules/lxd.py
index d6c2d8d4b9..d617cbb3df 100644
--- a/salt/modules/lxd.py
+++ b/salt/modules/lxd.py
@@ -1824,11 +1824,11 @@ def container_file_get(name, src, dst, overwrite=False,
if mode:
os.chmod(dst, mode)
- if uid or uid is '0':
+ if uid or uid == '0':
uid = int(uid)
else:
uid = -1
- if gid or gid is '0':
+ if gid or gid == '0':
gid = int(gid)
else:
gid = -1
diff --git a/salt/modules/mongodb.py b/salt/modules/mongodb.py
index 8cdb819102..ed3228150e 100644
--- a/salt/modules/mongodb.py
+++ b/salt/modules/mongodb.py
@@ -484,7 +484,7 @@ def update_one(objects, collection, user=None, password=None, host=None, port=No
objects = six.text_type(objects)
objs = re.split(r'}\s+{', objects)
- if len(objs) is not 2:
+ if len(objs) != 2:
return "Your request does not contain a valid " + \
"'{_\"id\": \"my_id\"} {\"my_doc\": \"my_val\"}'"
diff --git a/salt/modules/virt.py b/salt/modules/virt.py
index a2412bb745..91e105fe04 100644
--- a/salt/modules/virt.py
+++ b/salt/modules/virt.py
@@ -4732,7 +4732,7 @@ def _parse_pools_caps(doc):
if options:
if 'options' not in pool_caps:
pool_caps['options'] = {}
- kind = option_kind if option_kind is not 'vol' else 'volume'
+ kind = option_kind if option_kind != 'vol' else 'volume'
pool_caps['options'][kind] = options
return pool_caps
diff --git a/salt/modules/win_ip.py b/salt/modules/win_ip.py
index e69f44211e..99b9d392f6 100644
--- a/salt/modules/win_ip.py
+++ b/salt/modules/win_ip.py
@@ -342,7 +342,7 @@ def set_static_dns(iface, *addrs):
salt -G 'os_family:Windows' ip.set_static_dns 'Local Area Connection' '192.168.1.1'
salt -G 'os_family:Windows' ip.set_static_dns 'Local Area Connection' '192.168.1.252' '192.168.1.253'
'''
- if addrs is () or str(addrs[0]).lower() == 'none':
+ if addrs == () or str(addrs[0]).lower() == 'none':
return {'Interface': iface, 'DNS Server': 'No Changes'}
# Clear the list of DNS servers if [] is passed
if str(addrs[0]).lower() == '[]':
diff --git a/salt/modules/win_lgpo.py b/salt/modules/win_lgpo.py
index efa154889f..50f0c9940f 100644
--- a/salt/modules/win_lgpo.py
+++ b/salt/modules/win_lgpo.py
@@ -4692,7 +4692,7 @@ class _policy_info(object):
return 'true'
elif val.upper() == 'Run Windows PowerShell scripts last'.upper():
return 'false'
- elif val is 'Not Configured':
+ elif val == 'Not Configured':
return None
else:
return 'Invalid Value'
diff --git a/salt/modules/win_system.py b/salt/modules/win_system.py
index 74fa61bc51..42f0c2ca6e 100644
--- a/salt/modules/win_system.py
+++ b/salt/modules/win_system.py
@@ -1149,7 +1149,7 @@ def set_system_date_time(years=None,
system_time.wSecond = int(seconds)
system_time_ptr = ctypes.pointer(system_time)
succeeded = ctypes.windll.kernel32.SetLocalTime(system_time_ptr)
- if succeeded is not 0:
+ if succeeded != 0:
return True
else:
log.error('Failed to set local time')
diff --git a/salt/modules/x509.py b/salt/modules/x509.py
index 1cdd912bfb..4069076c32 100644
--- a/salt/modules/x509.py
+++ b/salt/modules/x509.py
@@ -131,7 +131,7 @@ def _new_extension(name, value, critical=0, issuer=None, _pyfree=1):
to create the authoritykeyidentifier extension.
'''
if name == 'subjectKeyIdentifier' and \
- value.strip('0123456789abcdefABCDEF:') is not '':
+ value.strip('0123456789abcdefABCDEF:') != '':
raise salt.exceptions.SaltInvocationError(
'value must be precomputed hash')
diff --git a/salt/output/highstate.py b/salt/output/highstate.py
index 1f2f9452fa..87be7656fe 100644
--- a/salt/output/highstate.py
+++ b/salt/output/highstate.py
@@ -209,7 +209,7 @@ def _format_host(host, data, indent_level=1):
# Verify that the needed data is present
data_tmp = {}
for tname, info in six.iteritems(data):
- if isinstance(info, dict) and tname is not 'changes' and info and '__run_num__' not in info:
+ if isinstance(info, dict) and tname != 'changes' and info and '__run_num__' not in info:
err = ('The State execution failed to record the order '
'in which all states were executed. The state '
'return missing data is:')
diff --git a/salt/renderers/stateconf.py b/salt/renderers/stateconf.py
index cfce9e6926..1b116ddfb1 100644
--- a/salt/renderers/stateconf.py
+++ b/salt/renderers/stateconf.py
@@ -224,7 +224,7 @@ def render(input, saltenv='base', sls='', argline='', **kws):
tmplctx = STATE_CONF.copy()
if tmplctx:
prefix = sls + '::'
- for k in six.iterkeys(tmplctx): # iterate over a copy of keys
+ for k in copy.copy(tmplctx).keys(): # iterate over a copy of keys
if k.startswith(prefix):
tmplctx[k[len(prefix):]] = tmplctx[k]
del tmplctx[k]
diff --git a/salt/returners/slack_webhook_return.py b/salt/returners/slack_webhook_return.py
index aad1cdf656..0db705df01 100644
--- a/salt/returners/slack_webhook_return.py
+++ b/salt/returners/slack_webhook_return.py
@@ -322,7 +322,7 @@ def returner(ret):
show_tasks = _options.get('show_tasks')
author_icon = _options.get('author_icon')
- if not webhook or webhook is '':
+ if not webhook or webhook == '':
log.error('%s.webhook not defined in salt config', __virtualname__)
return
diff --git a/salt/states/debconfmod.py b/salt/states/debconfmod.py
index a0ef20b185..a7478c7ac0 100644
--- a/salt/states/debconfmod.py
+++ b/salt/states/debconfmod.py
@@ -210,7 +210,7 @@ def set(name, data, **kwargs):
args['value'] = 'true' if args['value'] else 'false'
if current is not None and [key, args['type'], six.text_type(args['value'])] in current:
- if ret['comment'] is '':
+ if ret['comment'] == '':
ret['comment'] = 'Unchanged answers: '
ret['comment'] += ('{0} ').format(key)
else:
diff --git a/salt/states/git.py b/salt/states/git.py
index ce6455ee71..f2bf4da629 100644
--- a/salt/states/git.py
+++ b/salt/states/git.py
@@ -2464,7 +2464,7 @@ def detached(name,
password,
output_encoding=output_encoding)[0]
- if remote_rev_type is 'hash':
+ if remote_rev_type == 'hash':
try:
__salt__['git.describe'](target,
rev,
@@ -2643,7 +2643,7 @@ def detached(name,
# get refs and checkout
checkout_commit_id = ''
- if remote_rev_type is 'hash':
+ if remote_rev_type == 'hash':
if __salt__['git.describe'](
target,
rev,
diff --git a/salt/states/mysql_grants.py b/salt/states/mysql_grants.py
index d6023bbf86..638e988e13 100644
--- a/salt/states/mysql_grants.py
+++ b/salt/states/mysql_grants.py
@@ -167,7 +167,7 @@ def present(name,
db_part = database.rpartition('.')
my_db = db_part[0]
my_table = db_part[2]
- my_db = __salt__['mysql.quote_identifier'](my_db, (my_table is '*'))
+ my_db = __salt__['mysql.quote_identifier'](my_db, (my_table == '*'))
my_table = __salt__['mysql.quote_identifier'](my_table)
# Removing per table grants in case of database level grant !!!
if token_grants['database'] == my_db:
diff --git a/salt/utils/args.py b/salt/utils/args.py
index 8cc0f35196..8caaae4d1f 100644
--- a/salt/utils/args.py
+++ b/salt/utils/args.py
@@ -253,6 +253,9 @@ def get_function_argspec(func, is_class_method=None):
if not callable(func):
raise TypeError('{0} is not a callable'.format(func))
+ if hasattr(func, "__wrapped__"):
+ func = func.__wrapped__
+
if six.PY2:
if is_class_method is True:
aspec = inspect.getargspec(func)
diff --git a/salt/utils/decorators/path.py b/salt/utils/decorators/path.py
index 4adacf0e4e..37c692355f 100644
--- a/salt/utils/decorators/path.py
+++ b/salt/utils/decorators/path.py
@@ -4,10 +4,11 @@ Decorators for salt.utils.path
'''
from __future__ import absolute_import, print_function, unicode_literals
+import functools
+
# Import Salt libs
import salt.utils.path
from salt.exceptions import CommandNotFoundError
-from salt.utils.decorators.signature import identical_signature_wrapper
def which(exe):
@@ -15,13 +16,14 @@ def which(exe):
Decorator wrapper for salt.utils.path.which
'''
def wrapper(function):
+ @functools.wraps(function)
def wrapped(*args, **kwargs):
if salt.utils.path.which(exe) is None:
raise CommandNotFoundError(
'The \'{0}\' binary was not found in $PATH.'.format(exe)
)
return function(*args, **kwargs)
- return identical_signature_wrapper(function, wrapped)
+ return wrapped
return wrapper
@@ -30,6 +32,7 @@ def which_bin(exes):
Decorator wrapper for salt.utils.path.which_bin
'''
def wrapper(function):
+ @functools.wraps(function)
def wrapped(*args, **kwargs):
if salt.utils.path.which_bin(exes) is None:
raise CommandNotFoundError(
@@ -39,5 +42,5 @@ def which_bin(exes):
)
)
return function(*args, **kwargs)
- return identical_signature_wrapper(function, wrapped)
+ return wrapped
return wrapper
diff --git a/salt/utils/schedule.py b/salt/utils/schedule.py
index 474af442a1..69204a53d4 100644
--- a/salt/utils/schedule.py
+++ b/salt/utils/schedule.py
@@ -721,7 +721,7 @@ class Schedule(object):
if argspec.keywords:
# this function accepts **kwargs, pack in the publish data
for key, val in six.iteritems(ret):
- if key is not 'kwargs':
+ if key != 'kwargs':
kwargs['__pub_{0}'.format(key)] = copy.deepcopy(val)
# Only include these when running runner modules
diff --git a/salt/utils/win_pdh.py b/salt/utils/win_pdh.py
index 9921ee72da..7e9e368caf 100644
--- a/salt/utils/win_pdh.py
+++ b/salt/utils/win_pdh.py
@@ -164,7 +164,7 @@ class Counter(object):
'''
path = win32pdh.MakeCounterPath(
(None, obj, instance, None, instance_index, counter), 0)
- if win32pdh.ValidatePath(path) is 0:
+ if win32pdh.ValidatePath(path) == 0:
return Counter(path, obj, instance, instance_index, counter)
raise CommandExecutionError('Invalid counter specified: {0}'.format(path))
diff --git a/tests/integration/cloud/helpers/virtualbox.py b/tests/integration/cloud/helpers/virtualbox.py
index 668f15d82f..a6bc9dd2c3 100644
--- a/tests/integration/cloud/helpers/virtualbox.py
+++ b/tests/integration/cloud/helpers/virtualbox.py
@@ -74,7 +74,7 @@ class VirtualboxCloudTestCase(ShellCase):
output.pop(0)
else:
break
- if len(output) is 0:
+ if len(output) == 0:
return dict()
else:
return salt.utils.json.loads(''.join(output))
diff --git a/tests/integration/modules/test_mysql.py b/tests/integration/modules/test_mysql.py
index 7edb77cb94..197c4e65ae 100644
--- a/tests/integration/modules/test_mysql.py
+++ b/tests/integration/modules/test_mysql.py
@@ -519,7 +519,7 @@ class MysqlModuleDbTest(ModuleCase, SaltReturnAssertsMixin):
)
expected = []
for tablename, engine in sorted(six.iteritems(tablenames)):
- if engine is 'MEMORY':
+ if engine == 'MEMORY':
expected.append([{
'Table': dbname+'.'+tablename,
'Msg_text': ("The storage engine for the table doesn't"
@@ -544,7 +544,7 @@ class MysqlModuleDbTest(ModuleCase, SaltReturnAssertsMixin):
)
expected = []
for tablename, engine in sorted(six.iteritems(tablenames)):
- if engine is 'MYISAM':
+ if engine == 'MYISAM':
expected.append([{
'Table': dbname+'.'+tablename,
'Msg_text': 'OK',
@@ -570,14 +570,14 @@ class MysqlModuleDbTest(ModuleCase, SaltReturnAssertsMixin):
expected = []
for tablename, engine in sorted(six.iteritems(tablenames)):
- if engine is 'MYISAM':
+ if engine == 'MYISAM':
expected.append([{
'Table': dbname+'.'+tablename,
'Msg_text': 'OK',
'Msg_type': 'status',
'Op': 'optimize'
}])
- elif engine is 'InnoDB':
+ elif engine == 'InnoDB':
expected.append([{
'Table': dbname+'.'+tablename,
'Msg_text': ("Table does not support optimize, "
@@ -591,7 +591,7 @@ class MysqlModuleDbTest(ModuleCase, SaltReturnAssertsMixin):
'Msg_type': 'status',
'Op': 'optimize'
}])
- elif engine is 'MEMORY':
+ elif engine == 'MEMORY':
expected.append([{
'Table': dbname+'.'+tablename,
'Msg_text': ("The storage engine for the table doesn't"
diff --git a/tests/unit/modules/test_virt.py b/tests/unit/modules/test_virt.py
index 32f4302e5f..c49bd0bccc 100644
--- a/tests/unit/modules/test_virt.py
+++ b/tests/unit/modules/test_virt.py
@@ -9,6 +9,7 @@ virt execution module unit tests
from __future__ import absolute_import, print_function, unicode_literals
import os
import re
+import sys
import datetime
import shutil
@@ -1393,19 +1394,20 @@ class VirtTestCase(TestCase, LoaderModuleMockMixin):
self.assertEqual('vnc', setxml.find('devices/graphics').get('type'))
# Update with no diff case
- self.assertEqual({
- 'definition': False,
- 'disk': {'attached': [], 'detached': []},
- 'interface': {'attached': [], 'detached': []}
- }, virt.update('my vm', cpu=1, mem=1024,
- disk_profile='default', disks=[{'name': 'data', 'size': 2048}],
- nic_profile='myprofile',
- interfaces=[{'name': 'eth0', 'type': 'network', 'source': 'default',
- 'mac': '52:54:00:39:02:b1'},
- {'name': 'eth1', 'type': 'network', 'source': 'oldnet',
- 'mac': '52:54:00:39:02:b2'}],
- graphics={'type': 'spice',
- 'listen': {'type': 'address', 'address': '127.0.0.1'}}))
+ if sys.hexversion < 0x03080000:
+ self.assertEqual({
+ 'definition': False,
+ 'disk': {'attached': [], 'detached': []},
+ 'interface': {'attached': [], 'detached': []}
+ }, virt.update('my vm', cpu=1, mem=1024,
+ disk_profile='default', disks=[{'name': 'data', 'size': 2048}],
+ nic_profile='myprofile',
+ interfaces=[{'name': 'eth0', 'type': 'network', 'source': 'default',
+ 'mac': '52:54:00:39:02:b1'},
+ {'name': 'eth1', 'type': 'network', 'source': 'oldnet',
+ 'mac': '52:54:00:39:02:b2'}],
+ graphics={'type': 'spice',
+ 'listen': {'type': 'address', 'address': '127.0.0.1'}}))
# Failed XML description update case
self.mock_conn.defineXML.side_effect = self.mock_libvirt.libvirtError("Test error")

@ -0,0 +1,60 @@
From 5259ba8ef6e5949815641edc563deab67ba68582 Mon Sep 17 00:00:00 2001
From: Mathias Fussenegger <f.mathias@zignar.net>
Date: Fri, 22 Nov 2019 17:05:27 +0100
Subject: [PATCH] Remove _supported_dists import for python-3.8 support
`_supported_dists` has been removed from platform in Python 3.8:
https://github.com/python/cpython/commit/8b94b41ab7b12f745dea744e8940631318816935#diff-47c8e5750258a08a6dd9de3e9c3774acL267-L271
This instead inlines all the values that have been there.
Without this change running `salt-ssh` with Python 3.8 run into an
import error.
---
salt/grains/core.py | 31 +++++++++++++++++++++++++++----
1 file changed, 27 insertions(+), 4 deletions(-)
diff --git a/salt/grains/core.py b/salt/grains/core.py
index 04c1ae91b5f5..77694abe84f9 100644
--- a/salt/grains/core.py
+++ b/salt/grains/core.py
@@ -35,11 +35,34 @@
__proxyenabled__ = ['*']
__FQDN__ = None
-# Extend the default list of supported distros. This will be used for the
+# Default list of supported distros. This will be used for the
# /etc/DISTRO-release checking that is part of linux_distribution()
-from platform import _supported_dists
-_supported_dists += ('arch', 'mageia', 'meego', 'vmware', 'bluewhite64',
- 'slamd64', 'ovs', 'system', 'mint', 'oracle', 'void')
+_supported_dists = (
+ 'SuSE',
+ 'UnitedLinux',
+ 'arch',
+ 'bluewhite64',
+ 'centos',
+ 'debian',
+ 'fedora',
+ 'gentoo',
+ 'mageia',
+ 'mandrake',
+ 'mandriva',
+ 'meego',
+ 'mint',
+ 'oracle',
+ 'ovs',
+ 'redhat',
+ 'rocks',
+ 'slackware',
+ 'slamd64',
+ 'system',
+ 'turbolinux',
+ 'vmware',
+ 'void',
+ 'yellowdog',
+)
# linux_distribution deprecated in py3.7
try:

@ -0,0 +1,18 @@
--- salt-3000.2.orig/tests/unit/utils/test_verify.py 2020-04-29 16:57:02.775635698 -0700
+++ salt-3000.2/tests/unit/utils/test_verify.py 2020-04-29 16:57:58.042282147 -0700
@@ -324,6 +324,7 @@
self.assertTrue(os.path.exists(path))
+@skipIf(True, "breaks under sandbox")
class TestCleanPath(TestCase):
'''
salt.utils.clean_path works as expected
@@ -366,6 +367,7 @@
raise ctypes.WinError()
+@skipIf(True, "breaks under sandbox")
@skipIf(six.PY2 and salt.utils.platform.is_windows(), 'Skipped on windows py2')
class TestCleanPathLink(TestCase):
'''

@ -21,9 +21,11 @@ Between the remote execution system, and state management Salt addresses the
backbone of cloud and data center management.
</longdescription>
<use>
<flag name="cheetah">Enable support for <pkg>dev-python/cheetah3</pkg></flag>
<flag name="cherrypy">Enable support for using cherrypy.</flag>
<flag name="libcloud">Enable salt-cloud support via libcloud.</flag>
<flag name="libvirt">Support managing virtual machines with app-emulation/libvirt.</flag>
<flag name="genshi">Enable support for <pkg>dev-python/genshi</pkg></flag>
<flag name="gnupg">Enable support for gnupg via python-gnupg.</flag>
<flag name="keyring">Enable support for keyrings via python-keyring.</flag>
<flag name="mako">Add support for using the mako template engine for parsing salt states.</flag>

@ -3,8 +3,8 @@
EAPI=7
PYTHON_COMPAT=( python3_6 )
inherit eutils systemd distutils-r1
DISTUTILS_USE_SETUPTOOLS=bdepend
inherit systemd distutils-r1
DESCRIPTION="Salt is a remote execution and configuration manager"
HOMEPAGE="https://www.saltstack.com/resources/community/
@ -23,13 +23,15 @@ fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb neutron nova"
IUSE+=" openssl portage profile redis selinux test raet +zeromq vim-syntax"
IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb neutron nova
openssl portage profile redis selinux test raet +zeromq vim-syntax"
RDEPEND="sys-apps/pciutils
RDEPEND="
sys-apps/pciutils
dev-python/jinja[${PYTHON_USEDEP}]
dev-python/libnacl[${PYTHON_USEDEP}]
>=dev-python/msgpack-0.3[${PYTHON_USEDEP}]
<dev-python/msgpack-1.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
dev-python/markupsafe[${PYTHON_USEDEP}]
>=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
@ -64,22 +66,22 @@ RDEPEND="sys-apps/pciutils
gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
vim-syntax? ( app-vim/salt-vim )"
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
test? (
>=dev-python/pytest-salt-2018.12.8[${PYTHON_USEDEP}]
>=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
>=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
>=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}]
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
>=dev-python/moto-0.3.6[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
>=dev-python/pytest-salt-2018.12.8[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-catchlog[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
>=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}]
dev-python/virtualenv[${PYTHON_USEDEP}]
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
>=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
!x86? ( >=dev-python/boto3-1.2.1[${PYTHON_USEDEP}] )
>=dev-python/moto-0.3.6[${PYTHON_USEDEP}]
>=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}]
>=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}]
${RDEPEND}
)"
@ -131,20 +133,17 @@ python_test() {
mkdir "${BUILD_DIR}"/../{templates,conf/cloud.{providers,profiles,maps}.d} || die
(
cleanup() {
rm -f "${tempdir}"
rmdir "${BUILD_DIR}"/../{templates,conf/cloud.{providers,profiles,maps}.d} || die
}
cleanup() { rm -f "${tempdir}" || die; }
trap cleanup EXIT
addwrite "${tempdir}"
ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}"
ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}" || die
USE_SETUPTOOLS=1 SHELL="/bin/bash" \
TMPDIR="${tempdir}" \
${EPYTHON} tests/runtests.py \
--unit-tests --no-report --verbose
) || die "testing failed"
--unit-tests --no-report --verbose \
|| die "testing failed with ${EPYTHON}"
)
}

@ -0,0 +1,183 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{7,8} )
DISTUTILS_USE_SETUPTOOLS=bdepend
inherit systemd distutils-r1
DESCRIPTION="Salt is a remote execution and configuration manager"
HOMEPAGE="https://www.saltstack.com/resources/community/
https://github.com/saltstack"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/${PN}stack/${PN}.git"
EGIT_BRANCH="develop"
SRC_URI=""
KEYWORDS=""
else
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE="cheetah cherrypy ldap libcloud libvirt genshi gnupg keyring mako
mongodb neutron nova openssl portage profile redis selinux test raet
+zeromq vim-syntax"
RDEPEND="
sys-apps/pciutils
dev-python/distro[${PYTHON_USEDEP}]
dev-python/jinja[${PYTHON_USEDEP}]
dev-python/libnacl[${PYTHON_USEDEP}]
>=dev-python/msgpack-0.5[${PYTHON_USEDEP}]
<dev-python/msgpack-1.0[${PYTHON_USEDEP}]
dev-python/pycryptodome[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
dev-python/markupsafe[${PYTHON_USEDEP}]
>=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
dev-python/setuptools[${PYTHON_USEDEP}]
libcloud? ( >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] )
mako? ( dev-python/mako[${PYTHON_USEDEP}] )
ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] )
libvirt? (
$(python_gen_cond_dep 'dev-python/libvirt-python[${PYTHON_USEDEP}]' python3_7)
)
openssl? (
dev-libs/openssl:0=[-bindist]
dev-python/pyopenssl[${PYTHON_USEDEP}]
)
raet? (
>=dev-python/libnacl-1.0.0[${PYTHON_USEDEP}]
>=dev-python/ioflo-1.1.7[${PYTHON_USEDEP}]
>=dev-python/raet-0.6.0[${PYTHON_USEDEP}]
)
cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] )
cheetah? ( dev-python/cheetah3[${PYTHON_USEDEP}] )
mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
keyring? ( dev-python/keyring[${PYTHON_USEDEP}] )
redis? ( dev-python/redis-py[${PYTHON_USEDEP}] )
selinux? ( sec-policy/selinux-salt )
nova? (
$(python_gen_cond_dep '>=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}]' python3_7)
)
neutron? (
$(python_gen_cond_dep '>=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}]' python3_7)
)
gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
vim-syntax? ( app-vim/salt-vim )
zeromq? ( >=dev-python/pyzmq-2.2.0[${PYTHON_USEDEP}] )
"
BDEPEND="
test? (
${RDEPEND}
>=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
>=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
>=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}]
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
>=dev-python/moto-0.3.6[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
>=dev-python/pytest-salt-2018.12.8[${PYTHON_USEDEP}]
dev-python/pytest-tempdir[${PYTHON_USEDEP}]
>=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}]
dev-python/virtualenv[${PYTHON_USEDEP}]
!x86? ( >=dev-python/boto3-1.2.1[${PYTHON_USEDEP}] )
)"
DOCS=( README.rst AUTHORS )
REQUIRED_USE="|| ( raet zeromq )
test? ( cheetah genshi )"
RESTRICT="!test? ( test ) x86? ( test )"
PATCHES=(
"${FILESDIR}/salt-2017.7.0-dont-realpath-tmpdir.patch"
"${FILESDIR}/salt-2019.2.0-skip-tests-that-oom-machine.patch"
"${FILESDIR}/salt-3000.1-tests.patch"
"${FILESDIR}/salt-3000.2-tests.patch"
# https://github.com/saltstack/salt/pull/55410
"${FILESDIR}/salt-3000.2-py38.patch"
"${FILESDIR}/salt-3000.2-py38-misc.patch"
# https://github.com/saltstack/salt/pull/55900
"${FILESDIR}/salt-3000.2-py38-abc.patch"
)
python_prepare() {
# remove tests with external dependencies that may not be available
rm tests/unit/{test_zypp_plugins.py,utils/test_extend.py} || die
rm tests/unit/modules/test_{file,boto_{vpc,secgroup,elb}}.py || die
rm tests/unit/states/test_boto_vpc.py || die
# tests that require network access
rm tests/unit/{states,modules}/test_zcbuildout.py || die
# allow the use of the renamed msgpack
sed -i '/^msgpack/d' requirements/base.txt || die
}
python_install_all() {
local svc
USE_SETUPTOOLS=1 distutils-r1_python_install_all
for svc in minion master syndic api; do
newinitd "${FILESDIR}"/${svc}-initd-4 salt-${svc}
newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc}
systemd_dounit "${FILESDIR}"/salt-${svc}.service
done
insinto /etc/${PN}
doins -r conf/*
}
python_test() {
local tempdir
# testsuite likes lots of files
ulimit -n 3072 || die
# ${T} is too long a path for the tests to work
tempdir="$(mktemp -du --tmpdir=/tmp salt-XXX)"
mkdir "${T}/$(basename "${tempdir}")"
(
cleanup() { rm -f "${tempdir}" || die; }
trap cleanup EXIT
addwrite "${tempdir}"
ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}" || die
USE_SETUPTOOLS=1 SHELL="/bin/bash" \
TMPDIR="${tempdir}" \
${EPYTHON} tests/runtests.py \
--unit-tests --no-report --verbose \
|| die "testing failed with ${EPYTHON}"
)
}
pkg_postinst() {
if use python_targets_python3_8; then
if use nova; then
ewarn "Salt's nova functionality will not work with python3.8 since"
ewarn "dev-python/python-novaclient does not support it yet"
fi
if use neutron; then
ewarn "Salt's neutron functionality will not work with python3.8 since"
ewarn "dev-python/python-neutronclient does not support it yet"
fi
if use libvirt; then
ewarn "Salt's libvirt functionality will not work with python3.8 since"
ewarn "dev-python/libvirt-python does not support it yet"
fi
fi
}

Binary file not shown.

@ -1,31 +0,0 @@
DIST asar-0.14.3.tar.gz 1516628 BLAKE2B 4f04d08c3084843bc3974e99dea2bd327843afd97575fbedcc0ae224c9511be2b2a178a0ff0e555f1c890218d768cca6616a39a0a4fb2fd119f94b074db73ef7 SHA512 8dc099d038d7c8748d20d64adb037167e43640bb923391d2d94f1e2859d41700b39d6b631ee959505cffc695b8284f7e09d43a914af7effc349a768cfaf1efb4
DIST atom-1.32.1.tar.gz 11685572 BLAKE2B 4e2463d56d3c4c54e3661e8eeb665a86b165f317dd221d849fd6b447bf6e895ac573b019356695fce0da0c176702356cbd5ff53e0878edbd49aa95e15323cda5 SHA512 8220c7cf1bb602dbcb312e986b4c2ff560baf3e46903e770135da36d92920da4d9f2490e9a5dc6b04821dbbb033415b6008f0f483d88c841996c06a9bf36f7e3
DIST atom-bin-1.32.1.rpm 281163511 BLAKE2B 4ff4e055d1cad690c37e6264a7e5771bf50047246950fc45a94cb5217e6cfef2abb8c067efa1ca780550db7f046a8fecc623013cab27fe56df3e22af68f018b6 SHA512 9ff621cb8bcfb185c36eb56cac698a9bd0d2a02b5cc9c7982786b0db241a625188fc6ea9079943bb2c83a122f916a387810fa30161ee9531c1c5c3e28f876f52
DIST atomdep-atom--nsfw-1.0.18.tar.gz 20870 BLAKE2B 2e90e2cc337b2d40805db44c48a6f9da2b4e749bd5d036bdeec78790286a0d0c7e4536a8d461480b91c45552ce1f6db06e6f70f975e52b2ec90146714c4a0fb9 SHA512 61c78a57d6b75fada687843bf0dca2f1a4d16a8546769789047a202fc831535ee206112962fc4680c7d37b4da3d611f6b5a153e1b6ab919e51759906288b09ff
DIST atomdep-atom--watcher-1.0.8.tar.gz 702118 BLAKE2B 21fdb472bc1cd6cc396f686e45f1048ff5507d2126e71d92e1531601d142339a97f3ab8748b34cf8ff8c935fc4f2fa36e86a379a05f79403c7bc3949f5ae8ebb SHA512 e77ba7faf192698ec5b1bbe683c81ead8380dc84a2a4c591dea89847d8595aa49fbc5b24b1725f1ab985b1f6c18f7baa19143780f4e2eb0a717054968db59515
DIST atomdep-cached-run-in-this-context-0.5.0.tar.gz 2697 BLAKE2B aada7cb35fa57abc4e97bc76a1a1c77f167441bf82bec4743b4e570721f67edd1c037033dcf058bf72957c7423c957343697e816e85c401e6497c43af41aa3a1 SHA512 15db433f4bbc5a37ad43de672f3f6f234e9e7c94c5ae6b66939653e85102a724ca8bd69a90d2cc1f2307db55916c66325a56e607f42546807f83595c129ca333
DIST atomdep-ctags-3.0.0.tar.gz 12864 BLAKE2B 561a64734f67cd7943f2d6f972e4d1ec55913934357e7a0d3077c2910f938071b090f55880788ebeab5d7fcaa3009c8984a9045dc83089c46d276152653eb156 SHA512 af1d3764cc3a6bb781a9a2357eeb8503886fc14481c3dbe4a899d3c672fea9325524aed3a4c1c87965bc4cce2fbae20b56b32690849afc1fcb751cd5462adbcc
DIST atomdep-fs-admin-0.1.7.tar.gz 5465 BLAKE2B 50e2f5a2b013d3ca877ad608f62c0bb5464b32af55167d3d97b5d03530ff53cf7e84360fe8de2a7e3b29a226ee462b4735ffe5a16d9e6a6e51027f5bd34431b6 SHA512 110362a2a50782d9d7f44acc88fbaf1c2031d0cd5549af6ee28c4617e10655804bd79320e41c44cc606b4c06075100c3a1bab0d5873ee98a995b048821ef84c1
DIST atomdep-git-utils-5.2.1.tar.gz 4142068 BLAKE2B 7a803e0bbfb8c6afc2e7c82f782d3d80482646935b94e6d878d13120dc0294818a60bfb898a82d3fdea02300bbe473640c1c8fdf2ece9a531eb4b0eb564edad5 SHA512 3eb5da5f8a9bead8bdc94e29d794567969251ddc845c210871d8db9b75f998058bd55085a65d613ddc64ed3daa70544d845ed3557ab7822a2d9c95677bed61b4
DIST atomdep-keyboard-layout-2.0.14.tar.gz 17919 BLAKE2B 9b2a83cf0b4db13e402d6a97fd8729041a25e7296f5e5be23181bad84a314a9012dc69cc387699b3edc5d37a98fcfe8923feb457c3f80e7d0db7b1610542e49b SHA512 42e09fa440bca1a8ba17ca1a3507718b9fb5408a5a42ef4749523dcb3902d876c85de0676a1cc7143455194b70c005a2367ce33418d423f763b2b30651380ad7
DIST atomdep-keytar-4.3.0.tar.gz 8896 BLAKE2B 56d669320ee7eeb78eb676a76de6efe4417b80b5931507009b73cf4aa70b4125fd96a7b1ec0bf05ada86d3107dbdb82028517eccccabfb1d61b1fecd08261de8 SHA512 a5dfbefeff9f4b42d02a6cd6956e91d65ce24d716a85f19e4bab182dfb9322a132da90f301b8eeb5b496f1ff6d9c974410c9fff578404254f7e1502d97d87831
DIST atomdep-nslog-3.0.0.tar.gz 2270 BLAKE2B 3258b7e7d7f94a89b0e5a21bfedfbe71bbfe3d776871aaeb3443ce6a7759860abfef2b8af823dab009183b5378c1ed06c7b2729df9acc09d3c5ea6a5f47ff160 SHA512 6a0ce8970ae12fdefd0935916e5501bb89e366fb66b05fffade884f3adf4add4b135eb4f0f208684e28424fdb9858ee8193eb1f3db1f7eac3cb49bdb5d1a4bb1
DIST atomdep-oniguruma-7.0.2.tar.gz 584590 BLAKE2B 2e3e622fdf7c463fa670786f0af8815ffbb1d7a85ff5759b8b13fa2b4ed8cec5959b4186b09521a3060e42abb5d83505f7b925a18f41c99e4d9dab809e39ec01 SHA512 cc2b1d3714ebac1e3254f33185c20e0c6bf5a7835506ef56bec5a720684ca6ee5d8cee0c4165eb0bb60a8edcdaf8eca846aaa0cb6ec2a9859ad61e5ed830db8a
DIST atomdep-pathwatcher-8.0.1.tar.gz 18357 BLAKE2B 8e2b86da307757c352d0cab5eff64cc31e6745bf10a982f6ef11a0fd92eeeadf5b438aaaaa00e679100600691e59ff7aa7badf33e62c33a2497b5573cf7b4711 SHA512 34df8fecf456753f1977517018e5ff78b143f2d36e1417435bfcac2f9b9f8bd045a8080e7d0ad5d2930c63fa110c539911447863c46e757a4bb8f8c4f5bda999
DIST atomdep-scrollbar-style-3.2.0.tar.gz 3498 BLAKE2B 2d1a88f2764b5a51da92e41f5dd5424a4ffbc13ec9b2e826236097ff7ebb0babd22b4e4cd00873e786aa52d901eedce49bd102ad6398eda614734bdd78b8b4e3 SHA512 9f5fcc2bcb13cb81e95a52aa6db0c99ffd67c9cd48a9faf0223587359f4082c3e867cb384497dc6be3e8230b4cd035e910a7048d431e81a28dfded0bc572da18
DIST atomdep-spellchecker-3.5.0.tar.gz 476758 BLAKE2B 73ca0225bedf7daa0b9f9e3ad5a549cb124443de0887ee77f1a7a7c1e31f1a1c363a5f0118ecb17e70c4ae64338eac83c24dbe4cd13a6ae182d314d22bef3dc4 SHA512 5daed79d1ba562187937f5c435e2f63bcffcef95e12c18e8b3b05e9afd2b7dc815ea88cd60c4ab5ec714654189c27897dadebb798fa535425ea6d0f56cc6ae1d
DIST atomdep-superstring-2.3.4.tar.gz 822697 BLAKE2B 0e81ab0fe8d429c80298a70034c0645412e16dcd38540f5a87433689581c741b554a82739e6bb6954d316bd9a9a6425b9770b3880fe883e27199ea1aa10bbe81 SHA512 0dc3644c2741f45dc531945d5114802ec1e2fbb0d6a85088d1c1fe120f26c0183e93142ce86781dcbac652f088e5b101e83b65bb6a31f1460dd289cf37825e65
DIST atomdep-tree-sitter-0.13.15.tar.gz 193608 BLAKE2B adcc1cec97e0675868b4782a4dede09bbad58e3d85fb55eba9ec0867bc4bc91045db8023aff3975471748297563325359cd6a4819c4474e5aedfec3e8d7565c9 SHA512 16ebd4f9cb0eeedfeb42a2dd2f7fb0e0983ee19976d98e2e0a2e0bf57fea246e7b667ef56733f7a07b434918298889acea0dd8edc109bc5ecafeb0b0d75abdd9
DIST atomdep-tree-sitter-bash-0.13.6.tar.gz 346883 BLAKE2B f1a7bd0391d3d21223d889deb4e38ecf5e323051977cd42095fdb2ac458803968d1c435e6f7c12b0073486eb677ab2f2748fc7dd76e9228e746ac634221ea1c5 SHA512 9761d822c2f5f608950fa4f91b237db136afd4d545b708412b993f89785eb3a931a9a29fc3a652169af20e3c8281ab28ca117bc59bb4b1f2e1dfb6298c843712
DIST atomdep-tree-sitter-c-0.13.7.tar.gz 192058 BLAKE2B e673311a6903736d204b149a983159f7ca52ffc3e1b44f7e800f6a8fcebb49059d6fd6e341506d50d19d3781b495bf0414f8794af2f9e6a93e341fd55fdfa264 SHA512 af533977d06be796c3c1a98fbc44f60cf46a4fdc0f233edd9766c462cdad5116398231863d9cfbe4ffb49befe9bf97466c6d8b9a1535d0af835aa0242e4f5ed5
DIST atomdep-tree-sitter-cpp-0.13.8.tar.gz 610448 BLAKE2B df5ac56a6317c39b5ac1a4d248b0c96751ebed08868977417f68daf30a1c04806874128dd75667d7b543b3062d168ba570783df291931c0a3bed990526eea727 SHA512 3d3b488f8b1e277a73c9c961bf48f3207e6720faac5731d1ed9a02bd01fad0bd844180e867f2bc7b3bc278fe5d218d6808e0e191cf20c763d9fa7e326b34de4e
DIST atomdep-tree-sitter-css-0.13.7.tar.gz 79065 BLAKE2B 5671e6395f41b3dd2f3154d335e9b581507a8a7ad90ed3f4f27bd89055c96bef82d883984055dbf1675c93fe8aa9edce5151902261300d1cedf1dc7d955b9149 SHA512 c4c85564779300081c5f8991eb7ab32eecd5e477eba7c2217430ec2c0b276bba5b4f5107859c412bba68b1531fd5089c6db9491f81aa1409d9e9f3aa5036ca5d
DIST atomdep-tree-sitter-embedded-template-0.13.0.tar.gz 6153 BLAKE2B 7da15e09def3a4088b16f691273f0e99311aea53a20577a618026fbd3f4bd78d3cb4c5a6aa694ed3122465621128d26dd084c85d492f8a6d62246a1e50f29a2f SHA512 20956331c2f6060faa17e1e26ed1174c5e0213a03aea9a464aa53c13ed9d767da90aa0ed646444848f8a7ea7ab17d369292a353ad6ef8578845cf75740034b1a
DIST atomdep-tree-sitter-go-0.13.3.tar.gz 162468 BLAKE2B a3530580f1cddd672807d1d4c6652405a0558edf7d362523d507edacb6ba2abefa58fefe50d762e9c611ab51f6a4b6e62000f2e898058ac3f892fe6e6a11940c SHA512 a579e5103330ac276761a3b37c4ce53255aa644283257106e1b3ef73d8f925277b2180d606bc31a3e5d7bab68b4a56e3d6624bda428b2033bc70a0cdc54b1c1f
DIST atomdep-tree-sitter-html-0.13.5.tar.gz 13738 BLAKE2B c33b69eeb6b1eba0c864988eafe49327eb2f9a770678b03c49548aeb2fff2a1f31a5132565ca4025c008914a410d6cd0a757e9e435efc90cba58443cc2dc88be SHA512 95ac288df0e58fff6e8c462f2e85b8f964d3876a1cad80983f60f0e4b9b0c6ebef136947aff0f845603c5b53788e9479f2d55e7f4492aa79d0c09925d6934878
DIST atomdep-tree-sitter-javascript-0.13.8.tar.gz 1729028 BLAKE2B ea2c8de9091ae224e595b0f50d4b32797c0b87937698b074e6603cdde0ecbfd57e6da7d9d6540d0de7175c6386130de5fb3db6a537a935c121eee8c5ae46879a SHA512 a7bbba657117d6c2238063408ae48d9cae8f4a5e45894b10cc457640e018547e46375ddc52752ca1afc189a0cc590dee75da0d5f04ddc6107c530340a258b341
DIST atomdep-tree-sitter-python-0.13.4.tar.gz 204998 BLAKE2B 54d22a4482705cf482cd13bf8786f2d4a26e709b836007a1cd2bf43a537738a2b27474bc050253462f834f7f211b4c6b5b8b82cc3a1de41faa334c93fdc02db3 SHA512 250ef9ffaf15b0f3125ad7a88ad37181d4e5030e6ca5b4c518ad97822478d6d893b6493c70e35db5f07b3dedb25928285c60cdb5cbb4fd392ae07acaad6aca7d
DIST atomdep-tree-sitter-regex-0.13.1.tar.gz 17153 BLAKE2B 44e137c5464af5e77011a9d8bb9cd6ffa7abf50bbd27a6fc3b8e53739fd6e6c664bce7c1ed348ecbb2a27e8f301caa8a783c5ba756870622fbe1bfe76ee4a8bb SHA512 03e50bb9539cdfb34e8e69a675da97311c14abc839d4509167b612ba92dd15c1e7825d5a748de70513ec902f40f1efbef6317ee5f2f2b700385fab875bfbff9a
DIST atomdep-tree-sitter-ruby-0.13.11.tar.gz 2020951 BLAKE2B 106eb35468106d971338e3387484470a61c84da8a1a2f9632eecd0e84fe13dc801da527652817633083469668f03cc9ea4241526cfe414a7c0c2c2d96d44f311 SHA512 101981059db4c9aa11a834604287fd622af6f7fde5bf9718ff2f140d40b51b345fe6961de02b185345808c827b77202ffb79fba77cbf2ceb9793224b888375c0
DIST atomdep-tree-sitter-typescript-0.13.6.tar.gz 662334 BLAKE2B a4e7898fc115fd73c9a86578aa214cfb11ac0b57bcfe3db8226463a7613d78bec11b987311f8ee884a4aa679ff16deaee158eb36ba8a370be65daff98e41cdac SHA512 d5cb2f0ab5b981fe1de03d195c272db150ebd0cf9f3825d87d7fd3bdee8e01e1d4745bb426c23e084b12e97dd51fbba65f9ffad910d87b57306ef3a10ae2225c
DIST nodejs-nan-2.11.1.tar.gz 170929 BLAKE2B 21287b45865c578257399abddd2fb6a7234891da47bb97073b7595ace6bafc83630f44141d871b061e5d13b6c4b9e02c0d4883ef0a6d6f0d9851ff645a0ab616 SHA512 a80c2857c2f15c085c506cabd081338e25a5de2028327567a039ed9219b912d36ebdfec80f13bebab9872b981d86a2fcc2c8145739b428b8f4148d1a883e408f

@ -1,562 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NOTE: this ebuild has been generated by atom-ebuild-gen.py from the
# atom overlay. If you would like to make changes, please consider
# modifying the ebuild template and submitting a PR to
# https://github.com/elprans/atom-overlay.
EAPI=7
PYTHON_COMPAT=( python2_7 )
inherit multiprocessing python-single-r1 rpm xdg-utils
DESCRIPTION="A hackable text editor for the 21st Century"
HOMEPAGE="https://atom.io"
MY_PV="${PV//_/-}"
ELECTRON_V=2.0.9
ELECTRON_SLOT=2.0
ASAR_V=0.14.3
# All binary packages depend on this
NAN_V=2.11.1
ATOM__NSFW_V=1.0.18
ATOM__WATCHER_V=1.0.8
CACHED_RUN_IN_THIS_CONTEXT_V=0.5.0
CTAGS_V=3.0.0
FS_ADMIN_V=0.1.7
GIT_UTILS_V=5.2.1
KEYBOARD_LAYOUT_V=2.0.14
KEYTAR_V=4.3.0
NSLOG_V=3.0.0
ONIGURUMA_V=7.0.2
PATHWATCHER_V=8.0.1
SCROLLBAR_STYLE_V=3.2.0
SPELLCHECKER_V=3.5.0
SUPERSTRING_V=2.3.4
TREE_SITTER_V=0.13.15
TREE_SITTER_BASH_V=0.13.6
TREE_SITTER_C_V=0.13.7
TREE_SITTER_CPP_V=0.13.8
TREE_SITTER_CSS_V=0.13.7
TREE_SITTER_EMBEDDED_TEMPLATE_V=0.13.0
TREE_SITTER_GO_V=0.13.3
TREE_SITTER_HTML_V=0.13.5
TREE_SITTER_JAVASCRIPT_V=0.13.8
TREE_SITTER_PYTHON_V=0.13.4
TREE_SITTER_REGEX_V=0.13.1
TREE_SITTER_RUBY_V=0.13.11
TREE_SITTER_TYPESCRIPT_V=0.13.6
# The x86_64 arch below is irrelevant, as we will rebuild all binary packages.
SRC_URI="
https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/atom.x86_64.rpm -> atom-bin-${MY_PV}.rpm
https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> atom-${MY_PV}.tar.gz
https://github.com/elprans/asar/releases/download/v${ASAR_V}-gentoo/asar-build.tar.gz -> asar-${ASAR_V}.tar.gz
https://github.com/nodejs/nan/archive/v${NAN_V}.tar.gz -> nodejs-nan-${NAN_V}.tar.gz
https://registry.npmjs.org/@atom/nsfw/-/nsfw-1.0.18.tgz -> atomdep-atom--nsfw-${ATOM__NSFW_V}.tar.gz
https://registry.npmjs.org/@atom/watcher/-/watcher-1.0.8.tgz -> atomdep-atom--watcher-${ATOM__WATCHER_V}.tar.gz
https://registry.npmjs.org/cached-run-in-this-context/-/cached-run-in-this-context-0.5.0.tgz -> atomdep-cached-run-in-this-context-${CACHED_RUN_IN_THIS_CONTEXT_V}.tar.gz
https://registry.npmjs.org/ctags/-/ctags-3.0.0.tgz -> atomdep-ctags-${CTAGS_V}.tar.gz
https://registry.npmjs.org/fs-admin/-/fs-admin-0.1.7.tgz -> atomdep-fs-admin-${FS_ADMIN_V}.tar.gz
https://registry.npmjs.org/git-utils/-/git-utils-5.2.1.tgz -> atomdep-git-utils-${GIT_UTILS_V}.tar.gz
https://registry.npmjs.org/keyboard-layout/-/keyboard-layout-2.0.14.tgz -> atomdep-keyboard-layout-${KEYBOARD_LAYOUT_V}.tar.gz
https://registry.npmjs.org/keytar/-/keytar-4.3.0.tgz -> atomdep-keytar-${KEYTAR_V}.tar.gz
https://registry.npmjs.org/nslog/-/nslog-3.0.0.tgz -> atomdep-nslog-${NSLOG_V}.tar.gz
https://registry.npmjs.org/oniguruma/-/oniguruma-7.0.2.tgz -> atomdep-oniguruma-${ONIGURUMA_V}.tar.gz
https://registry.npmjs.org/pathwatcher/-/pathwatcher-8.0.1.tgz -> atomdep-pathwatcher-${PATHWATCHER_V}.tar.gz
https://registry.npmjs.org/scrollbar-style/-/scrollbar-style-3.2.0.tgz -> atomdep-scrollbar-style-${SCROLLBAR_STYLE_V}.tar.gz
https://registry.npmjs.org/spellchecker/-/spellchecker-3.5.0.tgz -> atomdep-spellchecker-${SPELLCHECKER_V}.tar.gz
https://registry.npmjs.org/superstring/-/superstring-2.3.4.tgz -> atomdep-superstring-${SUPERSTRING_V}.tar.gz
https://registry.npmjs.org/tree-sitter/-/tree-sitter-0.13.15.tgz -> atomdep-tree-sitter-${TREE_SITTER_V}.tar.gz
https://registry.npmjs.org/tree-sitter-bash/-/tree-sitter-bash-0.13.6.tgz -> atomdep-tree-sitter-bash-${TREE_SITTER_BASH_V}.tar.gz
https://registry.npmjs.org/tree-sitter-c/-/tree-sitter-c-0.13.7.tgz -> atomdep-tree-sitter-c-${TREE_SITTER_C_V}.tar.gz
https://registry.npmjs.org/tree-sitter-cpp/-/tree-sitter-cpp-0.13.8.tgz -> atomdep-tree-sitter-cpp-${TREE_SITTER_CPP_V}.tar.gz
https://registry.npmjs.org/tree-sitter-css/-/tree-sitter-css-0.13.7.tgz -> atomdep-tree-sitter-css-${TREE_SITTER_CSS_V}.tar.gz
https://registry.npmjs.org/tree-sitter-embedded-template/-/tree-sitter-embedded-template-0.13.0.tgz -> atomdep-tree-sitter-embedded-template-${TREE_SITTER_EMBEDDED_TEMPLATE_V}.tar.gz
https://registry.npmjs.org/tree-sitter-go/-/tree-sitter-go-0.13.3.tgz -> atomdep-tree-sitter-go-${TREE_SITTER_GO_V}.tar.gz
https://registry.npmjs.org/tree-sitter-html/-/tree-sitter-html-0.13.5.tgz -> atomdep-tree-sitter-html-${TREE_SITTER_HTML_V}.tar.gz
https://registry.npmjs.org/tree-sitter-javascript/-/tree-sitter-javascript-0.13.8.tgz -> atomdep-tree-sitter-javascript-${TREE_SITTER_JAVASCRIPT_V}.tar.gz
https://registry.npmjs.org/tree-sitter-python/-/tree-sitter-python-0.13.4.tgz -> atomdep-tree-sitter-python-${TREE_SITTER_PYTHON_V}.tar.gz
https://registry.npmjs.org/tree-sitter-regex/-/tree-sitter-regex-0.13.1.tgz -> atomdep-tree-sitter-regex-${TREE_SITTER_REGEX_V}.tar.gz
https://registry.npmjs.org/tree-sitter-ruby/-/tree-sitter-ruby-0.13.11.tgz -> atomdep-tree-sitter-ruby-${TREE_SITTER_RUBY_V}.tar.gz
https://registry.npmjs.org/tree-sitter-typescript/-/tree-sitter-typescript-0.13.6.tgz -> atomdep-tree-sitter-typescript-${TREE_SITTER_TYPESCRIPT_V}.tar.gz
"
BINMODS=(
atom--nsfw
atom--watcher
cached-run-in-this-context
ctags
fs-admin
git-utils
keyboard-layout
keytar
nslog
oniguruma
pathwatcher
scrollbar-style
spellchecker
superstring
tree-sitter
tree-sitter-bash
tree-sitter-c
tree-sitter-cpp
tree-sitter-css
tree-sitter-embedded-template
tree-sitter-go
tree-sitter-html
tree-sitter-javascript
tree-sitter-python
tree-sitter-regex
tree-sitter-ruby
tree-sitter-typescript
)
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
BDEPEND="
${PYTHON_DEPS}
>=dev-util/electron-${ELECTRON_V}:${ELECTRON_SLOT}
"
DEPEND="
>=app-text/hunspell-1.3.3:=
>=dev-libs/libgit2-0.23:=[ssh]
>=dev-libs/libpcre2-10.22:=[jit,pcre16]
>=dev-libs/oniguruma-6.6.0:=
>=dev-util/ctags-5.8
>=gnome-base/libgnome-keyring-3.12:=
x11-libs/libxkbfile
"
RDEPEND="
${DEPEND}
>=dev-util/electron-${ELECTRON_V}:${ELECTRON_SLOT}
dev-vcs/git
!sys-apps/apmd
${PYTHON_DEPS}
"
S="${WORKDIR}/${PN}-${MY_PV}"
BIN_S="${WORKDIR}/${PN}-bin-${MY_PV}"
BUILD_DIR="${S}/out"
pkg_setup() {
python-single-r1_pkg_setup
}
src_unpack() {
local a
mkdir "${BIN_S}" || die
for a in ${A} ; do
case "${a}" in
*.rpm)
pushd "${BIN_S}" >/dev/null || die
srcrpm_unpack "${a}"
popd >/dev/null || die
;;
*.tar|*.tar.gz|*.tar.bz2|*.tar.xz)
# Tarballs on registry.npmjs.org are wildly inconsistent,
# and violate the convention of having ${P} as the top
# directory name, so we strip the first component and
# unpack into a correct directory explicitly.
local basename=${a%.tar.*}
local destdir=${WORKDIR}/${basename#atomdep-}
mkdir "${destdir}" || die
tar -C "${destdir}" -x -o --strip-components 1 \
-f "${DISTDIR}/${a}" || die
;;
*)
# Fallback to the default unpacker.
unpack "${a}"
;;
esac
done
}
src_prepare() {
local suffix="$(get_install_suffix)"
local atom_rpmdir=$(get_atom_rpmdir)
local install_dir="${EPREFIX}$(get_install_dir)"
local electron_dir="${EPREFIX}$(get_electron_dir)"
local electron_path="${electron_dir}/electron"
local node_path="${electron_dir}/node"
local node_includes="${EPREFIX}$(get_node_includedir)"
local binmod
local pkgdir
mkdir "${BUILD_DIR}" || die
cp -a "${BIN_S}/${atom_rpmdir}/resources/app" \
"${BUILD_DIR}/app" || die
# Add source files omitted from the upstream binary distribution,
# and which we want to include in ours.
cp -a "${S}/spec" "${BUILD_DIR}/app" || die
# Unpack app.asar
easar extract "${BIN_S}/${atom_rpmdir}/resources/app.asar" \
"${BUILD_DIR}/app"
cd "${BUILD_DIR}/app" || die
eapply "${FILESDIR}/apm-python.patch"
eapply "${FILESDIR}/atom-unbundle-electron-r3.patch"
eapply "${FILESDIR}/atom-python-r1.patch"
eapply "${FILESDIR}/atom-apm-path-r2.patch"
eapply "${FILESDIR}/atom-fix-app-restart-r2.patch"
eapply "${FILESDIR}/atom-marker-layer-r1.patch"
eapply "${FILESDIR}/atom-fix-config-watcher-r1.patch"
sed -i -e "s|path.join(process.resourcesPath, 'LICENSE.md')|'/usr/share/licenses/$(get_atom_appname)/LICENSE.md'|g" \
./src/main-process/atom-application.js \
|| die
sed -i -e "s|{{NPM_CONFIG_NODEDIR}}|${node_includes}|g" \
-e "s|{{ATOM_PATH}}|${electron_path}|g" \
-e "s|{{ATOM_RESOURCE_PATH}}|${install_dir}/app.asar|g" \
-e "s|{{ATOM_PREFIX}}|${EPREFIX}|g" \
-e "s|^#!/bin/bash|#!${EPREFIX}/bin/bash|g" \
./atom.sh \
|| die
local env="export NPM_CONFIG_NODEDIR=${node_includes}\nexport ELECTRON_NO_ASAR=1"
sed -i -e \
"s|\"\$binDir/\$nodeBin\"|${env}\nexec \"${node_path}\"|g" \
apm/bin/apm || die
sed -i -e \
"s|^\([[:space:]]*\)node[[:space:]]\+|\1\"${node_path}\" |g" \
apm/node_modules/npm/bin/node-gyp-bin/node-gyp || die
sed -i -e \
"s|atomCommand = 'atom';|atomCommand = '${EPREFIX}/usr/bin/atom${suffix}'|g" \
apm/lib/test.js || die
rm apm/bin/node || die
sed -i -e "s|/${atom_rpmdir}/atom|${EPREFIX}/usr/bin/atom${suffix}|g" \
"${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" || die
for binmod in "${BINMODS[@]}"; do
pkgdir="${WORKDIR}/$(package_dir ${binmod})"
cd "${pkgdir}" || die
if have_patches_for "${binmod}"; then
eapply "${FILESDIR}"/${binmod}-*.patch
fi
done
cd "${BUILD_DIR}/app" || die
# Unbundle bundled libs from modules
pkgdir="${WORKDIR}/$(package_dir git-utils)"
${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
--inplace --unbundle "git;libgit2;git2" \
"${pkgdir}/binding.gyp" || die
pkgdir="${WORKDIR}/$(package_dir oniguruma)"
${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
--inplace --unbundle "onig_scanner;oniguruma;onig" \
"${pkgdir}/binding.gyp" || die
pkgdir="${WORKDIR}/$(package_dir spellchecker)"
${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
--inplace --unbundle "spellchecker;hunspell;hunspell" \
"${pkgdir}/binding.gyp" || die
pkgdir="${WORKDIR}/$(package_dir superstring)"
${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
--inplace --unbundle \
"superstring_core;./vendor/pcre/pcre.gyp:pcre;pcre2-16; \
-DPCRE2_CODE_UNIT_WIDTH=16" \
"${pkgdir}/binding.gyp" || die
for binmod in "${BINMODS[@]}"; do
pkgdir="${WORKDIR}/$(package_dir ${binmod})"
mkdir -p "${pkgdir}/node_modules" || die
ln -s "${WORKDIR}/nodejs-nan-${NAN_V}" \
"${pkgdir}/node_modules/nan" || die
done
sed -i -e "s|{{ATOM_PREFIX}}|${EPREFIX}|g" \
"${BUILD_DIR}/app/src/config-schema.js" || die
sed -i -e "s|{{ATOM_SUFFIX}}|${suffix}|g" \
"${BUILD_DIR}/app/src/config-schema.js" || die
eapply_user
}
src_configure() {
local binmod
for binmod in "${BINMODS[@]}"; do
einfo "Configuring ${binmod}..."
cd "${WORKDIR}/$(package_dir ${binmod})" || die
enodegyp_atom configure
done
}
src_compile() {
local binmod
local ctags_d="node_modules/symbols-view/vendor"
local jobs=$(makeopts_jobs)
local unpacked_paths
# Transpile any yet untranspiled files.
ecoffeescript "${BUILD_DIR}"/app/spec/'*.coffee'
mkdir -p "${BUILD_DIR}/modules/" || die
for binmod in "${BINMODS[@]}"; do
local binmod_name=${binmod##node-}
einfo "Building ${binmod}..."
cd "${WORKDIR}/$(package_dir ${binmod})" || die
enodegyp_atom --verbose --jobs="$(makeopts_jobs)" build
mkdir -p "${BUILD_DIR}/modules/${binmod_name}" || die
cp build/Release/*.node "${BUILD_DIR}/modules/${binmod_name}" || die
done
# Put compiled binary modules in place
fix_binmods "${BUILD_DIR}/app" "apm"
fix_binmods "${BUILD_DIR}/app" "node_modules"
# Remove non-Linux vendored ctags binaries
rm "${BUILD_DIR}/app/${ctags_d}/ctags-darwin" \
"${BUILD_DIR}/app/${ctags_d}/ctags-win32.exe" || die
# Remove bundled git
rm -r "${BUILD_DIR}/app/node_modules/dugite/git" || die
# Re-pack app.asar
# Keep unpack rules in sync with buildAsarUnpackGlobExpression()
# in script/lib/package-application.js
unpacked_paths=(
"*.node"
"ctags-config"
"ctags-linux"
"**/spec/fixtures/**"
"**/node_modules/github/bin/**"
"**/node_modules/spellchecker/**"
"**/resources/atom.png")
unpacked_paths=$(IFS=,; echo "${unpacked_paths[*]}")
cd "${BUILD_DIR}" || die
easar pack --unpack="{${unpacked_paths}}" --unpack-dir=apm "app" "app.asar"
rm -r "${BUILD_DIR}/app.asar.unpacked/apm" || die
# Replace vendored ctags with a symlink to system ctags
rm "${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
ln -s "${EPREFIX}/usr/bin/ctags" \
"${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
}
src_install() {
local install_dir="$(get_install_dir)"
local suffix="$(get_install_suffix)"
insinto "${install_dir}"
doins "${BUILD_DIR}/app.asar"
doins -r "${BUILD_DIR}/app.asar.unpacked"
insinto "${install_dir}/app"
doins -r "${BUILD_DIR}/app/apm"
insinto "/usr/share/applications/"
newins "${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" \
"atom${suffix}.desktop"
insinto "/usr/share/icons/"
doins -r "${BIN_S}/usr/share/icons/hicolor"
exeinto "${install_dir}"
newexe "${BUILD_DIR}/app/atom.sh" atom
insinto "/usr/share/licenses/${PN}${suffix}"
doins "${BIN_S}/$(get_atom_rpmdir)/resources/LICENSE.md"
dosym "../..${install_dir}/atom" "/usr/bin/atom${suffix}"
dosym "../..${install_dir}/app/apm/bin/apm" "/usr/bin/apm${suffix}"
fix_executables "${install_dir}/app/apm/bin"
fix_executables "${install_dir}/app/apm/node_modules/.bin"
fix_executables "${install_dir}/app/apm/node_modules/npm/bin"
fix_executables "${install_dir}/app/apm/node_modules/npm/bin/node-gyp-bin"
fix_executables "${install_dir}/app/apm/node_modules/node-gyp/bin"
}
pkg_postinst() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
}
# Helpers
# -------
# Return the installation suffix appropriate for the slot.
get_install_suffix() {
local slot=${SLOT%%/*}
local suffix
if [[ "${slot}" == "0" ]]; then
suffix=""
else
suffix="-${slot}"
fi
echo "${suffix}"
}
# Return the upstream app name appropriate for $PV.
get_atom_appname() {
if [[ "${PV}" == *beta* ]]; then
echo "atom-beta"
else
echo "atom"
fi
}
# Return the app installation path inside the upstream archive.
get_atom_rpmdir() {
echo "usr/share/$(get_atom_appname)"
}
# Return the installation target directory.
get_install_dir() {
echo "/usr/$(get_libdir)/atom$(get_install_suffix)"
}
# Return the Electron installation directory.
get_electron_dir() {
echo "/usr/$(get_libdir)/electron-${ELECTRON_SLOT}"
}
# Return the directory containing appropriate Node headers
# for the required version of Electron.
get_node_includedir() {
echo "/usr/include/electron-${ELECTRON_SLOT}/node/"
}
# Run JavaScript using Electron's version of Node.
enode_electron() {
"${BROOT}/$(get_electron_dir)"/node "${@}"
}
# Run node-gyp using Electron's version of Node.
enodegyp_atom() {
local apmpath="$(get_atom_rpmdir)/resources/app/apm"
local nodegyp="${BIN_S}/${apmpath}/node_modules/node-gyp/bin/node-gyp.js"
PATH="${BROOT}/$(get_electron_dir):${PATH}" \
enode_electron "${nodegyp}" \
--nodedir="${BROOT}/$(get_node_includedir)" "${@}" || die
}
# Coffee Script wrapper.
ecoffeescript() {
local cscript="${FILESDIR}/transpile-coffee-script.js"
echo "ecoffeescript" "${@}"
echo ATOM_HOME="${T}/.atom" ATOM_SRC_ROOT="${BUILD_DIR}/app" \
NODE_PATH="${BUILD_DIR}/app/node_modules" \
enode_electron "${cscript}" "${@}" || die
ATOM_HOME="${T}/.atom" ATOM_SRC_ROOT="${BUILD_DIR}/app" \
NODE_PATH="${BUILD_DIR}/app/node_modules" \
enode_electron "${cscript}" "${@}" || die
}
# asar wrapper.
easar() {
local asar="${WORKDIR}/$(package_dir asar)/node_modules/asar/bin/asar"
echo "asar" "${@}"
enode_electron "${asar}" "${@}" || die
}
# Return a $WORKDIR directory for a given package name.
package_dir() {
local binmod="${1//-/_}"
local binmod_v="${binmod^^}_V"
if [[ -z "${binmod_v}" ]]; then
die "${binmod_v} is not set."
fi
echo ${1}-${!binmod_v}
}
# Check if there are patches for a given package.
have_patches_for() {
local patches="${1}-*.patch"
local found
found=$(find "${FILESDIR}" -maxdepth 1 -name "${patches}" -print -quit)
test -n "${found}"
}
# Replace binary node modules with the newly compiled versions thereof.
fix_binmods() {
local dir="${2}"
local prefix="${1}"
local path
local relpath
local modpath
local mod
local cruft
while IFS= read -r -d '' path; do
relpath=${path#${prefix}}
relpath=${relpath##/}
relpath=${relpath#W${dir}}
modpath=$(dirname ${relpath})
modpath=${modpath%build/Release}
mod=$(basename ${modpath})
# Check if the binary node module is actually a valid dependency.
# Sometimes the upstream removes a dependency from package.json but
# forgets to remove the module from node_modules.
has "${mod}" "${BINMODS[@]}" || continue
# Must copy here as symlinks will cause the module loading to fail.
cp -f "${BUILD_DIR}/modules/${mod}/${path##*/}" "${path}" || die
# Drop unnecessary static libraries.
find "${path%/*}" -name '*.a' -delete || die
done < <(find "${prefix}/${dir}" -name '*.node' -print0 || die)
}
# Fix script permissions and shebangs to point to the correct version
# of Node.
fix_executables() {
local dir="${1}"
local node_sb="#!${EPREFIX}$(get_electron_dir)"/node
while IFS= read -r -d '' f; do
IFS= read -r shebang < "${f}"
if [[ ${shebang} == '#!'* ]]; then
fperms +x "${f#${ED}}"
if [[ "${shebang}" == "#!/usr/bin/env node" || \
"${shebang}" == "#!/usr/bin/node" ]]; then
einfo "Fixing node shebang in ${f#${ED}}"
sed --follow-symlinks -i \
-e "1s:${shebang}$:${node_sb}:" "${f}" || die
fi
fi
done < <(find -L "${ED}${dir}" -maxdepth 1 -mindepth 1 -type f -print0 || die)
}

@ -1,16 +0,0 @@
diff --git a/apm/bin/python-interceptor.sh b/apm/bin/python-interceptor.sh
index 7ce1965..12cc72f 100755
--- a/apm/bin/python-interceptor.sh
+++ b/apm/bin/python-interceptor.sh
@@ -34,9 +34,9 @@ case $1 in
ARGS+=("--format=safemake.py")
fi
- exec python "${ARGS[@]}"
+ exec python2 "${ARGS[@]}"
;;
*)
- exec python "$@"
+ exec python2 "$@"
;;
esac

@ -1,16 +0,0 @@
diff --git a/src/config-schema.js b/src/config-schema.js
index 39f0585..24ee2de 100644
--- a/src/config-schema.js
+++ b/src/config-schema.js
@@ -5,6 +5,11 @@ const configSchema = {
core: {
type: 'object',
properties: {
+ apmPath: {
+ type: 'string',
+ "default": '{{ATOM_PREFIX}}/usr/bin/apm{{ATOM_SUFFIX}}',
+ description: 'Path to apm executable.'
+ },
ignoredNames: {
type: 'array',
default: ['.git', '.hg', '.svn', '.DS_Store', '._*', 'Thumbs.db', 'desktop.ini'],

@ -1,24 +0,0 @@
From bf4c1ab651a82eb369ffa3dc4b20246d043d797a Mon Sep 17 00:00:00 2001
From: Elvis Pranskevichus <elvis@magic.io>
Date: Wed, 28 Mar 2018 12:02:53 -0400
Subject: [PATCH] Fix app restart
---
src/main-process/atom-application.js | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/main-process/atom-application.js b/src/main-process/atom-application.js
index 10b791761..d16a68fba 100644
--- a/src/main-process/atom-application.js
+++ b/src/main-process/atom-application.js
@@ -1344,6 +1344,7 @@ class AtomApplication extends EventEmitter {
restart () {
const args = []
+ args.push("--app=" + this.resourcePath);
if (this.safeMode) args.push('--safe')
if (this.logFile != null) args.push(`--log-file=${this.logFile}`)
if (this.socketPath != null) args.push(`--socket-path=${this.socketPath}`)
--
2.16.1

@ -1,41 +0,0 @@
From 5f1f840372611b8f42d8fd3be7b680f90958f015 Mon Sep 17 00:00:00 2001
From: Elvis Pranskevichus <elvis@magic.io>
Date: Wed, 28 Mar 2018 18:52:58 -0400
Subject: [PATCH] Unbreak config watcher in the main process
---
src/path-watcher.js | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/path-watcher.js b/src/path-watcher.js
index 6693489ef..f3ddc6fe4 100644
--- a/src/path-watcher.js
+++ b/src/path-watcher.js
@@ -544,12 +544,22 @@ class PathWatcherManager {
// Private: Access the currently active manager instance, creating one if necessary.
static active () {
if (!this.activeManager) {
- this.activeManager = new PathWatcherManager(atom.config.get('core.fileSystemWatcher'))
- this.sub = atom.config.onDidChange('core.fileSystemWatcher', ({newValue}) => { this.transitionTo(newValue) })
+ let config = this.getConfig()
+ this.activeManager = new PathWatcherManager(config.get('core.fileSystemWatcher'))
+ this.sub = config.onDidChange('core.fileSystemWatcher', ({newValue}) => { this.transitionTo(newValue) })
}
return this.activeManager
}
+ // Private: get config instance for the current application
+ static getConfig() {
+ if (typeof(global.atom) != 'undefined') {
+ return global.atom.config
+ } else {
+ return global.atomApplication.config
+ }
+ }
+
// Private: Replace the active {PathWatcherManager} with a new one that creates [NativeWatchers]{NativeWatcher}
// based on the value of `setting`.
static async transitionTo (setting) {
--
2.17.0

@ -1,11 +0,0 @@
--- a/node_modules/text-buffer/lib/marker-layer.js
--- b/node_modules/text-buffer/lib/marker-layer.js
@@ -192,7 +192,7 @@
return function(markerId) {
var marker;
marker = _this.markersById[markerId];
- if (!marker.matchesParams(params)) {
+ if (marker == null || !marker.matchesParams(params)) {
return;
}
return result.push(marker);

@ -1,25 +0,0 @@
From fae3881a3fa5bf58c696c5bd9c74c62a2113cb12 Mon Sep 17 00:00:00 2001
From: Elvis Pranskevichus <elvis@magic.io>
Date: Sat, 29 Sep 2018 16:12:39 -0400
Subject: [PATCH] Use Python 2
---
atom.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/atom.sh b/atom.sh
index 0ad3f5b23..62fe682fe 100755
--- a/atom.sh
+++ b/atom.sh
@@ -62,6 +62,8 @@ if [ $REDIRECT_STDERR ]; then
exec 2> /dev/null
fi
+export PYTHON=python2
+
ATOM_HOME="${ATOM_HOME:-$HOME/.atom}"
mkdir -p "$ATOM_HOME"
--
2.16.4

@ -1,39 +0,0 @@
From 342dc685f8139e950924c04f1d460052e7531fb5 Mon Sep 17 00:00:00 2001
From: Elvis Pranskevichus <elvis@magic.io>
Date: Thu, 5 May 2016 17:23:35 -0400
Subject: [PATCH] Unbundle electron
---
atom.sh | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/atom.sh b/atom.sh
index 935204bfc..0ad3f5b23 100755
--- a/atom.sh
+++ b/atom.sh
@@ -138,16 +138,21 @@ elif [ $OS == 'Linux' ]; then
;;
esac
+ export NPM_CONFIG_NODEDIR="{{NPM_CONFIG_NODEDIR}}"
+ export ATOM_RESOURCE_PATH="{{ATOM_RESOURCE_PATH}}"
+ export LOCAL_GIT_DIRECTORY="{{ATOM_PREFIX}}/usr"
+ ATOM_PATH="{{ATOM_PATH}}"
+
: ${TMPDIR:=/tmp}
[ -x "$ATOM_PATH" ] || ATOM_PATH="$TMPDIR/atom-build/Atom/atom"
if [ $EXPECT_OUTPUT ]; then
- "$ATOM_PATH" --executed-from="$(pwd)" --pid=$$ "$@"
+ "$ATOM_PATH" --app="$ATOM_RESOURCE_PATH" --executed-from="$(pwd)" --pid=$$ "$@"
exit $?
else
(
- nohup "$ATOM_PATH" --executed-from="$(pwd)" --pid=$$ "$@" > "$ATOM_HOME/nohup.out" 2>&1
+ nohup "$ATOM_PATH" --app="$ATOM_RESOURCE_PATH" --executed-from="$(pwd)" --pid=$$ "$@" > "$ATOM_HOME/nohup.out" 2>&1
if [ $? -ne 0 ]; then
cat "$ATOM_HOME/nohup.out"
exit $?
--
2.16.4

@ -1,141 +0,0 @@
#!/usr/bin/env python2
from __future__ import print_function
import argparse
import pprint
import sys
def die(msg):
print(msg, file=sys.stderr)
sys.exit(1)
def do_unbundle(gypdata, targets):
gyptargets = {t['target_name']: t for t in gypdata['targets']}
dropped_deps = set()
def _unbundle_in_block(gypblock):
gypdeps = gypblock.get('dependencies') or {}
for dep, (libs, defines) in unbundlings.items():
if dep not in gypdeps:
continue
gypdeps.remove(dep)
try:
ls = gyptarget['link_settings']
except KeyError:
ls = gyptarget['link_settings'] = {}
try:
gyplibs = ls['libraries']
except KeyError:
gyplibs = ls['libraries'] = []
gyplibs.extend('-l{}'.format(lib) for lib in libs)
if defines:
try:
dd = gyptarget['defines']
except KeyError:
dd = gyptarget['defines'] = []
dd.extend(defines)
dropped_deps.add(dep)
gypconds = gypblock.get('conditions') or []
for cond in gypconds:
condblocks = cond[1:]
for condblock in condblocks:
_unbundle_in_block(condblock)
for target, unbundlings in targets.items():
if target not in gyptargets:
die('There is no {} target in gyp file'.format(target))
gyptarget = gyptargets[target]
_unbundle_in_block(gyptarget)
for gyptarget in gypdata['targets']:
if gyptarget['target_name'] in dropped_deps:
if gyptarget.get('dependencies'):
dropped_deps.update(gyptarget.get('dependencies'))
new_targets = []
for gyptarget in gypdata['targets']:
if gyptarget['target_name'] not in dropped_deps:
new_targets.append(gyptarget)
gypdata['targets'] = new_targets
gypconds = gypdata.get('conditions')
if gypconds:
for cond in gypconds:
condblocks = cond[1:]
for condblock in condblocks:
new_targets = []
blocktargets = condblock.get('targets')
if blocktargets:
for blocktarget in blocktargets:
if blocktarget['target_name'] not in dropped_deps:
new_targets.append(blocktarget)
condblock['targets'] = new_targets
def main():
parser = argparse.ArgumentParser(description='Unbundle libs in gyp files')
parser.add_argument('gypfile', type=str, help='input gyp file')
parser.add_argument(
'--unbundle', type=str, action='append',
help='unbundle rule in the format '
'<target>;<dep>;<lib>[;lib][;-DMACRO]')
parser.add_argument(
'-i', '--inplace', action='store_true',
help='modify gyp file in-place')
args = parser.parse_args()
targets = {}
for unbundle in args.unbundle:
rule = list(filter(None, (i.strip() for i in unbundle.split(';'))))
if len(rule) < 3:
die('Invalid unbundle rule: {!r}'.format(unbundle))
target, dep = rule[:2]
defines = []
libs = []
for item in rule[2:]:
if item.startswith('-D'):
defines.append(item[2:])
else:
libs.append(item)
try:
target_unbundlings = targets[target]
except KeyError:
target_unbundlings = targets[target] = {}
target_unbundlings[dep] = libs, defines
with open(args.gypfile, 'rt') as f:
gypdata = eval(f.read())
do_unbundle(gypdata, targets)
if args.inplace:
with open(args.gypfile, 'wt') as f:
pprint.pprint(gypdata, stream=f)
else:
pprint.pprint(gypdata)
if __name__ == '__main__':
main()

@ -1,25 +0,0 @@
'use strict'
const CompileCache = require(process.env.ATOM_SRC_ROOT + '/src/compile-cache')
const fs = require('fs')
const glob = require('glob')
const path = require('path')
function do_compile() {
let paths = new Set()
for (let pattern of process.argv.slice(2)) {
for (let path of glob.sync(pattern, {nodir: true})) {
paths.add(path)
}
}
for (let coffeePath of paths) {
let jsPath = coffeePath.replace(/coffee$/g, 'js')
fs.writeFileSync(
jsPath, CompileCache.addPathToCache(coffeePath, process.env.ATOM_HOME))
fs.unlinkSync(coffeePath)
}
}
do_compile()

@ -1,10 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>cynede@gentoo.org</email>
</maintainer>
<upstream>
<remote-id type="github">atom/node-spellchecker</remote-id>
</upstream>
</pkgmetadata>

@ -1,3 +1,2 @@
DIST texworks-0.6.3.tar.gz 12082640 BLAKE2B db5b98f9226e0e7e109dc06d8e0a88b0e8f0dd237676ebec3be55308c720eb6dada25be061d8d5dc27949b9673e93fd65c8ddddfbe03aee4f8170471c52b37fd SHA512 389cf54441e74164fc842f2f293cdee45c6ff9fe202f262d32f3fb076de9a29813a62cd75052969293f2f784e0722215bbbf2206e75bc836a13d495bf5aed653
DIST texworks-0.6.4.tar.gz 12139530 BLAKE2B 48808ba7c868c9f445d902254c4fe7abb4af740b77e227ab3d9d0ced3132129faa885af68811fa6e3c27ede217deacaf062ae4d8ff0f3fe24b066ab1195de96b SHA512 8fa3e16e6ee19d46dba30707e7a83340c1d68f6cb855cc2838c5c168dc580f8973cb7438bdfce93e51962653694d369c51d7a82a07ad6bcf5eb89030fa3640ea
DIST texworks-0.6.5.tar.gz 12140935 BLAKE2B 660606fe2e53d5f2a53e80792efbee368f5f2f402ab974761efc6e11a6f2233fd04672dcc3bf0155a070162616c1d5a9c7313825890e6fb0c6c4dc7af2c62d29 SHA512 d97bb7c3ad7bbb402be80556027ef19076dae91bb9449df2b45d54e89b492e32b8d6f109d1bda9388424af6218866d84a8c296c9bc2ef644cf2fac0d4b24939e

@ -1,68 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python{3_6,3_7} )
inherit python-single-r1 cmake-utils virtualx xdg-utils
DESCRIPTION="A simple interface for working with TeX documents"
HOMEPAGE="http://tug.org/texworks/"
SRC_URI="https://github.com/TeXworks/texworks/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="lua python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="app-text/hunspell:=
app-text/poppler[qt5]
dev-qt/designer:5
dev-qt/qtcore:5
dev-qt/qtconcurrent:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtscript:5[scripttools]
lua? ( dev-lang/lua:0 )
python? ( ${PYTHON_DEPS} ) "
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
S=${WORKDIR}/${PN}-release-${PV}
RESTRICT="!test? ( test )"
pkg_setup() {
python-single-r1_pkg_setup
}
src_configure() {
local mycmakeargs=(
-Wno-dev
-DPREFER_BUNDLED_SYNCTEX=ON
-DWITH_LUA=$(usex lua ON OFF)
-DWITH_PYTHON=$(usex python ON OFF)
-DTeXworks_PLUGIN_DIR="/usr/$(get_libdir)/texworks"
-DTeXworks_DOCS_DIR="/share/doc/${PF}"
-DQTPDF_VIEWER=ON
-DBUILD_SHARED_LIBS=ON
-DBUILD_SHARED_PLUGINS=ON
)
cmake-utils_src_configure
}
src_test() {
virtx default_src_test
}
pkg_postinst() {
xdg_desktop_database_update
}
pkg_postrm() {
xdg_desktop_database_update
}

@ -13,7 +13,7 @@ SRC_URI="https://github.com/TeXworks/texworks/archive/release-${PV}.tar.gz -> ${
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
IUSE="lua python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"

Binary file not shown.

@ -1 +0,0 @@
DIST eselect-electron-2.1.tar.gz 9658 BLAKE2B c5bcd58f5b82c3c9f4cb1e6cfb26665b7524b0d973a717437a18f5ee66fa5fe30bdd4e82673efc8199dc4a637a0b93ba537a62fc060d68b3bde7370138f815ce SHA512 6ba30b1e4d55e01cd9df3ab30038a45dba80c6191e676169e28b3f9881b4154db5edfe8569cafe77022b467e9383a291b1e6c49e296a8ed90582b2c6d1489c47

@ -1,24 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="Utility to select the default Electron slot"
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
SRC_URI="https://github.com/elprans/${PN}/archive/v${PV}.tar.gz -> eselect-electron-${PV}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x86-solaris"
IUSE=""
RDEPEND="app-admin/eselect"
src_install() {
insinto /usr/share/eselect/modules
doins electron.eselect
dosym eselect /usr/bin/electron-config
}
pkg_postinst() {
electron-config update
}

@ -1,8 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!--maintainer-needed-->
<upstream>
<remote-id type="github">elprans/eselect-electron</remote-id>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -1,4 +1,2 @@
DIST collectd-5.10.0.tar.bz2 1856377 BLAKE2B d4c011c5d2d9bfcf8400a35ca92f0b8c82fd58c3201b1b57a6b48c98af63efaab03c5fb1144bae28e7661743626871eaa962959929ff7fcdd5778b72c7054c4e SHA512 1296085fb19bba0c7b7d8684ec877851158b25c9f7b58fc3ae602fba7d7dc718876e730e1cdba96d39101cc5452705bb3445aaee717b219025ae816299b6a3c5
DIST collectd-5.8.1.tar.bz2 1789228 BLAKE2B 739f961172978db33bdf95c8f93bde0036a26b2ed2abd3396a734d4b97c4ae117bb26a62fcdbb3d77bd63d9f64a38f83d0c8a0665e8fa7bf5ed2efc6838b0e8e SHA512 8c75448c6e59ee1ea5c1cf486c07040d20fb36d5b7a1be2ab45facea330166e8c1d1fa38e3fa82ec905428d7b2c92c66aae35ee8e3546f67ce76f7f410739901
DIST collectd-5.9.1.tar.gz 1501178 BLAKE2B ed0984637161427f3b354002850b7ea8c49a4aca64b637b864e5513c8057f52a4a479477b21e2a4cff436728c16d66c6d561df14308adcaeb7d597c290f543ce SHA512 424ef12a3ba6997a71e6eda1a62d73fec588c9c4d90542c2381c1f9f4e118b2c02e18c71507e8984e20fb255b69b7f42afe83085b3df5e225c576d1eee1655fb
DIST collectd-5.9.2.tar.gz 1501275 BLAKE2B f878dc9ee0d1948643dcbfcf3a427558a1c17adedcc31f02f4f4bb689e841760dcf732866c0617b8b139b4aecb094f8ca4aa5e7c7c707adf5589fc8767a1d2f9 SHA512 cbbc8d6409242108550b974f388d15c6084753dd51c6056614db34bceb3b72abb0237892ea65086093b9a5c5569087666c0430eb16021d22c3dde8e6d1ae7922
DIST collectd-5.11.0.tar.bz2 1851663 BLAKE2B b07c727ed553b3d11967da734a98fda753794be199377b08a2780b7d3f79acef345f160d930dda68cd12aa0949bbc0aee6ca5e7ae01e16a5e392a4a73e272d1d SHA512 87671545e3d01770c204ba4439265d1c0add6a105bf04ff02dc04db3731fd933d32ecb9b0dc15f2e504d70c3e421a64cf19728c897aa4fb1fda86e393ffc15bf

@ -3,7 +3,7 @@
EAPI="6"
PYTHON_COMPAT=( python{3_6,3_7} )
PYTHON_COMPAT=( python3_{6,7,8} )
JAVA_PKG_OPT_USE="collectd_plugins_java"
inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-functions python-single-r1 systemd tmpfiles user

@ -3,7 +3,7 @@
EAPI="6"
PYTHON_COMPAT=( python{3_6,3_7} )
PYTHON_COMPAT=( python3_{6,3,7} )
JAVA_PKG_OPT_USE="collectd_plugins_java"
inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-functions python-single-r1 systemd tmpfiles user
@ -11,7 +11,7 @@ inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-fun
DESCRIPTION="Collects system statistics and provides mechanisms to store the values"
HOMEPAGE="https://collectd.org/"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PN}-${PV}.tar.gz"
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.tar.bz2"
LICENSE="MIT GPL-2 GPL-2+ GPL-3 GPL-3+"
SLOT="0"
@ -37,12 +37,13 @@ IUSE="contrib debug java kernel_Darwin kernel_FreeBSD kernel_linux perl selinux
# pf: Requires BSD packet filter
# pinba: Requires MySQL Pinba engine (http://pinba.org/)
# tape: Requires libkstat (Solaris only)
# tokyotyrant: Requires tokyotyrant
# write_riemann: Requires riemann-c-client
# xmms: Requires libxmms (v1)
# zone: Solaris only...
COLLECTD_IMPOSSIBLE_PLUGINS="apple_sensors amqp1 aquaero barometer dpdkstat
grpc intel_pmu intel_rdt lpar mic netapp pf pinba tape write_riemann
xmms zone"
grpc intel_pmu intel_rdt lpar mic netapp pf pinba tape tokyotyrant
write_riemann xmms zone"
# Plugins that have been (compile) tested and can be enabled via COLLECTD_PLUGINS
COLLECTD_TESTED_PLUGINS="aggregation amqp apache apcups ascent battery bind
@ -57,9 +58,9 @@ COLLECTD_TESTED_PLUGINS="aggregation amqp apache apcups ascent battery bind
ntpd numa nut olsrd onewire openldap openvpn oracle ovs_events
ovs_stats perl ping postgresql powerdns processes protocols python
python redis routeros rrdcached rrdtool sensors serial sigrok smart
snmp snmp_agent statsd swap syslog table tail tail_csv
snmp snmp_agent statsd swap sysevent syslog table tail tail_csv
target_notification target_replace target_scale target_set tcpconns
teamspeak2 ted thermal threshold tokyotyrant turbostat unixsock
teamspeak2 ted thermal threshold turbostat unixsock
uptime users uuid varnish virt vmem vserver wireless write_graphite
write_http write_kafka write_log write_mongodb write_prometheus
write_redis write_sensu write_tsdb xencpu zfs_arc zookeeper"
@ -125,7 +126,7 @@ COMMON_DEPEND="
collectd_plugins_smart? ( dev-libs/libatasmart )
collectd_plugins_snmp? ( net-analyzer/net-snmp )
collectd_plugins_snmp_agent? ( net-analyzer/net-snmp )
collectd_plugins_tokyotyrant? ( net-misc/tokyotyrant )
collectd_plugins_sysevent? ( dev-libs/yajl:= )
collectd_plugins_varnish? ( www-servers/varnish:= )
collectd_plugins_virt? ( app-emulation/libvirt:= dev-libs/libxml2:2= )
collectd_plugins_write_http? ( net-misc/curl:0= dev-libs/yajl:= )
@ -153,14 +154,12 @@ DEPEND="${COMMON_DEPEND}
RDEPEND="${COMMON_DEPEND}
collectd_plugins_java? ( >=virtual/jre-1.6 )
collectd_plugins_syslog? ( virtual/logger )
selinux? ( sec-policy/selinux-collectd )
!<sys-apps/openrc-0.18.2"
selinux? ( sec-policy/selinux-collectd )"
REQUIRED_USE="
collectd_plugins_python? ( ${PYTHON_REQUIRED_USE} )
collectd_plugins_smart? ( udev )"
S="${WORKDIR}/${PN}-${PN}-${PV}"
collectd_plugins_smart? ( udev )
contrib? ( perl )"
# @FUNCTION: collectd_plugin_kernel_linux
# @DESCRIPTION:
@ -446,7 +445,7 @@ src_install() {
dodoc AUTHORS ChangeLog README
if use contrib ; then
insinto /usr/share/doc/${PF}
insinto /usr/share/${PN}
doins -r contrib
fi
@ -536,6 +535,6 @@ pkg_postinst() {
if use contrib; then
elog "The scripts in /usr/share/doc/${PF}/collection3 for generating graphs need dev-perl/HTML-Parser,"
elog "dev-perl/config-general, dev-perl/regexp-common, and net-analyzer/rrdtool[perl] to be installed."
elog "dev-perl/CGI, dev-perl/Config-General and net-analyzer/rrdtool[perl] to be installed."
fi
}

@ -1,536 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PYTHON_COMPAT=( python{3_6,3_7} )
JAVA_PKG_OPT_USE="collectd_plugins_java"
inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-functions python-single-r1 systemd tmpfiles user
DESCRIPTION="Collects system statistics and provides mechanisms to store the values"
HOMEPAGE="https://collectd.org/"
SRC_URI="https://collectd.org/files/${P}.tar.bz2"
LICENSE="MIT GPL-2 GPL-2+ GPL-3 GPL-3+"
SLOT="0"
KEYWORDS="~alpha amd64 arm x86"
IUSE="contrib debug java kernel_Darwin kernel_FreeBSD kernel_linux perl selinux static-libs udev xfs"
# The plugin lists have to follow here since they extend IUSE
# Plugins that don't build (e.g. dependencies not in Gentoo)
# apple_sensors: Requires libIOKit
# aquaero: Requires aerotools-ng/libaquaero5
# barometer: Requires libi2c (i2c_smbus_read_i2c_block_data)
# dpdkevents: Requires dpdk
# dpdkstat: Requires dpdk
# grpc: Requires libgrpc
# intel_pmu: Requires libjevents (pmu-tools)
# intel_rdt: Requires libpqos from intel-cmt-cat project
# lpar: Requires libperfstat (AIX only)
# mic: Requires Intel Many Integrated Core Architecture API
# (part of Intel's Xeon Phi software)
# netapp: Requires libnetapp (http://communities.netapp.com/docs/DOC-1110)
# pf: Requires BSD packet filter
# pinba: Requires MySQL Pinba engine (http://pinba.org/)
# tape: Requires libkstat (Solaris only)
# write_riemann: Requires riemann-c-client
# xmms: Requires libxmms (v1)
# zone: Solaris only...
COLLECTD_IMPOSSIBLE_PLUGINS="apple_sensors aquaero barometer dpdkstat grpc
intel_pmu intel_rdt lpar mic netapp pf pinba tape write_riemann
xmms zone"
# Plugins that have been (compile) tested and can be enabled via COLLECTD_PLUGINS
COLLECTD_TESTED_PLUGINS="aggregation amqp apache apcups ascent battery bind
ceph cgroups chrony conntrack contextswitch cpu cpufreq cpusleep
csv curl curl_json curl_xml dbi df disk dns drbd email
entropy ethstat exec fhcount filecount fscache gmond gps hddtemp
hugepages interface ipc ipmi iptables ipvs irq java lua
load logfile log_logstash lvm madwifi match_empty_counter
match_hashed match_regex match_timediff match_value mbmon mcelog md
memcachec memcached memory modbus mqtt multimeter mysql netlink
network network nfs nginx notify_desktop notify_email notify_nagios
ntpd numa nut olsrd onewire openldap openvpn oracle ovs_events
ovs_stats perl ping postgresql powerdns processes protocols python
python redis routeros rrdcached rrdtool sensors serial sigrok smart
snmp snmp_agent statsd swap syslog table tail tail_csv
target_notification target_replace target_scale target_set tcpconns
teamspeak2 ted thermal threshold tokyotyrant turbostat unixsock
uptime users uuid varnish virt vmem vserver wireless write_graphite
write_http write_kafka write_log write_mongodb write_prometheus
write_redis write_sensu write_tsdb xencpu zfs_arc zookeeper"
COLLECTD_DISABLED_PLUGINS="${COLLECTD_IMPOSSIBLE_PLUGINS}"
COLLECTD_ALL_PLUGINS=${COLLECTD_TESTED_PLUGINS}
for plugin in ${COLLECTD_ALL_PLUGINS}; do
IUSE="${IUSE} collectd_plugins_${plugin}"
done
unset plugin
# Now come the dependencies.
COMMON_DEPEND="
dev-libs/libgcrypt:=
dev-libs/libltdl:0=
perl? ( dev-lang/perl:=[ithreads] )
udev? ( virtual/udev )
xfs? ( sys-fs/xfsprogs )
collectd_plugins_amqp? ( net-libs/rabbitmq-c )
collectd_plugins_apache? ( net-misc/curl:0= )
collectd_plugins_ascent? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_bind? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_ceph? ( dev-libs/yajl:= )
collectd_plugins_curl? ( net-misc/curl:0= )
collectd_plugins_curl_json? ( net-misc/curl:0= dev-libs/yajl:= )
collectd_plugins_curl_xml? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_dbi? ( dev-db/libdbi )
collectd_plugins_dns? ( net-libs/libpcap )
collectd_plugins_gmond? ( sys-cluster/ganglia )
collectd_plugins_gps? ( sci-geosciences/gpsd:= )
collectd_plugins_ipmi? ( >=sys-libs/openipmi-2.0.16-r1 )
collectd_plugins_iptables? ( >=net-firewall/iptables-1.4.13:0= )
collectd_plugins_log_logstash? ( dev-libs/yajl:= )
collectd_plugins_lua? ( dev-lang/lua:0= )
collectd_plugins_lvm? ( sys-fs/lvm2 )
collectd_plugins_memcachec? ( dev-libs/libmemcached )
collectd_plugins_modbus? ( dev-libs/libmodbus )
collectd_plugins_mqtt? ( app-misc/mosquitto )
collectd_plugins_mysql? ( dev-db/mysql-connector-c:= )
collectd_plugins_netlink? ( net-libs/libmnl )
collectd_plugins_nginx? ( net-misc/curl:0= )
collectd_plugins_notify_desktop? ( x11-libs/libnotify )
collectd_plugins_notify_email? ( net-libs/libesmtp )
collectd_plugins_nut? ( >=sys-power/nut-2.7.2-r2 )
collectd_plugins_openldap? ( net-nds/openldap )
collectd_plugins_onewire? ( >=sys-fs/owfs-3.1:= )
collectd_plugins_oracle? ( dev-db/oracle-instantclient-basic )
collectd_plugins_ovs_events? ( dev-libs/yajl:= )
collectd_plugins_ovs_stats? ( dev-libs/yajl:= )
collectd_plugins_perl? ( dev-lang/perl:=[ithreads] )
collectd_plugins_ping? ( net-libs/liboping )
collectd_plugins_postgresql? ( dev-db/postgresql:= )
collectd_plugins_python? ( ${PYTHON_DEPS} )
collectd_plugins_redis? ( dev-libs/hiredis:= )
collectd_plugins_routeros? ( net-libs/librouteros )
collectd_plugins_rrdcached? ( net-analyzer/rrdtool:= )
collectd_plugins_rrdtool? ( net-analyzer/rrdtool:= )
collectd_plugins_sensors? ( sys-apps/lm-sensors:= )
collectd_plugins_sigrok? ( <sci-libs/libsigrok-0.4:= dev-libs/glib:2 )
collectd_plugins_smart? ( dev-libs/libatasmart )
collectd_plugins_snmp? ( net-analyzer/net-snmp )
collectd_plugins_snmp_agent? ( net-analyzer/net-snmp )
collectd_plugins_tokyotyrant? ( net-misc/tokyotyrant )
collectd_plugins_varnish? ( www-servers/varnish:= )
collectd_plugins_virt? ( app-emulation/libvirt:= dev-libs/libxml2:2= )
collectd_plugins_write_http? ( net-misc/curl:0= dev-libs/yajl:= )
collectd_plugins_write_kafka? ( >=dev-libs/librdkafka-0.9.0.99:= dev-libs/yajl:= )
collectd_plugins_write_mongodb? ( >=dev-libs/mongo-c-driver-1.8.2:= )
collectd_plugins_write_prometheus? ( >=dev-libs/protobuf-c-1.2.1-r1:= net-libs/libmicrohttpd:= )
collectd_plugins_write_redis? ( dev-libs/hiredis:= )
collectd_plugins_xencpu? ( app-emulation/xen-tools:= )
kernel_FreeBSD? (
collectd_plugins_disk? ( sys-libs/libstatgrab:= )
collectd_plugins_interface? ( sys-libs/libstatgrab:= )
collectd_plugins_load? ( sys-libs/libstatgrab:= )
collectd_plugins_memory? ( sys-libs/libstatgrab:= )
collectd_plugins_swap? ( sys-libs/libstatgrab:= )
collectd_plugins_users? ( sys-libs/libstatgrab:= )
)"
# Enforcing !=sys-kernel/linux-headers-4.5 > due to #577846
DEPEND="${COMMON_DEPEND}
collectd_plugins_iptables? ( || ( <=sys-kernel/linux-headers-4.4 >=sys-kernel/linux-headers-4.6 ) )
collectd_plugins_java? ( >=virtual/jdk-1.6 )
virtual/pkgconfig"
RDEPEND="${COMMON_DEPEND}
collectd_plugins_java? ( >=virtual/jre-1.6 )
collectd_plugins_syslog? ( virtual/logger )
selinux? ( sec-policy/selinux-collectd )
!<sys-apps/openrc-0.18.2"
REQUIRED_USE="
collectd_plugins_python? ( ${PYTHON_REQUIRED_USE} )
collectd_plugins_smart? ( udev )"
PATCHES=( "${FILESDIR}"/${PN}-5.8.1-lm_sensors-4.5.0-compatibility.patch )
# @FUNCTION: collectd_plugin_kernel_linux
# @DESCRIPTION:
# USAGE: <plugin name> <kernel_options> <severity>
# kernel_options is a list of kernel configurations options; the check tests whether at least
# one of them is enabled. If no, depending on the third argument an elog, ewarn, or eerror message
# is emitted.
collectd_plugin_kernel_linux() {
local multi_opt opt
if has ${1} ${COLLECTD_ALL_PLUGINS}; then
if use collectd_plugins_${1}; then
for opt in ${2}; do
if linux_chkconfig_present ${opt}; then
return 0;
fi
done
multi_opt=${2//\ /\ or\ }
case ${3} in
(info)
elog "The ${1} plugin can use kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(warn)
ewarn "The ${1} plugin uses kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(error)
eerror "The ${1} plugin needs kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(*)
die "function collectd_plugin_kernel_linux called with invalid third argument"
;;
esac
fi
fi
}
collectd_linux_kernel_checks() {
if ! linux_chkconfig_present PROC_FS; then
ewarn "/proc file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable PROC_FS in your kernel"
fi
if ! linux_chkconfig_present SYSFS; then
ewarn "/sys file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable SYSFS in your kernel"
fi
# battery.c: /proc/pmu/battery_%i
# battery.c: /proc/acpi/battery
collectd_plugin_kernel_linux battery ACPI_BATTERY warn
# cgroups.c: /sys/fs/cgroup/
collectd_plugin_kernel_linux cgroups CGROUPS warn
# cpufreq.c: /sys/devices/system/cpu/cpu%d/cpufreq/
collectd_plugin_kernel_linux cpufreq SYSFS warn
collectd_plugin_kernel_linux cpufreq CPU_FREQ_STAT warn
# drbd.c: /proc/drbd
collectd_plugin_kernel_linux drbd BLK_DEV_DRBD warn
# conntrack.c: /proc/sys/net/netfilter/*
collectd_plugin_kernel_linux conntrack NETFILTER warn
# fscache.c: /proc/fs/fscache/stats
collectd_plugin_kernel_linux fscache FSCACHE warn
# nfs.c: /proc/net/rpc/nfs
# nfs.c: /proc/net/rpc/nfsd
collectd_plugin_kernel_linux nfs NFS_COMMON warn
# serial.c: /proc/tty/driver/serial
# serial.c: /proc/tty/driver/ttyS
collectd_plugin_kernel_linux serial SERIAL_CORE warn
# swap.c: /proc/meminfo
collectd_plugin_kernel_linux swap SWAP warn
# thermal.c: /proc/acpi/thermal_zone
# thermal.c: /sys/class/thermal
collectd_plugin_kernel_linux thermal ACPI_THERMAL warn
# turbostat.c: /dev/cpu/%d/msr
collectd_plugin_kernel_linux turbostat X86_MSR warn
# vmem.c: /proc/vmstat
collectd_plugin_kernel_linux vmem VM_EVENT_COUNTERS warn
# vserver.c: /proc/virtual
collectd_plugin_kernel_linux vserver VSERVER warn
# uuid.c: /sys/hypervisor/uuid
collectd_plugin_kernel_linux uuid SYSFS info
# wireless.c: /proc/net/wireless
collectd_plugin_kernel_linux wireless "WIRELESS MAC80211 IEEE80211" warn
# zfs_arc.c: /proc/spl/kstat/zfs/arcstats
collectd_plugin_kernel_linux zfs_arc "SPL ZFS" warn
}
pkg_setup() {
if use kernel_linux; then
linux-info_pkg_setup
if linux_config_exists; then
einfo "Checking your linux kernel configuration:"
collectd_linux_kernel_checks
else
elog "Cannot find a linux kernel configuration. Continuing anyway."
fi
fi
if use collectd_plugins_java; then
java-pkg-opt-2_pkg_setup
fi
use collectd_plugins_python && python-single-r1_pkg_setup
enewgroup collectd
enewuser collectd -1 -1 /var/lib/collectd collectd
}
src_prepare() {
default
# There's some strange prefix handling in the default config file, resulting in
# paths like "/usr/var/..."
sed -i -e "s:@prefix@/var:/var:g" src/collectd.conf.in || die
# Adjust upstream's systemd unit
# - Get rid of EnvironmentFile directive; These files don't exist on Gentoo!
# - Add User=collectd to run collectd as user "collectd" per default
sed -i \
-e '/^EnvironmentFile=.*/d' \
-e '/^\[Service\]/aUser=collectd' \
contrib/systemd.${PN}.service || die
eautoreconf
}
src_configure() {
# Now come the lists of os-dependent plugins. Any plugin that is not listed anywhere here
# should work independent of the operating system.
local linux_plugins="barometer battery cpu cpufreq disk
drbd entropy ethstat hugepages interface iptables
ipvs irq ipc load memory md netlink nfs numa processes
serial swap tcpconns thermal turbostat users vmem wireless
zfc_arc"
local need_libstatgrab=0
local libstatgrab_plugins="cpu disk interface load memory swap users"
local bsd_plugins="cpu tcpconns ${libstatgrab_plugins} zfc_arc"
local darwin_plugins="apple_sensors battery cpu disk interface memory processes tcpconns"
local osdependent_plugins="${linux_plugins} ${bsd_plugins} ${darwin_plugins}"
local myos_plugins=""
if use kernel_linux; then
einfo "Enabling Linux plugins."
myos_plugins=${linux_plugins}
elif use kernel_FreeBSD; then
einfo "Enabling FreeBSD plugins."
myos_plugins=${bsd_plugins}
elif use kernel_Darwin; then
einfo "Enabling Darwin plugins."
myos_plugins=${darwin_plugins}
fi
local myconf="--disable-werror"
# Do we debug?
myconf+=" $(use_enable debug)"
# udev support?
# Required for smart plugin via REQUIRED_USE; Optional for disk plugin
if use udev; then
myconf+=" --with-libudev"
else
myconf+=" --without-libudev"
fi
local plugin
# Disable what needs to be disabled.
for plugin in ${COLLECTD_DISABLED_PLUGINS}; do
myconf+=" --disable-${plugin}"
done
# Set enable/disable for each single plugin.
for plugin in ${COLLECTD_ALL_PLUGINS}; do
if has ${plugin} ${osdependent_plugins}; then
# plugin is os-dependent ...
if has ${plugin} ${myos_plugins}; then
# ... and available in this os
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
# ... must we link against libstatgrab? Bug #541518
if use kernel_FreeBSD && has ${plugin} ${libstatgrab_plugins}; then
einfo "We must link against libstatgrab due to plugin \"${plugin}\" ..."
need_libstatgrab=1
fi
else
# ... and NOT available in this os
if use collectd_plugins_${plugin}; then
ewarn "You try to enable the ${plugin} plugin, but it is not available for this"
ewarn "kernel. Disabling it automatically."
fi
myconf+=" --disable-${plugin}"
fi
elif [[ "${plugin}" = "collectd_plugins_perl" ]]; then
if use collectd_plugins_perl && ! use perl; then
ewarn "Perl plugin disabled as perl bindings disabled by -perl use flag"
myconf+= --disable-perl
else
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
fi
else
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
fi
done
if [ "${need_libstatgrab}" -eq 1 ]; then
myconf+=" --with-libstatgrab"
else
myconf+=" --without-libstatgrab"
fi
# JAVA_HOME is set by eclasses.
if use collectd_plugins_java; then
myconf+=" --with-java"
fi
# Need libiptc ONLY for iptables. If we try to use it otherwise bug 340109 happens.
# lots of libs are only needed for plugins, if they are disabled, also disable the lib
use collectd_plugins_iptables || myconf+=" --with-libiptc=no"
use collectd_plugins_openldap || myconf+=" --with-libldap=no"
use collectd_plugins_redis || use collectd_plugins_write_redis || myconf+=" --with-libhiredis=no"
use collectd_plugins_smart || myconf+=" --with-libatasmart=no"
use collectd_plugins_gps || myconf+=" --with-libgps=no"
if use perl; then
myconf+=" --with-perl-bindings=INSTALLDIRS=vendor"
else
myconf+=" --without-perl-bindings"
fi
# No need for v5upgrade
myconf+=" --disable-target_v5upgrade"
# Python
if use collectd_plugins_python; then
myconf+=" --with-libpython=yes"
export PYTHON_CONFIG=$(python_get_PYTHON_CONFIG)
else
myconf+=" --with-libpython=no"
fi
# XFS support
myconf+=" $(use_enable xfs)"
# Finally, run econf.
KERNEL_DIR="${KERNEL_DIR}" econf --config-cache \
$(use_enable static-libs static) \
--localstatedir=/var ${myconf}
}
src_install() {
emake DESTDIR="${D%/}" install
perl_delete_localpod
find "${ED}"usr/ -name "*.la" -delete || die
if use collectd_plugins_java; then
java-pkg_regjar "${ED}"usr/share/${PN}/java/*.jar
fi
fowners root:collectd /etc/collectd.conf
fperms u=rw,g=r,o= /etc/collectd.conf
dodoc AUTHORS ChangeLog README
if use contrib ; then
insinto /usr/share/doc/${PF}
doins -r contrib
fi
keepdir /var/lib/${PN}
fowners collectd:collectd /var/lib/${PN}
newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
systemd_newunit "contrib/systemd.${PN}.service" ${PN}.service
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotate" ${PN}
newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
sed -i -e 's:^.*PIDFile "/var/run/collectd.pid":#PIDFile "/run/collectd.pid":' "${ED}"etc/collectd.conf || die
sed -i -e 's:^# SocketFile "/var/run/collectd-unixsock":# SocketFile "/run/collectd/collectd.socket":' "${ED}"etc/collectd.conf || die
sed -i -e 's:^.*LoadPlugin perl$:# The new, correct way to load the perl plugin -- \n# <LoadPlugin perl>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
sed -i -e 's:^.*LoadPlugin python$:# The new, correct way to load the python plugin -- \n# <LoadPlugin python>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
}
pkg_postinst() {
tmpfiles_process "${PN}.conf"
if use filecaps; then
local caps=()
use collectd_plugins_ceph && caps+=('CAP_DAC_OVERRIDE')
use collectd_plugins_exec && caps+=('CAP_SETUID' 'CAP_SETGID')
use collectd_plugins_iptables && caps+=('CAP_NET_ADMIN')
use collectd_plugins_filecount && caps+=('CAP_DAC_READ_SEARCH')
if use collectd_plugins_dns || use collectd_plugins_ping; then
caps+=('CAP_NET_RAW')
fi
if use collectd_plugins_turbostat || use collectd_plugins_smart; then
caps+=('CAP_SYS_RAWIO')
fi
if [ ${#caps[@]} -gt 0 ]; then
local caps_str=$(IFS=","; echo "${caps[*]}")
fcaps ${caps_str} usr/sbin/collectd
elog "Capabilities for ${EROOT}usr/sbin/collectd set to:"
elog " ${caps_str}+EP"
elog
local systemd_unit="$(systemd_get_systemunitdir)/collectd.service"
if [[ -e "${systemd_unit}" ]]; then
caps_str="${caps[*]}"
sed -i -e "s:^CapabilityBoundingSet=.*:CapabilityBoundingSet=${caps_str}:" "${systemd_unit}" || \
die "Failed to set CapabilityBoundingSet in '${systemd_unit}'"
elog "CapabilityBoundingSet in '${systemd_unit}'"
elog "updated to match capabilities set above."
elog
else
if has_version "sys-apps/systemd"; then
# Bug 596852
ewarn "Failed to update CapabilityBoundingSet in '${systemd_unit}'"
ewarn "because unit was not found. Please file a bug about this."
fi
fi
fi
fi
elog "Note: Collectd is only the collector."
elog " You need to install 'data' sources (applications) locally or"
elog " remotely on your own."
elog
elog "Collectd is configured to run as unprivileged user by default."
elog "You may want to revisit the configuration."
elog
if use collectd_plugins_email; then
ewarn "The email plug-in is deprecated. To submit statistics please use the unixsock plugin."
fi
if use collectd_plugins_smart; then
elog ""
elog "If you are using smart plugin and don't run collectd as root make sure"
elog "that the collectd user is allowed to access the disk you want to monitor"
elog "(can be done via udev rule for example) and that collectd has the required"
elog "capabilities set (which is the default when package was emerged with"
elog "'filecaps' USE flag set)."
fi
if use contrib; then
elog "The scripts in /usr/share/doc/${PF}/collection3 for generating graphs need dev-perl/HTML-Parser,"
elog "dev-perl/config-general, dev-perl/regexp-common, and net-analyzer/rrdtool[perl] to be installed."
fi
}

@ -1,543 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
PYTHON_COMPAT=( python{3_6,3_7} )
JAVA_PKG_OPT_USE="collectd_plugins_java"
inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-functions python-single-r1 systemd tmpfiles user
DESCRIPTION="Collects system statistics and provides mechanisms to store the values"
HOMEPAGE="https://collectd.org/"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PN}-${PV}.tar.gz"
LICENSE="MIT GPL-2 GPL-2+ GPL-3 GPL-3+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~x86"
IUSE="contrib debug java kernel_Darwin kernel_FreeBSD kernel_linux perl selinux static-libs udev xfs"
# The plugin lists have to follow here since they extend IUSE
# Plugins that don't build (e.g. dependencies not in Gentoo)
# apple_sensors: Requires libIOKit
# amqp1: Requires libqpid-proton
# aquaero: Requires aerotools-ng/libaquaero5
# barometer: Requires libi2c (i2c_smbus_read_i2c_block_data)
# dpdkevents: Requires dpdk
# dpdkstat: Requires dpdk
# grpc: Requires libgrpc
# intel_pmu: Requires libjevents (pmu-tools)
# intel_rdt: Requires libpqos from intel-cmt-cat project
# lpar: Requires libperfstat (AIX only)
# mic: Requires Intel Many Integrated Core Architecture API
# (part of Intel's Xeon Phi software)
# netapp: Requires libnetapp (http://communities.netapp.com/docs/DOC-1110)
# pf: Requires BSD packet filter
# pinba: Requires MySQL Pinba engine (http://pinba.org/)
# tape: Requires libkstat (Solaris only)
# write_riemann: Requires riemann-c-client
# xmms: Requires libxmms (v1)
# zone: Solaris only...
COLLECTD_IMPOSSIBLE_PLUGINS="apple_sensors amqp1 aquaero barometer dpdkstat
grpc intel_pmu intel_rdt lpar mic netapp pf pinba tape write_riemann
xmms zone"
# Plugins that have been (compile) tested and can be enabled via COLLECTD_PLUGINS
COLLECTD_TESTED_PLUGINS="aggregation amqp apache apcups ascent battery bind
ceph cgroups chrony conntrack contextswitch cpu cpufreq cpusleep
csv curl curl_json curl_xml dbi df disk dns drbd email
entropy ethstat exec fhcount filecount fscache gmond gps hddtemp
hugepages interface ipc ipmi iptables ipvs irq java lua
load logfile log_logstash lvm madwifi match_empty_counter
match_hashed match_regex match_timediff match_value mbmon mcelog md
memcachec memcached memory modbus mqtt multimeter mysql netlink
network network nfs nginx notify_desktop notify_email notify_nagios
ntpd numa nut olsrd onewire openldap openvpn oracle ovs_events
ovs_stats perl ping postgresql powerdns processes protocols python
python redis routeros rrdcached rrdtool sensors serial sigrok smart
snmp snmp_agent statsd swap syslog table tail tail_csv
target_notification target_replace target_scale target_set tcpconns
teamspeak2 ted thermal threshold tokyotyrant turbostat unixsock
uptime users uuid varnish virt vmem vserver wireless write_graphite
write_http write_kafka write_log write_mongodb write_prometheus
write_redis write_sensu write_tsdb xencpu zfs_arc zookeeper"
COLLECTD_DISABLED_PLUGINS="${COLLECTD_IMPOSSIBLE_PLUGINS}"
COLLECTD_ALL_PLUGINS=${COLLECTD_TESTED_PLUGINS}
for plugin in ${COLLECTD_ALL_PLUGINS}; do
IUSE="${IUSE} collectd_plugins_${plugin}"
done
unset plugin
# Now come the dependencies.
COMMON_DEPEND="
dev-libs/libgcrypt:=
dev-libs/libltdl:0=
perl? ( dev-lang/perl:=[ithreads] )
udev? ( virtual/udev )
xfs? ( sys-fs/xfsprogs )
collectd_plugins_amqp? ( net-libs/rabbitmq-c )
collectd_plugins_apache? ( net-misc/curl:0= )
collectd_plugins_ascent? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_bind? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_ceph? ( dev-libs/yajl:= )
collectd_plugins_curl? ( net-misc/curl:0= )
collectd_plugins_curl_json? ( net-misc/curl:0= dev-libs/yajl:= )
collectd_plugins_curl_xml? ( net-misc/curl:0= dev-libs/libxml2:2= )
collectd_plugins_dbi? ( dev-db/libdbi )
collectd_plugins_dns? ( net-libs/libpcap )
collectd_plugins_gmond? ( sys-cluster/ganglia )
collectd_plugins_gps? ( sci-geosciences/gpsd:= )
collectd_plugins_ipmi? ( >=sys-libs/openipmi-2.0.16-r1 )
collectd_plugins_iptables? ( >=net-firewall/iptables-1.4.13:0= )
collectd_plugins_log_logstash? ( dev-libs/yajl:= )
collectd_plugins_lua? ( dev-lang/lua:0= )
collectd_plugins_lvm? ( sys-fs/lvm2 )
collectd_plugins_memcachec? ( dev-libs/libmemcached )
collectd_plugins_modbus? ( dev-libs/libmodbus )
collectd_plugins_mqtt? ( app-misc/mosquitto )
collectd_plugins_mysql? ( dev-db/mysql-connector-c:= )
collectd_plugins_netlink? ( net-libs/libmnl )
collectd_plugins_nginx? ( net-misc/curl:0= )
collectd_plugins_notify_desktop? ( x11-libs/libnotify )
collectd_plugins_notify_email? ( net-libs/libesmtp )
collectd_plugins_nut? ( >=sys-power/nut-2.7.2-r2 )
collectd_plugins_openldap? ( net-nds/openldap )
collectd_plugins_onewire? ( >=sys-fs/owfs-3.1:= )
collectd_plugins_oracle? ( dev-db/oracle-instantclient-basic )
collectd_plugins_ovs_events? ( dev-libs/yajl:= )
collectd_plugins_ovs_stats? ( dev-libs/yajl:= )
collectd_plugins_perl? ( dev-lang/perl:=[ithreads] )
collectd_plugins_ping? ( net-libs/liboping )
collectd_plugins_postgresql? ( dev-db/postgresql:= )
collectd_plugins_python? ( ${PYTHON_DEPS} )
collectd_plugins_redis? ( dev-libs/hiredis:= )
collectd_plugins_routeros? ( net-libs/librouteros )
collectd_plugins_rrdcached? ( net-analyzer/rrdtool:= )
collectd_plugins_rrdtool? ( net-analyzer/rrdtool:= )
collectd_plugins_sensors? ( sys-apps/lm-sensors:= )
collectd_plugins_sigrok? ( <sci-libs/libsigrok-0.4:= dev-libs/glib:2 )
collectd_plugins_smart? ( dev-libs/libatasmart )
collectd_plugins_snmp? ( net-analyzer/net-snmp )
collectd_plugins_snmp_agent? ( net-analyzer/net-snmp )
collectd_plugins_tokyotyrant? ( net-misc/tokyotyrant )
collectd_plugins_varnish? ( www-servers/varnish:= )
collectd_plugins_virt? ( app-emulation/libvirt:= dev-libs/libxml2:2= )
collectd_plugins_write_http? ( net-misc/curl:0= dev-libs/yajl:= )
collectd_plugins_write_kafka? ( >=dev-libs/librdkafka-0.9.0.99:= dev-libs/yajl:= )
collectd_plugins_write_mongodb? ( >=dev-libs/mongo-c-driver-1.8.2:= )
collectd_plugins_write_prometheus? ( >=dev-libs/protobuf-c-1.2.1-r1:= net-libs/libmicrohttpd:= )
collectd_plugins_write_redis? ( dev-libs/hiredis:= )
collectd_plugins_xencpu? ( app-emulation/xen-tools:= )
kernel_FreeBSD? (
collectd_plugins_disk? ( sys-libs/libstatgrab:= )
collectd_plugins_interface? ( sys-libs/libstatgrab:= )
collectd_plugins_load? ( sys-libs/libstatgrab:= )
collectd_plugins_memory? ( sys-libs/libstatgrab:= )
collectd_plugins_swap? ( sys-libs/libstatgrab:= )
collectd_plugins_users? ( sys-libs/libstatgrab:= )
)"
# Enforcing !=sys-kernel/linux-headers-4.5 > due to #577846
DEPEND="${COMMON_DEPEND}
collectd_plugins_iptables? ( || ( <=sys-kernel/linux-headers-4.4 >=sys-kernel/linux-headers-4.6 ) )
collectd_plugins_java? ( >=virtual/jdk-1.6 )
virtual/pkgconfig"
RDEPEND="${COMMON_DEPEND}
collectd_plugins_java? ( >=virtual/jre-1.6 )
collectd_plugins_syslog? ( virtual/logger )
selinux? ( sec-policy/selinux-collectd )
!<sys-apps/openrc-0.18.2"
REQUIRED_USE="
collectd_plugins_python? ( ${PYTHON_REQUIRED_USE} )
collectd_plugins_smart? ( udev )"
PATCHES=( "${FILESDIR}"/${P}-fixup.patch )
S="${WORKDIR}/${PN}-${PN}-${PV}"
# @FUNCTION: collectd_plugin_kernel_linux
# @DESCRIPTION:
# USAGE: <plugin name> <kernel_options> <severity>
# kernel_options is a list of kernel configurations options; the check tests whether at least
# one of them is enabled. If no, depending on the third argument an elog, ewarn, or eerror message
# is emitted.
collectd_plugin_kernel_linux() {
local multi_opt opt
if has ${1} ${COLLECTD_ALL_PLUGINS}; then
if use collectd_plugins_${1}; then
for opt in ${2}; do
if linux_chkconfig_present ${opt}; then
return 0;
fi
done
multi_opt=${2//\ /\ or\ }
case ${3} in
(info)
elog "The ${1} plugin can use kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(warn)
ewarn "The ${1} plugin uses kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(error)
eerror "The ${1} plugin needs kernel features that are disabled now; enable ${multi_opt} in your kernel"
;;
(*)
die "function collectd_plugin_kernel_linux called with invalid third argument"
;;
esac
fi
fi
}
collectd_linux_kernel_checks() {
if ! linux_chkconfig_present PROC_FS; then
ewarn "/proc file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable PROC_FS in your kernel"
fi
if ! linux_chkconfig_present SYSFS; then
ewarn "/sys file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable SYSFS in your kernel"
fi
# battery.c: /proc/pmu/battery_%i
# battery.c: /proc/acpi/battery
collectd_plugin_kernel_linux battery ACPI_BATTERY warn
# cgroups.c: /sys/fs/cgroup/
collectd_plugin_kernel_linux cgroups CGROUPS warn
# cpufreq.c: /sys/devices/system/cpu/cpu%d/cpufreq/
collectd_plugin_kernel_linux cpufreq SYSFS warn
collectd_plugin_kernel_linux cpufreq CPU_FREQ_STAT warn
# drbd.c: /proc/drbd
collectd_plugin_kernel_linux drbd BLK_DEV_DRBD warn
# conntrack.c: /proc/sys/net/netfilter/*
collectd_plugin_kernel_linux conntrack NETFILTER warn
# fscache.c: /proc/fs/fscache/stats
collectd_plugin_kernel_linux fscache FSCACHE warn
# nfs.c: /proc/net/rpc/nfs
# nfs.c: /proc/net/rpc/nfsd
collectd_plugin_kernel_linux nfs NFS_COMMON warn
# serial.c: /proc/tty/driver/serial
# serial.c: /proc/tty/driver/ttyS
collectd_plugin_kernel_linux serial SERIAL_CORE warn
# swap.c: /proc/meminfo
collectd_plugin_kernel_linux swap SWAP warn
# thermal.c: /proc/acpi/thermal_zone
# thermal.c: /sys/class/thermal
collectd_plugin_kernel_linux thermal ACPI_THERMAL warn
# turbostat.c: /dev/cpu/%d/msr
collectd_plugin_kernel_linux turbostat X86_MSR warn
# vmem.c: /proc/vmstat
collectd_plugin_kernel_linux vmem VM_EVENT_COUNTERS warn
# vserver.c: /proc/virtual
collectd_plugin_kernel_linux vserver VSERVER warn
# uuid.c: /sys/hypervisor/uuid
collectd_plugin_kernel_linux uuid SYSFS info
# wireless.c: /proc/net/wireless
collectd_plugin_kernel_linux wireless "WIRELESS MAC80211 IEEE80211" warn
# zfs_arc.c: /proc/spl/kstat/zfs/arcstats
collectd_plugin_kernel_linux zfs_arc "SPL ZFS" warn
}
pkg_setup() {
if use kernel_linux; then
linux-info_pkg_setup
if linux_config_exists; then
einfo "Checking your linux kernel configuration:"
collectd_linux_kernel_checks
else
elog "Cannot find a linux kernel configuration. Continuing anyway."
fi
fi
if use collectd_plugins_java; then
java-pkg-opt-2_pkg_setup
fi
use collectd_plugins_python && python-single-r1_pkg_setup
enewgroup collectd
enewuser collectd -1 -1 /var/lib/collectd collectd
}
src_prepare() {
default
# There's some strange prefix handling in the default config file, resulting in
# paths like "/usr/var/..."
sed -i -e "s:@prefix@/var:/var:g" src/collectd.conf.in || die
# Adjust upstream's systemd unit
# - Get rid of EnvironmentFile directive; These files don't exist on Gentoo!
# - Add User=collectd to run collectd as user "collectd" per default
sed -i \
-e '/^EnvironmentFile=.*/d' \
-e '/^\[Service\]/aUser=collectd' \
contrib/systemd.${PN}.service || die
eautoreconf
}
src_configure() {
# Now come the lists of os-dependent plugins. Any plugin that is not listed anywhere here
# should work independent of the operating system.
local linux_plugins="barometer battery cpu cpufreq disk
drbd entropy ethstat hugepages interface iptables
ipvs irq ipc load memory md netlink nfs numa processes
serial swap tcpconns thermal turbostat users vmem wireless
zfc_arc"
local need_libstatgrab=0
local libstatgrab_plugins="cpu disk interface load memory swap users"
local bsd_plugins="cpu tcpconns ${libstatgrab_plugins} zfc_arc"
local darwin_plugins="apple_sensors battery cpu disk interface memory processes tcpconns"
local osdependent_plugins="${linux_plugins} ${bsd_plugins} ${darwin_plugins}"
local myos_plugins=""
if use kernel_linux; then
einfo "Enabling Linux plugins."
myos_plugins=${linux_plugins}
elif use kernel_FreeBSD; then
einfo "Enabling FreeBSD plugins."
myos_plugins=${bsd_plugins}
elif use kernel_Darwin; then
einfo "Enabling Darwin plugins."
myos_plugins=${darwin_plugins}
fi
local myconf="--disable-werror"
# Do we debug?
myconf+=" $(use_enable debug)"
# udev support?
# Required for smart plugin via REQUIRED_USE; Optional for disk plugin
if use udev; then
myconf+=" --with-libudev"
else
myconf+=" --without-libudev"
fi
local plugin
# Disable what needs to be disabled.
for plugin in ${COLLECTD_DISABLED_PLUGINS}; do
if [[ "${plugin}" == 'dpdkstat' ]]; then
myconf+=" --without-libdpdk"
else
myconf+=" --disable-${plugin}"
fi
done
# Set enable/disable for each single plugin.
for plugin in ${COLLECTD_ALL_PLUGINS}; do
if has ${plugin} ${osdependent_plugins}; then
# plugin is os-dependent ...
if has ${plugin} ${myos_plugins}; then
# ... and available in this os
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
# ... must we link against libstatgrab? Bug #541518
if use kernel_FreeBSD && has ${plugin} ${libstatgrab_plugins}; then
einfo "We must link against libstatgrab due to plugin \"${plugin}\" ..."
need_libstatgrab=1
fi
else
# ... and NOT available in this os
if use collectd_plugins_${plugin}; then
ewarn "You try to enable the ${plugin} plugin, but it is not available for this"
ewarn "kernel. Disabling it automatically."
fi
myconf+=" --disable-${plugin}"
fi
elif [[ "${plugin}" = "collectd_plugins_perl" ]]; then
if use collectd_plugins_perl && ! use perl; then
ewarn "Perl plugin disabled as perl bindings disabled by -perl use flag"
myconf+= --disable-perl
else
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
fi
else
myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
fi
done
if [ "${need_libstatgrab}" -eq 1 ]; then
myconf+=" --with-libstatgrab"
else
myconf+=" --without-libstatgrab"
fi
# JAVA_HOME is set by eclasses.
if use collectd_plugins_java; then
myconf+=" --with-java"
fi
# Need libiptc ONLY for iptables. If we try to use it otherwise bug 340109 happens.
# lots of libs are only needed for plugins, if they are disabled, also disable the lib
use collectd_plugins_iptables || myconf+=" --with-libiptc=no"
use collectd_plugins_openldap || myconf+=" --with-libldap=no"
use collectd_plugins_redis || use collectd_plugins_write_redis || myconf+=" --with-libhiredis=no"
use collectd_plugins_smart || myconf+=" --with-libatasmart=no"
use collectd_plugins_gps || myconf+=" --with-libgps=no"
if use perl; then
myconf+=" --with-perl-bindings=INSTALLDIRS=vendor"
else
myconf+=" --without-perl-bindings"
fi
# No need for v5upgrade
myconf+=" --disable-target_v5upgrade"
# Python
if use collectd_plugins_python; then
myconf+=" --with-libpython=yes"
export PYTHON_CONFIG=$(python_get_PYTHON_CONFIG)
else
myconf+=" --with-libpython=no"
fi
# XFS support
myconf+=" $(use_enable xfs)"
# Finally, run econf.
KERNEL_DIR="${KERNEL_DIR}" econf --config-cache \
$(use_enable static-libs static) \
--localstatedir=/var ${myconf}
}
src_install() {
emake DESTDIR="${D%/}" install
perl_delete_localpod
find "${ED}"usr/ -name "*.la" -delete || die
if use collectd_plugins_java; then
java-pkg_regjar "${ED}"usr/share/${PN}/java/*.jar
fi
fowners root:collectd /etc/collectd.conf
fperms u=rw,g=r,o= /etc/collectd.conf
dodoc AUTHORS ChangeLog README
if use contrib ; then
insinto /usr/share/doc/${PF}
doins -r contrib
fi
keepdir /var/lib/${PN}
fowners collectd:collectd /var/lib/${PN}
newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
systemd_newunit "contrib/systemd.${PN}.service" ${PN}.service
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotate" ${PN}
newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
sed -i -e 's:^.*PIDFile "/var/run/collectd.pid":#PIDFile "/run/collectd.pid":' "${ED}"etc/collectd.conf || die
sed -i -e 's:^# SocketFile "/var/run/collectd-unixsock":# SocketFile "/run/collectd/collectd.socket":' "${ED}"etc/collectd.conf || die
sed -i -e 's:^.*LoadPlugin perl$:# The new, correct way to load the perl plugin -- \n# <LoadPlugin perl>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
sed -i -e 's:^.*LoadPlugin python$:# The new, correct way to load the python plugin -- \n# <LoadPlugin python>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
}
pkg_postinst() {
tmpfiles_process "${PN}.conf"
if use filecaps; then
local caps=()
use collectd_plugins_ceph && caps+=('CAP_DAC_OVERRIDE')
use collectd_plugins_exec && caps+=('CAP_SETUID' 'CAP_SETGID')
use collectd_plugins_iptables && caps+=('CAP_NET_ADMIN')
use collectd_plugins_filecount && caps+=('CAP_DAC_READ_SEARCH')
if use collectd_plugins_dns || use collectd_plugins_ping; then
caps+=('CAP_NET_RAW')
fi
if use collectd_plugins_turbostat || use collectd_plugins_smart; then
caps+=('CAP_SYS_RAWIO')
fi
if [ ${#caps[@]} -gt 0 ]; then
local caps_str=$(IFS=","; echo "${caps[*]}")
fcaps ${caps_str} usr/sbin/collectd
elog "Capabilities for ${EROOT}usr/sbin/collectd set to:"
elog " ${caps_str}+EP"
elog
local systemd_unit="$(systemd_get_systemunitdir)/collectd.service"
if [[ -e "${systemd_unit}" ]]; then
caps_str="${caps[*]}"
sed -i -e "s:^CapabilityBoundingSet=.*:CapabilityBoundingSet=${caps_str}:" "${systemd_unit}" || \
die "Failed to set CapabilityBoundingSet in '${systemd_unit}'"
elog "CapabilityBoundingSet in '${systemd_unit}'"
elog "updated to match capabilities set above."
elog
else
if has_version "sys-apps/systemd"; then
# Bug 596852
ewarn "Failed to update CapabilityBoundingSet in '${systemd_unit}'"
ewarn "because unit was not found. Please file a bug about this."
fi
fi
fi
fi
elog "Note: Collectd is only the collector."
elog " You need to install 'data' sources (applications) locally or"
elog " remotely on your own."
elog
elog "Collectd is configured to run as unprivileged user by default."
elog "You may want to revisit the configuration."
elog
if use collectd_plugins_email; then
ewarn "The email plug-in is deprecated. To submit statistics please use the unixsock plugin."
fi
if use collectd_plugins_smart; then
elog ""
elog "If you are using smart plugin and don't run collectd as root make sure"
elog "that the collectd user is allowed to access the disk you want to monitor"
elog "(can be done via udev rule for example) and that collectd has the required"
elog "capabilities set (which is the default when package was emerged with"
elog "'filecaps' USE flag set)."
fi
if use contrib; then
elog "The scripts in /usr/share/doc/${PF}/collection3 for generating graphs need dev-perl/HTML-Parser,"
elog "dev-perl/config-general, dev-perl/regexp-common, and net-analyzer/rrdtool[perl] to be installed."
fi
}

@ -1,70 +0,0 @@
https://github.com/collectd/collectd/issues/3006
--- old/src/sensors.c
+++ new/src/sensors.c
@@ -149,7 +149,7 @@
static char *conffile = SENSORS_CONF_PATH;
/* #endif SENSORS_API_VERSION < 0x400 */
-#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500)
+#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x600)
typedef struct featurelist {
const sensors_chip_name *chip;
const sensors_feature *feature;
@@ -159,9 +159,9 @@
static char *conffile = NULL;
static _Bool use_labels = 0;
-/* #endif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500) */
+/* #endif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x600) */
-#else /* if SENSORS_API_VERSION >= 0x500 */
+#else /* if SENSORS_API_VERSION >= 0x600 */
#error "This version of libsensors is not supported yet. Please report this " \
"as bug."
#endif
@@ -223,7 +223,7 @@
if (IS_TRUE(value))
ignorelist_set_invert(sensor_list, 0);
}
-#if (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500)
+#if (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x600)
else if (strcasecmp(key, "UseLabels") == 0) {
use_labels = IS_TRUE(value) ? 1 : 0;
}
@@ -353,7 +353,7 @@
} /* while sensors_get_detected_chips */
/* #endif SENSORS_API_VERSION < 0x400 */
-#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500)
+#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x600)
chip_num = 0;
while ((chip = sensors_get_detected_chips(NULL, &chip_num)) != NULL) {
const sensors_feature *feature;
@@ -410,7 +410,7 @@
} /* while (subfeature) */
} /* while (feature) */
} /* while (chip) */
-#endif /* (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500) */
+#endif /* (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x600) */
if (first_feature == NULL) {
sensors_cleanup();
@@ -485,7 +485,7 @@
} /* for fl = first_feature .. NULL */
/* #endif SENSORS_API_VERSION < 0x400 */
-#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500)
+#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x600)
for (featurelist_t *fl = first_feature; fl != NULL; fl = fl->next) {
double value;
int status;
@@ -528,7 +528,7 @@
sensors_submit(plugin_instance, type, type_instance, value);
} /* for fl = first_feature .. NULL */
-#endif /* (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500) */
+#endif /* (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x600) */
return 0;
} /* int sensors_read */

@ -1,81 +0,0 @@
--- a/src/daemon/plugin.c
+++ b/src/daemon/plugin.c
@@ -647,7 +647,8 @@ static void start_read_threads(size_t num) /* {{{ */
}
char name[THREAD_NAME_MAX];
- snprintf(name, sizeof(name), "reader#%" PRIu64, (uint64_t)read_threads_num);
+ ssnprintf(name, sizeof(name), "reader#%" PRIu64,
+ (uint64_t)read_threads_num);
set_thread_name(read_threads[read_threads_num], name);
read_threads_num++;
@@ -836,8 +837,8 @@ static void start_write_threads(size_t num) /* {{{ */
}
char name[THREAD_NAME_MAX];
- snprintf(name, sizeof(name), "writer#%" PRIu64,
- (uint64_t)write_threads_num);
+ ssnprintf(name, sizeof(name), "writer#%" PRIu64,
+ (uint64_t)write_threads_num);
set_thread_name(write_threads[write_threads_num], name);
write_threads_num++;
--- a/src/intel_rdt.c
+++ b/src/intel_rdt.c
@@ -325,8 +325,12 @@ static int strlisttoarray(char *str_list, char ***names, size_t *names_num) {
continue;
if ((isdupstr((const char **)*names, *names_num, token))) {
- ERROR(RDT_PLUGIN ": Duplicated process name \'%s\' in group \'%s\'",
- token, str_list);
+ if (str_list != NULL)
+ ERROR(RDT_PLUGIN ": Duplicated process name \'%s\' in group \'%s\'",
+ token, str_list);
+ else
+ ERROR(RDT_PLUGIN ": Duplicated process name \'%s\'", token);
+
return -EINVAL;
} else {
if (0 != strarray_add(names, names_num, token)) {
--- a/src/intel_rdt.c
+++ b/src/intel_rdt.c
@@ -325,11 +325,7 @@ static int strlisttoarray(char *str_list, char ***names, size_t *names_num) {
continue;
if ((isdupstr((const char **)*names, *names_num, token))) {
- if (str_list != NULL)
- ERROR(RDT_PLUGIN ": Duplicated process name \'%s\' in group \'%s\'",
- token, str_list);
- else
- ERROR(RDT_PLUGIN ": Duplicated process name \'%s\'", token);
+ ERROR(RDT_PLUGIN ": Duplicated process name \'%s\'", token);
return -EINVAL;
} else {
--- a/src/syslog.c
+++ b/src/syslog.c
@@ -51,8 +51,7 @@ static int sl_config(const char *key, const char *value) {
log_level = parse_log_severity(value);
if (log_level < 0) {
log_level = LOG_INFO;
- ERROR("syslog: invalid loglevel [%s] defaulting to 'info'", value);
- return 1;
+ WARNING("syslog: invalid loglevel [%s] defaulting to 'info'", value);
}
} else if (strcasecmp(key, "NotifyLevel") == 0) {
notif_severity = parse_notif_severity(value);
--- a/src/utils/common/common.c
+++ b/src/utils/common/common.c
@@ -99,10 +99,7 @@ int ssnprintf(char *str, size_t sz, const char *format, ...) {
va_end(ap);
- if (ret < 0) {
- return ret;
- }
- return (size_t)ret >= sz;
+ return ret;
} /* int ssnprintf */
char *ssnprintf_alloc(char const *format, ...) /* {{{ */

Binary file not shown.

@ -1,4 +1,4 @@
DIST tmux-2.9a.tar.gz 510915 BLAKE2B 6a3dcdb66419fdd40818c18c3a16adf83fa67b3f5d4cc60953b64d62d2e3e139cad0612eef4233d3d5fa76aaae93e437c8394aa118791c87cb0670f1ddc65eae SHA512 aca6882688727c10c5647443fdd18bbd6c0f80b7a3bf9667903d1b89d523e604cd715f176f33f2e5673258f00e626a6dc273f80fe97ae4f91621814d89985713
DIST tmux-3.0a.tar.gz 546377 BLAKE2B 1e784d98e1f18e7850e92d8d5f849ee1b8bcbf62b9323b6eb4007e038bd84480b3a171c93c88954701487ef228db8717bac886f51dd21efdf2766e676b0c16e3 SHA512 f326ee9c0e5e9a46ce9c99c76407b8cf35feea5f898c3c937fd8c5e488ff9a809272de19226d9d10f864e11051dcf633327820b7f8d86d85962da61174bbfb0b
DIST tmux-3.1.tar.gz 561086 BLAKE2B 8857a788283cee6ac7a63f3241186ba37092729873f2026686d497be3d66ec9650c54d453d8577c195081c2f6c0434e51af686035fd5397ca84ec830347f4a1a SHA512 32f8bc03ee2071449c106f9c895164e8ffbb9cc720607d90e7ef397374c991c571294a918689bd9017ed7045fcff9e36d45ebb4b7454d93836f85bcc0333462b
DIST tmux-3.1a.tar.gz 561121 BLAKE2B 66c9a87fa5da3329e70af0564d22f003572b17cf8d6aeadb5bf422907371ad77f31e14bedaa5ebd098da974d3244afd6ca70832c42428422683bf05be892e26f SHA512 8c4f99a88a60f85201d25c93710550717ce18207737c83a67df390e6e41828200c6d81cc3adf6eb2908c7b22713e74787428dc8ac85aae0f67950af08c2e2923
DIST tmux-bash-completion-678a27616b70c649c6701cae9cd8c92b58cc051b 458 BLAKE2B 04143e6d1cfbbd467f1656f949363cb7a4a3e16e9b3cf56b8b0423babe56276abee2622964cb490005fc76d1cbe12201fb1a6446a6f860c2cc1ff3c9bd5fc496 SHA512 fe0aca7d03067af87e0788a2fa902c7ef5500ba72295cb63c5a1814534a008c224256d7f890ac1af6d17f3734b45148765e1632f075e284c453185df2927b979

@ -12,7 +12,7 @@ if [[ "${PV}" == 9999 ]] ; then
SRC_URI="https://raw.githubusercontent.com/przepompownia/tmux-bash-completion/678a27616b70c649c6701cae9cd8c92b58cc051b/completions/tmux -> tmux-bash-completion-678a27616b70c649c6701cae9cd8c92b58cc051b"
EGIT_REPO_URI="https://github.com/tmux/tmux.git"
else
SRC_URI="https://github.com/tmux/tmux/releases/download/$(ver_cut 1-2)/${P/_/-}.tar.gz"
SRC_URI="https://github.com/tmux/tmux/releases/download/${PV}/${P/_/-}.tar.gz"
[[ "${PV}" == *_rc* ]] || \
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${P/_/-}"

Binary file not shown.

@ -1,4 +1,5 @@
DIST fzf-0.21.0.tar.gz 161819 BLAKE2B 2da6b62425e88c10fa8d3ce3b7d2d25c67a9bd99bf3c402a8e0c84e567f931393fb914e365d0840d4a21409b06b6c76b7f622b68fe99fa5edd9fba8817eefea7 SHA512 8c3b7eb14ac98b386c26bd6621c54a27e904985f2e87c37ae8f31c3596196f32a817be17aa5e7dd399757cb90b5f25c35ce4a240453eb28f7d1d2fd837d8900d
DIST fzf-0.21.1.tar.gz 163978 BLAKE2B 2f05379049229ca01570b3a58bbcaeab48f85330a556efccca2a19b6fbc80da160dd6cada27d35c3fbac3983e71141f408069e70916663aa3b5f40ed5ad22165 SHA512 db816446a2d562148f7bfe4fc99696e0786d4acfe021ba9bf31344c81219b8a61cae03ec7d4b279ab3dba9ca93fc883e655fc71a750fb6f1905612db071ac831
DIST github.com%2F!d!a!t!a-!d!o!g%2Fgo-sqlmock%2F@v%2Fv1.3.3.mod 38 BLAKE2B eb94b6f6f4bf332f916cb642fae50486c6ad9f6a7aa1bb57aade3ed640bc98236ae167d30c140c106cee0ada737eca6bdf54d36bcab0751a940f283f55f08c5c SHA512 43bc64732c4ca2ff23bb09cd67f002b05a1b68963116fb42cf9bd60ac8dade8b2efa1cab798217a73b221ea86fb4e219e36912ffe338c7bd505f2a877be05c09
DIST github.com%2Fgdamore%2Fencoding%2F@v%2Fv1.0.0.mod 77 BLAKE2B 1b81c4c20a890027242b50f1566f4dfdaf120ee26d3dc56d0c2b6465df2ba79b208289eb40c3d7b666a4e7e874210f59aea545d5125c9a55c5597a3ca7f37feb SHA512 fb153c4e481c073133f0c933c67eba8a1f160ab146921f2c77125b6ff5c348cea57e3a5701a557c8db2212d32e3cba1c09b9509210660c17b66c2a45ba97cb75
DIST github.com%2Fgdamore%2Fencoding%2F@v%2Fv1.0.0.zip 19867 BLAKE2B a772206ce6dc48b32d7125a25b26694325d367ebcbad85466b2e6cfdb9fc9f0e08b98b7ecede5397344e5f7e623c4c76edcf69dcee99917adccf5b31aad80bf8 SHA512 127767c725e376b43fe4e2003ddc12fe89693d6d7e52b01e6d47d73fd04496decc0fd60b64c7a65303428e00a52ece1848610ea35231789a814187ef8503bee3

@ -0,0 +1,120 @@
# Copyright 2019-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit bash-completion-r1 go-module
DESCRIPTION="A general-purpose command-line fuzzy finder, written in GoLang"
HOMEPAGE="https://github.com/junegunn/fzf"
EGO_SUM=(
"github.com/DATA-DOG/go-sqlmock v1.3.3/go.mod"
"github.com/gdamore/encoding v1.0.0"
"github.com/gdamore/encoding v1.0.0/go.mod"
"github.com/gdamore/tcell v1.3.0"
"github.com/gdamore/tcell v1.3.0/go.mod"
"github.com/lucasb-eyer/go-colorful v1.0.2"
"github.com/lucasb-eyer/go-colorful v1.0.2/go.mod"
"github.com/lucasb-eyer/go-colorful v1.0.3"
"github.com/lucasb-eyer/go-colorful v1.0.3/go.mod"
"github.com/mattn/go-isatty v0.0.12"
"github.com/mattn/go-isatty v0.0.12/go.mod"
"github.com/mattn/go-runewidth v0.0.4"
"github.com/mattn/go-runewidth v0.0.4/go.mod"
"github.com/mattn/go-runewidth v0.0.8"
"github.com/mattn/go-runewidth v0.0.8/go.mod"
"github.com/mattn/go-shellwords v1.0.9"
"github.com/mattn/go-shellwords v1.0.9/go.mod"
"github.com/saracen/walker v0.0.0-20191201085201-324a081bae7e"
"github.com/saracen/walker v0.0.0-20191201085201-324a081bae7e/go.mod"
"golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2"
"golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod"
"golang.org/x/crypto v0.0.0-20200128174031-69ecbb4d6d5d"
"golang.org/x/crypto v0.0.0-20200128174031-69ecbb4d6d5d/go.mod"
"golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod"
"golang.org/x/net v0.0.0-20190620200207-3b0461eec859"
"golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod"
"golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod"
"golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e"
"golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod"
"golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod"
"golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod"
"golang.org/x/sys v0.0.0-20190626150813-e07cf5db2756"
"golang.org/x/sys v0.0.0-20190626150813-e07cf5db2756/go.mod"
"golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod"
"golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5"
"golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod"
"golang.org/x/text v0.3.0"
"golang.org/x/text v0.3.0/go.mod"
"golang.org/x/text v0.3.2"
"golang.org/x/text v0.3.2/go.mod"
"golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod"
"golang.org/x/tools v0.0.0-20191011211836-4c025a95b26e"
"golang.org/x/tools v0.0.0-20191011211836-4c025a95b26e/go.mod"
"golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod"
)
go-module_set_globals
EGO_PN="github.com/junegunn/${PN}"
SRC_URI="https://${EGO_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
${EGO_SUM_SRC_URI}"
LICENSE="MIT BSD-with-disclosure"
SLOT="0"
KEYWORDS="~amd64 ~x86"
PATCHES=( ${FILESDIR}/${PN}-0.21.0-makefile.patch )
src_install() {
default
# Install fzf binary
dobin bin/${PN}
doman man/man1/${PN}.1
# Install TMUX utils
dobin bin/${PN}-tmux
doman man/man1/${PN}-tmux.1
# Install Neovim plugin
insinto /usr/share/nvim/runtime/plugin
doins plugin/${PN}.vim
# Install VIM plugin
insinto /usr/share/vim/vimfiles/plugin
doins plugin/${PN}.vim
# Install bash completion file
newbashcomp shell/completion.bash ${PN}
# Install zsh completion file
insinto /usr/share/zsh/site-functions
newins shell/completion.zsh _${PN}
# Install key-bindings for bash, fish and zsh
insinto /usr/share/fzf
doins shell/key-bindings.bash
doins shell/key-bindings.fish
doins shell/key-bindings.zsh
}
pkg_postinst() {
if [[ -z "${REPLACING_VERSIONS}" ]]; then
elog "To add fzf support to your shell, make sure to use the right file"
elog "from /usr/share/fzf."
elog
elog "For bash, add the following line to ~/.bashrc:"
elog
elog " # source /usr/share/fzf/key-bindings.bash"
elog
elog "Or create a symlink:"
elog
elog " # ln -s /usr/share/fzf/key-bindings.bash /etc/bash/bashrc.d/fzf.bash"
elog
elog "Plugins for Vim and Neovim are installed to respective directories"
elog "and will work out of the box."
elog
elog "For fzf support in tmux see fzf-tmux(1)."
fi
}

Binary file not shown.

@ -1,2 +1,3 @@
DIST poppler-0.85.0.tar.xz 1588616 BLAKE2B d30c16ff214d2b64fade28bb4099567150e99df6ab967702f48e18ed2191e444728f51d4c1ce1772567c31f9b87a8cf64993ebc383184e06f8b3707436c89143 SHA512 2311bde5ae52e065c12a6129f500469860f5ebefafc3f7be581393f08c2121f3eae57394ff54c1f83ee1b926f28c61530bcd8149d42de10a16b9ba7345f2604e
DIST poppler-0.87.0.tar.xz 1595088 BLAKE2B 7bce4426b057ae8702399f0f3581ee844df89b01151dff9212e1d2c525847eba7614697ef02cc7278930b5e266e15f62d3b7c5d989951d44c62ee3f8fb9b2835 SHA512 4bdc432c75106b3f37643bfd57c66aba659864fdc3c4d9ffa5089ceaa33ad3bd10d2c4abfb09a4f7b9d7d137e31eb559b440d7df53f35f60d70eaef05f987630
DIST poppler-0.88.0.tar.xz 1604348 BLAKE2B 3c78d15871398fb5f2125596f959d98a173de198c8460907be39ca5c5b91a05f0f4048a6ba01b59edb4643c4fdd2333462edf7ab0e0648cd607ffd2deb5a3b18 SHA512 2c4c1333d5bd7411eb6b05fa1c5967b8577798e439a22b2fd119cf7a8e7d519e04b253464c6892d31bae7483a8bda8492755089cef4131f760f95bc3f4e56880

@ -0,0 +1,123 @@
# Copyright 2005-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake toolchain-funcs xdg-utils
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://anongit.freedesktop.org/git/poppler/poppler.git"
SLOT="0/9999"
else
SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
SLOT="0/99" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
fi
DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE="https://poppler.freedesktop.org/"
LICENSE="GPL-2"
IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
# No test data provided
RESTRICT="test"
BDEPEND="
dev-util/glib-utils
virtual/pkgconfig
"
DEPEND="
media-libs/fontconfig
media-libs/freetype
sys-libs/zlib
cairo? (
dev-libs/glib:2
x11-libs/cairo
introspection? ( dev-libs/gobject-introspection:= )
)
curl? ( net-misc/curl )
jpeg? ( virtual/jpeg:0 )
jpeg2k? ( >=media-libs/openjpeg-2.3.0-r1:2= )
lcms? ( media-libs/lcms:2 )
nss? ( >=dev-libs/nss-3.19:0 )
png? ( media-libs/libpng:0= )
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtxml:5
)
tiff? ( media-libs/tiff:0 )
"
RDEPEND="${DEPEND}
cjk? ( app-text/poppler-data )
"
DOCS=( AUTHORS NEWS README.md README-XPDF )
PATCHES=(
"${FILESDIR}/${PN}-0.60.1-qt5-dependencies.patch"
"${FILESDIR}/${PN}-0.28.1-fix-multilib-configuration.patch"
"${FILESDIR}/${PN}-0.82.0-respect-cflags.patch"
"${FILESDIR}/${PN}-0.61.0-respect-cflags.patch"
"${FILESDIR}/${PN}-0.57.0-disable-internal-jpx.patch"
)
src_prepare() {
cmake_src_prepare
# Clang doesn't grok this flag, the configure nicely tests that, but
# cmake just uses it, so remove it if we use clang
if [[ ${CC} == clang ]] ; then
sed -e 's/-fno-check-new//' -i cmake/modules/PopplerMacros.cmake || die
fi
if ! grep -Fq 'cmake_policy(SET CMP0002 OLD)' CMakeLists.txt ; then
sed -e '/^cmake_minimum_required/acmake_policy(SET CMP0002 OLD)' \
-i CMakeLists.txt || die
else
einfo "policy(SET CMP0002 OLD) - workaround can be removed"
fi
}
src_configure() {
xdg_environment_reset
local mycmakeargs=(
-DBUILD_GTK_TESTS=OFF
-DBUILD_QT5_TESTS=OFF
-DBUILD_CPP_TESTS=OFF
-DRUN_GPERF_IF_PRESENT=OFF
-DENABLE_SPLASH=ON
-DENABLE_ZLIB=ON
-DENABLE_ZLIB_UNCOMPRESS=OFF
-DENABLE_UNSTABLE_API_ABI_HEADERS=ON
-DUSE_FLOAT=OFF
-DWITH_Cairo=$(usex cairo)
-DENABLE_LIBCURL=$(usex curl)
-DENABLE_CPP=$(usex cxx)
-DWITH_JPEG=$(usex jpeg)
-DENABLE_DCTDECODER=$(usex jpeg libjpeg none)
-DENABLE_LIBOPENJPEG=$(usex jpeg2k openjpeg2 none)
-DENABLE_CMS=$(usex lcms lcms2 none)
-DWITH_NSS3=$(usex nss)
-DWITH_PNG=$(usex png)
$(cmake_use_find_package qt5 Qt5Core)
-DWITH_TIFF=$(usex tiff)
-DENABLE_UTILS=$(usex utils)
)
use cairo && mycmakeargs+=( -DWITH_GObjectIntrospection=$(usex introspection) )
cmake_src_configure
}
src_install() {
cmake_src_install
# live version doesn't provide html documentation
if use cairo && use doc && [[ ${PV} != *9999* ]]; then
# For now install gtk-doc there
insinto /usr/share/gtk-doc/html/poppler
doins -r "${S}"/glib/reference/html/*
fi
}

@ -12,7 +12,7 @@ if [[ ${PV} == *9999* ]] ; then
else
SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
SLOT="0/98" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
SLOT="0/99" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
fi
DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"

@ -2,3 +2,4 @@ DIST sigil-0.9.16.tar.gz 21241424 BLAKE2B 1e784768cfe98e08ac01f5a9c11ec8254f9a02
DIST sigil-0.9.18.tar.gz 21396185 BLAKE2B a20a1465032371f9d7e567fff03c859adf4bd2264e9d803efeb3bdeb3b097eca826daa36824370848aea50fffb2b2b74b28568f7dca926565dfd0948d7ade030 SHA512 a8f669ffb76554268aae8aa0f85c6861f80def71e429b44b20ac9b231f3f7584839a82e7b6991f57ca1f2d1f023e24d1f37897bd048379e30565e9bdd7ee188a
DIST sigil-1.0.0.tar.gz 21623303 BLAKE2B 5772316d3ffc78387f7fb9db1e88397756bf82c25513246033fe71f288d619844e9316f43b7f08b914e4f59912e42eea061079cd4b468de77087bf7a8ea46be0 SHA512 7fc440131fcdd9af60b10f703dcdaf946ac6c667cabbfc842addd68c6c9af35fc8808630a6cfee6db465e7faeec6a6b4f2c6bbe185426a0f845e47c16b02d7d1
DIST sigil-1.1.0.tar.gz 21370163 BLAKE2B f5e522e6cd6335ef0a897fecdc99f40da5f6be902c02fadc8bf5817bc0e88c4bacab1075995f5da1fd6bbacb8759ab9f20c6810acfeb3736d033241d1ca6f2ed SHA512 855e973b76eee5f06c3efd7f693474c9ea9a30791d0519569696adc4d7737c2ea6036ae932828c7101e78e6903cbdc846a164ba7464ef6c6821b704092cb796e
DIST sigil-1.2.1.tar.gz 21462439 BLAKE2B b615304d80ae1bc8b202398e4e00e25e6f13130ba5f27239d78cb847813fac6d13ddd868ed8daa496b5a5f2f37914603b3014b2c0ecb9f8ae2f0e5f6f2bdf84b SHA512 763648e5c77df9c34568790700f76a1793445f0ba061e2c8c2032c1de72bc5d5c0e0f671d87140df1b4404d571f6c1c73aa99c57208f7383aa2b0d50ed3c15a1

@ -9,8 +9,6 @@
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<longdescription lang="en">Sigil is a multi-platform WYSIWYG ebook editor.
It is designed to edit books in ePub format.</longdescription>
<use>
<flag name="plugins">Installed needed Python packages for using Sigil plugins</flag>
<flag name="system-mathjax">Use the system-wide <pkg>dev-libs/mathjax</pkg> instead of bundled</flag>

@ -0,0 +1,82 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_REQ_USE="tk"
inherit cmake python-single-r1 xdg-utils
DESCRIPTION="Multi-platform WYSIWYG ebook editor for ePub format"
HOMEPAGE="https://sigil-ebook.com/ https://github.com/Sigil-Ebook/Sigil"
SRC_URI="https://github.com/Sigil-Ebook/Sigil/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3+ Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+plugins system-mathjax"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
${PYTHON_DEPS}
app-text/hunspell:=
dev-libs/libpcre:3=[pcre16]
$(python_gen_cond_dep \
'dev-python/css-parser[${PYTHON_USEDEP}]
dev-python/lxml[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]')
>=dev-qt/qtconcurrent-5.12:5
>=dev-qt/qtcore-5.12:5
>=dev-qt/qtgui-5.12:5
>=dev-qt/qtprintsupport-5.12:5
>=dev-qt/qtwebengine-5.12:5[widgets]
>=dev-qt/qtwidgets-5.12:5
sys-libs/zlib[minizip]
plugins? ( $(python_gen_cond_dep \
'dev-python/chardet[${PYTHON_USEDEP}]
dev-python/cssselect[${PYTHON_USEDEP}]
dev-python/cssutils[${PYTHON_USEDEP}]
dev-python/html5lib[${PYTHON_USEDEP}]
dev-python/pillow[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]') )
system-mathjax? ( dev-libs/mathjax )
"
DEPEND="${RDEPEND}"
BDEPEND="
dev-qt/linguist-tools:5
virtual/pkgconfig
"
S="${WORKDIR}/Sigil-${PV}"
DOCS=( ChangeLog.txt README.md )
src_configure() {
local mycmakeargs=(
-DINSTALL_BUNDLED_DICTS=0
-DUSE_SYSTEM_LIBS=1
-DSYSTEM_LIBS_REQUIRED=1
-DPYTHON_EXECUTABLE="${PYTHON}"
-DPYTHON_LIBRARY="$(python_get_library_path)"
-DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
)
use system-mathjax && mycmakeargs+=( -DMATHJAX_DIR="${EPREFIX}"/usr/share/mathjax )
cmake_src_configure
}
src_install() {
cmake_src_install
python_fix_shebang "${ED}"/usr/share/sigil/
python_optimize "${ED}"/usr/share/sigil/
}
pkg_postinst() {
xdg_desktop_database_update
}
pkg_postrm() {
xdg_desktop_database_update
}

Binary file not shown.

@ -1,2 +1,3 @@
DIST antlr-4.7.1-complete.jar 2240116 BLAKE2B 3acf99b3701b2092cad2fb6e91f27791cbedd82f26888d7329e481be29fce4ec644eb57f663e515b92dea46c24222d4fb090aae5cae30c57c412a38932ea72ed SHA512 de1c230d7294e05ac7b451cbc639bab9d416a674b281e21092fb4a9329ca8b6d4b92b9ad78a9771cff475a1610f1d0419819c4619bdff36c683019da67ef13b1
DIST mysql-workbench-community-8.0.19-src.tar.gz 19391463 BLAKE2B f9374c234a75851784c940f8288a783ee1c02fe4be2973b174a0d3768a60dd5318ceea7d2dacb083376c83c33bed8fca02768bcf4f3b8ba6284ca78fc7910cfe SHA512 986a34328ec3b9aba1532cfd8792fb970fe3c71eda577988a17a6bca25e783a520878067acd097a74ca3f274f02d271af16d7d6beb6970bca48332721021eebc
DIST mysql-workbench-community-8.0.20-src.tar.gz 19391920 BLAKE2B 9baf37dec18002ebf7956979fa1e3e45b69a7061bd85d6b2ef25f058ce7595a6847ea314b7443dadf7524ff985ff4e87869e91ea7a012e6cf07a6d139a6c733b SHA512 b31314fac018959a008b283c795df5a676d6c667827e87a98379ce1de172b98cfdf8dd5cac009e2fb78241358afcb318abfed0178d73840bf6b4432b85b6a4e7

@ -0,0 +1,109 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
GCONF_DEBUG="no"
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE="sqlite"
ANTLR_VERSION=4.7.1
inherit gnome2 flag-o-matic python-single-r1 cmake-utils
MY_P="${PN}-community-${PV}-src"
DESCRIPTION="MySQL Workbench"
HOMEPAGE="https://www.mysql.com/products/workbench/"
SRC_URI="https://cdn.mysql.com/Downloads/MySQLGUITools/${MY_P}.tar.gz
https://www.antlr.org/download/antlr-${ANTLR_VERSION}-complete.jar"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
IUSE="debug doc"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
# glibc: deprecated mutex functions, removed in 2.36.0
CDEPEND="${PYTHON_DEPS}
app-crypt/libsecret
dev-libs/glib:2
dev-cpp/antlr-cpp:4
dev-cpp/atkmm
dev-cpp/pangomm
>=dev-cpp/glibmm-2.14:2
dev-cpp/gtkmm:3.0
dev-libs/atk
>=net-libs/libssh-0.8.5[server]
x11-libs/pango
x11-libs/gtk+:3
gnome-base/libglade:2.0
>=x11-libs/cairo-1.5.12[glib,svg]
>=dev-libs/rapidjson-1.1.0
dev-libs/libsigc++:2
>=dev-libs/boost-1.55.0[nls]
>=dev-cpp/ctemplate-0.95
>=dev-libs/libxml2-2.6.2:2
dev-libs/libzip
dev-libs/libpcre[cxx]
>=sci-libs/gdal-1.11.1-r1
virtual/opengl
|| ( sys-libs/e2fsprogs-libs dev-libs/ossp-uuid )
dev-libs/tinyxml[stl]
>=dev-db/mysql-connector-c++-1.1.8 =dev-db/mysql-connector-c++-1*
dev-db/vsqlite++
|| ( dev-db/libiodbc dev-db/unixODBC )
dev-python/pexpect
>=dev-python/paramiko-1.7.4
"
RDEPEND="${CDEPEND}
app-admin/sudo
>=sys-apps/net-tools-1.60_p20120127084908"
DEPEND="${CDEPEND}
dev-lang/swig
virtual/jre
virtual/pkgconfig"
S="${WORKDIR}"/"${MY_P}"
PATCHES=(
"${FILESDIR}/${PN}-6.2.5-wbcopytables.patch"
"${FILESDIR}/${PN}-8.0.19-mysql-connector-8.patch"
)
src_unpack() {
unpack ${PN}-community-${PV}-src.tar.gz
}
src_prepare() {
## remove hardcoded CXXFLAGS
sed -i -e 's/-O0 -g3//' ext/scintilla/gtk/CMakeLists.txt || die
## And avoid -Werror
sed -i -e 's/-Werror//' CMakeLists.txt || die
## package is very fragile...
strip-flags
cmake-utils_src_prepare
}
src_configure() {
if has_version dev-db/libiodbc ; then
IODBC="-DIODBC_CONFIG_PATH=/usr/bin/iodbc-config"
fi
append-cxxflags -std=c++11
ANTLR_JAR_PATH="${DISTDIR}/antlr-${ANTLR_VERSION}-complete.jar"
local mycmakeargs=(
-DWITH_ANTLR_JAR=${ANTLR_JAR_PATH}
-DLIB_INSTALL_DIR="/usr/$(get_libdir)"
-DIODBC_INCLUDE_PATH="/usr/include/iodbc"
${IODBC}
-DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
-DPYTHON_LIBRARY="$(python_get_library_path)"
-DMySQL_CONFIG_PATH="/usr/bin/mysql_config"
)
cmake-utils_src_configure
}

Binary file not shown.

@ -4,7 +4,7 @@
EAPI=6
# jython depends on java-config, so don't add it or things will break
PYTHON_COMPAT=( python{3_6,3_7,3_8} )
PYTHON_COMPAT=( python{3_6,3_7} )
DISTUTILS_USE_SETUPTOOLS=no
inherit distutils-r1

@ -7,6 +7,4 @@ DIST lucene-grouping-7.1.0.jar 87200 BLAKE2B 93f4ca6938b3fbc74752e22ee9d53022a60
DIST lucene-queries-7.1.0.jar 243126 BLAKE2B 166c3efea04c19314be7fd8c1d6b1378b2b967243289d9bded5e9768cb441a35fabbe63641d00b72a8c14aace0bad402df49c21b853f620bf81bc1e829dcecdb SHA512 34df5eccf0577ed037ef347adc9c2552c49d57e35dbff629fdbb860926765be48f8b06fd693bdacfc2edcd9c6ad711c13fe98e5317cb1d1f2157dcab938e34ea
DIST lucene-queryparser-7.1.0.jar 384680 BLAKE2B adce2572de9f534323eead31dd30f97b853b2d5e4be6828c415f0c647460c361e00680d856ff9ffbba0fe45c3e4a425d68938a3d2dc01c76491bb65673e120fa SHA512 7151ef899e318679995138262c3450577ae33580708864581dc22a027f43ca4989825d434680925547e3c04ad4453a454e7045f605d7eee0da57d63db978ed68
DIST lucene-sandbox-7.1.0.jar 182914 BLAKE2B 70c795f84d8f0908abe47db77f632eeb6571a77e1445b8ab04a75080cea40e3b8171071965ff7fd9f6d39a450dd33144e922d19c1f07c605de54b45e3e881323 SHA512 6faf9fd9c7c082bf062adb6a28d89447e6e27152eb3f0a325081e5f791196e5440334632ccbf9c458940220676f7e73390a174889d9b7a656d088b3dade5d500
DIST openjfx-11.0.6_p2.tar.bz2 63971065 BLAKE2B e68cebef34c39b163bf9de5f7184a363553650921bcf86ea338d6cbb583cc66056c3f5d8ff593b320ee38afd9daf738ffe041de6a90062e35e59274ad0242c9d SHA512 7112a7f4a02f36c131892953d76f6a8d82bdce69b67479091187045d78c090f6b4bc8f21b6df259f154c3d0ae87866566eca50ef2741ed440d62655c36e20f3c
DIST openjfx-11.0.7_p0.tar.bz2 63969275 BLAKE2B 50f30cf736ff8713f0be5c4404d6494a96bdaf23082eff8b83ecd704fb417d7e54502f0e0fff9a993d814d9ed9cec98f152487bc96bf929a67b74ec08615f053 SHA512 54b1b010800d3edfc9bb1319860fceab2083d77cbcb45ebe4baefbecf7e0ac2756cb24470cf4c9e7f53d44d7bf345c5f869f9d50748da6bb9d8be8bf1e325ec3
DIST openjfx-11.0.7_p1.tar.bz2 64302415 BLAKE2B 1a0705b5a668025dd73cc92af35b9e33d698adb1130dace1c079e20f6f6a848517102fe28f7e5e62a141fdfbd6f8086e9a2bb96573a597245d935e5d80918c4c SHA512 ff2b0af1d4b18963bd8ce26c20ab1def268fec8e6030732336edec3aedf58f8bdc25b61b3cd1d70c7d814a3ee96413965f26fba2426c083338c62d8483e93564

@ -1,220 +0,0 @@
# Copyright 2019-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
MY_PV=${PV/_p/+}
SLOT=${MY_PV%%[.+]*}
EGRADLE_VER="4.8"
inherit flag-o-matic java-pkg-2 multiprocessing
DESCRIPTION="Java OpenJFX client application platform"
HOMEPAGE="https://openjfx.io"
SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar
https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar
https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar
https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar
"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="-* ~amd64"
IUSE="cpu_flags_x86_sse2 debug doc source +media"
RDEPEND="
dev-java/swt:4.10[cairo,opengl]
dev-libs/atk
dev-libs/glib:2
dev-libs/libxml2:2
dev-libs/libxslt
media-libs/freetype:2
media-libs/fontconfig:1.0
media-video/ffmpeg:0=
x11-libs/gdk-pixbuf
x11-libs/gtk+:2
x11-libs/gtk+:3
x11-libs/cairo[glib]
x11-libs/libX11
x11-libs/libXtst
x11-libs/libXxf86vm
x11-libs/pango
virtual/jpeg
virtual/opengl
|| (
dev-java/openjdk-bin:${SLOT}[doc?]
dev-java/openjdk:${SLOT}[doc?]
)
"
DEPEND="${RDEPEND}
app-arch/unzip
app-arch/zip
>=dev-java/ant-core-1.10.7-r1:0
dev-java/antlr:0
dev-java/antlr:3.5
dev-java/hamcrest-core:0
dev-java/stringtemplate:0
virtual/ttf-fonts
virtual/pkgconfig
"
REQUIRED_USE="cpu_flags_x86_sse2"
PATCHES=(
"${FILESDIR}"/11/disable-buildSrc-tests.patch
"${FILESDIR}"/11/glibc-compatibility.patch
"${FILESDIR}"/11/respect-user-cflags.patch
"${FILESDIR}"/11/use-system-swt-jar.patch
)
S="${WORKDIR}/rt-${MY_PV}"
egradle() {
local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
local gradle="${GRADLE_HOME}/bin/gradle"
local gradle_args=(
--info
--stacktrace
--no-build-cache
--no-daemon
--offline
--gradle-user-home "${T}/gradle_user_home"
--project-cache-dir "${T}/gradle_project_cache"
)
export GRADLE_HOME
# FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
unset ANT_HOME
einfo "gradle "${gradle_args[@]}" ${@}"
"${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
}
pkg_setup() {
JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
JAVA_PKG_WANT_SOURCE="${SLOT}"
JAVA_PKG_WANT_TARGET="${SLOT}"
# The nastiness below is necessary while the gentoo-vm USE flag is
# masked. First we call java-pkg-2_pkg_setup if it looks like the
# flag was unmasked against one of the possible build VMs. If not,
# we try finding one of them in their expected locations. This would
# have been slightly less messy if openjdk-bin had been installed to
# /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
# file but disable it so that it would not normally be selectable.
local vm
for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
java-pkg-2_pkg_setup
return
fi
done
if has_version --host-root dev-java/openjdk:${SLOT}; then
export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
export JDK_HOME="${JAVA_HOME}"
export ANT_RESPECT_JAVA_HOME=ture
else
if [[ ${MERGE_TYPE} != "binary" ]]; then
JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT})
[[ -n ${JDK_HOME} ]] || die "Build VM not found!"
JDK_HOME=${JDK_HOME#*/}
JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
export JDK_HOME
export JAVA_HOME="${JDK_HOME}"
export ANT_RESPECT_JAVA_HOME=ture
fi
fi
}
src_unpack() {
unpack "${P}.tar.bz2"
unpack "gradle-${EGRADLE_VER}-bin.zip"
mkdir "${T}/jars" || die
local line jar
for line in ${SRC_URI}; do
if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then
jar=$(basename "${BASH_REMATCH[-1]}")
cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die
fi
done
}
src_prepare() {
default
local d="${T}/jars"
java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr
java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5
java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate
java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core
sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die
}
src_configure() {
append-flags -Wno-error
#FIXME: still calls gcc, pkg-config etc by name without chost prefix
#FIXME: should we enable webkit? doubt so
# build is very sensetive to doc presense, take extra steps
if use doc; then
local jdk_doc
if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then
jdk_doc="${EROOT%/}/usr/share/doc/openjdk-${SLOT}/html/api"
elif has_version --host-root dev-java/java-sdk-docs:${SLOT}; then
jdk_doc="${EROOT%/}/usr/share/doc/java-sdk-docs-${SLOT}/html/api"
fi
[[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early"
fi
cat <<- _EOF_ > "${S}"/gradle.properties
COMPILE_TARGETS = linux
COMPILE_WEBKIT = false
COMPILE_MEDIA = $(usex media true false)
JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api
JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "")
BUILD_LIBAV_STUBS = false
GRADLE_VERSION_CHECK = false
LINT = none
CONF = $(usex debug DebugNative Release)
NUM_COMPILE_THREADS = $(makeopts_jobs)
JFX_DEPS_URL = ${T}/jars
COMPANY_NAME = "Gentoo"
_EOF_
}
src_compile() {
egradle zips $(usex doc "" "--exclude-task javadoc")
}
src_install() {
if ! use source ; then
rm -v build/sdk/lib/src.zip || die
fi
insinto "/usr/$(get_libdir)/${PN}-${SLOT}"
doins -r build/sdk/.
doins build/javafx-exports.zip
if use doc; then
docinto html
dodoc -r build/javadoc/.
dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
fi
}

@ -1,221 +0,0 @@
# Copyright 2019-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
MY_PV="${PV/_p/+}"
SLOT="${MY_PV%%[.+]*}"
EGRADLE_VER="4.8"
inherit flag-o-matic java-pkg-2 multiprocessing
DESCRIPTION="Java OpenJFX client application platform"
HOMEPAGE="https://openjfx.io"
SRC_URI="https://hg.openjdk.java.net/${PN}/${SLOT}-dev/rt/archive/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
https://downloads.gradle.org/distributions/gradle-${EGRADLE_VER}-bin.zip
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-sandbox/7.1.0/lucene-sandbox-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-grouping/7.1.0/lucene-grouping-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queryparser/7.1.0/lucene-queryparser-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-queries/7.1.0/lucene-queries-7.1.0.jar
https://repo.maven.apache.org/maven2/org/apache/lucene/lucene-core/7.1.0/lucene-core-7.1.0.jar
https://repo.maven.apache.org/maven2/org/antlr/gunit/3.5.2/gunit-3.5.2.jar
https://repo1.maven.org/maven2/org/antlr/antlr4/4.7.2/antlr4-4.7.2-complete.jar
https://repo.maven.apache.org/maven2/org/antlr/ST4/4.0.8/ST4-4.0.8.jar
"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="-* ~amd64"
IUSE="cpu_flags_x86_sse2 debug doc source +media"
RDEPEND="
dev-java/swt:4.10[cairo,opengl]
dev-libs/atk
dev-libs/glib:2
dev-libs/libxml2:2
dev-libs/libxslt
media-libs/freetype:2
media-libs/fontconfig:1.0
media-video/ffmpeg:0=
x11-libs/gdk-pixbuf
x11-libs/gtk+:2
x11-libs/gtk+:3
x11-libs/cairo[glib]
x11-libs/libX11
x11-libs/libXtst
x11-libs/libXxf86vm
x11-libs/pango
virtual/jpeg
virtual/opengl
|| (
dev-java/openjdk-bin:${SLOT}[doc?]
dev-java/openjdk:${SLOT}[doc?]
)
"
DEPEND="${RDEPEND}
app-arch/unzip
app-arch/zip
>=dev-java/ant-core-1.10.7-r1:0
dev-java/antlr:0
dev-java/antlr:3.5
dev-java/hamcrest-core:0
dev-java/stringtemplate:0
virtual/ttf-fonts
virtual/pkgconfig
"
REQUIRED_USE="cpu_flags_x86_sse2"
PATCHES=(
"${FILESDIR}"/11/disable-buildSrc-tests.patch
"${FILESDIR}"/11/glibc-compatibility.patch
"${FILESDIR}"/11/respect-user-cflags.patch
"${FILESDIR}"/11/use-system-swt-jar.patch
"${FILESDIR}"/11/wno-error.patch
)
S="${WORKDIR}/rt-${MY_PV}"
egradle() {
local GRADLE_HOME="${WORKDIR}/gradle-${EGRADLE_VER}"
local gradle="${GRADLE_HOME}/bin/gradle"
local gradle_args=(
--info
--stacktrace
--no-build-cache
--no-daemon
--offline
--gradle-user-home "${T}/gradle_user_home"
--project-cache-dir "${T}/gradle_project_cache"
)
export GRADLE_HOME
# FIXME: build.gradle believes $ANT_HOME/bin/ant shoud exist
unset ANT_HOME
einfo "gradle "${gradle_args[@]}" ${@}"
"${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
}
pkg_setup() {
JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
JAVA_PKG_WANT_SOURCE="${SLOT}"
JAVA_PKG_WANT_TARGET="${SLOT}"
# The nastiness below is necessary while the gentoo-vm USE flag is
# masked. First we call java-pkg-2_pkg_setup if it looks like the
# flag was unmasked against one of the possible build VMs. If not,
# we try finding one of them in their expected locations. This would
# have been slightly less messy if openjdk-bin had been installed to
# /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
# file but disable it so that it would not normally be selectable.
local vm
for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
if [[ -d ${EPREFIX}/usr/lib/jvm/${vm} ]]; then
java-pkg-2_pkg_setup
return
fi
done
if has_version --host-root dev-java/openjdk:${SLOT}; then
export JAVA_HOME=${EPREFIX}/usr/$(get_libdir)/openjdk-${SLOT}
export JDK_HOME="${JAVA_HOME}"
export ANT_RESPECT_JAVA_HOME=ture
else
if [[ ${MERGE_TYPE} != "binary" ]]; then
JDK_HOME=$(best_version --host-root dev-java/openjdk-bin:${SLOT})
[[ -n ${JDK_HOME} ]] || die "Build VM not found!"
JDK_HOME=${JDK_HOME#*/}
JDK_HOME=${EPREFIX}/opt/${JDK_HOME%-r*}
export JDK_HOME
export JAVA_HOME="${JDK_HOME}"
export ANT_RESPECT_JAVA_HOME=ture
fi
fi
}
src_unpack() {
unpack "${P}.tar.bz2"
unpack "gradle-${EGRADLE_VER}-bin.zip"
mkdir "${T}/jars" || die
local line jar
for line in ${SRC_URI}; do
if [[ ${line} =~ (http|https)://[a-zA-Z0-9.-_]*/(maven2|m2|eclipse)/(.*[.]jar)$ ]]; then
jar=$(basename "${BASH_REMATCH[-1]}")
cp -v "${DISTDIR}/${jar}" "${T}/jars/" || die
fi
done
}
src_prepare() {
default
local d="${T}/jars"
java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr
java-pkg_jar-from --build-only --with-dependencies --into "${d}" antlr-3.5
java-pkg_jar-from --build-only --with-dependencies --into "${d}" stringtemplate
java-pkg_jar-from --build-only --with-dependencies --into "${d}" hamcrest-core
sed -i "s#__gentoo_swt_jar__#$(java-pkg_getjars swt-4.10)#" "${S}"/build.gradle || die
}
src_configure() {
append-flags -Wno-error
#FIXME: still calls gcc, pkg-config etc by name without chost prefix
#FIXME: should we enable webkit? doubt so
# build is very sensetive to doc presense, take extra steps
if use doc; then
local jdk_doc
if has_version --host-root dev-java/openjdk:${SLOT}[doc]; then
jdk_doc="${EROOT%/}/usr/share/doc/openjdk-${SLOT}/html/api"
elif has_version --host-root dev-java/java-sdk-docs:${SLOT}; then
jdk_doc="${EROOT%/}/usr/share/doc/java-sdk-docs-${SLOT}/html/api"
fi
[[ -r ${jdk_doc}/element-list ]] || die "JDK Docs not found, terminating build early"
fi
cat <<- _EOF_ > "${S}"/gradle.properties
COMPILE_TARGETS = linux
COMPILE_WEBKIT = false
COMPILE_MEDIA = $(usex media true false)
JDK_DOCS = https://docs.oracle.com/en/java/javase/${SLOT}/docs/api
JDK_DOCS_LINK = $(usex doc "${jdk_doc}" "")
BUILD_LIBAV_STUBS = false
GRADLE_VERSION_CHECK = false
LINT = none
CONF = $(usex debug DebugNative Release)
NUM_COMPILE_THREADS = $(makeopts_jobs)
JFX_DEPS_URL = ${T}/jars
COMPANY_NAME = "Gentoo"
_EOF_
}
src_compile() {
egradle zips $(usex doc "" "--exclude-task javadoc")
}
src_install() {
if ! use source ; then
rm -v build/sdk/lib/src.zip || die
fi
insinto "/usr/$(get_libdir)/${PN}-${SLOT}"
doins -r build/sdk/.
doins build/javafx-exports.zip
if use doc; then
docinto html
dodoc -r build/javadoc/.
dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
fi
}

@ -97,7 +97,8 @@ egradle() {
unset ANT_HOME
einfo "gradle "${gradle_args[@]}" ${@}"
"${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
# TERM needed, otherwise gradle may fail on terms it does not know about
TERM="xterm" "${gradle}" "${gradle_args[@]}" ${@} || die "gradle failed"
}
pkg_setup() {
@ -168,7 +169,7 @@ src_prepare() {
}
src_configure() {
append-flags -Wno-error
append-flags -Wno-error -fcommon
#FIXME: still calls gcc, pkg-config etc by name without chost prefix
#FIXME: should we enable webkit? doubt so

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="https://github.com/KhronosGroup/OpenCL-CLHPP/archive/v${PV}.tar.gz -> $
LICENSE="Khronos-CLHPP"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
DEPEND="virtual/opencl"
RDEPEND="${DEPEND}"

@ -1,30 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake
DESCRIPTION="Khronos OpenCL C++ bindings"
HOMEPAGE="https://github.com/KhronosGroup/OpenCL-CLHPP/"
SRC_URI="https://github.com/KhronosGroup/OpenCL-CLHPP/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Khronos-CLHPP"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
DEPEND="virtual/opencl"
RDEPEND="${DEPEND}"
S="${WORKDIR}"/OpenCL-CLHPP-${PV}
src_configure() {
local mycmakeargs=(
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/include"
-DBUILD_DOCS=OFF
-DBUILD_EXAMPLES=OFF
-DBUILD_TESTS=OFF
)
cmake_src_configure
}

@ -1 +1,2 @@
DIST efl-1.23.3.tar.xz 77485032 BLAKE2B e5f65080aec1d11a43f1e1786b8ac4e7be70ddd9614b53db822177c28ee73f9590f63d032df5ddf00db6224730b45b045d9f91da2287a4dec7589e902cbcde28 SHA512 47ad067c43d39b534834195f89a745c4a47d867f33aaa68c28c6dccd147379e9bc2416bd68878cc16585f8cb60e926a7df62102658b205756c01985f37f0d297
DIST efl-1.24.0.tar.xz 72274848 BLAKE2B f1652f334de618778eb1c70d05f101554b57676bd6bce462c21169969d3c005b52c35c4d95dcd015641e202fc3dc1034387f6d7d41b47521ca890fb62543b0fb SHA512 a3415e79eb0d13c1393f80728527d2b663b35e1b9ec815fadd0b43d754320ee8461aeade781b0264853e7935e920df7a5cc0b438c6b8a15a5744380a32f55080

@ -0,0 +1,277 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit meson xdg-utils
DESCRIPTION="Enlightenment Foundation Libraries all-in-one package"
HOMEPAGE="https://www.enlightenment.org"
SRC_URI="https://download.enlightenment.org/rel/libs/${PN}/${P}.tar.xz"
LICENSE="BSD-2 GPL-2 LGPL-2.1 ZLIB"
SLOT="0"
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
IUSE="+X bmp connman dds debug doc drm +eet elogind examples fbcon fontconfig
fribidi gif gles2 gnutls glib +gstreamer harfbuzz hyphen ibus ico libressl
lua +luajit jpeg2k json nls mono opengl +pdf physics pmaps postscript psd
pulseaudio raw scim sdl +sound +ssl +svg +system-lz4 systemd tga tgv tiff
tslib unwind v4l vnc wayland webp xcf xim xpm xpresent zeroconf"
REQUIRED_USE="
?? ( elogind systemd )
?? ( gles2 opengl )
^^ ( lua luajit )
ssl
drm? ( gles2 )
examples? ( eet svg )
gles2? ( || ( wayland X ) )
pulseaudio? ( sound )
wayland? ( gles2 !opengl )
xim? ( X )
xpresent? ( X )
"
# Requires everything to be enabled unconditionally.
RESTRICT="test"
RDEPEND="
dev-libs/check
net-misc/curl
media-libs/giflib:=
media-libs/libpng:0=
sys-apps/dbus
sys-libs/zlib
virtual/jpeg:0=
X? (
media-libs/freetype
x11-libs/libX11
x11-libs/libXcomposite
x11-libs/libXcursor
x11-libs/libXdamage
x11-libs/libXdmcp
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXi
x11-libs/libXinerama
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libXtst
x11-libs/libXScrnSaver
wayland? ( x11-libs/libxkbcommon[X] )
)
connman? ( net-misc/connman )
drm? (
dev-libs/libinput
dev-libs/wayland
media-libs/mesa[gbm]
x11-libs/libdrm
x11-libs/libxkbcommon
)
elogind? (
sys-auth/elogind
virtual/libudev
)
fontconfig? ( media-libs/fontconfig )
fribidi? ( dev-libs/fribidi )
gles2? (
media-libs/mesa[egl,gles2]
virtual/opengl
)
glib? ( dev-libs/glib:2 )
gstreamer? (
media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0
)
hyphen? ( dev-libs/hyphen )
ibus? ( app-i18n/ibus )
jpeg2k? ( media-libs/openjpeg:= )
json? ( >=media-libs/rlottie-0.0.1_pre20200424 )
lua? ( dev-lang/lua:* )
luajit? ( dev-lang/luajit:* )
mono? ( dev-lang/mono )
opengl? ( virtual/opengl )
pdf? ( app-text/poppler:=[cxx] )
physics? ( sci-physics/bullet:= )
postscript? ( app-text/libspectre )
pulseaudio? ( media-sound/pulseaudio )
raw? ( media-libs/libraw:= )
scim? ( app-i18n/scim )
sdl? ( media-libs/libsdl2 )
sound? ( media-libs/libsndfile )
ssl? (
gnutls? ( net-libs/gnutls:= )
!gnutls? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:= )
)
)
svg? ( gnome-base/librsvg )
system-lz4? ( app-arch/lz4 )
systemd? ( sys-apps/systemd:= )
tiff? ( media-libs/tiff:0= )
tslib? ( x11-libs/tslib:= )
unwind? ( sys-libs/libunwind )
v4l? ( media-libs/libv4l )
vnc? ( net-libs/libvncserver )
wayland? (
dev-libs/wayland
media-libs/mesa[gles2,wayland]
x11-libs/libxkbcommon
)
webp? ( media-libs/libwebp:= )
xpm? ( x11-libs/libXpm )
xpresent? ( x11-libs/libXpresent )
zeroconf? ( net-dns/avahi )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig
doc? ( app-doc/doxygen )
nls? ( sys-devel/gettext )"
src_configure() {
local emesonargs=(
--buildtype=release
-D buffer=false
-D cocoa=false
-D drm-deprecated=false
-D g-mainloop=false
-D install-eo-files=true
-D mono-beta=false
-D dotnet=false
-D pixman=false
-D wl-deprecated=false
-D dotnet-stylecop-severity=Warning
-D edje-sound-and-video=true
-D eeze=true
-D libmount=true
-D native-arch-optimization=true
-D xinput2=true
-D xinput22=true
$(meson_use X x11)
$(meson_use debug debug-threads)
$(meson_use drm)
$(meson_use elogind)
$(meson_use examples build-examples)
$(meson_use fbcon fb)
$(meson_use fontconfig)
$(meson_use fribidi)
$(meson_use glib)
$(meson_use gstreamer)
$(meson_use harfbuzz)
$(meson_use hyphen)
$(meson_use luajit elua)
$(meson_use nls)
$(meson_use physics)
$(meson_use pulseaudio)
$(meson_use sdl)
$(meson_use sound audio)
$(meson_use systemd)
$(meson_use tslib)
$(meson_use v4l v4l2)
$(meson_use vnc vnc-server)
$(meson_use wayland wl)
$(meson_use xpresent)
$(meson_use zeroconf avahi)
$(meson_use !system-lz4 embedded-lz4)
)
if use opengl; then
emesonargs+=( -D opengl=full )
elif use gles2; then
emesonargs+=( -D opengl=es-egl )
else
emesonargs+=( -D opengl=none )
fi
if use gnutls; then
emesonargs+=( -D crypto=gnutls )
else
emesonargs+=( -D crypto=openssl )
fi
if use connman; then
emesonargs+=( -D network-backend=connman )
else
emesonargs+=( -D network-backend=none )
fi
local disabledEvasLoaders=""
! use bmp && disabledEvasLoaders+="bmp,wbmp,"
! use dds && disabledEvasLoaders+="dds,"
! use eet && disabledEvasLoaders+="eet,"
! use gstreamer && disabledEvasLoaders+="gst,"
! use ico && disabledEvasLoaders+="ico,"
! use jpeg2k && disabledEvasLoaders+="jp2k,"
! use json && disabledEvasLoaders+="json,"
! use pdf && disabledEvasLoaders+="pdf,"
! use pmaps && disabledEvasLoaders+="pmaps,"
! use postscript && disabledEvasLoaders+="ps,"
! use psd && disabledEvasLoaders+="psd,"
! use raw && disabledEvasLoaders+="raw,"
! use svg && disabledEvasLoaders+="rsvg,svg,"
! use tga && disabledEvasLoaders+="tga,"
! use tgv && disabledEvasLoaders+="tgv,"
! use tiff && disabledEvasLoaders+="tiff,"
! use webp && disabledEvasLoaders+="webp,"
! use xcf && disabledEvasLoaders+="xcf,"
! use xpm && disabledEvasLoaders+="xpm,"
[[ ! -z "$disabledEvasLoaders" ]] && disabledEvasLoaders=${disabledEvasLoaders::-1}
emesonargs+=( -D evas-loaders-disabler="${disabledEvasLoaders}" )
local disabledImfLoaders=""
! use ibus && disabledImfLoaders+="ibus,"
! use scim && disabledImfLoaders+="scim,"
! use xim && disabledImfLoaders+="xim,"
[[ ! -z "$disabledImfLoaders" ]] && disabledImfLoaders=${disabledImfLoaders::-1}
emesonargs+=( -D ecore-imf-loaders-disabler="${disabledImfLoaders}" )
local bindingsList="cxx,"
use luajit && bindingsList+="luajit,"
use mono && bindingsList+="mono,"
[[ ! -z "$bindingsList" ]] && bindingsList=${bindingsList::-1}
emesonargs+=( -D bindings="${bindingsList}" )
local luaChoice=""
if use luajit; then
luaChoice+="luajit"
else
luaChoice+="lua"
fi
emesonargs+=( -D lua-interpreter="${luaChoice}" )
meson_src_configure
}
src_compile() {
meson_src_compile
if use doc; then
cd doc/ || die "Failed to switch into doc/ dir."
doxygen . || die "Doxygen failed to run."
fi
}
src_install() {
use doc && local HTML_DOCS=( "${S}"/doc/html/. )
meson_src_install
if use examples; then
docompress -x /usr/share/doc/${PF}/examples/
dodoc -r "${BUILD_DIR}"/src/examples/
fi
}
pkg_postinst() {
xdg_icon_cache_update
xdg_mimeinfo_database_update
}
pkg_postrm() {
xdg_icon_cache_update
xdg_mimeinfo_database_update
}

@ -1,3 +1,4 @@
DIST gjs-1.56.2.tar.xz 701976 BLAKE2B 77057e4a3a8958d6648c92bb56495b505b3ec49bc0eeff0fa5c9e3ae5a694a4b5643dc72d7aa673f9e66d42e9b0def7f9df0043f2690216bfc5c5109ea9eca51 SHA512 687b8e3795565b5c56fceebefb229c07b4c084a4f65c0035e0d185d12082920424632c0f896df8dc1cd5013a97b6e08274efaec4caeb564dc2070d26a5f974c5
DIST gjs-1.58.6.tar.xz 637972 BLAKE2B 553f29808723e48cee39c62e260d9c09f5db160756bf6c2fc45e532bee1d5c8babdd2bd5aee39fdff1300fc10de2c2a4e34d6b850e6e95c83ef217a8955379b6 SHA512 3e8fa8ccaabbbd07e74869fdc6188cffc19565798a6267fd3480d9320a2c9c5906c864e5d0c6e9e57f7bb79cc1706717b76b23c7cd89eb191477eb173b24aa74
DIST gjs-1.58.7.tar.xz 638804 BLAKE2B eb9bb1ea0cd9b52b58a0c4497d5bb930ccb0c8451a94cf9e5e97a6cf1e7bd4dfa5f7a15c2c68fbba3c36a5d71e71df88f086b528e7c2e86d2a8374bfdeac8aa4 SHA512 0790cffd2f2230717b78266b356e88133b5fb816380bf96fc2bea0a039d96979796ad6455a4270dcde62ff2a023fbd73e2edc98428aa2a8b2fdf2cc6c8f8ecce
DIST gjs-1.64.2.tar.xz 419704 BLAKE2B f4b8ab32530f1d24663f5f63e3fa327d2eaa7607cd7e70bd78448039edf2b3338b05edd7dd8e62d52fbe57b60361ffd46f36a61ae5d4620507ae4c70dc98be92 SHA512 e2196d5c581ee0b9c47b5648e6005f336900a71b4844bdf0142127783b4ab96b8ecca0efdeab0878c28ae674bb67f289a8898b1473b8bd080c7cb2c5c103a6f5

@ -0,0 +1,46 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit gnome.org meson virtualx
DESCRIPTION="Javascript bindings for GNOME"
HOMEPAGE="https://wiki.gnome.org/Projects/Gjs"
LICENSE="MIT || ( MPL-1.1 LGPL-2+ GPL-2+ )"
SLOT="0"
IUSE="+cairo examples gtk readline +sysprof test"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/glib-2.58.0
>=dev-libs/gobject-introspection-1.61.2:=
readline? ( sys-libs/readline:0= )
dev-lang/spidermonkey:68
dev-libs/libffi:=
cairo? ( x11-libs/cairo[X] )
"
DEPEND="${RDEPEND}
sysprof? ( >=dev-util/sysprof-capture-3.33.2:3 )
virtual/pkgconfig
test? ( sys-apps/dbus
>=x11-libs/gtk+-3.20:3 )
"
src_configure() {
# FIXME: add systemtap/dtrace support, like in glib:2
local emesonargs=(
$(meson_feature cairo)
$(meson_feature sysprof profiler)
$(meson_feature readline)
-Dinstalled_tests=false
)
meson_src_configure
}
src_test() {
virtx meson_src_test
}

@ -1,2 +1,3 @@
DIST icu4c-65_1-src.tgz 24267934 BLAKE2B 3c62781201c02a2b1027c9b6db4586f8ccdfb339c0765301a381242d5218f3503a1cdbdc1dc9a1a23ffa657096adc4bf7f0b7fe702461f14beba293a7e82e02c SHA512 8f1ef33e1f4abc9a8ee870331c59f01b473d6da1251a19ce403f822f3e3871096f0791855d39c8f20c612fc49cda2c62c06864aa32ddab2dbd186d2b21ce9139
DIST icu4c-66_1-src.tgz 24361305 BLAKE2B db26e9380305601f8429366e2813ce3ccae11f34adde513d72a1ae09281a2078ce5eb7410bc788c717167018b4c2042fc83217fac22f34e26b94ee4621a6b4ec SHA512 78d87bce65a7bdf7e9a19bda13e353c60846816ff34025f829d1ff15f9ac49aa6061eb192173742be0eca105684ce0e39e95656147afe848520bf60274c8d246
DIST icu4c-67_1-src.tgz 24518055 BLAKE2B f8a263b5c3e5e8ffea88a3bb766cb265aac026b5f9b2f45a1f06076f99f9f0dc3a4512487652d774ccfc8dc65f8f4c40a974e0aa2aa4381ee0c9885f6b871779 SHA512 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8

@ -0,0 +1,109 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools flag-o-matic multilib-minimal toolchain-funcs
DESCRIPTION="External layout part of International Components for Unicode"
HOMEPAGE="http://www.icu-project.org/"
SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${PV//./-}/icu4c-${PV//./_}-src.tgz"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="debug static-libs"
BDEPEND="
virtual/pkgconfig[${MULTILIB_USEDEP}]
"
DEPEND="
~dev-libs/icu-${PV}[${MULTILIB_USEDEP}]
dev-libs/icu-le-hb[${MULTILIB_USEDEP}]
"
RDEPEND="${DEPEND}"
S="${WORKDIR}/${PN/-layoutex}/source"
PATCHES=(
"${FILESDIR}/${PN}-65.1-remove-bashisms.patch"
)
src_prepare() {
# apply patches
default
# Disable renaming as it is stupid thing to do
sed -i \
-e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \
common/unicode/uconfig.h || die
# Fix linking of icudata
sed -i \
-e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \
config/mh-linux || die
eautoreconf
}
src_configure() {
# Use C++14
append-cxxflags -std=c++14
if tc-is-cross-compiler; then
mkdir "${WORKDIR}"/host || die
pushd "${WORKDIR}"/host >/dev/null || die
CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \
CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \
RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \
"${S}"/configure --disable-renaming --disable-debug \
--disable-samples --enable-static || die
emake
popd >/dev/null || die
fi
multilib-minimal_src_configure
}
multilib_src_configure() {
local myeconfargs=(
--disable-renaming
--disable-samples
--enable-layoutex
$(use_enable debug)
$(use_enable static-libs static)
)
tc-is-cross-compiler && myeconfargs+=(
--with-cross-build="${WORKDIR}"/host
)
# icu tries to use clang by default
tc-export CC CXX
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_test() {
# INTLTEST_OPTS: intltest options
# -e: Exhaustive testing
# -l: Reporting of memory leaks
# -v: Increased verbosity
# IOTEST_OPTS: iotest options
# -e: Exhaustive testing
# -v: Increased verbosity
# CINTLTST_OPTS: cintltst options
# -e: Exhaustive testing
# -v: Increased verbosity
pushd layoutex &>/dev/null || die
emake -j1 VERBOSE="1" check
popd &>/dev/null || die
}
multilib_src_install() {
pushd layoutex &>/dev/null || die
default
popd &>/dev/null || die
}

@ -1,2 +1,3 @@
DIST icu4c-65_1-src.tgz 24267934 BLAKE2B 3c62781201c02a2b1027c9b6db4586f8ccdfb339c0765301a381242d5218f3503a1cdbdc1dc9a1a23ffa657096adc4bf7f0b7fe702461f14beba293a7e82e02c SHA512 8f1ef33e1f4abc9a8ee870331c59f01b473d6da1251a19ce403f822f3e3871096f0791855d39c8f20c612fc49cda2c62c06864aa32ddab2dbd186d2b21ce9139
DIST icu4c-66_1-src.tgz 24361305 BLAKE2B db26e9380305601f8429366e2813ce3ccae11f34adde513d72a1ae09281a2078ce5eb7410bc788c717167018b4c2042fc83217fac22f34e26b94ee4621a6b4ec SHA512 78d87bce65a7bdf7e9a19bda13e353c60846816ff34025f829d1ff15f9ac49aa6061eb192173742be0eca105684ce0e39e95656147afe848520bf60274c8d246
DIST icu4c-67_1-src.tgz 24518055 BLAKE2B f8a263b5c3e5e8ffea88a3bb766cb265aac026b5f9b2f45a1f06076f99f9f0dc3a4512487652d774ccfc8dc65f8f4c40a974e0aa2aa4381ee0c9885f6b871779 SHA512 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8

@ -0,0 +1,141 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
inherit autotools flag-o-matic multilib-minimal python-any-r1 toolchain-funcs
DESCRIPTION="International Components for Unicode"
HOMEPAGE="http://site.icu-project.org/"
SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${PV//./-}/icu4c-${PV//./_}-src.tgz"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
IUSE="debug doc examples static-libs"
BDEPEND="${PYTHON_DEPS}
virtual/pkgconfig
doc? ( app-doc/doxygen[dot] )
"
S="${WORKDIR}/${PN}/source"
MULTILIB_CHOST_TOOLS=(
/usr/bin/icu-config
)
PATCHES=(
"${FILESDIR}/${PN}-65.1-remove-bashisms.patch"
"${FILESDIR}/${PN}-64.2-darwin.patch"
)
src_prepare() {
default
local variable
# Disable renaming as it is stupid thing to do
sed -i \
-e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \
common/unicode/uconfig.h || die
# Fix linking of icudata
sed -i \
-e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \
config/mh-linux || die
# Append doxygen configuration to configure
sed -i \
-e 's:icudefs.mk:icudefs.mk Doxyfile:' \
configure.ac || die
eautoreconf
}
src_configure() {
append-cxxflags -std=c++14
if tc-is-cross-compiler; then
mkdir "${WORKDIR}"/host || die
pushd "${WORKDIR}"/host >/dev/null || die
CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \
CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \
RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \
"${S}"/configure --disable-renaming --disable-debug \
--disable-samples --enable-static || die
emake
popd >/dev/null || die
fi
multilib-minimal_src_configure
}
multilib_src_configure() {
local myeconfargs=(
--disable-renaming
--disable-samples
--disable-layoutex
$(use_enable debug)
$(use_enable static-libs static)
$(multilib_native_use_enable examples samples)
)
tc-is-cross-compiler && myeconfargs+=(
--with-cross-build="${WORKDIR}"/host
)
# icu tries to use clang by default
tc-export CC CXX
# make sure we configure with the same shell as we run icu-config
# with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined
export CONFIG_SHELL="${EPREFIX}/bin/sh"
# probably have no /bin/sh in prefix-chain
[[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL="${BASH}"
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
multilib_src_compile() {
default
if multilib_is_native_abi && use doc; then
doxygen -u Doxyfile || die
doxygen Doxyfile || die
fi
}
multilib_src_test() {
# INTLTEST_OPTS: intltest options
# -e: Exhaustive testing
# -l: Reporting of memory leaks
# -v: Increased verbosity
# IOTEST_OPTS: iotest options
# -e: Exhaustive testing
# -v: Increased verbosity
# CINTLTST_OPTS: cintltst options
# -e: Exhaustive testing
# -v: Increased verbosity
emake -j1 VERBOSE="1" check
}
multilib_src_install() {
default
if multilib_is_native_abi && use doc; then
docinto html
dodoc -r doc/html/*
fi
}
multilib_src_install_all() {
einstalldocs
docinto html
dodoc ../readme.html
}

@ -14,7 +14,7 @@ HOMEPAGE="http://www.xmlsoft.org/"
LICENSE="MIT"
SLOT="2"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug examples icu ipv6 lzma python readline static-libs test"
IUSE="debug examples icu ipv6 lzma +python readline static-libs test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RESTRICT="!test? ( test )"

@ -14,7 +14,7 @@ HOMEPAGE="http://www.xmlsoft.org/"
LICENSE="MIT"
SLOT="2"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug examples icu ipv6 lzma python readline static-libs test"
IUSE="debug examples icu ipv6 lzma +python readline static-libs test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RESTRICT="!test? ( test )"

@ -0,0 +1,26 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=TJENNESS
DIST_VERSION=3.07
inherit perl-module
DESCRIPTION="Interface to FITS headers"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~hppa ~mips ~ppc ~x86 ~amd64-linux ~x86-linux"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="
dev-perl/Module-Build
"
BDEPEND="
dev-perl/Module-Build
test? (
virtual/perl-Test-Simple
)
"

@ -0,0 +1,25 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=DANIEL
DIST_VERSION=2.4
inherit perl-module
DESCRIPTION="Access to FLAC audio metadata"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
RDEPEND="media-libs/flac"
DEPEND="${RDEPEND}"
BDEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${PN}-2.4-no-dot-inc.patch"
)
PERL_RM_FILES=(
"t/pod.t"
"t/pod-coverage.t"
)

@ -0,0 +1,24 @@
From c9826827c3ab83f5a14a936e2a2dd468250e1eed Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Wed, 29 Apr 2020 21:17:45 +1200
Subject: Ensure "." in @INC for Perl 5.28+
---
Makefile.PL | 1 +
1 file changed, 1 insertion(+)
diff --git a/Makefile.PL b/Makefile.PL
index 1d2b114..4c77d8d 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -3,6 +3,7 @@
use strict;
use warnings;
use Config;
+use lib '.';
use inc::Module::Install;
# Automatically select XS or PP version in case neither argument is given
--
2.26.2

@ -0,0 +1,52 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=SERGEY
DIST_VERSION=0.7
DIST_EXAMPLES=("eg/*")
inherit perl-module
DESCRIPTION="Perl extension for Sound Mixer control"
SLOT="0"
KEYWORDS="~amd64 ~ia64 ~ppc ~sparc ~x86"
# License note: Ambiguous
# https://rt.cpan.org/Ticket/Display.html?id=132448
LICENSE="GPL-1"
PATCHES=(
"${FILESDIR}/${P}-volumepl.patch"
"${FILESDIR}/${P}-clang.patch"
"${FILESDIR}/${P}-testsuite.patch"
)
src_test() {
local MODULES=(
"Audio::Mixer ${DIST_VERSION}"
)
local failed=()
for dep in "${MODULES[@]}"; do
ebegin "Compile testing ${dep}"
perl -Mblib="${S}" -M"${dep} ()" -e1
eend $? || failed+=( "$dep" )
done
if [[ ${failed[@]} ]]; then
echo
eerror "One or more modules failed compile:";
for dep in "${failed[@]}"; do
eerror " ${dep}"
done
die "Failing due to module compilation errors";
fi
if [[ "${AUDIO_MIXER_HW_TEST:-0}" == 0 ]]; then
ewarn "Comprehensive testing of this module needs hardware access to mixing"
ewarn "devices. Set AUDIO_MIXER_HW_TEST=1 in your environment if you want full"
ewarn "coverage"
ewarn "For details, see:"
ewarn "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/${CATEGORY}/${PN}"
else
perl-module_src_test
fi
}

@ -0,0 +1,25 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=DANIEL
inherit perl-module
DESCRIPTION="An OO interface to Musepack file information and APE tag fields"
SLOT="0"
KEYWORDS="~amd64 ~x86"
# License note: says perl 5.8.2 or later
RDEPEND="
>=dev-perl/Audio-Scan-0.850.0
"
BDEPEND="${RDEPEND}
>=virtual/perl-ExtUtils-MakeMaker-6.420.0
"
PATCHES=(
"${FILESDIR}/${PN}-1.0.1-no-dot-inc.patch"
)
PERL_RM_FILES=(
"t/pod.t"
"t/pod-coverage.t"
)

@ -0,0 +1,21 @@
From 25eb918a143c78de972c4218f9fe5b0aefbe7e3e Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Wed, 29 Apr 2020 23:01:40 +1200
Subject: Include '.' in @INC on 5.28+
---
Makefile.PL | 1 +
1 file changed, 1 insertion(+)
diff --git a/Makefile.PL b/Makefile.PL
index de8142b..5c84f30 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,3 +1,4 @@
+use lib '.';
use inc::Module::Install;
name('Audio-Musepack');
--
2.26.2

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -8,7 +8,7 @@ DIST_VERSION=1.01
inherit perl-module
DESCRIPTION="Fast C metadata and tag reader for all common audio file formats"
# License note: ambiguity: https://rt.cpan.org/Ticket/Display.html?id=132450
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~x86-solaris"

@ -0,0 +1,21 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_VERSION=1.3
DIST_AUTHOR=DANIEL
inherit perl-module
DESCRIPTION="extension for reading WMA/ASF metadata"
SLOT="0"
KEYWORDS="~amd64 ~x86"
PERL_RM_FILES=(
"t/pod.t"
"t/pod-coverage.t"
)
PATCHES=(
"${FILESDIR}/${PN}-1.3-no-dot-inc.patch"
)

@ -0,0 +1,23 @@
From 59f5c5d6f302c3cacb212048cb7c30b727e03d91 Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Thu, 30 Apr 2020 00:11:42 +1200
Subject: Include '.' in @INC on Perl 5.28+
---
Makefile.PL | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.PL b/Makefile.PL
index e607505..51add3f 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,5 +1,5 @@
# $Id: Makefile.PL 10 1998-12-16 23:02:45Z daniel $
-
+use lib '.';
use inc::Module::Install;
name('Audio-WMA');
--
2.26.2

@ -0,0 +1,21 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=BRIANSKI
DIST_VERSION=0.14
inherit perl-module
DESCRIPTION="Modules for reading & writing Microsoft WAV files"
SLOT="0"
KEYWORDS="~amd64 ~hppa ~ppc ~x86"
RDEPEND="
>=dev-perl/Inline-0.790.0
dev-perl/Inline-C
"
BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
"

@ -0,0 +1,21 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=SALVA
DIST_VERSION=0.04
DIST_EXAMPLES=("examples/*")
inherit perl-module
DESCRIPTION="SASL DIGEST-MD5 authentication (RFC2831)"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
src_prepare() {
mkdir -p examples || die "Can't mkdir examples"
mv -v digest-md5-auth.pl examples/ || die "Can't move digest-md5-auth.pl"
sed -i -r -e 's|^(digest-md5-auth.pl)|examples/\1|' MANIFEST || die "Can't fix manifest"
perl-module_src_prepare
}

@ -0,0 +1,29 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=MSTROUT
DIST_VERSION=0.171
inherit perl-module
DESCRIPTION="interface to read and modify Apache .htpasswd files"
SLOT="0"
KEYWORDS="~amd64 ~x86"
DEPEND="
dev-perl/Class-Accessor
dev-perl/Crypt-PasswdMD5
virtual/perl-Digest
dev-perl/Digest-SHA1
dev-perl/IO-LockedFile
virtual/perl-Scalar-List-Utils
"
BRDEPEND="${DEPEND}
virtual/perl-ExtUtils-MakeMaker
"
PERL_RM_FILES=(
"t/02pod.t"
"t/03podcoverage.t"
)

@ -0,0 +1,25 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_NAME=NTLM
DIST_AUTHOR=NBEBOUT
DIST_VERSION=1.09
inherit perl-module
DESCRIPTION="An NTLM authentication module"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND=">=virtual/perl-MIME-Base64-3.00
dev-perl/Digest-HMAC"
BDEPEND="${RDEPEND}
test? ( virtual/perl-Test-Simple )
"
PERL_RM_FILES=(
"t/99_pod.t"
)

@ -0,0 +1,50 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DIST_AUTHOR=PORTAONE
DIST_VERSION=0.31
DIST_EXAMPLES=("contrib/*")
inherit perl-module
DESCRIPTION="Communicate with a Radius server from Perl"
LICENSE="Artistic-2"
SLOT="0"
KEYWORDS="~amd64 ~hppa ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=virtual/perl-Data-Dumper-1.0.0
>=dev-perl/Data-HexDump-0.20.0
>=virtual/perl-Digest-MD5-2.200.0
>=virtual/perl-IO-1.120.0
>=dev-perl/Net-IP-1.260.0
"
DEPEND="${RDEPEND}
>=virtual/perl-ExtUtils-MakeMaker-6.640.0
test? (
dev-perl/Test-NoWarnings
virtual/perl-Test-Simple
)
"
PATCHES=(
"${FILESDIR}"/${PN}-0.26-cisco-dictionary.patch
"${FILESDIR}"/${PN}-0.26-no-install-db.patch
)
src_configure() {
export OPTIMIZE="$CFLAGS"
perl-module_src_configure
}
src_install() {
perl-module_src_install
# Really want to install these radius dictionaries?
insinto /etc/raddb
doins raddb/dictionary*
}

@ -1 +1,2 @@
DIST Authen-Radius-0.27.tar.gz 49679 BLAKE2B 81a676cce378054b971932f78b37c6e9683b2acd0f214ad4dbdb84e089b683e6011cc3f75e952d687a364d29c1907b586f369fe6e5e9d1cf77ce131b8ce9035d SHA512 0b039b3b5b434225a92596075a3943f278f87c634c6764de477a31de515065d1ded762b38621c338785f73fe2a0e132d835a33a00891707950777a16e0277f67
DIST Authen-Radius-0.31.tar.gz 51311 BLAKE2B 52aaa623ca28b1b406c027fb54f38c9f24b347815aefb3336649b4ff505a0b97db516b6877546bd330505516f3481934b0c46975c017ae76ed475bc476bd1c6d SHA512 6b78254a6a94f67bd3a5529d4313da779d630a57e2300b02a49034c153b34fec0c6e745c5419f5a5e3ba2996d39907834d3f909ce9fdbd0edc6c43668f89d380

Binary file not shown.

Binary file not shown.

@ -1,3 +1,4 @@
DIST Mail_Mime-1.10.2.tgz 36501 BLAKE2B 59e900b99061e84d307eb46d295f843404ae06b01936cec4ed610c298b6f7e8fcee15098fa6d935696122311eae2dbf733611410b2249f2535673a3031011fa3 SHA512 4e3b2a2adc58d8b4f16f56509c9f22638dc37aedf1bec60871706390198198be6ed6dccae8c250eb33de3a441aeb122097ffaddbc49191745f0f09693ec6612b
DIST Mail_Mime-1.10.4.tgz 36909 BLAKE2B 101d050d96b717ad970a6f8c170ba8ea7d94252274f0b006a266a5ef4ac9d49fb350d3bf120ce645e5a54af1f0ad0ab664c828abfa8a4a96170e7204c73dfd82 SHA512 6e58e1078292cf43605313e2402b60deb97be0b56c8eb5dbbb501cf92ca836ca4bdbc9e1ab878c89f8e59941962a91b73dd917c8e678f0944f271e5537f065e5
DIST Mail_Mime-1.10.6.tgz 38355 BLAKE2B d12b0496122c67236090db84710aa1fa660570d82952f037ddeb795ac3184a427965e12b21a6dcd6bfaea692299fb6e610822a364470c444455369f96dbbe972 SHA512 223e4a3a3ab52497d7cee551108642aa8c90328cd5d28ec0f215e16e0f2066fbaa3e4d51e62080d322846f8410c2e4641cd7c743e736062b6f8215e637877518
DIST Mail_Mime-1.10.7.tgz 38445 BLAKE2B 4e990a9a704aa8fd918dcbcd271946cd5a76c55783cfa207a9a8d171c1e0d407e19e2a30ce46689c8afddeee0037082d77ecbc0e3fb0b4e94f82a2b242ef22c6 SHA512 b3ac0076d3519c14f0331b73940a4fa47cfeb1d2c31d5a5ffa820042fc9b56a8b4d479f349dbe213164c157d5c56caaf0b4f70ef422cc3eba40443433c813d60

@ -0,0 +1,26 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit php-pear-r2
DESCRIPTION="Create and manipulate mime messages with PHP"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
DEPEND="test? ( dev-php/PEAR-PEAR )"
src_test() {
# Requires the "pear" executable from dev-php/PEAR-PEAR.
pear run-tests tests || die
# The command succeeds regardless of whether or not the test suite
# passed, but this file is only written when there was a failure.
[[ -f run-tests.log ]] && die "test suite failed"
}

@ -1 +1,2 @@
DIST amqp-1.10.2.tgz 107350 BLAKE2B dd32873d5288ced2ef2c05e6b131f35c31a3514a98d5d3cb8784a989ca1d8637c5ddc7ffa2d73f5bfc2daa4fe718ecf1f08c7ceae64d2e613ef430d18161393b SHA512 a17176bcc02d35a9686d3ca120cca98d808b2a896733f41a28b5d29d43127a0a45b012bc6566de3604f41b8bcc453408a37a8254bcf47e940ebe12bb6f4d4265
DIST amqp-1.9.4.tgz 102604 BLAKE2B 34bed57e2aa3044ac02949ef0d700af71114fc4dd0007ac7a90fadfe267063d8defd6f0e1fe076aa3680187035b1596c283f3cdab8b27f8d3e59f6abf7246147 SHA512 53f8893c2fdb6f41467c9af4a5e48810d39201150a94dd9d32f542d53387ef5e6d8c614ebe2d82b3ab9febd39aa8759a86975d0dc45092a2772f08cd86d7f739

@ -0,0 +1,24 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
USE_PHP="php7-1 php7-2 php7-3 php7-4"
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"
DESCRIPTION="PHP Bindings for AMQP 0-9-1 compatible brokers"
LICENSE="PHP-3.01"
SLOT="0"
IUSE=""
# Tests require running rabbitmq-server on localhost which requires epmd
# which only accepts /var/run/epmd.pid as pidfile.
RESTRICT="test"
BDEPEND="virtual/pkgconfig"
RDEPEND=">=net-libs/rabbitmq-c-0.5.2:=[ssl]"
DEPEND="${RDEPEND}"
PHP_EXT_ECONF_ARGS=()

@ -1,2 +1,3 @@
DIST LZF-1.6.6.tgz 17603 BLAKE2B 8aab6327234b590e3b1bc22d3bf9545cd41d79ea260f73c8c6599fd88de8963e556cd71bdccdc6dfce825e24f4e1b2af477476acc1f6b184586ace7e15b28104 SHA512 a049ce5df065eb9c4d3046822f659f929ff4f270c4d80c5d0bcd44679d69524e7ee23e98931fca9f36a566ae023827eb47b66ce651ce6d0f6fbe0643692e7ef4
DIST LZF-1.6.7.tgz 17999 BLAKE2B c7ee3049d7bcc862a400edf56e19745667052c32b2d3faaa26cb55f811e6721b7140446e676467fa5cee3ea87a751b6b0a2a9c6df203227d1bd29f31842e8514 SHA512 920a7d3bd0f0c9f1019a3180e38482ead24610a4a235d967d1f4010101e6f777a2450d517f2d3440edb45bb6a7f6d1012124b1b59aa7c34f9a17fdc93613acab
DIST LZF-1.6.8.tgz 18071 BLAKE2B 83a12c44c02145baac75bc7b5172b09a6a15d4d02852f25d56ea97cf58a83709d59d56cb12be7df510fd687fd5ade760939527ee8151d3ecdb4407b7be2022e3 SHA512 c35543a40b2b44da4bd60e3142ba6ecf33e3460a8ea9f4f7fe6cdc4d728048593b33c423195d58707355975d655f614249642aff2d9b810af0e6a34d42fa1c43

@ -0,0 +1,19 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PHP_EXT_NAME="lzf"
PHP_EXT_PECL_PKG="LZF"
PHP_EXT_INI="yes"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6 php7-1 php7-2 php7-3 php7-4"
inherit php-ext-pecl-r3
KEYWORDS="~amd64 ~x86"
DESCRIPTION="This package handles LZF de/compression"
LICENSE="PHP-3"
SLOT="0"
IUSE=""

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save