summaryrefslogtreecommitdiff
path: root/app-metrics
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /app-metrics
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'app-metrics')
-rw-r--r--app-metrics/alertmanager/Manifest6
-rw-r--r--app-metrics/alertmanager/alertmanager-0.24.0.ebuild46
-rw-r--r--app-metrics/alertmanager/alertmanager-0.26.0.ebuild46
-rw-r--r--app-metrics/alertmanager/alertmanager-0.28.0.ebuild48
-rw-r--r--app-metrics/alertmanager/files/alertmanager.confd2
-rw-r--r--app-metrics/alertmanager/files/alertmanager.initd28
-rw-r--r--app-metrics/alertmanager/files/alertmanager.service28
-rw-r--r--app-metrics/alertmanager/metadata.xml12
-rw-r--r--app-metrics/bind_exporter/Manifest2
-rw-r--r--app-metrics/bind_exporter/bind_exporter-0.8.0.ebuild64
-rw-r--r--app-metrics/bind_exporter/files/bind_exporter.confd2
-rw-r--r--app-metrics/bind_exporter/files/bind_exporter.initd19
-rw-r--r--app-metrics/bind_exporter/files/bind_exporter.service11
-rw-r--r--app-metrics/bind_exporter/metadata.xml9
-rw-r--r--app-metrics/blackbox_exporter/Manifest4
-rw-r--r--app-metrics/blackbox_exporter/blackbox_exporter-0.24.0.ebuild55
-rw-r--r--app-metrics/blackbox_exporter/blackbox_exporter-0.25.0.ebuild55
-rw-r--r--app-metrics/blackbox_exporter/files/blackbox_exporter.confd2
-rw-r--r--app-metrics/blackbox_exporter/files/blackbox_exporter.initd19
-rw-r--r--app-metrics/blackbox_exporter/files/blackbox_exporter.logrotated7
-rw-r--r--app-metrics/blackbox_exporter/files/blackbox_exporter.service29
-rw-r--r--app-metrics/blackbox_exporter/metadata.xml12
-rw-r--r--app-metrics/carbonapi-booking/Manifest2
-rw-r--r--app-metrics/carbonapi-booking/carbonapi-booking-0.3.0-r1.ebuild57
-rw-r--r--app-metrics/carbonapi-booking/carbonapi-booking-0.3.0_p20250201.ebuild58
-rw-r--r--app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-colours.patch55
-rw-r--r--app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-logfile.patch14
-rw-r--r--app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-colours.patch55
-rw-r--r--app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-logfile.patch14
-rw-r--r--app-metrics/carbonapi-booking/files/carbonapi-booking.confd8
-rw-r--r--app-metrics/carbonapi-booking/files/carbonapi-booking.initd44
-rw-r--r--app-metrics/carbonapi-booking/metadata.xml9
-rw-r--r--app-metrics/carbonapi-web/Manifest1
-rw-r--r--app-metrics/carbonapi-web/carbonapi-web-1.1.ebuild24
-rw-r--r--app-metrics/carbonapi-web/files/postinstall-en.txt12
-rw-r--r--app-metrics/carbonapi-web/metadata.xml9
-rw-r--r--app-metrics/ceph_exporter/Manifest4
-rw-r--r--app-metrics/ceph_exporter/ceph_exporter-4.1.1-r1.ebuild35
-rw-r--r--app-metrics/ceph_exporter/ceph_exporter-4.2.5.ebuild35
-rw-r--r--app-metrics/ceph_exporter/files/ceph_exporter.confd2
-rw-r--r--app-metrics/ceph_exporter/files/ceph_exporter.initd18
-rw-r--r--app-metrics/ceph_exporter/metadata.xml9
-rw-r--r--app-metrics/chrony_exporter/Manifest2
-rw-r--r--app-metrics/chrony_exporter/chrony_exporter-0.13.3.ebuild42
-rw-r--r--app-metrics/chrony_exporter/files/0.13.3-promu-config.patch22
-rw-r--r--app-metrics/chrony_exporter/files/chrony_exporter.confd2
-rw-r--r--app-metrics/chrony_exporter/files/chrony_exporter.initd17
-rw-r--r--app-metrics/chrony_exporter/metadata.xml13
-rw-r--r--app-metrics/collectd/Manifest1
-rw-r--r--app-metrics/collectd/collectd-5.12.0-r12.ebuild562
-rw-r--r--app-metrics/collectd/files/collectd-5.11.0-libsigrok-0.4+.patch157
-rw-r--r--app-metrics/collectd/files/collectd-5.12.0-clang16-configure.patch127
-rw-r--r--app-metrics/collectd/files/collectd-5.12.0-nut-c99.patch143
-rw-r--r--app-metrics/collectd/files/collectd-5.12.0-python3_11.patch33
-rw-r--r--app-metrics/collectd/files/collectd.confd-r249
-rw-r--r--app-metrics/collectd/files/collectd.initd-r371
-rw-r--r--app-metrics/collectd/files/collectd.logrotate9
-rw-r--r--app-metrics/collectd/files/collectd.tmpfile1
-rw-r--r--app-metrics/collectd/metadata.xml29
-rw-r--r--app-metrics/consul_exporter/Manifest2
-rw-r--r--app-metrics/consul_exporter/consul_exporter-0.13.0.ebuild48
-rw-r--r--app-metrics/consul_exporter/files/consul_exporter.confd3
-rw-r--r--app-metrics/consul_exporter/files/consul_exporter.initd15
-rw-r--r--app-metrics/consul_exporter/metadata.xml9
-rw-r--r--app-metrics/dnsmasq_exporter/Manifest2
-rw-r--r--app-metrics/dnsmasq_exporter/dnsmasq_exporter-0.3.0.ebuild39
-rw-r--r--app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.confd3
-rw-r--r--app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.initd15
-rw-r--r--app-metrics/dnsmasq_exporter/metadata.xml9
-rw-r--r--app-metrics/elasticsearch_exporter/Manifest4
-rw-r--r--app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.3.0.ebuild42
-rw-r--r--app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.8.0.ebuild45
-rw-r--r--app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.confd2
-rw-r--r--app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.initd19
-rw-r--r--app-metrics/elasticsearch_exporter/metadata.xml9
-rw-r--r--app-metrics/exabgp_exporter/Manifest2
-rw-r--r--app-metrics/exabgp_exporter/exabgp_exporter-1.1.3.ebuild33
-rw-r--r--app-metrics/exabgp_exporter/files/exabgp_exporter.confd2
-rw-r--r--app-metrics/exabgp_exporter/files/exabgp_exporter.initd21
-rw-r--r--app-metrics/exabgp_exporter/files/exabgp_exporter.service14
-rw-r--r--app-metrics/exabgp_exporter/files/exabgp_exporter_at.service14
-rw-r--r--app-metrics/exabgp_exporter/metadata.xml9
-rw-r--r--app-metrics/fritzbox_smarthome_exporter/Manifest2
-rw-r--r--app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.confd35
-rw-r--r--app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.initd58
-rw-r--r--app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.logrotate5
-rw-r--r--app-metrics/fritzbox_smarthome_exporter/fritzbox_smarthome_exporter-0.4.3.ebuild42
-rw-r--r--app-metrics/fritzbox_smarthome_exporter/metadata.xml12
-rw-r--r--app-metrics/fusioninventory-agent/Manifest1
-rw-r--r--app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch51
-rw-r--r--app-metrics/fusioninventory-agent/files/fusioninventory-agent.confd2
-rw-r--r--app-metrics/fusioninventory-agent/files/fusioninventory-agent.initd21
-rw-r--r--app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild57
-rw-r--r--app-metrics/fusioninventory-agent/metadata.xml9
-rw-r--r--app-metrics/github-exporter/Manifest4
-rw-r--r--app-metrics/github-exporter/files/github-exporter.confd14
-rw-r--r--app-metrics/github-exporter/files/github-exporter.initd53
-rw-r--r--app-metrics/github-exporter/github-exporter-1.0.3.ebuild39
-rw-r--r--app-metrics/github-exporter/github-exporter-1.3.1.ebuild39
-rw-r--r--app-metrics/github-exporter/metadata.xml9
-rw-r--r--app-metrics/go-carbon/Manifest2
-rw-r--r--app-metrics/go-carbon/files/go-carbon.confd8
-rw-r--r--app-metrics/go-carbon/files/go-carbon.initd44
-rw-r--r--app-metrics/go-carbon/go-carbon-0.17.3.ebuild40
-rw-r--r--app-metrics/go-carbon/go-carbon-0.18.0.ebuild40
-rw-r--r--app-metrics/go-carbon/metadata.xml9
-rw-r--r--app-metrics/grok_exporter/Manifest1
-rw-r--r--app-metrics/grok_exporter/files/grok_exporter.initd18
-rw-r--r--app-metrics/grok_exporter/grok_exporter-1.0.0_rc5.ebuild44
-rw-r--r--app-metrics/grok_exporter/metadata.xml9
-rw-r--r--app-metrics/memcached_exporter/Manifest4
-rw-r--r--app-metrics/memcached_exporter/files/memcached_exporter.confd2
-rw-r--r--app-metrics/memcached_exporter/files/memcached_exporter.initd13
-rw-r--r--app-metrics/memcached_exporter/memcached_exporter-0.10.0.ebuild44
-rw-r--r--app-metrics/memcached_exporter/memcached_exporter-0.15.0.ebuild44
-rw-r--r--app-metrics/memcached_exporter/metadata.xml9
-rw-r--r--app-metrics/mongodb_exporter/Manifest6
-rw-r--r--app-metrics/mongodb_exporter/files/mongodb_exporter-1.initd18
-rw-r--r--app-metrics/mongodb_exporter/files/mongodb_exporter.confd2
-rw-r--r--app-metrics/mongodb_exporter/files/mongodb_exporter.initd19
-rw-r--r--app-metrics/mongodb_exporter/metadata.xml9
-rw-r--r--app-metrics/mongodb_exporter/mongodb_exporter-0.43.1.ebuild50
-rw-r--r--app-metrics/mongodb_exporter/mongodb_exporter-0.47.1.ebuild57
-rw-r--r--app-metrics/mongodb_exporter/mongodb_exporter-0.51.0.ebuild60
-rw-r--r--app-metrics/mysqld_exporter/Manifest8
-rw-r--r--app-metrics/mysqld_exporter/files/mysqld_exporter-0.12.1-skip-tests.patch22
-rw-r--r--app-metrics/mysqld_exporter/files/mysqld_exporter-r1.confd26
-rw-r--r--app-metrics/mysqld_exporter/files/mysqld_exporter-r1.initd73
-rw-r--r--app-metrics/mysqld_exporter/files/mysqld_exporter.logrotate5
-rw-r--r--app-metrics/mysqld_exporter/metadata.xml8
-rw-r--r--app-metrics/mysqld_exporter/mysqld_exporter-0.14.0.ebuild93
-rw-r--r--app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20221209.ebuild93
-rw-r--r--app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20230328.ebuild87
-rw-r--r--app-metrics/mysqld_exporter/mysqld_exporter-0.18.0.ebuild65
-rw-r--r--app-metrics/nftables-exporter/Manifest4
-rw-r--r--app-metrics/nftables-exporter/files/nftables-exporter.initd15
-rw-r--r--app-metrics/nftables-exporter/metadata.xml9
-rw-r--r--app-metrics/nftables-exporter/nftables-exporter-0.2.7.ebuild45
-rw-r--r--app-metrics/nftables-exporter/nftables-exporter-0.3.1.ebuild43
-rw-r--r--app-metrics/nginx-lua-prometheus/Manifest1
-rw-r--r--app-metrics/nginx-lua-prometheus/metadata.xml9
-rw-r--r--app-metrics/nginx-lua-prometheus/nginx-lua-prometheus-0.1_pre20170610-r101.ebuild42
-rw-r--r--app-metrics/nginx-vts-exporter/Manifest2
-rw-r--r--app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.confd2
-rw-r--r--app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.initd19
-rw-r--r--app-metrics/nginx-vts-exporter/metadata.xml9
-rw-r--r--app-metrics/nginx-vts-exporter/nginx-vts-exporter-0.10.8.ebuild32
-rw-r--r--app-metrics/node_exporter/Manifest10
-rw-r--r--app-metrics/node_exporter/files/node_exporter-1.7.0.logrotate9
-rw-r--r--app-metrics/node_exporter/files/node_exporter.confd2
-rw-r--r--app-metrics/node_exporter/files/node_exporter.initd-123
-rw-r--r--app-metrics/node_exporter/metadata.xml21
-rw-r--r--app-metrics/node_exporter/node_exporter-1.10.2.ebuild81
-rw-r--r--app-metrics/node_exporter/node_exporter-1.11.1.ebuild82
-rw-r--r--app-metrics/node_exporter/node_exporter-1.8.2.ebuild72
-rw-r--r--app-metrics/node_exporter/node_exporter-1.9.0.ebuild77
-rw-r--r--app-metrics/node_exporter/node_exporter-1.9.1.ebuild77
-rw-r--r--app-metrics/node_exporter/node_exporter-9999.ebuild82
-rw-r--r--app-metrics/openvpn_exporter/Manifest2
-rw-r--r--app-metrics/openvpn_exporter/files/openvpn_exporter.confd2
-rw-r--r--app-metrics/openvpn_exporter/files/openvpn_exporter.initd19
-rw-r--r--app-metrics/openvpn_exporter/files/openvpn_exporter.logrotated7
-rw-r--r--app-metrics/openvpn_exporter/metadata.xml9
-rw-r--r--app-metrics/openvpn_exporter/openvpn_exporter-0.3.0.ebuild37
-rw-r--r--app-metrics/portage-exporter/Manifest1
-rw-r--r--app-metrics/portage-exporter/files/portage-exporter.confd26
-rw-r--r--app-metrics/portage-exporter/files/portage-exporter.initd49
-rw-r--r--app-metrics/portage-exporter/files/portage-exporter.service18
-rw-r--r--app-metrics/portage-exporter/metadata.xml11
-rw-r--r--app-metrics/portage-exporter/portage-exporter-0.1.0.ebuild24
-rw-r--r--app-metrics/postfix_exporter/Manifest2
-rw-r--r--app-metrics/postfix_exporter/files/postfix_exporter.confd9
-rw-r--r--app-metrics/postfix_exporter/files/postfix_exporter.initd19
-rw-r--r--app-metrics/postfix_exporter/files/postfix_exporter.logrotated7
-rw-r--r--app-metrics/postfix_exporter/metadata.xml9
-rw-r--r--app-metrics/postfix_exporter/postfix_exporter-0.3.0.ebuild42
-rw-r--r--app-metrics/postgres_exporter/Manifest8
-rw-r--r--app-metrics/postgres_exporter/files/postgres_exporter.confd2
-rw-r--r--app-metrics/postgres_exporter/files/postgres_exporter.initd19
-rw-r--r--app-metrics/postgres_exporter/files/postgres_exporter.service14
-rw-r--r--app-metrics/postgres_exporter/metadata.xml9
-rw-r--r--app-metrics/postgres_exporter/postgres_exporter-0.15.0.ebuild49
-rw-r--r--app-metrics/postgres_exporter/postgres_exporter-0.16.0.ebuild50
-rw-r--r--app-metrics/postgres_exporter/postgres_exporter-0.17.1.ebuild50
-rw-r--r--app-metrics/postgres_exporter/postgres_exporter-0.19.1.ebuild51
-rw-r--r--app-metrics/process-exporter/Manifest4
-rw-r--r--app-metrics/process-exporter/files/process-exporter.initd12
-rw-r--r--app-metrics/process-exporter/metadata.xml9
-rw-r--r--app-metrics/process-exporter/process-exporter-0.7.10.ebuild28
-rw-r--r--app-metrics/process-exporter/process-exporter-0.8.5.ebuild48
-rw-r--r--app-metrics/prom2json/Manifest2
-rw-r--r--app-metrics/prom2json/metadata.xml9
-rw-r--r--app-metrics/prom2json/prom2json-1.4.1.ebuild40
-rw-r--r--app-metrics/prometheus-lvm-exporter/Manifest2
-rw-r--r--app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.confd26
-rw-r--r--app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.initd49
-rw-r--r--app-metrics/prometheus-lvm-exporter/metadata.xml8
-rw-r--r--app-metrics/prometheus-lvm-exporter/prometheus-lvm-exporter-0.3.3.ebuild49
-rw-r--r--app-metrics/prometheus-podman-exporter/Manifest2
-rw-r--r--app-metrics/prometheus-podman-exporter/files/prometheus-podman-exporter-1.10.1-gentoo-systemd.patch22
-rw-r--r--app-metrics/prometheus-podman-exporter/metadata.xml24
-rw-r--r--app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.19.0.ebuild64
-rw-r--r--app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.20.0.ebuild64
-rw-r--r--app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild64
-rw-r--r--app-metrics/prometheus/Manifest12
-rw-r--r--app-metrics/prometheus/files/prometheus-3.2.confd22
-rw-r--r--app-metrics/prometheus/files/prometheus-3.2.initd37
-rw-r--r--app-metrics/prometheus/files/prometheus-3.2.service17
-rw-r--r--app-metrics/prometheus/files/prometheus-3.confd25
-rw-r--r--app-metrics/prometheus/files/prometheus-3.initd40
-rw-r--r--app-metrics/prometheus/files/prometheus-3.service20
-rw-r--r--app-metrics/prometheus/files/prometheus.confd26
-rw-r--r--app-metrics/prometheus/files/prometheus.initd45
-rw-r--r--app-metrics/prometheus/files/prometheus.service22
-rw-r--r--app-metrics/prometheus/metadata.xml12
-rw-r--r--app-metrics/prometheus/prometheus-2.52.0.ebuild72
-rw-r--r--app-metrics/prometheus/prometheus-3.1.0.ebuild63
-rw-r--r--app-metrics/prometheus/prometheus-3.2.1.ebuild79
-rw-r--r--app-metrics/prometheus/prometheus-3.4.1.ebuild79
-rw-r--r--app-metrics/pushgateway/Manifest4
-rw-r--r--app-metrics/pushgateway/files/pushgateway-1.confd14
-rw-r--r--app-metrics/pushgateway/files/pushgateway-1.service16
-rw-r--r--app-metrics/pushgateway/files/pushgateway-2.initd18
-rw-r--r--app-metrics/pushgateway/files/pushgateway.logrotated7
-rw-r--r--app-metrics/pushgateway/metadata.xml9
-rw-r--r--app-metrics/pushgateway/pushgateway-1.11.1.ebuild52
-rw-r--r--app-metrics/pushgateway/pushgateway-1.11.2.ebuild54
-rw-r--r--app-metrics/rabbitmq_exporter/Manifest2
-rw-r--r--app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.confd6
-rw-r--r--app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.initd79
-rw-r--r--app-metrics/rabbitmq_exporter/metadata.xml9
-rw-r--r--app-metrics/rabbitmq_exporter/rabbitmq_exporter-1.0.0.ebuild36
-rw-r--r--app-metrics/redis_exporter/Manifest6
-rw-r--r--app-metrics/redis_exporter/files/redis_exporter.confd30
-rw-r--r--app-metrics/redis_exporter/files/redis_exporter.initd18
-rw-r--r--app-metrics/redis_exporter/files/redis_exporter.logrotated7
-rw-r--r--app-metrics/redis_exporter/files/redis_exporter.service16
-rw-r--r--app-metrics/redis_exporter/metadata.xml9
-rw-r--r--app-metrics/redis_exporter/redis_exporter-1.61.0.ebuild54
-rw-r--r--app-metrics/redis_exporter/redis_exporter-1.67.0.ebuild59
-rw-r--r--app-metrics/redis_exporter/redis_exporter-1.83.0.ebuild86
-rw-r--r--app-metrics/smartctl_exporter/Manifest3
-rw-r--r--app-metrics/smartctl_exporter/files/smartctl_exporter.confd2
-rw-r--r--app-metrics/smartctl_exporter/files/smartctl_exporter.initd23
-rw-r--r--app-metrics/smartctl_exporter/files/smartctl_exporter.service22
-rw-r--r--app-metrics/smartctl_exporter/metadata.xml8
-rw-r--r--app-metrics/smartctl_exporter/smartctl_exporter-0.12.0-r1.ebuild65
-rw-r--r--app-metrics/snmp_exporter/Manifest4
-rw-r--r--app-metrics/snmp_exporter/files/snmp_exporter.confd2
-rw-r--r--app-metrics/snmp_exporter/files/snmp_exporter.initd19
-rw-r--r--app-metrics/snmp_exporter/files/snmp_exporter.logrotated7
-rw-r--r--app-metrics/snmp_exporter/metadata.xml9
-rw-r--r--app-metrics/snmp_exporter/snmp_exporter-0.24.1.ebuild52
-rw-r--r--app-metrics/snmp_exporter/snmp_exporter-0.27.0.ebuild54
-rw-r--r--app-metrics/unbound-telemetry/Manifest110
-rw-r--r--app-metrics/unbound-telemetry/files/confd7
-rw-r--r--app-metrics/unbound-telemetry/files/initd17
-rw-r--r--app-metrics/unbound-telemetry/metadata.xml9
-rw-r--r--app-metrics/unbound-telemetry/unbound-telemetry-0.1.0_pre20210920-r1.ebuild159
259 files changed, 7670 insertions, 0 deletions
diff --git a/app-metrics/alertmanager/Manifest b/app-metrics/alertmanager/Manifest
new file mode 100644
index 000000000000..45654f586dfb
--- /dev/null
+++ b/app-metrics/alertmanager/Manifest
@@ -0,0 +1,6 @@
+DIST alertmanager-0.24.0-deps.tar.xz 194175652 BLAKE2B 01095b5a4f6edee4c30f97f2ed3f949149885118532d421da8ac87fdee58cc65278ad9cebd07defb67006ff4acc1043505017e8fcbdf1d989d054584aeb21c14 SHA512 8170c3f27691b5a59f2e9a1d7f4cfb323cd0137eb4a604f224012e9a0065dca956e2d9ee9e138cc5061b561bcdc2d8329dbbb0beafa18274eaed81cbdd73fe97
+DIST alertmanager-0.24.0.tar.gz 2135257 BLAKE2B 5726595a14da5e228cd5704dc2aa3518a86d1e07ff6ce886ddcf3b8621d3112d10899c6fa6df3004b2a46017d07f28587ac815e8f9ef03aff3e8bfcee793e96f SHA512 97147f15c8879eacc2744a11a1db0edd04f532650b3e8f397e8ab6f7f4868203f212d1c33f596aa52876e190db84247a60b39b25a72fbceabcc5b3efae0eb920
+DIST alertmanager-0.26.0-deps.tar.xz 93946412 BLAKE2B 65d0b53bdd011c12f5a78daa046e8d8e27a43f66027eaa764e6a758208ffad8c1cac890fc2a5fe8b972186d313f8f7fd1028ea0528d2e1719e0bdafaf5467dc7 SHA512 f85567c2d2c698dcf58a0669e5b501fecddc8eb4d2248d9ddc0dd3a947c0bcdeef230592f3700ee0c181823338bae2463dc064c8843f414609ba2952155b33f7
+DIST alertmanager-0.26.0.tar.gz 2176877 BLAKE2B bb22c57c39dcb00f08f4e24d09f07fce3f59e1ce31cde8b439bb44fd7c6349ab3ebf5371db9bec97574836ed941ba57f5c69d6f5857062a365fda01618d1c594 SHA512 b5568f0cebe487b5c81b56febad30bbe84918ed0e3e8be2ecd7820d13d7c5373b17e00238a9817072c59040a5618307811280ac00ef6efa3e3439f9f3378f464
+DIST alertmanager-0.28.0-deps.tar.xz 69823876 BLAKE2B 679ead2f3e19c2e49bad4c9eaf1eef79139cc35ef41ee6d7c50b4de4b0b2956a2a07f41cf06198af30a5c671b8c22ac2e4364492b0e63f1cea2d949b25223912 SHA512 694e009aa76fd301a9521eb673c6c6785097543218ee70566a387d8a1c657959cad1e66afc159b446c8d3ff9d555439d5e0f2569f3fc6d6ed7143060c790c7d7
+DIST alertmanager-0.28.0.tar.gz 2908067 BLAKE2B 9ca40011c306c07615cd975b6102a6f02f6c8d6310fc9e454e94c01b46b0b408dd863143171aab6806df70d8a9a0bddde4257c5fe55722b85622965a605017f2 SHA512 3da9aa60ff12240113444beaea53bdeee825f049543e26f8bca276e01952ce4cd63f18b893d5bff15af4d8cb86a0820a1f1405ebffc61c2c4dcf0ea019f91859
diff --git a/app-metrics/alertmanager/alertmanager-0.24.0.ebuild b/app-metrics/alertmanager/alertmanager-0.24.0.ebuild
new file mode 100644
index 000000000000..3a3cce2d4491
--- /dev/null
+++ b/app-metrics/alertmanager/alertmanager-0.24.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+GIT_COMMIT=f484b17f
+MY_PV="${PV/_rc/-rc.}"
+
+DESCRIPTION="Alertmanager for alerts sent by client applications such as Prometheus"
+HOMEPAGE="https://github.com/prometheus/alertmanager"
+SRC_URI="https://github.com/prometheus/alertmanager/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="amd64"
+
+RESTRICT+=" test"
+
+BDEPEND="dev-util/promu"
+
+DEPEND="
+ acct-group/alertmanager
+ acct-user/alertmanager"
+ RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ sed -i -e "s/{{.Revision}}/${GIT_COMMIT}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CHANGELOG}.md
+ insinto /etc/alertmanager/
+ newins doc/examples/simple.yml config.yml
+ keepdir /var/lib/alertmanager /var/log/alertmanager
+ systemd_dounit "${FILESDIR}"/alertmanager.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ fowners ${PN}:${PN} /etc/alertmanager /var/lib/alertmanager /var/log/alertmanager
+}
diff --git a/app-metrics/alertmanager/alertmanager-0.26.0.ebuild b/app-metrics/alertmanager/alertmanager-0.26.0.ebuild
new file mode 100644
index 000000000000..27e863cd07fa
--- /dev/null
+++ b/app-metrics/alertmanager/alertmanager-0.26.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+GIT_COMMIT=d7b4f0c7
+MY_PV="${PV/_rc/-rc.}"
+
+DESCRIPTION="Alertmanager for alerts sent by client applications such as Prometheus"
+HOMEPAGE="https://github.com/prometheus/alertmanager"
+SRC_URI="https://github.com/prometheus/alertmanager/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+
+RESTRICT+=" test"
+
+BDEPEND="dev-util/promu"
+
+DEPEND="
+ acct-group/alertmanager
+ acct-user/alertmanager"
+ RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ sed -i -e "s/{{.Revision}}/${GIT_COMMIT}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CHANGELOG}.md
+ insinto /etc/alertmanager/
+ newins doc/examples/simple.yml config.yml
+ keepdir /var/lib/alertmanager /var/log/alertmanager
+ systemd_dounit "${FILESDIR}"/alertmanager.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ fowners ${PN}:${PN} /etc/alertmanager /var/lib/alertmanager /var/log/alertmanager
+}
diff --git a/app-metrics/alertmanager/alertmanager-0.28.0.ebuild b/app-metrics/alertmanager/alertmanager-0.28.0.ebuild
new file mode 100644
index 000000000000..0b641f94c07a
--- /dev/null
+++ b/app-metrics/alertmanager/alertmanager-0.28.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+GIT_COMMIT=4ce04fb0
+MY_PV="${PV/_rc/-rc.}"
+
+DESCRIPTION="Alertmanager for alerts sent by client applications such as Prometheus"
+HOMEPAGE="https://github.com/prometheus/alertmanager"
+SRC_URI="https://github.com/prometheus/alertmanager/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+
+RESTRICT+=" test"
+
+BDEPEND="dev-util/promu"
+
+DEPEND="
+ acct-group/alertmanager
+ acct-user/alertmanager"
+ RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ sed -i -e "s/{{.Revision}}/${GIT_COMMIT}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CHANGELOG}.md
+ insinto /etc/alertmanager/
+ newins doc/examples/simple.yml config.yml
+ keepdir /var/lib/alertmanager /var/log/alertmanager
+ systemd_dounit "${FILESDIR}"/alertmanager.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ fowners ${PN}:${PN} /etc/alertmanager /var/lib/alertmanager /var/log/alertmanager
+}
diff --git a/app-metrics/alertmanager/files/alertmanager.confd b/app-metrics/alertmanager/files/alertmanager.confd
new file mode 100644
index 000000000000..57c769e41a76
--- /dev/null
+++ b/app-metrics/alertmanager/files/alertmanager.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus alertmanager
+command_args="--config.file=/etc/alertmanager/config.yml --storage.path=/var/lib/alertmanager"
diff --git a/app-metrics/alertmanager/files/alertmanager.initd b/app-metrics/alertmanager/files/alertmanager.initd
new file mode 100644
index 000000000000..5d625ac57bb8
--- /dev/null
+++ b/app-metrics/alertmanager/files/alertmanager.initd
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus alertmanager"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/alertmanager"
+command_args="${command_args:---config.file=/etc/alertmanager/config.yml --storage.path=/var/lib/alertmanager}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/alertmanager/${RC_SVCNAME}.log \
+ --stderr /var/log/alertmanager/${RC_SVCNAME}.log"
+
+extra_started_commands="reload"
+
+depend() {
+ after net
+}
+
+reload() {
+ ebegin "Reloading ${SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $? "Failed to stop ${SVCNAME}"
+}
+
diff --git a/app-metrics/alertmanager/files/alertmanager.service b/app-metrics/alertmanager/files/alertmanager.service
new file mode 100644
index 000000000000..b97976dd8dc8
--- /dev/null
+++ b/app-metrics/alertmanager/files/alertmanager.service
@@ -0,0 +1,28 @@
+[Unit]
+Description=Alertmanager for prometheus
+Documentation=https://prometheus.io/docs/alerting/alertmanager/
+Requires=network-online.target
+After=network-online.target
+
+[Service]
+User=alertmanager
+ExecStart=/usr/bin/alertmanager --cluster.listen-address= --config.file=/etc/alertmanager/config.yml --storage.path=/var/lib/alertmanager/
+ExecReload=/bin/kill -HUP $MAINPID
+
+NoNewPrivileges=true
+ProtectHome=true
+ProtectSystem=full
+ProtectHostname=true
+ProtectControlGroups=true
+ProtectKernelModules=true
+ProtectKernelTunables=true
+LockPersonality=true
+PrivateTmp=true
+PrivateDevices=True
+RestrictRealtime=true
+CapabilityBoundingSet=
+SystemCallArchitectures=native
+MemoryDenyWriteExecute=true
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/alertmanager/metadata.xml b/app-metrics/alertmanager/metadata.xml
new file mode 100644
index 000000000000..654e042edf6e
--- /dev/null
+++ b/app-metrics/alertmanager/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:prometheus:alertmanager</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/bind_exporter/Manifest b/app-metrics/bind_exporter/Manifest
new file mode 100644
index 000000000000..119452926740
--- /dev/null
+++ b/app-metrics/bind_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST bind_exporter-0.8.0-deps.tar.xz 40418500 BLAKE2B 68150ebd654de67b00ecf75acb846dca37a647149b1a53c9fc8d1b26ea6d0807d1690d721cb14c9f4411cc592454465664e7754e822934a302e08c81d7c57a4c SHA512 a6540110d1bba9c08caa4c0f9682a22e29a0058a38adfd0984f97cb214ff245f801cbc01fd962029493329679dbb955e1f1f498b687c8a750080434fa7ab7686
+DIST bind_exporter-0.8.0.tar.gz 43098 BLAKE2B d6a1ecf0cd42509aac8f8755c55f9a405d549a4de60ae45ebdf9933b0be73986e24fbffd3b255445c4121ca762e672e76d0629910c6e116e245136ba16e436b5 SHA512 2b54ceed99ad386d699961a821bd0f1061f487536029cfa5dd1192c9cb6fc485bbf4a82548c8dcd70c602e7e38e905cbe24968649923eede77be7dc7aaf05cc6
diff --git a/app-metrics/bind_exporter/bind_exporter-0.8.0.ebuild b/app-metrics/bind_exporter/bind_exporter-0.8.0.ebuild
new file mode 100644
index 000000000000..a04e9f6b08b3
--- /dev/null
+++ b/app-metrics/bind_exporter/bind_exporter-0.8.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo go-module systemd
+
+GIT_COMMIT=5cc1b62b9c866184193007a0f7ec3b2eb31460bf
+
+DESCRIPTION="Prometheus exporter for BIND"
+HOMEPAGE="https://github.com/prometheus-community/bind_exporter"
+SRC_URI="
+ https://github.com/prometheus-community/bind_exporter/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz
+"
+SRC_URI+=" https://dev.gentoo.org/~arthurzam/distfiles/app-metrics/${PN}/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="amd64"
+
+DEPEND="
+ acct-group/bind_exporter
+ acct-user/bind_exporter
+"
+RDEPEND="${DEPEND}"
+BDEPEND="dev-util/promu"
+
+src_prepare() {
+ default
+ sed -i .promu.yml -e "s/{{.Revision}}/${GIT_COMMIT}/" || die
+}
+
+src_compile() {
+ mkdir -p bin || die
+ edo promu build -v --prefix bin
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dobin bin/${PN}
+ dodoc {README,CHANGELOG}.md
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
+
+pkg_postinst() {
+ elog "Make sure BIND was built with libxml2 support. You can check with the"
+ elog "following command: named -V | grep libxml2."
+ elog "Configure BIND to open a statistics channel. It's recommended to run"
+ elog "the bind_exporter next to BIND, so it's only necessary to open a port"
+ elog "locally."
+ elog ""
+ elog "statistics-channels {"
+ elog "inet 127.0.0.1 port 8053 allow { 127.0.0.1; };"
+ elog "};"
+}
diff --git a/app-metrics/bind_exporter/files/bind_exporter.confd b/app-metrics/bind_exporter/files/bind_exporter.confd
new file mode 100644
index 000000000000..e1cc826703e4
--- /dev/null
+++ b/app-metrics/bind_exporter/files/bind_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus bind exporter
+command_args=""
diff --git a/app-metrics/bind_exporter/files/bind_exporter.initd b/app-metrics/bind_exporter/files/bind_exporter.initd
new file mode 100644
index 000000000000..1167b2430573
--- /dev/null
+++ b/app-metrics/bind_exporter/files/bind_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus bind exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/bind_exporter"
+command_args="${command_args:-}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/bind_exporter/files/bind_exporter.service b/app-metrics/bind_exporter/files/bind_exporter.service
new file mode 100644
index 000000000000..ad2a237a061a
--- /dev/null
+++ b/app-metrics/bind_exporter/files/bind_exporter.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Bind Exporter
+Documentation="https://github.com/prometheus-community/bind_exporter"
+
+[Service]
+User=bind_exporter
+EnvironmentFile=/etc/sysconfig/bind_exporter
+ExecStart=/usr/sbin/bind_exporter $OPTIONS
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/bind_exporter/metadata.xml b/app-metrics/bind_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/bind_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/blackbox_exporter/Manifest b/app-metrics/blackbox_exporter/Manifest
new file mode 100644
index 000000000000..93da8ebf138b
--- /dev/null
+++ b/app-metrics/blackbox_exporter/Manifest
@@ -0,0 +1,4 @@
+DIST blackbox_exporter-0.24.0-deps.tar.xz 44271112 BLAKE2B acda81de9f45e7558c554566cef767c25ba59788ff31859bca16bb6bb8e64a8e7405969482ce96d64ee7df425264a253b6ca5364b91795b77a785d7d304a1964 SHA512 21e2c709ee44d4aedf796fd9a8d2eccd884978ccd770e1776653e7c5cc16a885f3f985b59705f4862d71520b9e78bce7d7fdb876531c27ccf8d9cf13da14febd
+DIST blackbox_exporter-0.24.0.tar.gz 69061 BLAKE2B a82137bfe8b911468ec05360f69a612e3bf2bb4094ce0d44b7499345484159beac06fc0d7f657ff4982b839d2d90759c04590eea1f3192a1e84d3dfb9a3ccfa8 SHA512 0c2c19d5a44465838d17c46318804416d32ed229c9d882d064559c2fec41d82029d0f5b7e5c8e6fb6e3473c41b53ae2a4a6c6e65ffacac3afe4263a48c698c29
+DIST blackbox_exporter-0.25.0-deps.tar.xz 13647408 BLAKE2B 2f1f59eb2019931748632cc2d721bf2b69e885709432720328d02ef8ab738366b2a35816d742e8548167705ca7ab29e5f6ae0f1fba4a47c59ec975e5d891bb7c SHA512 dfc829910424067b7cbd1be5357f5a0fe51b1113d9928755689dc0857bb06b2ed68e3eda879ea7b5a82d45117646005cd3aac0e9b8bd91a917b797f7daa88ca0
+DIST blackbox_exporter-0.25.0.tar.gz 71065 BLAKE2B fccbd67ca02ab9e491974616348179ff35a30dcdfdab1ff252b2691743c7992bf29fba7802c2f8ebcb6d4c42fa8724e520b7ca05835b32ada5d11630b1c93130 SHA512 86edb5c6aac213c5d5821ee58233a72043ac6abe5c5b2a8695f33160127d7126ab27de1d83fdd99d3053447efae41d2ba260bff7c84687dcea30df6439970630
diff --git a/app-metrics/blackbox_exporter/blackbox_exporter-0.24.0.ebuild b/app-metrics/blackbox_exporter/blackbox_exporter-0.24.0.ebuild
new file mode 100644
index 000000000000..75990f9a088e
--- /dev/null
+++ b/app-metrics/blackbox_exporter/blackbox_exporter-0.24.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit fcaps go-module systemd
+GIT_COMMIT=0dd0455
+MY_PV="v${PV/_rc/-rc.}"
+
+DESCRIPTION="Prometheus exporter for blackbox probing via HTTP, HTTPS, DNS, TCP and ICMP"
+HOMEPAGE="https://github.com/prometheus/blackbox_exporter"
+SRC_URI="https://github.com/prometheus/blackbox_exporter/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~ajak/dist/${CATEGORY}/${PN}/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="amd64"
+
+COMMON_DEPEND="acct-group/blackbox_exporter
+ acct-user/blackbox_exporter"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND="dev-util/promu"
+
+FILECAPS=(
+ cap_net_raw usr/bin/blackbox_exporter
+)
+
+# tests require the network
+RESTRICT+=" test "
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/Head/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ newbin bin/${P} ${PN}
+ dodoc {README,CHANGELOG,CONFIGURATION}.md blackbox.yml
+ insinto /etc/blackbox_exporter
+ newins example.yml blackbox.yml
+ keepdir /var/lib/blackbox_exporter /var/log/blackbox_exporter
+ systemd_dounit "${FILESDIR}"/blackbox_exporter.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+ fowners ${PN}:${PN} /var/lib/blackbox_exporter /var/log/blackbox_exporter
+}
diff --git a/app-metrics/blackbox_exporter/blackbox_exporter-0.25.0.ebuild b/app-metrics/blackbox_exporter/blackbox_exporter-0.25.0.ebuild
new file mode 100644
index 000000000000..86d760ce08c0
--- /dev/null
+++ b/app-metrics/blackbox_exporter/blackbox_exporter-0.25.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit fcaps go-module systemd
+GIT_COMMIT=ef3ff4f
+MY_PV="v${PV/_rc/-rc.}"
+
+DESCRIPTION="Prometheus exporter for blackbox probing via HTTP, HTTPS, DNS, TCP and ICMP"
+HOMEPAGE="https://github.com/prometheus/blackbox_exporter"
+SRC_URI="https://github.com/prometheus/blackbox_exporter/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="amd64"
+
+COMMON_DEPEND="acct-group/blackbox_exporter
+ acct-user/blackbox_exporter"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND="dev-util/promu"
+
+FILECAPS=(
+ cap_net_raw usr/bin/blackbox_exporter
+)
+
+# tests require the network
+RESTRICT+=" test "
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/Head/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ newbin bin/${P} ${PN}
+ dodoc {README,CHANGELOG,CONFIGURATION}.md blackbox.yml
+ insinto /etc/blackbox_exporter
+ newins example.yml blackbox.yml
+ keepdir /var/lib/blackbox_exporter /var/log/blackbox_exporter
+ systemd_dounit "${FILESDIR}"/blackbox_exporter.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+ fowners ${PN}:${PN} /var/lib/blackbox_exporter /var/log/blackbox_exporter
+}
diff --git a/app-metrics/blackbox_exporter/files/blackbox_exporter.confd b/app-metrics/blackbox_exporter/files/blackbox_exporter.confd
new file mode 100644
index 000000000000..39887477dff9
--- /dev/null
+++ b/app-metrics/blackbox_exporter/files/blackbox_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus blackbox exporter
+command_args="--config.file=/etc/blackbox_exporter/blackbox.yml"
diff --git a/app-metrics/blackbox_exporter/files/blackbox_exporter.initd b/app-metrics/blackbox_exporter/files/blackbox_exporter.initd
new file mode 100644
index 000000000000..ab001d41abe9
--- /dev/null
+++ b/app-metrics/blackbox_exporter/files/blackbox_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus blackbox exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/blackbox_exporter"
+command_args="${command_args:---config.file=/etc/blackbox_exporter/blackbox.yml}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/blackbox_exporter/${RC_SVCNAME}.log \
+ --stderr /var/log/blackbox_exporter/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/blackbox_exporter/files/blackbox_exporter.logrotated b/app-metrics/blackbox_exporter/files/blackbox_exporter.logrotated
new file mode 100644
index 000000000000..03eb13a13873
--- /dev/null
+++ b/app-metrics/blackbox_exporter/files/blackbox_exporter.logrotated
@@ -0,0 +1,7 @@
+/var/log/blackbox_exporter/blackbox_exporter.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/app-metrics/blackbox_exporter/files/blackbox_exporter.service b/app-metrics/blackbox_exporter/files/blackbox_exporter.service
new file mode 100644
index 000000000000..a29ee2b7c24a
--- /dev/null
+++ b/app-metrics/blackbox_exporter/files/blackbox_exporter.service
@@ -0,0 +1,29 @@
+[Unit]
+Description=Prometheus blackbox Exporter
+After=network.target
+
+[Service]
+User=blackbox_exporter
+Group=blackbox_exporter
+ExecStart=/usr/bin/blackbox_exporter --config.file="/etc/blackbox_exporter/blackbox.yml"
+ExecReload=/bin/kill -HUP $MAINPID
+DynamicUser=true
+
+NoNewPrivileges=true
+ProtectSystem=full
+ProtectKernelModules=true
+ProtectKernelTunables=true
+PrivateTmp=true
+LockPersonality=true
+ProtectHostname=true
+ProtectHome=true
+ProtectControlGroups=true
+ProtectKernelLogs=true
+PrivateDevices=true
+RestrictRealtime=true
+CapabilityBoundingSet=
+MemoryDenyWriteExecute=true
+CapabilityBoundingSet=CAP_NET_RAW
+AmbientCapabilities=CAP_NET_RAW
+
+[Install]
diff --git a/app-metrics/blackbox_exporter/metadata.xml b/app-metrics/blackbox_exporter/metadata.xml
new file mode 100644
index 000000000000..b7b884d552f7
--- /dev/null
+++ b/app-metrics/blackbox_exporter/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:prometheus:blackbox_exporter</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/carbonapi-booking/Manifest b/app-metrics/carbonapi-booking/Manifest
new file mode 100644
index 000000000000..62f1090c5598
--- /dev/null
+++ b/app-metrics/carbonapi-booking/Manifest
@@ -0,0 +1,2 @@
+DIST carbonapi-booking-0.3.0.tar.gz 1395080 BLAKE2B e5ebe20a4833f17919f0a14e091b06b5270d7dd8880fa87600454ac33b7df7600d1428f0b2e06c65a1a36796e2eb026e8c47b98444dce168cec0e965ebee9d69 SHA512 327af89fd86661ccca9d7250e70b66f03089841b20e3c51128bcbb835a91d553d952928d991424f9bbe1fea235cd9e6242784d8cbd828725ba5b2cfb64328487
+DIST carbonapi-booking-0.3.0_p20250201.tar.gz 4408797 BLAKE2B 617012a5ff6387bf0730a14774297794db1d72be40cef2a9aa038f8dcfc40c9f623e7436921f73e27c26a8dcdfbb92cd794ca2390e94a942b69f0f9c69499b1a SHA512 16cb94f644e2d3e84cafaf005a3aab8b48b076468ddee7ea65a353438a693d254e4d6e68816b2fc78dce57e9b67f08eda4b896cf6cfe2505a7fbc932600840f8
diff --git a/app-metrics/carbonapi-booking/carbonapi-booking-0.3.0-r1.ebuild b/app-metrics/carbonapi-booking/carbonapi-booking-0.3.0-r1.ebuild
new file mode 100644
index 000000000000..cb8dd0c332a6
--- /dev/null
+++ b/app-metrics/carbonapi-booking/carbonapi-booking-0.3.0-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+MY_PN=${PN%-booking}
+DESCRIPTION="High-performance Graphite front-end, Booking.com fork"
+HOMEPAGE="https://github.com/bookingcom/carbonapi"
+SRC_URI="https://github.com/bookingcom/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ app-arch/bzip2
+ dev-libs/expat
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/libpng
+ x11-libs/cairo
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libxcb
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXrender
+ x11-libs/pixman
+"
+RDEPEND="${DEPEND}
+ acct-group/carbon
+ acct-user/carbon"
+
+src_prepare() {
+ export VERSION="gentoo-${PVR}"
+
+ # bug 904051: disable data-race detection, conflicts with
+ # go-module's -buildmode=pie
+ sed -i -e 's/ -race / /' Makefile || die
+
+ eapply "${FILESDIR}"/${P}-logfile.patch
+ eapply "${FILESDIR}"/${P}-colours.patch
+
+ eapply_user
+}
+
+src_install() {
+ insinto /etc/carbonapi
+ doins -r "${S}"/config/*
+ dobin carbonapi carbonzipper
+
+ newinitd "${FILESDIR}"/${PN}.initd carbonapi
+ newconfd "${FILESDIR}"/${PN}.confd carbonapi
+}
diff --git a/app-metrics/carbonapi-booking/carbonapi-booking-0.3.0_p20250201.ebuild b/app-metrics/carbonapi-booking/carbonapi-booking-0.3.0_p20250201.ebuild
new file mode 100644
index 000000000000..65b45b2d0e0f
--- /dev/null
+++ b/app-metrics/carbonapi-booking/carbonapi-booking-0.3.0_p20250201.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+COMMIT=8881b346c8579862a34c4ab46314501117e339dc
+MY_PN=${PN%-booking}
+DESCRIPTION="High-performance Graphite front-end, Booking.com fork"
+HOMEPAGE="https://github.com/bookingcom/carbonapi"
+SRC_URI="https://github.com/bookingcom/carbonapi/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${MY_PN}-${COMMIT}"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ app-arch/bzip2
+ dev-libs/expat
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/libpng
+ x11-libs/cairo[X]
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libxcb
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXrender
+ x11-libs/pixman
+"
+RDEPEND="${DEPEND}
+ acct-group/carbon
+ acct-user/carbon"
+
+src_prepare() {
+ export VERSION="gentoo-${PVR}"
+
+ # bug 904051: disable data-race detection, conflicts with
+ # go-module's -buildmode=pie
+ sed -i -e 's/ -race / /' Makefile || die
+
+ eapply "${FILESDIR}"/${P}-logfile.patch
+ eapply "${FILESDIR}"/${P}-colours.patch
+
+ eapply_user
+}
+
+src_install() {
+ insinto /etc/carbonapi
+ doins -r "${S}"/config/*
+ dobin carbonapi
+
+ newinitd "${FILESDIR}"/${PN}.initd carbonapi
+ newconfd "${FILESDIR}"/${PN}.confd carbonapi
+}
diff --git a/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-colours.patch b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-colours.patch
new file mode 100644
index 000000000000..6fbbeeb181cb
--- /dev/null
+++ b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-colours.patch
@@ -0,0 +1,55 @@
+use colouring defaults from graphite-web-1.10
+
+--- carbonapi-0.3.0/expr/functions/cairo/png/picture_params.go
++++ carbonapi-0.3.0/expr/functions/cairo/png/picture_params.go
+@@ -351,10 +351,10 @@
+ Height: 250,
+ Margin: 10,
+ LogBase: 0,
+- FgColor: "white",
+- BgColor: "black",
+- MajorLine: "rose",
+- MinorLine: "grey",
++ FgColor: "black",
++ BgColor: "white",
++ MajorLine: "grey",
++ MinorLine: "rose",
+ FontName: "Sans",
+ FontSize: 10,
+ FontBold: FontWeightNormal,
+@@ -414,8 +414,8 @@
+ LeftDashed: false,
+ LeftColor: "",
+
+- MajorGridLineColor: "white",
+- MinorGridLineColor: "grey",
++ MajorGridLineColor: "grey",
++ MinorGridLineColor: "rose",
+ }
+
+ var templates = map[string]PictureParams{
+@@ -424,10 +424,10 @@
+ Height: 250,
+ Margin: 10,
+ LogBase: 0,
+- FgColor: "white",
+- BgColor: "black",
+- MajorLine: "rose",
+- MinorLine: "grey",
++ FgColor: "black",
++ BgColor: "white",
++ MajorLine: "grey",
++ MinorLine: "rose",
+ FontName: "Sans",
+ FontSize: 10,
+ FontBold: FontWeightNormal,
+@@ -487,7 +487,7 @@
+ LeftDashed: false,
+ LeftColor: "",
+
+- MajorGridLineColor: "white",
+- MinorGridLineColor: "grey",
++ MajorGridLineColor: "grey",
++ MinorGridLineColor: "rose",
+ },
+ }
diff --git a/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-logfile.patch b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-logfile.patch
new file mode 100644
index 000000000000..5e1015cf67dd
--- /dev/null
+++ b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0-logfile.patch
@@ -0,0 +1,14 @@
+- don't log to stdout
+- change log to be under subdir so ebuild can manage its permissions
+
+--- carbonapi-0.3.0/config/carbonapi.yaml
++++ carbonapi-0.3.0/config/carbonapi.yaml
+@@ -130,7 +130,7 @@
+ - X-Real-Ip
+ - X-Webauth-User
+ loggerConfig:
+- outputPaths: ["stdout", "/var/log/carbonapi.log"]
++ outputPaths: ["/var/log/carbonapi/carbonapi.log"]
+ level: "info"
+ encoding: "json"
+
diff --git a/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-colours.patch b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-colours.patch
new file mode 100644
index 000000000000..7726853e17ab
--- /dev/null
+++ b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-colours.patch
@@ -0,0 +1,55 @@
+use colouring defaults from graphite-web-1.10
+
+--- carbonapi-0.3.0/pkg/expr/functions/cairo/png/picture_params.go
++++ carbonapi-0.3.0/pkg/expr/functions/cairo/png/picture_params.go
+@@ -351,10 +351,10 @@
+ Height: 250,
+ Margin: 10,
+ LogBase: 0,
+- FgColor: "white",
+- BgColor: "black",
+- MajorLine: "rose",
+- MinorLine: "grey",
++ FgColor: "black",
++ BgColor: "white",
++ MajorLine: "grey",
++ MinorLine: "rose",
+ FontName: "Sans",
+ FontSize: 10,
+ FontBold: FontWeightNormal,
+@@ -414,8 +414,8 @@
+ LeftDashed: false,
+ LeftColor: "",
+
+- MajorGridLineColor: "white",
+- MinorGridLineColor: "grey",
++ MajorGridLineColor: "grey",
++ MinorGridLineColor: "rose",
+ }
+
+ var templates = map[string]PictureParams{
+@@ -424,10 +424,10 @@
+ Height: 250,
+ Margin: 10,
+ LogBase: 0,
+- FgColor: "white",
+- BgColor: "black",
+- MajorLine: "rose",
+- MinorLine: "grey",
++ FgColor: "black",
++ BgColor: "white",
++ MajorLine: "grey",
++ MinorLine: "rose",
+ FontName: "Sans",
+ FontSize: 10,
+ FontBold: FontWeightNormal,
+@@ -487,7 +487,7 @@
+ LeftDashed: false,
+ LeftColor: "",
+
+- MajorGridLineColor: "white",
+- MinorGridLineColor: "grey",
++ MajorGridLineColor: "grey",
++ MinorGridLineColor: "rose",
+ },
+ }
diff --git a/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-logfile.patch b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-logfile.patch
new file mode 100644
index 000000000000..c365e8317c8d
--- /dev/null
+++ b/app-metrics/carbonapi-booking/files/carbonapi-booking-0.3.0_p20250201-logfile.patch
@@ -0,0 +1,14 @@
+- don't log to stdout
+- change log to be under subdir so ebuild can manage its permissions
+
+--- carbonapi-0.3.0/config/carbonapi.yaml
++++ carbonapi-0.3.0/config/carbonapi.yaml
+@@ -130,7 +130,7 @@
+ - X-Real-Ip
+ - X-Webauth-User
+ loggerConfig:
+- outputPaths: ["stdout"]
++ outputPaths: ["/var/log/carbonapi/carbonapi.log"]
+ level: "info"
+ encoding: "json"
+
diff --git a/app-metrics/carbonapi-booking/files/carbonapi-booking.confd b/app-metrics/carbonapi-booking/files/carbonapi-booking.confd
new file mode 100644
index 000000000000..2f9ca1ba6bd5
--- /dev/null
+++ b/app-metrics/carbonapi-booking/files/carbonapi-booking.confd
@@ -0,0 +1,8 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+#CONFIG_FILE=/etc/carbonapi/carbonapi.yaml
+
+# user and group to run carbonapi as
+#USER=carbon
+#GROUP=carbon
diff --git a/app-metrics/carbonapi-booking/files/carbonapi-booking.initd b/app-metrics/carbonapi-booking/files/carbonapi-booking.initd
new file mode 100644
index 000000000000..63184b2a6cf8
--- /dev/null
+++ b/app-metrics/carbonapi-booking/files/carbonapi-booking.initd
@@ -0,0 +1,44 @@
+#!/sbin/openrc-run
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Graphite whisper metrics renderer."
+
+carbonapi_config=${CONFIG_FILE:-/etc/carbonapi/${SVCNAME}.yaml}
+
+command="/usr/bin/carbonapi"
+command_args="-config ${carbonapi_config}"
+pidfile="/run/carbonapi/${SVCNAME}.pid"
+user=${USER:-carbon}
+group=${GROUP:-carbon}
+
+depend() {
+ need net
+ use dns
+}
+
+start_pre() {
+ mkdir -p "${pidfile%/*}"
+ mkdir -p /var/log/carbonapi
+ chown ${user}:${group} "${pidfile%/*}" /var/log/carbonapi
+}
+
+stop_post() {
+ rm -f "${pidfile}"
+}
+
+start() {
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start --pidfile "${pidfile}" \
+ --make-pidfile --background \
+ --user ${user} --group ${group} \
+ --exec ${command} -- \
+ ${command_args}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --exec ${command} --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/app-metrics/carbonapi-booking/metadata.xml b/app-metrics/carbonapi-booking/metadata.xml
new file mode 100644
index 000000000000..54612510c31f
--- /dev/null
+++ b/app-metrics/carbonapi-booking/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>grobian@gentoo.org</email>
+ <name>Fabian Groffen</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/carbonapi-web/Manifest b/app-metrics/carbonapi-web/Manifest
new file mode 100644
index 000000000000..9e84439323d9
--- /dev/null
+++ b/app-metrics/carbonapi-web/Manifest
@@ -0,0 +1 @@
+DIST carbonapi-web-1.1.tar.gz 1027235 BLAKE2B be56d94b680282618c74b3b332cbd85de2e7430831c1de3242b99e061f6232f404c15045b3e4990e51b20f3193564a9fa9c324774ee46abeecad084b4dc9fc79 SHA512 b60ba3d23d84051f9b5e6445117a425f36a5740e3758555c08dfe0c6b1bebb06ad665e057c570a55f6d3ab9073930026b614740cde4fe57b15b06f56f33cc042
diff --git a/app-metrics/carbonapi-web/carbonapi-web-1.1.ebuild b/app-metrics/carbonapi-web/carbonapi-web-1.1.ebuild
new file mode 100644
index 000000000000..5b854a847cc2
--- /dev/null
+++ b/app-metrics/carbonapi-web/carbonapi-web-1.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit webapp
+
+DESCRIPTION="graphite-web fork for standalone usage with carbonapi"
+HOMEPAGE="https://github.com/grobian/carbonapi-web"
+SRC_URI="https://github.com/grobian/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+src_install() {
+ webapp_src_preinst
+
+ insinto "${MY_HTDOCSDIR}"
+ doins -r webapp/content/*
+
+ webapp_postinst_txt en "${FILESDIR}"/postinstall-en.txt
+
+ webapp_src_install
+}
diff --git a/app-metrics/carbonapi-web/files/postinstall-en.txt b/app-metrics/carbonapi-web/files/postinstall-en.txt
new file mode 100644
index 000000000000..26cd2dc8abb0
--- /dev/null
+++ b/app-metrics/carbonapi-web/files/postinstall-en.txt
@@ -0,0 +1,12 @@
+1. install and setup a Graphite resolving and rendering instance such as
+ app-metrics/carbonapi-booking
+2. setup a vhost that:
+ - uses default index file browser.html
+ - proxies these paths down to the Graphite rendering instance:
+ * /render/
+ * /metrics/
+ * /info/
+ * /functions/
+ * /tags/
+3. the combined setup should load the web browser and interact with your
+ Graphite install
diff --git a/app-metrics/carbonapi-web/metadata.xml b/app-metrics/carbonapi-web/metadata.xml
new file mode 100644
index 000000000000..54612510c31f
--- /dev/null
+++ b/app-metrics/carbonapi-web/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>grobian@gentoo.org</email>
+ <name>Fabian Groffen</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/ceph_exporter/Manifest b/app-metrics/ceph_exporter/Manifest
new file mode 100644
index 000000000000..bf4afb1109e1
--- /dev/null
+++ b/app-metrics/ceph_exporter/Manifest
@@ -0,0 +1,4 @@
+DIST ceph_exporter-4.1.1-deps.tar.xz 7386488 BLAKE2B d5ccacba93ae8ee0f03f349860e02e19bb52a5bd6af7ec1b2c6209d29834a74a6934f19a9435f5be1539e6f141ec41e1219b62660aff90a529513b91a3d0649e SHA512 a6f9a8053d3a8957bd03535089c3bb3c818f153f69c2488db08d0fc9a63f7d30ff3b490b0f0fd81399153a19c853239a9744564881c159bc88f5cf91807e10b0
+DIST ceph_exporter-4.1.1.tar.gz 146022 BLAKE2B d833b59418148efb1008d7d444f27a9310d1214197abfb022f74c8fd7af15eceb04c26bab8307eca80bbb4c60b54e7469da74562e38e06cbf7c3559f01d2e0d2 SHA512 1f840d02b50c6cd55c1fb78d44a9fb0beafd241168d3c1d4ad2a9ede67a4fd67b48311de8af0b637a07b04a562938afb72a3379a3c40d765f73923024a8ddd62
+DIST ceph_exporter-4.2.5-deps.tar.xz 2600208 BLAKE2B 1f0610e0a61fa31f2345d72b50256199124e41cbeeab4c77e91c2405c4155a96a0de9f071b2b66b7c3028a5f9855fd4e6da207e8eed6e56f2b9b334af38ed94e SHA512 d1fd1e00ad2527bb93e77c0fa6a59e5e982c2da8b95d07cdfb4d26c5ea7024a055db3036f676d16e331cf5b39b66a947f3c226ac1d0f6de5646f6bcf77f5c3f7
+DIST ceph_exporter-4.2.5.tar.gz 150843 BLAKE2B 8d78709b9eabe1fa022f1a30354fea60142fc896bdbaeb9803929673a28a7930e731ce57acc7b4810ac8b0f8a593e0b951f6f0db1a7e121c5e76db35925ec75d SHA512 d904b6d852e9b1b309d59f3e512b87e8c75ebcf8dc3caac9b5156aa141a98dc7f4905d5d1a56322b874a69350c2e20f910512486b9dfa464425902c6d6fbfb78
diff --git a/app-metrics/ceph_exporter/ceph_exporter-4.1.1-r1.ebuild b/app-metrics/ceph_exporter/ceph_exporter-4.1.1-r1.ebuild
new file mode 100644
index 000000000000..c81f82f998d2
--- /dev/null
+++ b/app-metrics/ceph_exporter/ceph_exporter-4.1.1-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Prometheus exporter that scrapes metrics from a ceph cluster"
+HOMEPAGE="https://github.com/digitalocean/ceph_exporter"
+SRC_URI="https://github.com/digitalocean/ceph_exporter/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ acct-group/ceph
+ acct-user/ceph
+ sys-cluster/ceph
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-lang/go-1.18"
+
+src_compile() {
+ go build -o bin/ceph_exporter || die
+}
+
+src_install() {
+ dobin bin/ceph_exporter
+ dodoc {README,CONTRIBUTING}.md exporter.yml
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ keepdir /var/lib/ceph_exporter /var/log/ceph_exporter
+ fowners ceph:ceph /var/lib/ceph_exporter /var/log/ceph_exporter
+}
diff --git a/app-metrics/ceph_exporter/ceph_exporter-4.2.5.ebuild b/app-metrics/ceph_exporter/ceph_exporter-4.2.5.ebuild
new file mode 100644
index 000000000000..03c4c41455d7
--- /dev/null
+++ b/app-metrics/ceph_exporter/ceph_exporter-4.2.5.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Prometheus exporter that scrapes metrics from a ceph cluster"
+HOMEPAGE="https://github.com/digitalocean/ceph_exporter"
+SRC_URI="https://github.com/digitalocean/ceph_exporter/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ acct-group/ceph
+ acct-user/ceph
+ sys-cluster/ceph
+"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ ego build -o bin/ceph_exporter
+}
+
+src_install() {
+ dobin bin/ceph_exporter
+ dodoc {README,CONTRIBUTING}.md exporter.yml
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ keepdir /var/lib/ceph_exporter /var/log/ceph_exporter
+ fowners ceph:ceph /var/lib/ceph_exporter /var/log/ceph_exporter
+}
diff --git a/app-metrics/ceph_exporter/files/ceph_exporter.confd b/app-metrics/ceph_exporter/files/ceph_exporter.confd
new file mode 100644
index 000000000000..46da635f4264
--- /dev/null
+++ b/app-metrics/ceph_exporter/files/ceph_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for ceph exporter
+# command_args=""
diff --git a/app-metrics/ceph_exporter/files/ceph_exporter.initd b/app-metrics/ceph_exporter/files/ceph_exporter.initd
new file mode 100644
index 000000000000..980779c5f935
--- /dev/null
+++ b/app-metrics/ceph_exporter/files/ceph_exporter.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 2016-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus ceph metrics exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-ceph}
+group=${group:-ceph}
+
+command="/usr/bin/ceph_exporter"
+command_background="true"
+output_log="/var/log/ceph_exporter/${RC_SVCNAME}.log"
+error_log="/var/log/ceph_exporter/${RC_SVCNAME}.log"
+start_stop_daemon_args="--user ${user} --group ${group}"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/ceph_exporter/metadata.xml b/app-metrics/ceph_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/ceph_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/chrony_exporter/Manifest b/app-metrics/chrony_exporter/Manifest
new file mode 100644
index 000000000000..a2b1bab2dbba
--- /dev/null
+++ b/app-metrics/chrony_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST chrony_exporter-0.13.3-vendor.tar.xz 1293040 BLAKE2B c08140373492a24b898d14b318196c0db9b2283f71c46f02e57d858f889e54d37be37fbd85380d4d8f85c6e0e8b44d8e810406c82ec31f1ee2f72a8f7d32ecdf SHA512 09851ef44173ef7e3230a33f4e516269975305e613fbb110fd98b953e1ae86e5faa9e4bbbc6d1075452d608c1376c23edb6198cd07f0b2a09170844a8172f63f
+DIST chrony_exporter-0.13.3.tar.gz 26328 BLAKE2B 69ad127514c1f090a6cff8ca53c7c0e3b13fad4c428c800104c83e6bea4bd14e64070823383f7d3c850d64f242ca04887b17986794a2e205d0b080b327605a73 SHA512 d1fac18cf88ca3cc8b87463611ffae88d64d7bf804bbd14d9bba8e6f11e80162f0b37233d870427665522f14f4c944980b8d0924c40210eabf83980d39b65379
diff --git a/app-metrics/chrony_exporter/chrony_exporter-0.13.3.ebuild b/app-metrics/chrony_exporter/chrony_exporter-0.13.3.ebuild
new file mode 100644
index 000000000000..45846426344b
--- /dev/null
+++ b/app-metrics/chrony_exporter/chrony_exporter-0.13.3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Chrony NTP exporter for Prometheus"
+HOMEPAGE="https://github.com/SuperQ/chrony_exporter"
+
+SRC_URI="https://github.com/SuperQ/chrony_exporter/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/gentoo-golang-dist/chrony_exporter/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64"
+
+DEPEND="acct-group/chrony_exporter
+ acct-user/chrony_exporter"
+
+BDEPEND="
+ >=dev-lang/go-1.25.0
+ dev-util/promu
+"
+
+PATCHES=( "${FILESDIR}/0.13.3-promu-config.patch" )
+
+src_prepare() {
+ default
+ # No need to enable the race detector for tests (#935442)
+ sed -i -e '/test-flags := -race/d' Makefile.common || die
+}
+
+src_compile() {
+ promu build -v || die
+}
+
+src_install() {
+ dobin ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+}
diff --git a/app-metrics/chrony_exporter/files/0.13.3-promu-config.patch b/app-metrics/chrony_exporter/files/0.13.3-promu-config.patch
new file mode 100644
index 000000000000..21bb008a4003
--- /dev/null
+++ b/app-metrics/chrony_exporter/files/0.13.3-promu-config.patch
@@ -0,0 +1,22 @@
+--- a/.promu.yml
++++ b/.promu.yml
+@@ -2,15 +2,19 @@ go:
+ # Whenever the Go version is updated here,
+ # .circleci/config.yml should also be updated.
+ version: 1.26
++ cgo: true
+ repository:
+ path: github.com/superq/chrony_exporter
+ build:
++ binaries:
++ - name: chrony_exporter
+ ldflags: |
+ -X github.com/prometheus/common/version.Version={{.Version}}
+ -X github.com/prometheus/common/version.Revision={{.Revision}}
+ -X github.com/prometheus/common/version.Branch={{.Branch}}
+ -X github.com/prometheus/common/version.BuildUser={{user}}@{{host}}
+ -X github.com/prometheus/common/version.BuildDate={{date "20060102-15:04:05"}}
++ static: false
+ tarball:
+ files:
+ - LICENSE
diff --git a/app-metrics/chrony_exporter/files/chrony_exporter.confd b/app-metrics/chrony_exporter/files/chrony_exporter.confd
new file mode 100644
index 000000000000..0fa8c6ec9b45
--- /dev/null
+++ b/app-metrics/chrony_exporter/files/chrony_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for chrony_exporter
+command_args="--collector.tracking --collector.sources"
diff --git a/app-metrics/chrony_exporter/files/chrony_exporter.initd b/app-metrics/chrony_exporter/files/chrony_exporter.initd
new file mode 100644
index 000000000000..7cddf925322e
--- /dev/null
+++ b/app-metrics/chrony_exporter/files/chrony_exporter.initd
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+# Copyright 2016-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus chrony metrics exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/chrony_exporter"
+command_args="${command_args}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group}"
+
+depend() {
+ after chronyd
+}
diff --git a/app-metrics/chrony_exporter/metadata.xml b/app-metrics/chrony_exporter/metadata.xml
new file mode 100644
index 000000000000..f76957f1a8a7
--- /dev/null
+++ b/app-metrics/chrony_exporter/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>holger@applied-asynchrony.com</email>
+ <name>Holger Hoffstätte</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/collectd/Manifest b/app-metrics/collectd/Manifest
new file mode 100644
index 000000000000..c3666c8289f9
--- /dev/null
+++ b/app-metrics/collectd/Manifest
@@ -0,0 +1 @@
+DIST collectd-5.12.0.tar.bz2 1902756 BLAKE2B 9567c55b47c0ea5b7836c0d858c16a637c4a2054486a9d9ca6cd9951a92381bdf4f49d7dc0be0c9c9131802120d0af2e542a3997f01484c89ba135b3c46db795 SHA512 7a15e4c0ae587db4987d673a790a4f3bea1cab29ce24a506fb21fa7bd2f60bfec70867eaa1c1395cb5b0e0ae81a024fb6109b064da0ef50e7c146d2198871c70
diff --git a/app-metrics/collectd/collectd-5.12.0-r12.ebuild b/app-metrics/collectd/collectd-5.12.0-r12.ebuild
new file mode 100644
index 000000000000..55fb310c2c6e
--- /dev/null
+++ b/app-metrics/collectd/collectd-5.12.0-r12.ebuild
@@ -0,0 +1,562 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_OPT_USE="collectd_plugins_java"
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit autotools fcaps java-pkg-opt-2 linux-info lua-single perl-functions python-single-r1 systemd tmpfiles udev
+
+DESCRIPTION="Collects system statistics and provides mechanisms to store the values"
+
+HOMEPAGE="https://www.collectd.org/"
+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"
+KEYWORDS="~alpha amd64 arm ~arm64 x86"
+IUSE="contrib debug java 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
+# dpdk_telemetry: 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)
+# onewire: Requires sys-fs/owfs which was removed from repository
+# pf: Requires BSD packet filter
+# pinba: Requires MySQL Pinba engine (http://pinba.org/)
+# redfish: Requires libredfish
+# 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
+ dpdkevents dpdkstat dpdk_telemetry grpc intel_pmu intel_rdt lpar
+ mic netapp onewire pf pinba redfish 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
+ buddyinfo capabilities ceph cgroups check_uptime chrony connectivity
+ conntrack contextswitch cpu cpufreq cpusleep csv curl curl_json
+ curl_xml dbi df disk dns drbd email entropy ethstat exec fhcount
+ filecount fscache gps gpu_nvidia hddtemp hugepages interface ipc
+ ipmi iptables ipvs irq java lua load logfile logparser log_logstash
+ 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 pcie_errors perl ping postgresql
+ powerdns procevent processes protocols python redis routeros
+ rrdcached rrdtool sensors serial sigrok smart snmp snmp_agent
+ statsd swap synproxy sysevent syslog table tail tail_csv
+ target_notification target_replace target_scale target_set tcpconns
+ teamspeak2 ted thermal threshold turbostat ubi unixsock uptime users
+ uuid varnish virt vmem vserver wireless write_graphite write_http
+ write_influxdb_udp write_kafka write_log write_mongodb write_prometheus
+ write_redis write_sensu write_stackdriver write_syslog 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="
+ acct-group/collectd
+ acct-user/collectd
+ dev-libs/libgcrypt:=
+ dev-libs/libltdl:0=
+ sys-libs/libcap
+ perl? ( || ( >=dev-lang/perl-5.38.2-r3[perl_features_ithreads] <dev-lang/perl-5.38.2-r3[ithreads] ) dev-lang/perl:= )
+ 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_capabilities? ( dev-libs/jansson net-libs/libmicrohttpd:= )
+ collectd_plugins_connectivity? ( dev-libs/yajl:= net-libs/libmnl )
+ 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_gps? ( sci-geosciences/gpsd:= )
+ collectd_plugins_gpu_nvidia? ( dev-util/nvidia-cuda-toolkit )
+ 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? ( ${LUA_DEPS} )
+ collectd_plugins_memcachec? ( || ( dev-libs/libmemcached-awesome 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_oracle? ( dev-db/oracle-instantclient[sdk] )
+ collectd_plugins_ovs_events? ( dev-libs/yajl:= )
+ collectd_plugins_ovs_stats? ( dev-libs/yajl:= )
+ collectd_plugins_perl? ( || ( >=dev-lang/perl-5.38.2-r3[perl_features_ithreads] <dev-lang/perl-5.38.2-r3[ithreads] ) dev-lang/perl:= )
+ collectd_plugins_ping? ( net-libs/liboping )
+ collectd_plugins_postgresql? ( dev-db/postgresql:= )
+ collectd_plugins_procevent? ( dev-libs/yajl:= )
+ 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:0= )
+ collectd_plugins_snmp? ( net-analyzer/net-snmp:= )
+ collectd_plugins_snmp_agent? ( net-analyzer/net-snmp:= )
+ collectd_plugins_sysevent? ( dev-libs/yajl:= )
+ collectd_plugins_varnish? ( <www-servers/vinyl-cache-9.0.0:= )
+ 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_write_stackdriver? ( net-misc/curl:0= dev-libs/yajl:= )
+ collectd_plugins_xencpu? ( app-emulation/xen-tools:= )
+"
+
+# FIXME: should virtual/jdk be here as well?
+BDEPEND="virtual/pkgconfig"
+
+# 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.8:* )"
+
+RDEPEND="${COMMON_DEPEND}
+ collectd_plugins_java? ( >=virtual/jre-1.8:* )
+ collectd_plugins_syslog? ( virtual/logger )
+ selinux? ( sec-policy/selinux-collectd )"
+
+REQUIRED_USE="
+ collectd_plugins_lua? ( ${LUA_REQUIRED_USE} )
+ collectd_plugins_python? ( ${PYTHON_REQUIRED_USE} )
+ collectd_plugins_smart? ( udev )
+ contrib? ( perl )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.11.0-libsigrok-0.4+.patch
+ "${FILESDIR}"/${PN}-5.12.0-python3_11.patch
+ "${FILESDIR}"/${PN}-5.12.0-clang16-configure.patch
+ "${FILESDIR}"/${PN}-5.12.0-nut-c99.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_lua && lua-single_pkg_setup
+ use collectd_plugins_python && python-single-r1_pkg_setup
+}
+
+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_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})"
+ 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 collectd_plugins_gpu_nvidia; then
+ myconf+=" --with-cuda=${EPREFIX}/opt/cuda"
+ else
+ myconf+=" --with-cuda=no"
+ fi
+
+ 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
+
+ if use collectd_plugins_disk && use udev; then
+ udev_newrules contrib/99-storage-collectd.rules 60-persistent-storage-collectd.rules
+ fi
+
+ fowners root:collectd /etc/collectd.conf
+ fperms u=rw,g=r,o= /etc/collectd.conf
+
+ einstalldocs
+
+ if use contrib; then
+ insinto /usr/share/${PN}
+ doins -r contrib
+ fi
+
+ keepdir /var/lib/${PN}
+ fowners collectd:collectd /var/lib/${PN}
+
+ newinitd "${FILESDIR}/${PN}.initd-r3" ${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 \
+ -e 's:^.*PIDFile "/var/run/collectd.pid":#PIDFile "/run/collectd.pid":' \
+ -i "${ED}"/etc/collectd.conf || die
+ sed \
+ -e 's:^# SocketFile "/var/run/collectd-unixsock":# SocketFile "/run/collectd/collectd.socket":' \
+ -i "${ED}"/etc/collectd.conf || die
+ sed \
+ -e 's:^.*LoadPlugin perl$:# The new, correct way to load the perl plugin -- \n# <LoadPlugin perl>\n# Globals true\n# </LoadPlugin>:' \
+ -i "${ED}"/etc/collectd.conf || die
+ sed \
+ -e 's:^.*LoadPlugin python$:# The new, correct way to load the python plugin -- \n# <LoadPlugin python>\n# Globals true\n# </LoadPlugin>:' \
+ -i "${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/CGI, dev-perl/Config-General and net-analyzer/rrdtool[perl] to be installed."
+ fi
+}
diff --git a/app-metrics/collectd/files/collectd-5.11.0-libsigrok-0.4+.patch b/app-metrics/collectd/files/collectd-5.11.0-libsigrok-0.4+.patch
new file mode 100644
index 000000000000..981864e81c32
--- /dev/null
+++ b/app-metrics/collectd/files/collectd-5.11.0-libsigrok-0.4+.patch
@@ -0,0 +1,157 @@
+Backport of https://github.com/u1f35c/collectd/commit/9e36cd85a2bbd6daa55f1f392f60f9c95573ae2c
+aka https://github.com/collectd/collectd/issues/1574
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -5367,7 +5367,7 @@ AC_SUBST([BUILD_WITH_LIBSENSORS_LIBS])
+ # libsigrok {{{
+ AC_SUBST([LIBSIGROK_CFLAGS])
+ AC_SUBST([LIBSIGROK_LIBS])
+-PKG_CHECK_MODULES([LIBSIGROK], [libsigrok < 0.4],
++PKG_CHECK_MODULES([LIBSIGROK], [libsigrok >= 0.4],
+ [with_libsigrok="yes"],
+ [with_libsigrok="no (pkg-config could not find libsigrok)"]
+ )
+--- a/src/sigrok.c
++++ b/src/sigrok.c
+@@ -127,22 +127,22 @@ static int sigrok_config(oconfig_item_t *ci) {
+ return 0;
+ }
+
+-static const char *sigrok_value_type(const struct sr_datafeed_analog *analog) {
++static const char *sigrok_value_type(const struct sr_analog_meaning *meaning) {
+ const char *s;
+
+- if (analog->mq == SR_MQ_VOLTAGE)
++ if (meaning->mq == SR_MQ_VOLTAGE)
+ s = "voltage";
+- else if (analog->mq == SR_MQ_CURRENT)
++ else if (meaning->mq == SR_MQ_CURRENT)
+ s = "current";
+- else if (analog->mq == SR_MQ_FREQUENCY)
++ else if (meaning->mq == SR_MQ_FREQUENCY)
+ s = "frequency";
+- else if (analog->mq == SR_MQ_POWER)
++ else if (meaning->mq == SR_MQ_POWER)
+ s = "power";
+- else if (analog->mq == SR_MQ_TEMPERATURE)
++ else if (meaning->mq == SR_MQ_TEMPERATURE)
+ s = "temperature";
+- else if (analog->mq == SR_MQ_RELATIVE_HUMIDITY)
++ else if (meaning->mq == SR_MQ_RELATIVE_HUMIDITY)
+ s = "humidity";
+- else if (analog->mq == SR_MQ_SOUND_PRESSURE_LEVEL)
++ else if (meaning->mq == SR_MQ_SOUND_PRESSURE_LEVEL)
+ s = "spl";
+ else
+ s = "gauge";
+@@ -172,7 +172,7 @@ static void sigrok_feed_callback(const struct sr_dev_inst *sdi,
+ ERROR("sigrok plugin: Received data from driver \"%s\" but "
+ "can't find a configuration / device matching "
+ "it.",
+- sdi->driver->name);
++ sr_dev_inst_driver_get(sdi)->name);
+ return;
+ }
+
+@@ -191,11 +191,11 @@ static void sigrok_feed_callback(const struct sr_dev_inst *sdi,
+
+ /* Ignore all but the first sample on the first probe. */
+ analog = packet->payload;
+- vl.values = &(value_t){.gauge = analog->data[0]};
++ vl.values = &(value_t){.gauge = ((float *) analog->data)[0]};
+ vl.values_len = 1;
+ sstrncpy(vl.plugin, "sigrok", sizeof(vl.plugin));
+ sstrncpy(vl.plugin_instance, cfdev->name, sizeof(vl.plugin_instance));
+- sstrncpy(vl.type, sigrok_value_type(analog), sizeof(vl.type));
++ sstrncpy(vl.type, sigrok_value_type(&analog->meaning[0]), sizeof(vl.type));
+
+ plugin_dispatch_values(&vl);
+ cfdev->last_dispatch = cdtime();
+@@ -207,6 +207,7 @@ static void sigrok_free_drvopts(struct sr_config *src) {
+ }
+
+ static int sigrok_init_driver(struct config_device *cfdev,
++ struct sr_session *session,
+ struct sr_dev_driver *drv) {
+ struct sr_config *src;
+ GSList *devlist, *drvopts;
+@@ -248,21 +249,22 @@ static int sigrok_init_driver(struct config_device *cfdev,
+ cfdev->sdi = devlist->data;
+ g_slist_free(devlist);
+ ssnprintf(hwident, sizeof(hwident), "%s %s %s",
+- cfdev->sdi->vendor ? cfdev->sdi->vendor : "",
+- cfdev->sdi->model ? cfdev->sdi->model : "",
+- cfdev->sdi->version ? cfdev->sdi->version : "");
++ sr_dev_inst_vendor_get(cfdev->sdi),
++ sr_dev_inst_model_get(cfdev->sdi),
++ sr_dev_inst_version_get(cfdev->sdi));
+ INFO("sigrok plugin: Device \"%s\" is a %s", cfdev->name, hwident);
+
+ if (sr_dev_open(cfdev->sdi) != SR_OK)
+ return -1;
+
+- if (sr_session_dev_add(cfdev->sdi) != SR_OK)
++ if (sr_session_dev_add(session, cfdev->sdi) != SR_OK)
+ return -1;
+
+ return 1;
+ }
+
+ static void *sigrok_read_thread(void *arg __attribute__((unused))) {
++ struct sr_session *session;
+ struct sr_dev_driver *drv, **drvlist;
+ GSList *l;
+ struct config_device *cfdev;
+@@ -277,11 +279,11 @@ static void *sigrok_read_thread(void *arg __attribute__((unused))) {
+ return NULL;
+ }
+
+- if (!sr_session_new())
++ if (!sr_session_new(sr_ctx, &session))
+ return NULL;
+
+ num_devices = 0;
+- drvlist = sr_driver_list();
++ drvlist = sr_driver_list(sr_ctx);
+ for (l = config_devices; l; l = l->next) {
+ cfdev = l->data;
+ drv = NULL;
+@@ -296,7 +298,7 @@ static void *sigrok_read_thread(void *arg __attribute__((unused))) {
+ return NULL;
+ }
+
+- if ((ret = sigrok_init_driver(cfdev, drv)) < 0)
++ if ((ret = sigrok_init_driver(cfdev, session, drv)) < 0)
+ /* Error was already logged. */
+ return NULL;
+
+@@ -305,21 +307,22 @@ static void *sigrok_read_thread(void *arg __attribute__((unused))) {
+
+ if (num_devices > 0) {
+ /* Do this only when we're sure there's hardware to talk to. */
+- if (sr_session_datafeed_callback_add(sigrok_feed_callback, NULL) != SR_OK)
++ if (sr_session_datafeed_callback_add(session, sigrok_feed_callback,
++ NULL) != SR_OK)
+ return NULL;
+
+ /* Start acquisition on all devices. */
+- if (sr_session_start() != SR_OK)
++ if (sr_session_start(session) != SR_OK)
+ return NULL;
+
+ /* Main loop, runs forever. */
+- sr_session_run();
++ sr_session_run(session);
+
+- sr_session_stop();
+- sr_session_dev_remove_all();
++ sr_session_stop(session);
++ sr_session_dev_remove_all(session);
+ }
+
+- sr_session_destroy();
++ sr_session_destroy(session);
+
+ sr_exit(sr_ctx);
+
diff --git a/app-metrics/collectd/files/collectd-5.12.0-clang16-configure.patch b/app-metrics/collectd/files/collectd-5.12.0-clang16-configure.patch
new file mode 100644
index 000000000000..578099579c47
--- /dev/null
+++ b/app-metrics/collectd/files/collectd-5.12.0-clang16-configure.patch
@@ -0,0 +1,127 @@
+https://bugs.gentoo.org/879633
+https://bugs.gentoo.org/900392
+https://github.com/collectd/collectd/pull/4106
+
+From f23164e589502ff675b3b54fa598bd9efd1422ed Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Thu, 6 Apr 2023 19:00:08 +0200
+Subject: [PATCH] Fix glibc feature macro handling for timegm
+
+The way strptime is activated using feature macros, _DEFAULT_SOURCE
+(successor to _BSD_SOURCE) is disabled implicitly, so timegm is
+hidden. Defining _DEFAULT_SOURCE at the same time as the other
+feature macros solves this, and removes the need for the
+TIMEGM_NEEDS_BSD configure macro.
+
+This avoids an implicit declaration of timegm in src/bind.c, and build
+failures with future compilers.
+---
+ configure.ac | 53 ++++++++++++----------------------------------------
+ src/bind.c | 10 +++++-----
+ 2 files changed, 17 insertions(+), 46 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index bbe65a7e99..78bbff6624 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -974,6 +974,12 @@ if test "x$have_strptime" = "xyes" && test "x$c_cv_have_strptime_default" = "xno
+ #ifndef _XOPEN_SOURCE
+ # define _XOPEN_SOURCE 500
+ #endif
++ # ifndef _BSD_SOURCE
++ # define _BSD_SOURCE
++ # endif
++ # ifndef _DEFAULT_SOURCE
++ # define _DEFAULT_SOURCE
++ # endif
+ #include <time.h>
+ ]],
+ [[
+@@ -1024,6 +1030,12 @@ AC_CACHE_CHECK([for timegm],
+ # ifndef _XOPEN_SOURCE
+ # define _XOPEN_SOURCE 500
+ # endif
++# ifndef _BSD_SOURCE
++# define _BSD_SOURCE
++# endif
++# ifndef _DEFAULT_SOURCE
++# define _DEFAULT_SOURCE
++# endif
+ #endif
+ #include <time.h>
+ ]]],
+@@ -1039,50 +1051,9 @@ AC_CACHE_CHECK([for timegm],
+ )
+ )
+
+-if test "x$c_cv_have_timegm" != "xyes"
+-then
+- AC_CACHE_CHECK([for timegm with _BSD_SOURCE],
+- [c_cv_have_timegm_bsd],
+- AC_LINK_IFELSE(
+- [AC_LANG_PROGRAM(
+-[[[
+-#if STRPTIME_NEEDS_STANDARDS
+-# ifndef _ISOC99_SOURCE
+-# define _ISOC99_SOURCE 1
+-# endif
+-# ifndef _POSIX_C_SOURCE
+-# define _POSIX_C_SOURCE 200112L
+-# endif
+-# ifndef _XOPEN_SOURCE
+-# define _XOPEN_SOURCE 500
+-# endif
+-#endif
+-#ifndef _BSD_SOURCE
+-# define _BSD_SOURCE 1
+-#endif
+-#include <time.h>
+-]]],
+-[[[
+- time_t t = timegm(&(struct tm){0});
+- if (t == ((time_t) -1)) {
+- return 1;
+- }
+-]]]
+- )],
+- [c_cv_have_timegm_bsd="yes"
+- c_cv_have_timegm="yes"],
+- [c_cv_have_timegm_bsd="no"]
+- )
+- )
+-fi
+-
+ if test "x$c_cv_have_timegm" = "xyes"
+ then
+ AC_DEFINE(HAVE_TIMEGM, 1, [Define if the timegm(3) function is available.])
+- if test "x$c_cv_have_timegm_bsd" = "xyes"
+- then
+- AC_DEFINE(TIMEGM_NEEDS_BSD, 1, [Set to true if timegm is only exported in BSD mode.])
+- fi
+ fi
+
+ CFLAGS="$SAVE_CFLAGS"
+diff --git a/src/bind.c b/src/bind.c
+index a246f1aacf..4a7c024253 100644
+--- a/src/bind.c
++++ b/src/bind.c
+@@ -33,13 +33,13 @@
+ #ifndef _XOPEN_SOURCE
+ #define _XOPEN_SOURCE 500
+ #endif
+-#endif /* STRPTIME_NEEDS_STANDARDS */
+-
+-#if TIMEGM_NEEDS_BSD
+ #ifndef _BSD_SOURCE
+-#define _BSD_SOURCE 1
++#define _BSD_SOURCE
+ #endif
+-#endif /* TIMEGM_NEEDS_BSD */
++#ifndef _DEFAULT_SOURCE
++#define _DEFAULT_SOURCE
++#endif
++#endif /* STRPTIME_NEEDS_STANDARDS */
+
+ #include "collectd.h"
+
+
diff --git a/app-metrics/collectd/files/collectd-5.12.0-nut-c99.patch b/app-metrics/collectd/files/collectd-5.12.0-nut-c99.patch
new file mode 100644
index 000000000000..0935eed070e9
--- /dev/null
+++ b/app-metrics/collectd/files/collectd-5.12.0-nut-c99.patch
@@ -0,0 +1,143 @@
+https://github.com/collectd/collectd/commit/d409ffa2a64cac3fc2abe2bb86ec3a80cb34d0a6
+
+From d409ffa2a64cac3fc2abe2bb86ec3a80cb34d0a6 Mon Sep 17 00:00:00 2001
+From: Jim Klimov <jimklimov+nut@gmail.com>
+Date: Wed, 31 Aug 2022 11:40:01 +0200
+Subject: [PATCH] configure.ac, src/nut.c: detect int types required by NUT API
+ we build against
+
+Either use the stricter int types required by NUT headers since v2.8.0 release,
+or the relaxed (arch-dependent) types required by older NUT releases - depending
+on which NUT API version the collectd is building against at the moment.
+
+Inspired by discussion at https://github.com/networkupstools/nut/issues/1638
+--- a/configure.ac
++++ b/configure.ac
+@@ -5881,6 +5881,106 @@ if test "x$with_libupsclient" = "xyes"; then
+ CPPFLAGS="$SAVE_CPPFLAGS"
+ fi
+
++if test "x$with_libupsclient" = "xyes"; then
++ dnl The m4 script logic below is modelled after NUT_FUNC_GETNAMEINFO_ARGTYPES
++ dnl further originating in curl autoconf scripts or beyond. See there for an
++ dnl example of general-case logic to handle matching of numerous possible
++ dnl data types for each argument in supported API variants.
++ dnl Note: techically compiler complains here not about int types themselves,
++ dnl but about pointers to such data. We know "out of band" that e.g. NUT
++ dnl change to "size_t" happened at once for all arguments in the API, so
++ dnl simplify the handling here and now with that assumption.
++ AC_LANG_PUSH([C])
++ SAVE_CPPFLAGS="$CPPFLAGS"
++ SAVE_LDFLAGS="$LDFLAGS"
++ SAVE_CFLAGS="$CFLAGS"
++ CPPFLAGS="$CPPFLAGS $with_libupsclient_cflags"
++ LDFLAGS="$LDFLAGS $with_libupsclient_libs"
++ CFLAGS="$CFLAGS $with_libupsclient_cflags"
++ if test "x$GCC" = "xyes"; then
++ CFLAGS="$CFLAGS -Wall -Werror"
++ fi
++
++ dnl upscli_splitname() *is* there forever (2007 or older)
++ dnl but int types e.g. "port" changed in NUT 2.8.0
++ dnl Also this is the UPSCONN_t::port field type:
++ AC_CACHE_CHECK([int type of port argument for NUT upscli_splitname],
++ [collectd_cv_func_upscli_splitname_args], [
++ collectd_cv_func_upscli_splitname_args="unknown"
++ for port_arg in 'uint16_t' 'int' ; do
++ AC_COMPILE_IFELSE([
++ AC_LANG_PROGRAM([
++#include <upsclient.h>
++/* int upscli_splitname(const char *buf, char **upsname, char **hostname, <port_arg> *port); */
++ ],[
++const char *origname = "ups@localhost:3493";
++$port_arg port=0;
++char *hostname;
++char *upsname;
++int res = upscli_splitname(origname, &upsname, &hostname, &port);
++return(res);
++ ])
++ ],[
++ collectd_cv_func_upscli_splitname_args="$port_arg"
++ break
++ ])
++ done
++ ])
++
++ AS_IF([test x"$collectd_cv_func_upscli_splitname_args" = xunknown],
++ [AC_MSG_WARN([Can not find proper port type for upscli_splitname()])
++ with_libupsclient="no (required data types for NUT API were not detected)"],
++ [AC_DEFINE_UNQUOTED(NUT_PORT_TYPE, $collectd_cv_func_upscli_splitname_args,
++ [Define to the integer type for TCP/IP ports used by NUT API we build against])
++ ])
++
++
++ AC_CACHE_CHECK([int type of length/numbering arguments for NUT upscli_list_next],
++ [collectd_cv_func_upscli_list_next_args], [
++ collectd_cv_func_upscli_list_next_args="unknown"
++ for size_arg in 'size_t' 'unsigned int' 'int' ; do
++ AC_COMPILE_IFELSE([
++ AC_LANG_PROGRAM([
++#include <upsclient.h>
++/* int upscli_list_next(UPSCONN_t *ups, <size_arg> numq, const char **query, <size_arg> *numa, char ***answer); */
++
++#if HAVE_UPSCONN_T
++typedef UPSCONN_t collectd_upsconn_t;
++#elif HAVE_UPSCONN
++typedef UPSCONN collectd_upsconn_t;
++#else
++#error "Unable to determine the UPS connection type."
++#endif
++ ],[
++$size_arg query_num=0;
++$size_arg answer_num=0;
++const char * query;
++char** answer;
++collectd_upsconn_t ups;
++int res = upscli_list_next(&ups, query_num, &query, &answer_num, &answer);
++return(res);
++ ])
++ ],[
++ collectd_cv_func_upscli_list_next_args="$size_arg"
++ break
++ ])
++ done
++ ])
++
++ AS_IF([test x"$collectd_cv_func_upscli_list_next_args" = xunknown],
++ [AC_MSG_WARN([Can not find proper type for array sizes and string lengths used by upscli_list_next()])
++ with_libupsclient="no (required data types for NUT API were not detected)"],
++ [AC_DEFINE_UNQUOTED(NUT_SIZE_TYPE, $collectd_cv_func_upscli_list_next_args,
++ [Define to the integer type for array sizes and string lengths used by NUT API we build against])
++ ])
++
++
++ CPPFLAGS="$SAVE_CPPFLAGS"
++ LDFLAGS="$SAVE_LDFLAGS"
++ CFLAGS="$SAVE_CFLAGS"
++ AC_LANG_POP([C])
++fi
++
+ if test "x$with_libupsclient" = "xyes"; then
+ BUILD_WITH_LIBUPSCLIENT_CFLAGS="$with_libupsclient_cflags"
+ BUILD_WITH_LIBUPSCLIENT_LIBS="$with_libupsclient_libs"
+--- a/src/nut.c
++++ b/src/nut.c
+@@ -46,7 +46,7 @@ struct nut_ups_s {
+ collectd_upsconn_t *conn;
+ char *upsname;
+ char *hostname;
+- int port;
++ NUT_PORT_TYPE port;
+ nut_ups_t *next;
+ };
+
+@@ -250,7 +250,7 @@ static int nut_read(user_data_t *user_data) {
+ const char *query[3] = {"VAR", ups->upsname, NULL};
+ unsigned int query_num = 2;
+ char **answer;
+- unsigned int answer_num;
++ NUT_SIZE_TYPE answer_num;
+ int status;
+
+ /* (Re-)Connect if we have no connection */
+
diff --git a/app-metrics/collectd/files/collectd-5.12.0-python3_11.patch b/app-metrics/collectd/files/collectd-5.12.0-python3_11.patch
new file mode 100644
index 000000000000..3c0572889559
--- /dev/null
+++ b/app-metrics/collectd/files/collectd-5.12.0-python3_11.patch
@@ -0,0 +1,33 @@
+From 623e95394e0e62e7f9ced2104b786d21e9c0bf53 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
+ <congdanhqx@gmail.com>
+Date: Wed, 21 Sep 2022 22:21:58 +0700
+Subject: [PATCH] cpython: fix build with Python 3.11
+
+Python 3.11 moves longintrepr.h into cpython sub-directory.
+However, in this version, longintrepr.h is always included.
+---
+ src/cpython.h | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/src/cpython.h b/src/cpython.h
+index 11e64fa62f..bcfa406feb 100644
+--- a/src/cpython.h
++++ b/src/cpython.h
+@@ -24,9 +24,15 @@
+ * Sven Trenkel <collectd at semidefinite.de>
+ **/
+
++#include <Python.h>
+ /* Some python versions don't include this by default. */
+-
++#if PY_VERSION_HEX < 0x030B0000
++/*
++ * Python 3.11 move longintrepr.h to cpython/longintrepr.h
++ * And it's always included
++ */
+ #include <longintrepr.h>
++#endif /* PY_VERSION_HEX < 0x030B0000 */
+
+ /* These two macros are basically Py_BEGIN_ALLOW_THREADS and
+ * Py_BEGIN_ALLOW_THREADS
diff --git a/app-metrics/collectd/files/collectd.confd-r2 b/app-metrics/collectd/files/collectd.confd-r2
new file mode 100644
index 000000000000..38fb9a6057e6
--- /dev/null
+++ b/app-metrics/collectd/files/collectd.confd-r2
@@ -0,0 +1,49 @@
+# Distributed under the terms of the GNU General Public License v2
+
+# Nice value used to launch collectd, to change priority of the process. As
+# you usually we want to run it in background, a default of 5 is used.
+#
+#COLLECTD_NICELEVEL=5
+
+# Location of configuration file. Modify if you don't like the standard
+# one.
+#
+#COLLECTD_CONFIGFILE="/etc/collectd.conf"
+
+# File used to store the PID file. Usually you won't need to touch it.
+# If you are going to change PID file location make sure that *only*
+# root is allowed to write into that directory.
+#
+#COLLECTD_PIDFILE="/run/collectd.pid"
+
+# User to run collectd as (default is collectd, change to root or give
+# collectd user appropriate privileges if you use one of the plugins that
+# require it, as e.g. ping or iptables plugins)
+#
+#COLLECTD_USER="collectd"
+
+# The default collectd UNIX socket location in /run/collectd is now
+# maintained via tmpfiles service. Therefore, the COLLECTD_GROUP setting
+# isn't used anymore.
+# If you are going to change UNIX socket location or change COLLECTD_USER
+# setting above, make sure you overwrite /usr/lib/tmpfiles.d/collectd.conf
+# via copy in /usr/lib/tmpfiles.d/collectd.conf to match your setup.
+#COLLECTD_GROUP="collectd"
+
+# You can use this configuration option to pass additional options to the
+# start-stop-daemon, see start-stop-daemon(8) for more details.
+# Per default we wait 1000ms after we have started the service to ensure
+# that the daemon is really up and running.
+#COLLECTD_SSDARGS="--wait 1000"
+
+# The termination timeout (start-stop-daemon parameter "retry") ensures
+# that the service will be terminated within a given time (25 + 5 seconds
+# per default) when you are stopping the service.
+#COLLECTD_TERMTIMEOUT="TERM/25/KILL/5"
+
+# Options to collectd
+# See collectd(8) for more details
+# Notes:
+# * Do not specify another PIDFILE but use the variable above to change the location
+# * Do not specify another CONFIGFILE but use the variable above to change the location
+#COLLECTD_OPTS=""
diff --git a/app-metrics/collectd/files/collectd.initd-r3 b/app-metrics/collectd/files/collectd.initd-r3
new file mode 100644
index 000000000000..aa3396d5a451
--- /dev/null
+++ b/app-metrics/collectd/files/collectd.initd-r3
@@ -0,0 +1,71 @@
+#!/sbin/openrc-run
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+COLLECTD_CONFIGFILE=${COLLECTD_CONFIGFILE:-"/etc/collectd.conf"}
+COLLECTD_PIDFILE=${COLLECTD_PIDFILE:-"/run/collectd.pid"}
+COLLECTD_NICELEVEL=${COLLECTD_NICELEVEL:-5}
+COLLECTD_USER=${COLLECTD_USER:-"collectd"}
+COLLECTD_GROUP=${COLLECTD_GROUP:-"collectd"}
+COLLECTD_SSDARGS=${COLLECTD_SSDARGS:-"--wait 1000"}
+COLLECTD_TERMTIMEOUT=${COLLECTD_TERMTIMEOUT:-"TERM/25/KILL/5"}
+COLLECTD_OPTS=${COLLECTD_OPTS:-""}
+
+command="/usr/sbin/collectd"
+command_args="${COLLECTD_OPTS} -C \"${COLLECTD_CONFIGFILE}\" -f"
+command_background=true
+command_group="${COLLECTD_GROUP}"
+command_user="${COLLECTD_USER}"
+start_stop_daemon_args="${COLLECTD_SSDARGS} --nice ${COLLECTD_NICELEVEL}"
+pidfile="${COLLECTD_PIDFILE}"
+retry="${COLLECTD_TERMTIMEOUT}"
+
+extra_commands="configtest"
+description_configtest="Run collectd's internal config check."
+
+required_files="\"${COLLECTD_CONFIGFILE}\""
+
+depend() {
+ use dns
+}
+
+_checkconfig() {
+ if [ $(sed '/^$\|^#/d' "${COLLECTD_CONFIGFILE}" | grep 'LoadPlugin[[:space:]]\+oracle' | wc -l) -ge 1 ] ; then
+ if [ -e /etc/env.d/50oracle-instantclient-basic ] ; then
+ . /etc/env.d/50oracle-instantclient-basic
+ export ORACLE_HOME
+ export TNS_ADMIN
+ else
+ ewarn "Unable to set Oracle environment, Oracle plugin wont work"
+ fi
+ fi
+
+ local test_command="${command} -t -C \"${COLLECTD_CONFIGFILE}\""
+
+ eval ${test_command} 1>/dev/null 2>&1
+ ret=$?
+ if [ $ret -ne 0 ]; then
+ eerror "${SVCNAME} has detected an error in your configuration:"
+ eval ${test_command}
+ fi
+
+ return $ret
+}
+
+configtest() {
+ ebegin "Checking ${SVCNAME} configuration"
+ _checkconfig
+ eend $?
+}
+
+start_pre() {
+ if [ "${RC_CMD}" != "restart" ]; then
+ configtest || return 1
+ fi
+}
+
+stop_pre() {
+ if [ "${RC_CMD}" = "restart" ]; then
+ configtest || return 1
+ fi
+}
diff --git a/app-metrics/collectd/files/collectd.logrotate b/app-metrics/collectd/files/collectd.logrotate
new file mode 100644
index 000000000000..5d344f6208f1
--- /dev/null
+++ b/app-metrics/collectd/files/collectd.logrotate
@@ -0,0 +1,9 @@
+#
+# /etc/logrotate.d/collectd
+#
+/var/log/collectd.log {
+ daily
+ rotate 5
+ notifempty
+ missingok
+}
diff --git a/app-metrics/collectd/files/collectd.tmpfile b/app-metrics/collectd/files/collectd.tmpfile
new file mode 100644
index 000000000000..4524a56ec183
--- /dev/null
+++ b/app-metrics/collectd/files/collectd.tmpfile
@@ -0,0 +1 @@
+d /run/collectd 0770 collectd collectd
diff --git a/app-metrics/collectd/metadata.xml b/app-metrics/collectd/metadata.xml
new file mode 100644
index 000000000000..01fe3556ab5a
--- /dev/null
+++ b/app-metrics/collectd/metadata.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>conikost@gentoo.org</email>
+ <name>Conrad Kostecki</name>
+ </maintainer>
+ <longdescription lang="en">
+ Collectd gathers statistics about the system it is running on and stores this
+ information. Those statistics can then be used to find current performance
+ bottlenecks (i.e. performance analysis) and predict future system load (i.e.
+ capacity planning). Or if you just want pretty graphs of your private server
+ and are fed up with some homegrown solution you're at the right place.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/collectd/collectd/issues</bugs-to>
+ <doc lang="en">https://collectd.org/documentation.shtml</doc>
+ <remote-id type="cpe">cpe:/a:collectd:collectd</remote-id>
+ </upstream>
+ <use>
+ <flag name="contrib">Install user-contributed files in the doc directory</flag>
+ <flag name="filecaps">When set collectd daemon will have set required capabilities to run most plugins even if run as unprivileged user</flag>
+ <flag name="java">Must be set (workaround for java-pkg-opt-2 eclass limitation) when you want java or genericjmx plugin</flag>
+ <flag name="udev">Enable optional udev usage in disk plugin; Required for smart plugin</flag>
+ <flag name="xfs">Enable optional capability to filter on XFS file system in df plugin; Requires XFS headers from <pkg>sys-fs/xfsprogs</pkg>
+ </flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/consul_exporter/Manifest b/app-metrics/consul_exporter/Manifest
new file mode 100644
index 000000000000..f241a01ea496
--- /dev/null
+++ b/app-metrics/consul_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST consul_exporter-0.13.0-deps.tar.xz 41437028 BLAKE2B 35491dc107030d0d705aad68df69c3deed121564464373c820cc10990beb70d6043ae72c65d3289081a0356b5a302500da8c74fc9a5692cc06032a2db1c8514e SHA512 497db1db0ca37c38da293d5186274dcc4e5b20741a048a9bb07338d2f158fef43f8bcb5647cbc14065946eb00fc3a0e5f6b0e06616004b14d6084526fc838437
+DIST consul_exporter-0.13.0.tar.gz 34832 BLAKE2B d85e0320827852493c24be4108786e054f59fac0dd509b84bfd57a99ff239dd93c7a35bb211a83b5020613116519c22f70e1e0913d505eff387d67aac2f3f9b9 SHA512 8ff923350fd935ee79aae582f955565c8127ac2f734d246714db4f47b1e2dca00312a8194cd59f835a3c173e66ff1b1c8f59d8576b27bcc4019b17a64224b3d5
diff --git a/app-metrics/consul_exporter/consul_exporter-0.13.0.ebuild b/app-metrics/consul_exporter/consul_exporter-0.13.0.ebuild
new file mode 100644
index 000000000000..60c30b9cd20f
--- /dev/null
+++ b/app-metrics/consul_exporter/consul_exporter-0.13.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+CONSUL_EXPORTER_COMMIT=11bf27e69d
+
+MY_PV="v${PV/_rc/-rc.}"
+
+DESCRIPTION="Prometheus exporter for consul metrics"
+HOMEPAGE="https://github.com/prometheus/consul_exporter"
+SRC_URI="https://github.com/prometheus/consul_exporter/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+COMMON_DEPEND="acct-group/consul_exporter
+ acct-user/consul_exporter"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND="dev-util/promu"
+
+RESTRICT+=" test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Revision}}/${CONSUL_EXPORTER_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" \
+ .promu.yml || die "Sed failed"
+}
+
+src_compile() {
+ promu build -v || die
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc {README,CONTRIBUTING}.md
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ keepdir /var/log/consul_exporter
+ fowners ${PN}:${PN} /var/log/consul_exporter
+}
diff --git a/app-metrics/consul_exporter/files/consul_exporter.confd b/app-metrics/consul_exporter/files/consul_exporter.confd
new file mode 100644
index 000000000000..eb5fbdeb0cd3
--- /dev/null
+++ b/app-metrics/consul_exporter/files/consul_exporter.confd
@@ -0,0 +1,3 @@
+# Please set the flags you wish to pass to consul_exporter in
+# command_args
+# command_args=""
diff --git a/app-metrics/consul_exporter/files/consul_exporter.initd b/app-metrics/consul_exporter/files/consul_exporter.initd
new file mode 100644
index 000000000000..dbbbfa9c2479
--- /dev/null
+++ b/app-metrics/consul_exporter/files/consul_exporter.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+# Copyright 2016-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Consul Exporter for Prometheus"
+command="/usr/bin/consul_exporter"
+command_background=true
+command_user="${RC_SVCNAME}:${RC_SVCNAME}"
+error_log=/var/log/consul_exporter/${RC_SVCNAME}.log
+output_log=/var/log/consul_exporter/${RC_SVCNAME}.log
+pidfile=/var/run/${RC_SVCNAME}.pid
+
+depend() {
+ after consul net
+}
diff --git a/app-metrics/consul_exporter/metadata.xml b/app-metrics/consul_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/consul_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/dnsmasq_exporter/Manifest b/app-metrics/dnsmasq_exporter/Manifest
new file mode 100644
index 000000000000..26035c37a7dc
--- /dev/null
+++ b/app-metrics/dnsmasq_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST dnsmasq_exporter-0.3.0-deps.tar.xz 152635028 BLAKE2B 47e7be4fd997c717e3737aa6a5074588d8d00b1415d68c8848758af4d2d17e602ff936866ff0e125bfbc239474842d063929ba6be761c6b397740f170036fd02 SHA512 359775e5ad9d8c38fc8acb4ffbc225178593c28de99d40c1227e3d12400dba1a57c817b791d3039f5cc7eaa2c12f6c4a47d1ecb9de6da39439385b95196987be
+DIST dnsmasq_exporter-0.3.0.tar.gz 30721 BLAKE2B 77f2fa32b6e7319a8b1a51075136cbc0aadb0fc2d74b68f6f36fd1a8108a2645a7c0b551786d15704ed552c777a68f3937272e6a47615f333b1ccb4ab4b20c16 SHA512 070ae329884646d3a30b0b8e37ecf2f7a5acee982e616b45117fbe684bf236d40777a517676dba8071a57f4d5f55aa1e5bb821bd3fa248ffaf923a80c7bf089b
diff --git a/app-metrics/dnsmasq_exporter/dnsmasq_exporter-0.3.0.ebuild b/app-metrics/dnsmasq_exporter/dnsmasq_exporter-0.3.0.ebuild
new file mode 100644
index 000000000000..7761bab78363
--- /dev/null
+++ b/app-metrics/dnsmasq_exporter/dnsmasq_exporter-0.3.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="prometheus exporter for dnsmasq"
+HOMEPAGE="https://github.com/google/dnsmasq_exporter"
+SRC_URI="https://github.com/google/dnsmasq_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz
+https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="BSD MIT Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ acct-group/dnsmasq_exporter
+ acct-user/dnsmasq_exporter"
+ RDEPEND="${DEPEND}"
+
+src_compile() {
+ ego build
+}
+
+src_install() {
+ dobin dnsmasq_exporter
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ keepdir /var/log/dnsmasq_exporter
+ fowners ${PN}:${PN} /var/log/dnsmasq_exporter
+}
+
+pkg_postinst() {
+ if [[ -e "${EROOT}"/var/log/ddnsmasq_exporter ]]; then
+ elog "The log directory is now ${EROOT}/var/log/dnsmasq_exporter"
+ elog "in order to fix a typo."
+ fi
+}
diff --git a/app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.confd b/app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.confd
new file mode 100644
index 000000000000..f655cc32abfe
--- /dev/null
+++ b/app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.confd
@@ -0,0 +1,3 @@
+# Please set the flags you wish to pass to dnsmasq_exporter in
+# command_args
+# command_args=""
diff --git a/app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.initd b/app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.initd
new file mode 100644
index 000000000000..7c600efdbbaf
--- /dev/null
+++ b/app-metrics/dnsmasq_exporter/files/dnsmasq_exporter.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+# Copyright 2016-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="dnsmasq Exporter for Prometheus"
+command="/usr/bin/dnsmasq_exporter"
+command_background=true
+command_user="${RC_SVCNAME}:${RC_SVCNAME}"
+error_log=/var/log/dnsmasq_exporter/${RC_SVCNAME}.log
+output_log=/var/log/dnsmasq_exporter/${RC_SVCNAME}.log
+pidfile=/var/run/${RC_SVCNAME}.pid
+
+depend() {
+ after dnsmasq net
+}
diff --git a/app-metrics/dnsmasq_exporter/metadata.xml b/app-metrics/dnsmasq_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/dnsmasq_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/elasticsearch_exporter/Manifest b/app-metrics/elasticsearch_exporter/Manifest
new file mode 100644
index 000000000000..01992dabedde
--- /dev/null
+++ b/app-metrics/elasticsearch_exporter/Manifest
@@ -0,0 +1,4 @@
+DIST elasticsearch_exporter-1.3.0-deps.tar.xz 106387304 BLAKE2B d67e8b746ecf9f05310194485ac99b95768b813a7265b3ec445261d52708551c37bc14718021ee67306c84fedc323f5ef4e87cba043354b3b49c9ba0764e5575 SHA512 0374030189927deb14c8bd34b6472e9be8f7025aea525394a5eca5d6899311296e7eeefb7d05a2b4a75549c4590b9590dd592ab3c0aaf008c311922a01ea81d5
+DIST elasticsearch_exporter-1.3.0.tar.gz 93489 BLAKE2B 33e2dbe9608bd052bc4f31fc2a38774981d96f30fd54465bd2b10d075f0fade29fe6c40d2e32370a38edc41d04b3772100c39f5670c302a0a334e2a7d5ee6463 SHA512 a88ec20cd7f2f9859d2e169f7813b84c3286b65dfc3a625545608416dbee5f96d4e223e7d2ea2f2b788be766ead1abb11b795d3059a628d0c3c56f567eebea00
+DIST elasticsearch_exporter-1.8.0-deps.tar.xz 9361520 BLAKE2B 67b89d1dd7d2fb3751cb8f64f55b851dfbebe0629f1efc90428145783d80b2e815ef6c317acb6920da366ba68ed3b8079311addea020e3ed0342b1e20177f294 SHA512 40050c678f4bd71d1c6bc23947d47434d23838f127476649a0bc533cf2a5db3f9195bf31b1f197b9ee80347be4de9cfa92cbe7ebee478780d25d3bd66267ac56
+DIST elasticsearch_exporter-1.8.0.tar.gz 111232 BLAKE2B 50a32a27492a7c21f5bd0f5022087566733fbc1a477011cfd19a7be7601fe01ec0c993a5c71ca32bd7e09ba28e00f45be4f546ab95cf78207b8542e41de681e9 SHA512 d9c0e582b566f1cdd025da2fda812b458c96f14db9f05a4e82238ddc581c5b30d4685e8f5d40e41c0c919b66e7af810ba01b649cd34537cf8d2995bd4b49045c
diff --git a/app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.3.0.ebuild b/app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.3.0.ebuild
new file mode 100644
index 000000000000..f0848da7b21d
--- /dev/null
+++ b/app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.3.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+GIT_COMMIT=fe20e49
+MY_PV=${PV/_/}
+inherit go-module
+DESCRIPTION="Elasticsearch stats exporter for Prometheus"
+HOMEPAGE="https://github.com/justwatchcom/elasticsearch_exporter"
+SRC_URI="https://github.com/justwatchcom/elasticsearch_exporter/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="acct-group/elasticsearch_exporter
+ acct-user/elasticsearch_exporter"
+ RDEPEND="${DEPEND}"
+BDEPEND="dev-util/promu"
+
+src_prepare() {
+ default
+ sed -i -e "/-s$/d" -e "s/{{.Revision}}/${GIT_COMMIT}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build --prefix bin || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dobin bin/elasticsearch_exporter
+ dodoc {README,CHANGELOG}.md
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ keepdir /var/log/elasticsearch_exporter
+ fowners ${PN}:${PN} /var/log/elasticsearch_exporter
+}
diff --git a/app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.8.0.ebuild b/app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.8.0.ebuild
new file mode 100644
index 000000000000..dfb7077974a5
--- /dev/null
+++ b/app-metrics/elasticsearch_exporter/elasticsearch_exporter-1.8.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+GIT_COMMIT=fd25030ff5
+
+MY_PV=${PV/_/}
+DESCRIPTION="Elasticsearch stats exporter for Prometheus"
+HOMEPAGE="https://github.com/justwatchcom/elasticsearch_exporter"
+SRC_URI="https://github.com/justwatchcom/elasticsearch_exporter/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="acct-group/elasticsearch_exporter
+ acct-user/elasticsearch_exporter"
+ RDEPEND="${DEPEND}"
+BDEPEND="dev-util/promu"
+
+src_prepare() {
+ default
+ sed -i -e "/-s$/d" -e "s/{{.Revision}}/${GIT_COMMIT}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build --prefix bin || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dobin bin/elasticsearch_exporter
+ dodoc {README,CHANGELOG}.md
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ keepdir /var/log/elasticsearch_exporter
+ fowners ${PN}:${PN} /var/log/elasticsearch_exporter
+}
diff --git a/app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.confd b/app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.confd
new file mode 100644
index 000000000000..9a4dcce5b4b2
--- /dev/null
+++ b/app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus elasticsearch exporter
+command_args="--es.uri=http://localhost:9200"
diff --git a/app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.initd b/app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.initd
new file mode 100644
index 000000000000..fe932b923d14
--- /dev/null
+++ b/app-metrics/elasticsearch_exporter/files/elasticsearch_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus elasticsearch exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/elasticsearch_exporter"
+command_args="${command_args:---es.uri=http://localhost:9200}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/elasticsearch_exporter/${RC_SVCNAME}.log \
+ --stderr /var/log/elasticsearch_exporter/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/elasticsearch_exporter/metadata.xml b/app-metrics/elasticsearch_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/elasticsearch_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/exabgp_exporter/Manifest b/app-metrics/exabgp_exporter/Manifest
new file mode 100644
index 000000000000..46d3ed3598af
--- /dev/null
+++ b/app-metrics/exabgp_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST exabgp_exporter-1.1.3-deps.tar.xz 6513860 BLAKE2B 171180eac9880f23d9e26275e546234595c224dfa1f5350ce1fb196bf8360cf7818f5438b94d587470e307230b2fb8b0386bc8713e91d8be27a0ea3b81ea9e9f SHA512 00278fee0b6a214f41e0ff47879961f5092d07d4b45aa593e23b8c55f4732bd269385e692a6156c47ed1c92c1b9ee50fbf659e2e6f05c62fe1fd42e2db83bd1b
+DIST exabgp_exporter-1.1.3.tar.gz 102411 BLAKE2B 936a1aabaf52c9ee1ff02e14f899e00d481b178b492aabb53a531387c730b7fe6bbe90c3b3568c89323cb7d414b050a51cbb06d363ab0b93fdef93f71f88c1dc SHA512 55d19c5d305aa277797d3b6fe92f0a43bedf44916a24719c722316ad31079a5df6d69bca319475fcd2b6c9cbd7f7ad5b9acb10b46e188d45c84ed9bb99528c04
diff --git a/app-metrics/exabgp_exporter/exabgp_exporter-1.1.3.ebuild b/app-metrics/exabgp_exporter/exabgp_exporter-1.1.3.ebuild
new file mode 100644
index 000000000000..87ba58aa1fa2
--- /dev/null
+++ b/app-metrics/exabgp_exporter/exabgp_exporter-1.1.3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for exabgp"
+HOMEPAGE="https://github.com/gizmoguy/exabgp_exporter"
+SRC_URI="https://github.com/gizmoguy/exabgp_exporter/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ CGO_ENABLED=0 go build \
+ -ldflags "-X github.com/prometheus/common/version.Version=${PV%_*}
+ -X github.com/prometheus/common/version.Branch=master \
+ -X github.com/prometheus/common/version.BuildUser=$(whoami)
+ -X github.com/prometheus/common/version.BuildDate=$(date -u +'%FT%T%z')" \
+ -o ./bin/${PN} ./cmd/exabgp_exporter/main.go || die
+}
+
+src_install() {
+ dobin ./bin/${PN}
+ dodoc README.md
+ systemd_dounit "${FILESDIR}/${PN}.service"
+ systemd_newunit "${FILESDIR}/${PN}_at.service" "${PN}@.service"
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+ newconfd "${FILESDIR}/${PN}.confd" "${PN}"
+}
diff --git a/app-metrics/exabgp_exporter/files/exabgp_exporter.confd b/app-metrics/exabgp_exporter/files/exabgp_exporter.confd
new file mode 100644
index 000000000000..213b394ea25a
--- /dev/null
+++ b/app-metrics/exabgp_exporter/files/exabgp_exporter.confd
@@ -0,0 +1,2 @@
+#command_args="standalone"
+#command_user="exabgp:exabgp"
diff --git a/app-metrics/exabgp_exporter/files/exabgp_exporter.initd b/app-metrics/exabgp_exporter/files/exabgp_exporter.initd
new file mode 100644
index 000000000000..b54e95b46222
--- /dev/null
+++ b/app-metrics/exabgp_exporter/files/exabgp_exporter.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus exporter for exabgp"
+command="/usr/bin/exabgp_exporter"
+command_user="${command_user:-exabgp:exabgp}"
+command_args="${command_args:-standalone}"
+command_background=yes
+error_log="${error_log:-/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log}"
+output_log="${output_log:-/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log}"
+pidfile="${pidfile:-/run/${RC_SVCNAME}.pid}"
+start_stop_daemon_args="--user ${command_user%:*} --group ${command_user#*:}"
+: "${supervisor:=supervise-daemon}"
+: "${respawn_delay:=5}"
+: "${respawn_max:=0}"
+
+start() {
+ checkpath --directory --owner "${command_user}" "${error_log%/*}" "${output_log%/*}"
+ default_start
+}
diff --git a/app-metrics/exabgp_exporter/files/exabgp_exporter.service b/app-metrics/exabgp_exporter/files/exabgp_exporter.service
new file mode 100644
index 000000000000..f5c7d0d6f82a
--- /dev/null
+++ b/app-metrics/exabgp_exporter/files/exabgp_exporter.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Prometheus exporter for exabgp
+Documentation=https://github.com/lusis/exabgp_exporter/blob/master/README.md
+
+[Install]
+WantedBy=multi-user.target
+
+[Service]
+EnvironmentFile=-/etc/systemd/system/exabgp_exporter.service.env
+Environment=command_args="standalone"
+TimeoutStartSec=0
+Restart=always
+RestartSec=5s
+ExecStart=/usr/bin/exabgp_exporter $command_args
diff --git a/app-metrics/exabgp_exporter/files/exabgp_exporter_at.service b/app-metrics/exabgp_exporter/files/exabgp_exporter_at.service
new file mode 100644
index 000000000000..17b13f089611
--- /dev/null
+++ b/app-metrics/exabgp_exporter/files/exabgp_exporter_at.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Prometheus exporter for exabgp instance %i
+Documentation=https://github.com/lusis/exabgp_exporter/blob/master/README.md
+
+[Install]
+WantedBy=multi-user.target
+
+[Service]
+EnvironmentFile=-/etc/systemd/system/exabgp_exporter@%i.service.env
+Environment=command_args="standalone"
+TimeoutStartSec=0
+Restart=always
+RestartSec=5s
+ExecStart=/usr/bin/exabgp_exporter $command_args
diff --git a/app-metrics/exabgp_exporter/metadata.xml b/app-metrics/exabgp_exporter/metadata.xml
new file mode 100644
index 000000000000..591131b1265f
--- /dev/null
+++ b/app-metrics/exabgp_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zmedico@gentoo.org</email>
+ <name>Zac Medico</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/fritzbox_smarthome_exporter/Manifest b/app-metrics/fritzbox_smarthome_exporter/Manifest
new file mode 100644
index 000000000000..d1060f342b48
--- /dev/null
+++ b/app-metrics/fritzbox_smarthome_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST fritzbox_smarthome_exporter-0.4.3-deps.tar.xz 4487704 BLAKE2B 87c9ec8bba0768ec92efcdaa9ca8dd0aae723849d506e1c3c8b17c918f20d03f0fd27d25cbaed008ee3c0e09870caf692b96eeea0cf95df60512c810a9dff15e SHA512 801582c74ed8ae25dca8cf24a333ac4281a1a77630ce973d339f66d062a91b22d29b3e061bd9283849382546c6b930eb5d3b7fa257d2aa451203d5913e6ed0aa
+DIST fritzbox_smarthome_exporter-0.4.3.tar.gz 35339 BLAKE2B 4ce01b831c5e72687eb8704859d227b3ea04b18d2dd21b74d7b5d7b451d89f39c4a1105d9c1109005f4ac9c01cc6e4ccbd58544f0e443f30e11f0a8612651ed8 SHA512 ab674b48ccfa32ecf9ef45674a612a0e3052bfc614ae40865158b9c32cc6c4714858edcdfe063ec91a8ea5a8a8f993f1b52a90764d07b9f52d18154efd04a5bd
diff --git a/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.confd b/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.confd
new file mode 100644
index 000000000000..7e70595ec3ce
--- /dev/null
+++ b/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.confd
@@ -0,0 +1,35 @@
+# /etc/conf.d/fritzbox_smarthome_exporter
+
+# PID file
+#EXPORTER_PIDFILE="/run/${RC_SVCNAME}.pid"
+
+# The termination timeout (start-stop-daemon parameter "retry") ensures
+# that the service will be terminated within a given time (60 + 5 seconds
+# per default) when you are stopping the service.
+#EXPORTER_TERMTIMEOUT="TERM/60/KILL/5"
+
+# User to run exporter as
+#EXPORTER_USER="fritzbox_smarthome_exporter"
+
+# User group to run exporter as
+#EXPORTER_GROUP="fritzbox_smarthome_exporter"
+
+# You can use this configuration option to pass additional options to the
+# start-stop-daemon, see start-stop-daemon(8) for more details.
+# Per default we wait 1000ms after we have started the service to ensure
+# that the daemon is really up and running.
+#EXPORTER_SSDARGS="--wait 1000"
+
+# Exporter flags
+# See `fritzbox_smarthome_exporter --help` for more details.
+# For username and password use dedicated variables below.
+EXPORTER_FLAGS="-url=\"https://fritz.box\""
+EXPORTER_FLAGS="${EXPORTER_FLAGS} -cert=/path/to/your/FRITZ!box/certificate.pem"
+
+# FRITZ!Box user
+# Restricted user account for the exporter to use to connect to your FRITZ!Box.
+FRITZBOX_USERNAME="smarthome_exporter"
+
+# FRITZ!Box user password
+# Password for FRITZBOX_USERNAME (see above).
+FRITZBOX_PASSWORD="secret_smarthome_exporter_user_password"
diff --git a/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.initd b/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.initd
new file mode 100644
index 000000000000..fa20e7b5cc47
--- /dev/null
+++ b/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.initd
@@ -0,0 +1,58 @@
+#!/sbin/openrc-run
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus exporter for FRITZ!Box Smart Home"
+
+EXPORTER_FLAGS=${EXPORTER_FLAGS:-""}
+EXPORTER_USER=${EXPORTER_USER:-"fritzbox_smarthome_exporter"}
+EXPORTER_GROUP=${EXPORTER_GROUP:-"fritzbox_smarthome_exporter"}
+EXPORTER_PIDFILE=${EXPORTER_PIDFILE:-"/run/${RC_SVCNAME}.pid"}
+EXPORTER_SSDARGS=${EXPORTER_SSDARGS:-"--wait 1000"}
+EXPORTER_TERMTIMEOUT=${EXPORTER_TERMTIMEOUT:-"TERM/60/KILL/5"}
+
+command="/usr/bin/fritzbox_smarthome_exporter"
+command_args="${EXPORTER_FLAGS}"
+command_background="true"
+start_stop_daemon_args="${EXPORTER_SSDARGS}"
+start_stop_daemon_args="${start_stop_daemon_args} --user ${EXPORTER_USER}"
+start_stop_daemon_args="${start_stop_daemon_args} --group ${EXPORTER_GROUP}"
+
+start_stop_daemon_args="${start_stop_daemon_args} --stdout /var/log/fritzbox_smarthome_exporter/${RC_SVCNAME}.log"
+start_stop_daemon_args="${start_stop_daemon_args} --stderr /var/log/fritzbox_smarthome_exporter/${RC_SVCNAME}.log"
+
+getconfig() {
+ local key="$1"
+ local value_default="$2"
+ local value=
+
+ if service_started; then
+ value="$(service_get_value "${key}")"
+ fi
+
+ if [ -z "${value}" ]; then
+ # Value not explicitly set
+ echo "${value_default}"
+ else
+ echo "${value}"
+ fi
+}
+
+pidfile="$(getconfig pidfile ${EXPORTER_PIDFILE})"
+retry="$(getconfig retry ${EXPORTER_TERMTIMEOUT})"
+
+depend() {
+ after net
+ use dns
+}
+
+start_pre() {
+ if [ -n "${FRITZBOX_USERNAME}" ] && [ -n "${FRITZBOX_PASSWORD}" ] ; then
+ export USERNAME="${FRITZBOX_USERNAME}"
+ export PASSWORD="${FRITZBOX_PASSWORD}"
+ fi
+}
+
+start_post() {
+ service_set_value retry "${EXPORTER_TERMTIMEOUT}"
+}
diff --git a/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.logrotate b/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.logrotate
new file mode 100644
index 000000000000..8d5ee32096c9
--- /dev/null
+++ b/app-metrics/fritzbox_smarthome_exporter/files/fritzbox_smarthome_exporter.logrotate
@@ -0,0 +1,5 @@
+/var/log/fritzbox_smarthome_exporter/*.log {
+ missingok
+ notifempty
+ size 30k
+}
diff --git a/app-metrics/fritzbox_smarthome_exporter/fritzbox_smarthome_exporter-0.4.3.ebuild b/app-metrics/fritzbox_smarthome_exporter/fritzbox_smarthome_exporter-0.4.3.ebuild
new file mode 100644
index 000000000000..4a66f10f62ff
--- /dev/null
+++ b/app-metrics/fritzbox_smarthome_exporter/fritzbox_smarthome_exporter-0.4.3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Prometheus exporter for FRITZ!Box Smart Home"
+HOMEPAGE="https://github.com/jayme-github/fritzbox_smarthome_exporter"
+SRC_URI="https://github.com/jayme-github/fritzbox_smarthome_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD GPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="acct-group/fritzbox_smarthome_exporter
+ acct-user/fritzbox_smarthome_exporter"
+
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ ego build -v -o bin/${PN}
+}
+
+src_test() {
+ ego test -v ./...
+}
+
+src_install() {
+ dobin bin/*
+ einstalldocs
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ # restrict access because conf.d entry could contain
+ # FRITZ!Box credentials
+ fperms 0640 /etc/conf.d/${PN}
+ insinto /etc/logrotate.d/
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/fritzbox_smarthome_exporter/metadata.xml b/app-metrics/fritzbox_smarthome_exporter/metadata.xml
new file mode 100644
index 000000000000..fd062d5d1135
--- /dev/null
+++ b/app-metrics/fritzbox_smarthome_exporter/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>William Hubbs</name>
+ <email>williamh@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/jayme-github/fritzbox_smarthome_exporter/issues</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/fusioninventory-agent/Manifest b/app-metrics/fusioninventory-agent/Manifest
new file mode 100644
index 000000000000..0b2878274ac1
--- /dev/null
+++ b/app-metrics/fusioninventory-agent/Manifest
@@ -0,0 +1 @@
+DIST fusioninventory-agent-2.5.2.tar.gz 2728830 BLAKE2B c6a26c4adb6b8e6bdaf829e46dffa47cc629731411f8b6e55a17eb83bd69536ca0e07899c5e3536ee3962326e643157c60ab8825971b2f44995e42f04e689321 SHA512 5bd39652fd3b857a4364fa300b07b8a2580bdafc6b84f95ab852b60b887ce8278bd99f85b74991b6da5cc21e1636f33c7125dbc27a02df915df4ea6f0ceffaed
diff --git a/app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch b/app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch
new file mode 100644
index 000000000000..a3a6b439713c
--- /dev/null
+++ b/app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch
@@ -0,0 +1,51 @@
+diff -urN a/lib/FusionInventory/Agent/Config.pm b/lib/FusionInventory/Agent/Config.pm
+--- a/lib/FusionInventory/Agent/Config.pm 2020-05-27 11:09:31.969999393 -0000
++++ b/lib/FusionInventory/Agent/Config.pm 2020-05-27 11:09:39.833332729 -0000
+@@ -67,7 +67,7 @@
+ my ($class, %params) = @_;
+
+ my $self = {
+- '_confdir' => undef, # SYSCONFDIR replaced here from Makefile
++ '_confdir' => '/etc/fusioninventory', # SYSCONFDIR replaced here from Makefile
+ };
+ bless $self, $class;
+ $self->_loadDefaults();
+diff -urN a/lib/setup.pm b/lib/setup.pm
+--- a/lib/setup.pm 2020-05-27 11:09:31.989999393 -0000
++++ b/lib/setup.pm 2020-05-27 11:11:02.233332727 -0000
+@@ -11,9 +11,9 @@
+ our @EXPORT = ('%setup');
+
+ our %setup = (
+- datadir => './share',
++ datadir => '/usr/share/fusioninventory',
+ libdir => './lib',
+- vardir => './var',
++ vardir => '/var/lib/fusioninventory',
+ );
+
+ # Compute directly libdir from this setup file as it should be installed
+diff -urN a/Makefile.PL b/Makefile.PL
+--- a/Makefile.PL 2020-05-27 11:09:31.966666059 -0000
++++ b/Makefile.PL 2020-05-27 11:09:39.833332729 -0000
+@@ -170,18 +170,15 @@
+ INSTALLSCRIPT => '$(PREFIX)/bin',
+ INSTALLSITESCRIPT => '$(PREFIX)/bin',
+ INSTALLVENDORSCRIPT => '$(PREFIX)/bin',
+- INSTALLLIB => '$(DATADIR)/lib',
+- INSTALLSITELIB => '$(DATADIR)/lib',
+- INSTALLVENDORLIB => '$(DATADIR)/lib',
+ INSTALLMAN1DIR => '$(PREFIX)/share/man/man1',
+ INSTALLSITEMAN1DIR => '$(PREFIX)/share/man/man1',
+ INSTALLVENDORMAN1DIR => '$(PREFIX)/share/man/man1',
+ INSTALLMAN3DIR => '$(PREFIX)/share/man/man3',
+ INSTALLSITEMAN3DIR => '$(PREFIX)/share/man/man3',
+ INSTALLVENDORMAN3DIR => '$(PREFIX)/share/man/man3',
+- SYSCONFDIR => '$(PREFIX)/etc/fusioninventory',
++ SYSCONFDIR => '/etc/fusioninventory',
+ DATADIR => '$(PREFIX)/share/fusioninventory',
+- LOCALSTATEDIR => '$(PREFIX)/var/fusioninventory',
++ LOCALSTATEDIR => '/var/lib/fusioninventory',
+ );
+
+ # allow variables defined on command line to override defaults
diff --git a/app-metrics/fusioninventory-agent/files/fusioninventory-agent.confd b/app-metrics/fusioninventory-agent/files/fusioninventory-agent.confd
new file mode 100644
index 000000000000..8a68458e346c
--- /dev/null
+++ b/app-metrics/fusioninventory-agent/files/fusioninventory-agent.confd
@@ -0,0 +1,2 @@
+# additional args for fusioninventory-agent
+FUSIONINVENTORY_OPTIONS=""
diff --git a/app-metrics/fusioninventory-agent/files/fusioninventory-agent.initd b/app-metrics/fusioninventory-agent/files/fusioninventory-agent.initd
new file mode 100644
index 000000000000..58bd3bbf2b45
--- /dev/null
+++ b/app-metrics/fusioninventory-agent/files/fusioninventory-agent.initd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+pidfile=${RC_PREFIX%/}/run/${SVCNAME}.pid
+
+name="fusioninventory-agent daemon"
+description="FusionInventroy agent"
+command=/usr/bin/fusioninventory-agent
+command_args="--daemon --pidfile ${pidfile} ${FUSIONINVENTORY_OPTIONS}"
+extra_started_commands="reload"
+
+depend() {
+ need net
+}
+
+reload() {
+ ebegin "Reloading ${SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild b/app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild
new file mode 100644
index 000000000000..9756d4073782
--- /dev/null
+++ b/app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit perl-module systemd
+
+DESCRIPTION="The FusionInventory agent is a generic management agent"
+HOMEPAGE="http://fusioninventory.org/"
+SRC_URI="https://github.com/fusioninventory/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="
+ dev-perl/libwww-perl
+ dev-perl/File-Which
+ dev-perl/Net-IP
+ dev-perl/Text-Template
+ dev-perl/UNIVERSAL-require
+ dev-perl/XML-TreePP
+ dev-perl/XML-XPath
+ virtual/perl-IO-Compress
+ virtual/perl-threads
+ dev-perl/HTTP-Daemon
+ dev-perl/IO-Socket-SSL
+ dev-perl/LWP-Protocol-https
+ dev-perl/Proc-Daemon
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-perl/Module-Install
+ dev-perl/File-Copy-Recursive
+ app-portage/gentoolkit
+"
+
+PATCHES=( "${FILESDIR}/${P}-dirs.patch" )
+
+src_prepare() {
+ # gentoo has ip under /bin/ip and ifconfig under /bin/ifconfig
+ sed \
+ -e "s:/sbin/ifconfig:/bin/ifconfig:g" \
+ -e "s:/sbin/ip:/bin/ip:g" \
+ -i lib/FusionInventory/Agent/Task/Inventory/Linux/Networks.pm \
+ -i lib/FusionInventory/Agent/Tools/Linux.pm || die
+ default
+}
+
+src_install() {
+ default
+ systemd_dounit contrib/unix/fusioninventory-agent.service
+ newinitd "${FILESDIR}/${PN}.initd" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd" ${PN}
+ keepdir /var/lib/fusioninventory
+}
diff --git a/app-metrics/fusioninventory-agent/metadata.xml b/app-metrics/fusioninventory-agent/metadata.xml
new file mode 100644
index 000000000000..7139acbaaca3
--- /dev/null
+++ b/app-metrics/fusioninventory-agent/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>alexxy@gentoo.org</email>
+ <name>Alexey Shvetsov</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/github-exporter/Manifest b/app-metrics/github-exporter/Manifest
new file mode 100644
index 000000000000..983ade9ccf52
--- /dev/null
+++ b/app-metrics/github-exporter/Manifest
@@ -0,0 +1,4 @@
+DIST github-exporter-1.0.3-deps.tar.xz 7786648 BLAKE2B 1dd1876f144e95602131f6f0ec11f4189a88a56821f4ee812b906a1d6d8494651465e416c409a998b19b48081ec8c53d5f11a51f8292002cb9fc50fc13fc4e81 SHA512 247b80369efe54e838868b0c94075031a4430d03f1c8ffefb686d94a6de70f5f288f79459a14f9c1331d2f1a3f9e865e5f7cbd658dc6f01bc7c6e893b5305af2
+DIST github-exporter-1.0.3.tar.gz 22089 BLAKE2B 69ac6a71fa8872c08cb24b6fa3e0aa79a8d49fdc626606f5ae1265cb654f73a320d53c1f934f3b2a116c713412f0cb278e27ed892da19b54ff09405abba5bfc4 SHA512 9b3ab36dc8c76e844afdb7f36099dca86f358072fb0ccc134e4ba6754b2a84122b700bb92607014eb2e21e1e3f3889f842e82cd612e66d223e31aef60d123220
+DIST github-exporter-1.3.1-deps.tar.xz 35415224 BLAKE2B e5cb1e520d240e80c8a1e79b875be9dc559c0d0a862c30b8470fea46d913dfdfa4c9df91ecb7f332dcf8e906bedb92e81206cb86051a614aff0f915ec72bf3f1 SHA512 8fd1cdde2e5418c9245cb9ce420e549a06963ff11c41c11c9cae7be031e46f3f6b25b8d0e727394ce23e831e92453c406633cdf8ad8b045a9b3af496041d5a1b
+DIST github-exporter-1.3.1.tar.gz 23713 BLAKE2B 682545ca8d5ebf4f7baf0351a7a78009310259b5a64c1f4d917cc964cde1267019d995c96c7fd361bb3a127c7d6dcf475bde876aa9f07ebdb658c1ef0f697544 SHA512 d04f7b01ee1ddae9997273d116ab91b445c425cbd7cc73cd96563c7bfbb7f818ec2f7ab49c5c1f0f8e6d182568b23ce353e033c272d2aa43b5c5cf12d663db1c
diff --git a/app-metrics/github-exporter/files/github-exporter.confd b/app-metrics/github-exporter/files/github-exporter.confd
new file mode 100644
index 000000000000..35368901c8f1
--- /dev/null
+++ b/app-metrics/github-exporter/files/github-exporter.confd
@@ -0,0 +1,14 @@
+# settings for github-exporter
+
+# I will list the required variables here, but there are several more.
+# Please see the README for all of them.
+
+# LISTEN_PORT specifies the port the exporter will use. Below is the default.
+# LISTEN_PORT=9171
+
+# ORGS should contain a list of github organizations you wish to monitor.
+# ORGS="org1,org2"
+
+# REPOS should contain a list of github repos you want tomonitor.
+# If neither ORGS nor REPOS is set, the exporter will refuse to run.
+# REPOS="user1/repo1,user2/repo2"
diff --git a/app-metrics/github-exporter/files/github-exporter.initd b/app-metrics/github-exporter/files/github-exporter.initd
new file mode 100644
index 000000000000..45ea133260af
--- /dev/null
+++ b/app-metrics/github-exporter/files/github-exporter.initd
@@ -0,0 +1,53 @@
+#!/sbin/openrc-run
+
+description="github exporter for Prometheus"
+command=/usr/bin/github-exporter
+command_background=yes
+command_user=${RC_SVCNAME}:${RC_SVCNAME}
+pidfile=/var/run/github-exporter.pid
+error_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+output_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
+
+start_pre() {
+ local env_args
+ if [ -z "${ORGS}" ] && [ -z "${REPOS}" ]; then
+ eerror "ORGS and / or REPOS must be set."
+ return 1
+ fi
+ if [ -n "${GITHUB_TOKEN}" ] && [ -n "${GITHUB_TOKEN_FILE}" ]; then
+ eerror "Please set only one of GITHUB_TOKEN or GITHUB_TOKEN_FILE"
+ return 1
+ fi
+ if [ -n "${API_URL}" ]; then
+ env_args="${env_args} -e API_URL=${API_URL}"
+ fi
+ if [ -n "${GITHUB_TOKEN}" ]; then
+ env_args="${env_args} -e GITHUB_TOKEN=${GITHUB_TOKEN}"
+ elif [ -n "${GITHUB_TOKEN_FILE}" ]; then
+ env_args="${env_args} -e GITHUB_TOKEN_FILE=${GITHUB_TOKEN_FILE}"
+ fi
+ if [ -z "${LISTEN_PORT}" ]; then
+ env_args="${env_args} -e LISTEN_PORT=9171"
+ else
+ env_args="${env_args} -e LISTEN_PORT=${LISTEN_PORT}"
+ fi
+ if [ -n "${LOG_LEVEL}" ]; then
+ env_args="${env_args} -e LOG_LEVEL=${LOG_LEVEL}"
+ fi
+ if [ -n "${METRICS_PATH}" ]; then
+ env_args="${env_args} -e METRICS_PATH=${METRICS_PATH}"
+ fi
+ if [ -n "${ORGS}" ]; then
+ env_args="${env_args} -e ORGS=${ORGS}"
+ fi
+ if [ -n "${REPOS}" ]; then
+ env_args="${env_args} -e REPOS=${REPOS}"
+ fi
+ start_stop_daemon_args="${start_stop_daemon_args} ${env_args}"
+ supervise_daemon_args="${supervise_daemon_args} ${env_args}"
+ return 0
+}
diff --git a/app-metrics/github-exporter/github-exporter-1.0.3.ebuild b/app-metrics/github-exporter/github-exporter-1.0.3.ebuild
new file mode 100644
index 000000000000..52f961aa7341
--- /dev/null
+++ b/app-metrics/github-exporter/github-exporter-1.0.3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+DESCRIPTION="Github statistics exporter for prometheus"
+HOMEPAGE="https://github.com/infinityworks/github-exporter"
+SRC_URI="https://github.com/infinityworks/github-exporter/archive/${PV}.tar.gz -> ${P}.tar.gz
+https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="acct-group/github-exporter
+ acct-user/github-exporter"
+
+ src_prepare() {
+ default
+ sed -i -e 's/-race//' Makefile || die 'sed failed'
+ }
+
+src_compile() {
+ ego build
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc *.md
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ elog "Before you can use ${PN}, you must configure it in"
+ elog "${EROOT}/etc/conf.d/${PN}"
+ fi
+}
diff --git a/app-metrics/github-exporter/github-exporter-1.3.1.ebuild b/app-metrics/github-exporter/github-exporter-1.3.1.ebuild
new file mode 100644
index 000000000000..cfda6938786e
--- /dev/null
+++ b/app-metrics/github-exporter/github-exporter-1.3.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+DESCRIPTION="Github statistics exporter for prometheus"
+HOMEPAGE="https://github.com/infinityworks/github-exporter"
+SRC_URI="https://github.com/infinityworks/github-exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz
+https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="acct-group/github-exporter
+ acct-user/github-exporter"
+
+ src_prepare() {
+ default
+ sed -i -e 's/-race//' Makefile || die 'sed failed'
+ }
+
+src_compile() {
+ ego build
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc *.md
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ elog "Before you can use ${PN}, you must configure it in"
+ elog "${EROOT}/etc/conf.d/${PN}"
+ fi
+}
diff --git a/app-metrics/github-exporter/metadata.xml b/app-metrics/github-exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/github-exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/go-carbon/Manifest b/app-metrics/go-carbon/Manifest
new file mode 100644
index 000000000000..09d89f593940
--- /dev/null
+++ b/app-metrics/go-carbon/Manifest
@@ -0,0 +1,2 @@
+DIST go-carbon-0.17.3.tar.gz 5426401 BLAKE2B 8f2ea61524b9fdc70c7d233d4e88c7190351c970cc787d80de14e51d4cc4ad94413774c7ca86fbf4910bffc3ad241b266772969305378afc289a146f7ad69318 SHA512 16e12099692da6a6b8df55816f5b7b91777c384ca292ea309c16513096e8601cb447e7ef4530466e6b989042efc4b31d8190290b35938d2e0e654f4ae6da70bb
+DIST go-carbon-0.18.0.tar.gz 6228539 BLAKE2B 8019b8a6a3a67353f0ac10e88cb176c70b935d83f3853604245bdce78eaf241efa578ba7ebbbc4e4e9f3921c31e6732d70fd95402ca0ba96ce42caed1fe32c0d SHA512 a225fd742d4d59b72d153b57ecf77bfc3cc27bcb65af2ced8f5ed4f6970507f2a00dabd9f15872f90b89e9d7d97efe82123ca0b9fa9ebcf3562d0be3cec13413
diff --git a/app-metrics/go-carbon/files/go-carbon.confd b/app-metrics/go-carbon/files/go-carbon.confd
new file mode 100644
index 000000000000..41e5838dd249
--- /dev/null
+++ b/app-metrics/go-carbon/files/go-carbon.confd
@@ -0,0 +1,8 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+#CONFIG_FILE=/etc/go-carbon/go-carbon.conf
+
+# user and group to run go-carbon as
+#USER=carbon
+#GROUP=carbon
diff --git a/app-metrics/go-carbon/files/go-carbon.initd b/app-metrics/go-carbon/files/go-carbon.initd
new file mode 100644
index 000000000000..c7fb95d36a2a
--- /dev/null
+++ b/app-metrics/go-carbon/files/go-carbon.initd
@@ -0,0 +1,44 @@
+#!/sbin/openrc-run
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Graphite whisper metrics storage and retrieval server."
+
+carbonapi_config=${CONFIG_FILE:-/etc/go-carbon/${SVCNAME}.conf}
+
+command="/usr/bin/go-carbon"
+command_args="-config ${carbonapi_config}"
+pidfile="/run/go-carbon/${SVCNAME}.pid"
+user=${USER:-carbon}
+group=${GROUP:-carbon}
+
+depend() {
+ need net
+ use dns
+}
+
+start_pre() {
+ mkdir -p "${pidfile%/*}"
+ mkdir -p /var/log/go-carbon
+ chown ${user}:${group} "${pidfile%/*}" /var/log/go-carbon
+}
+
+stop_post() {
+ rm -f "${pidfile}"
+}
+
+start() {
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start --pidfile "${pidfile}" \
+ --make-pidfile --background \
+ --user ${user} --group ${group} \
+ --exec ${command} -- \
+ ${command_args}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --exec ${command} --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/app-metrics/go-carbon/go-carbon-0.17.3.ebuild b/app-metrics/go-carbon/go-carbon-0.17.3.ebuild
new file mode 100644
index 000000000000..2402f67a999f
--- /dev/null
+++ b/app-metrics/go-carbon/go-carbon-0.17.3.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Golang implementation of Graphite/Carbon server"
+HOMEPAGE="https://github.com/go-graphite/go-carbon"
+SRC_URI="https://github.com/go-graphite/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ acct-group/carbon
+ acct-user/carbon"
+BDEPEND=""
+
+src_prepare() {
+ export BUILD="gentoo-${PVR}"
+
+ # bug 904050: -race conflicts with -buildmode=pie added by go-module
+ sed -i \
+ -e '/make run-test COMMAND="test -race"/d' \
+ -e '/make run-test COMMAND="vet"/d' \
+ Makefile || die
+
+ eapply_user
+}
+
+src_install() {
+ insinto /etc/go-carbon
+ doins "${S}"/go-carbon.conf.example
+ dobin go-carbon
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+}
diff --git a/app-metrics/go-carbon/go-carbon-0.18.0.ebuild b/app-metrics/go-carbon/go-carbon-0.18.0.ebuild
new file mode 100644
index 000000000000..2402f67a999f
--- /dev/null
+++ b/app-metrics/go-carbon/go-carbon-0.18.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Golang implementation of Graphite/Carbon server"
+HOMEPAGE="https://github.com/go-graphite/go-carbon"
+SRC_URI="https://github.com/go-graphite/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ acct-group/carbon
+ acct-user/carbon"
+BDEPEND=""
+
+src_prepare() {
+ export BUILD="gentoo-${PVR}"
+
+ # bug 904050: -race conflicts with -buildmode=pie added by go-module
+ sed -i \
+ -e '/make run-test COMMAND="test -race"/d' \
+ -e '/make run-test COMMAND="vet"/d' \
+ Makefile || die
+
+ eapply_user
+}
+
+src_install() {
+ insinto /etc/go-carbon
+ doins "${S}"/go-carbon.conf.example
+ dobin go-carbon
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+}
diff --git a/app-metrics/go-carbon/metadata.xml b/app-metrics/go-carbon/metadata.xml
new file mode 100644
index 000000000000..54612510c31f
--- /dev/null
+++ b/app-metrics/go-carbon/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>grobian@gentoo.org</email>
+ <name>Fabian Groffen</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/grok_exporter/Manifest b/app-metrics/grok_exporter/Manifest
new file mode 100644
index 000000000000..c4f4b7215cd5
--- /dev/null
+++ b/app-metrics/grok_exporter/Manifest
@@ -0,0 +1 @@
+DIST grok_exporter-1.0.0_rc5.tar.gz 2324696 BLAKE2B 2042067127e18fb63d2ecc412fa75184b410e27a755fd06c3634c7b345c13b1bd1d000e323467d10cc5a0cf13363b6782c4c98532875158a793111fe56a36edd SHA512 5b4772aa4b147dadc2d8298d043cc8329cbfeb081dc9bc686c34e16ae0c8a4fa30e55478a8328293349fda2d3f785a5feeda22d5ea1722ab3fa586375b696a92
diff --git a/app-metrics/grok_exporter/files/grok_exporter.initd b/app-metrics/grok_exporter/files/grok_exporter.initd
new file mode 100644
index 000000000000..bd25c5170e9a
--- /dev/null
+++ b/app-metrics/grok_exporter/files/grok_exporter.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Unstructured log data exporter for Prometheus"
+config_file="/etc/grok_exporter/${RC_SVCNAME}.yml"
+command=/usr/bin/grok_exporter
+command_background=yes
+command_user=grok_exporter:grok_exporter
+pidfile=/var/run/${RC_SVCNAME}.pid
+error_log="/var/log/grok_exporter/${RC_SVCNAME}.log"
+output_log="/var/log/grok_exporter/${RC_SVCNAME}.log"
+required_files="${config_file}"
+command_args="-config \"${config_file}\""
+
+depend() {
+ after net
+}
diff --git a/app-metrics/grok_exporter/grok_exporter-1.0.0_rc5.ebuild b/app-metrics/grok_exporter/grok_exporter-1.0.0_rc5.ebuild
new file mode 100644
index 000000000000..04782b54343c
--- /dev/null
+++ b/app-metrics/grok_exporter/grok_exporter-1.0.0_rc5.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+MY_PV=${PV/_rc/.RC}
+inherit go-module
+
+DESCRIPTION="Unstructured log data exporter for Prometheus"
+HOMEPAGE="https://github.com/fstab/Grok_exporter"
+SRC_URI="https://github.com/fstab/grok_exporter/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+COMMON_DEPEND="acct-group/grok_exporter
+ acct-user/grok_exporter"
+DEPEND="${COMMON_DEPEND}
+ >=dev-libs/oniguruma-6.9.0"
+RDEPEND="${COMMON_DEPEND}
+ >=dev-libs/oniguruma-6.9.0:="
+
+RESTRICT="strip"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+src_compile() {
+ ego build .
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc -r *.md example
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+keepdir /etc/"${PN}"
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ elog "You need to create /etc/${PN}/${PN}.yml"
+ elog "Please see /usr/share/doc/${PVR} for examples"
+ fi
+}
diff --git a/app-metrics/grok_exporter/metadata.xml b/app-metrics/grok_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/grok_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/memcached_exporter/Manifest b/app-metrics/memcached_exporter/Manifest
new file mode 100644
index 000000000000..11c1ef1015f4
--- /dev/null
+++ b/app-metrics/memcached_exporter/Manifest
@@ -0,0 +1,4 @@
+DIST memcached_exporter-0.10.0-deps.tar.xz 24009256 BLAKE2B acdf45e6340e95601ecd5b1a7d5bc6d61ec5f323d01ebd0be54e151643a647dabe4705f70ad6b68c3df254deeb5103406809cf4f7080ca5f6c17765ed4024735 SHA512 e567b0a94d7ccc7b87b51bb08f165b88aae24338a2a28ca8f392057eda508407615d43d5d821ae7fd48ca2d50df2bf2b9d2acce3f7be23d12f79ac4ba09c7ed2
+DIST memcached_exporter-0.10.0.tar.gz 41003 BLAKE2B 497d1643ac7909cda5d82df5cb89dc09a7f961d3a6e7d60d8619f5f0ebce444e565bc00cb98843dd5f81a7618b38bc14dad9af4063bba58e24ae7e7db6a8de00 SHA512 53b913cb7f398dae5de5f3ccf6c468775a30528ff390cbd112dc7a9aba584c36cc7834b74ee1c1130e4ac19d63f01cc10ca5c6853480bdb130248ab7d0f0ba51
+DIST memcached_exporter-0.15.0-deps.tar.xz 40610668 BLAKE2B df1ca5a0548896d4728c12e7ade9390a8d9c0239291b02408bf612eb04bc04689bee7042d0e36a2e77175df77d4c7751992715e9385255fb9af635011d5212d0 SHA512 4c0cd5956402eae89095c0612df7677abd9951ca3e177d38b7c9ef2afcea11059f9fe13be0d6c80d669c2007861c318a093eab947f7ba88b7798494beed811f1
+DIST memcached_exporter-0.15.0.tar.gz 30762 BLAKE2B 55b01549ea1c97459fdaa548b95778202106b3830af416a959bde30cea3edd47f9892f1b14f9fc59d4f9c8ba3a5b43d029f2012947ba7e357b8317747e0aa03a SHA512 e6584fcce4f5b78524a44ab6a1bc1626560b80a47ca50c3e8754d1cfbce7ad70e71aaf9dcadef15e284ac45392734e8262204652ce90351931b5499802885020
diff --git a/app-metrics/memcached_exporter/files/memcached_exporter.confd b/app-metrics/memcached_exporter/files/memcached_exporter.confd
new file mode 100644
index 000000000000..ec7b89ec9cfe
--- /dev/null
+++ b/app-metrics/memcached_exporter/files/memcached_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus memcached exporter
+command_args=""
diff --git a/app-metrics/memcached_exporter/files/memcached_exporter.initd b/app-metrics/memcached_exporter/files/memcached_exporter.initd
new file mode 100644
index 000000000000..fa21bea18d19
--- /dev/null
+++ b/app-metrics/memcached_exporter/files/memcached_exporter.initd
@@ -0,0 +1,13 @@
+#!/sbin/openrc-run
+# Copyright 2016-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus memcached exporter"
+pidfile="/var/run/${RC_SVCNAME}.pid"
+command="/usr/bin/memcached_exporter"
+command_user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+command_background="true"
+errror_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+output_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+start_stop_daemon_args="--group ${group}"
diff --git a/app-metrics/memcached_exporter/memcached_exporter-0.10.0.ebuild b/app-metrics/memcached_exporter/memcached_exporter-0.10.0.ebuild
new file mode 100644
index 000000000000..360145b9b2d3
--- /dev/null
+++ b/app-metrics/memcached_exporter/memcached_exporter-0.10.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+GIT_COMMIT=667bdef45c4e01380867f4be5bb0c7e0ece35dd6
+
+DESCRIPTION="Prometheus exporter for memcached"
+HOMEPAGE="https://github.com/prometheus/memcached_exporter"
+SRC_URI="https://github.com/prometheus/memcached_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="dev-util/promu"
+DEPEND="acct-group/memcached_exporter
+ acct-user/memcached_exporter"
+RDEPEND="${DEPEND}"
+
+# tests require the memcached_exporter daemon to be running locally
+RESTRICT+=" test "
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ .promu.yml || die "sed failed"
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc *.md
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+}
diff --git a/app-metrics/memcached_exporter/memcached_exporter-0.15.0.ebuild b/app-metrics/memcached_exporter/memcached_exporter-0.15.0.ebuild
new file mode 100644
index 000000000000..202b78fe5c7e
--- /dev/null
+++ b/app-metrics/memcached_exporter/memcached_exporter-0.15.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+GIT_COMMIT=ceb946ecae3aace775a0becb8233ca3890a829c3
+
+DESCRIPTION="Prometheus exporter for memcached"
+HOMEPAGE="https://github.com/prometheus/memcached_exporter"
+SRC_URI="https://github.com/prometheus/memcached_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="dev-util/promu"
+DEPEND="acct-group/memcached_exporter
+ acct-user/memcached_exporter"
+RDEPEND="${DEPEND}"
+
+# tests require the memcached_exporter daemon to be running locally
+RESTRICT+=" test "
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ .promu.yml || die "sed failed"
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc *.md
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/memcached_exporter/metadata.xml b/app-metrics/memcached_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/memcached_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/mongodb_exporter/Manifest b/app-metrics/mongodb_exporter/Manifest
new file mode 100644
index 000000000000..9a858b623d39
--- /dev/null
+++ b/app-metrics/mongodb_exporter/Manifest
@@ -0,0 +1,6 @@
+DIST mongodb_exporter-0.43.1-deps.tar.xz 104860652 BLAKE2B 3d40052ba11dea73aa67a2e72b303d4e27baec13f7429627684c44de3504909efdf2959ef1a658331cb346faaa5212e474c7c0d38fced0a60423843c66c8e7fc SHA512 c5443ebe1ecde6a571480acd2130f20bdcf23c6495ef9c304db545666bd1e18f41b5c377a59300ebeb2a06d38575046e506536856a35041c8447e37257da2fff
+DIST mongodb_exporter-0.43.1.tar.gz 161862 BLAKE2B 337edcf34e6c44d5ffb9b9d2b6d1da7e72a12d1430561d070bfd7569816d34b2e918faa3fa5e32aea6e480208a27f200438c55a0fb6d80be3c9564ce8feccc79 SHA512 3a9437a61d588af6d971aa954bced247cbf59c17dcdaed833b03f95904bf583c56c8210f535b07ffa1fc46583f7d1e92465e0d7623601b463667a01ec8bcfca3
+DIST mongodb_exporter-0.47.1-vendor.tar.xz 5785900 BLAKE2B cb761b6d838d193f3e16944844ed0ab6f359867423b756c73b9e035c43aa0b7156d7f50eb33c428c0b622303b96b9752033c576673c0bb0fdd10870101f71a5f SHA512 e581bc4ca5a754a398de4156cb05d2dd04d4271cfc6fa2ef47857e5d3671817a7bc14bd1abc22a305341c60545e29d6f5779032315cf0d16172928daf4c8e31c
+DIST mongodb_exporter-0.47.1.tar.gz 177076 BLAKE2B bffeec8ff2c9e9b2f68e6a472529dbbddeacc3f0247582598580525c2973dc8c531b9834ded90c3253de3210993aebc879df0d15995f95d05daecb0c0f161d73 SHA512 94d8a9066531340c3c2b0de53aec38b66667f7f7e8f485fb16b28cadcbf5d164ee3a43dfeaa57e82bc390db3c3cce5cbc35d0f1552901994efe8d292d08f0b25
+DIST mongodb_exporter-0.51.0-vendor.tar.xz 6119316 BLAKE2B e34dbee909b1616bb996aeed06e66bbca22e91c8d51dd734e0f2e8e7075dba67f6ec42dbe79372f746f6a480cc299083e4bdf51d61f22087e83f2c1460963c84 SHA512 af1e8716bd624da4f36a1c7771b71e8a25d746026671588ef370cf0cdce33b14c4f66d91a795f47740905b5f270c3b50e6b68c42a819083c02f391279be1e3bf
+DIST mongodb_exporter-0.51.0.tar.gz 180753 BLAKE2B d7bfd2e77a7e90f1d21a776b4d2765d2e9c74485ce012e0e81e854c5c603c7912467b91c3c591c76cac9d9d6891db4f95cf3a05f9d918fefdfe7b69ed64b458b SHA512 2280e4ddeb19ba4f9e49677e208d4017538df02fbdcdc3ba7ec1ada0ffd4f2d8e853cfd95b632a9f86912ac1ad8e42542e2e4bcb5a81fd81948da2b2e86c064b
diff --git a/app-metrics/mongodb_exporter/files/mongodb_exporter-1.initd b/app-metrics/mongodb_exporter/files/mongodb_exporter-1.initd
new file mode 100644
index 000000000000..44be892c336b
--- /dev/null
+++ b/app-metrics/mongodb_exporter/files/mongodb_exporter-1.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus MongoDB exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+output_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+error_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+
+command="/usr/bin/mongodb_exporter"
+command_args="${command_args:--mongodb.uri=http://localhost:27017}"
+command_background="true"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/mongodb_exporter/files/mongodb_exporter.confd b/app-metrics/mongodb_exporter/files/mongodb_exporter.confd
new file mode 100644
index 000000000000..bd85fa288304
--- /dev/null
+++ b/app-metrics/mongodb_exporter/files/mongodb_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus mongodb exporter
+command_args="-mongodb.uri=http://localhost:9200"
diff --git a/app-metrics/mongodb_exporter/files/mongodb_exporter.initd b/app-metrics/mongodb_exporter/files/mongodb_exporter.initd
new file mode 100644
index 000000000000..cc821983e56e
--- /dev/null
+++ b/app-metrics/mongodb_exporter/files/mongodb_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus MongoDB exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/mongodb_exporter"
+command_args="${command_args:--mongodb.uri=http://localhost:27017}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/mongodb_exporter/metadata.xml b/app-metrics/mongodb_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/mongodb_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/mongodb_exporter/mongodb_exporter-0.43.1.ebuild b/app-metrics/mongodb_exporter/mongodb_exporter-0.43.1.ebuild
new file mode 100644
index 000000000000..61b105813201
--- /dev/null
+++ b/app-metrics/mongodb_exporter/mongodb_exporter-0.43.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+# update these on every bump
+BRANCH='tags/v0.43.1^0'
+COMMIT=2b2cccca21104c2a00cb53bd0d785b3d656fe803
+
+DESCRIPTION="Prometheus exporter for MongoDB"
+HOMEPAGE="https://github.com/percona/mongodb_exporter"
+SRC_URI="https://github.com/percona/mongodb_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~arthurzam/distfiles/app-metrics/${PN}/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 AGPL-3 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# tests require docker compose
+RESTRICT="test"
+
+DEPEND="
+ acct-group/mongodb_exporter
+ acct-user/mongodb_exporter
+"
+RDEPEND="${DEPEND}"
+
+QA_PRESTRIPPED=usr/bin/mongodb_exporter
+
+src_compile() {
+ emake \
+ COMPONENT_BRANCH=${BRANCH} \
+ COMPONENT_VERSION=${PV} \
+ PMM_RELEASE_FULLCOMMIT=${COMMIT} \
+ build
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc CHANGELOG {CONTRIBUTING,README,REFERENCE}.md
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit .scripts/systemd/${PN}.service
+
+ keepdir /var/log/mongodb_exporter
+ fowners ${PN}:${PN} /var/log/mongodb_exporter
+}
diff --git a/app-metrics/mongodb_exporter/mongodb_exporter-0.47.1.ebuild b/app-metrics/mongodb_exporter/mongodb_exporter-0.47.1.ebuild
new file mode 100644
index 000000000000..97a511f2fea0
--- /dev/null
+++ b/app-metrics/mongodb_exporter/mongodb_exporter-0.47.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+# update these on every bump
+COMMIT=2b2cccca21104c2a00cb53bd0d785b3d656fe803
+
+DESCRIPTION="Prometheus exporter for MongoDB"
+HOMEPAGE="https://github.com/percona/mongodb_exporter"
+SRC_URI="https://github.com/percona/mongodb_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="Apache-2.0 AGPL-3 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="kerberos"
+
+# tests require docker compose
+RESTRICT="test"
+
+DEPEND="
+ acct-group/mongodb_exporter
+ acct-user/mongodb_exporter
+ kerberos? ( app-crypt/mit-krb5 )
+"
+RDEPEND="${DEPEND}"
+
+QA_PRESTRIPPED=usr/bin/mongodb_exporter
+
+src_compile() {
+ local -x CGO_ENABLED=1
+ local go_ldflags=(
+ -s -w
+ -X main.version=${PV}
+ -X main.buildDate="$(date +%FT%T%z)"
+ -X main.commit=${COMMIT}
+ -X main.Branch="tags/v${PV}^0"
+ -X main.GoVersion=$(ego version | cut -d " " -f3)
+ )
+ use kerberos && local go_tags=( -tags gssapi )
+ ego build -mod=vendor "${go_tags[@]}" -ldflags "${go_ldflags[*]}" -o bin/${PN} .
+}
+
+src_install() {
+ dobin bin/${PN}
+ dodoc CHANGELOG {CONTRIBUTING,README,REFERENCE}.md
+
+ newinitd "${FILESDIR}"/${PN}-1.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit .scripts/systemd/${PN}.service
+
+ keepdir /var/log/mongodb_exporter
+ fowners ${PN}:${PN} /var/log/mongodb_exporter
+}
diff --git a/app-metrics/mongodb_exporter/mongodb_exporter-0.51.0.ebuild b/app-metrics/mongodb_exporter/mongodb_exporter-0.51.0.ebuild
new file mode 100644
index 000000000000..ee789df27a10
--- /dev/null
+++ b/app-metrics/mongodb_exporter/mongodb_exporter-0.51.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+# update these on every bump
+COMMIT=d0d33e679dcc7f30bafe6d6d23cf84a4fc1cd6d2
+
+DESCRIPTION="Prometheus exporter for MongoDB"
+HOMEPAGE="https://github.com/percona/mongodb_exporter"
+SRC_URI="https://github.com/percona/mongodb_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="Apache-2.0"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD BSD-2 ISC MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="kerberos"
+
+# tests require docker compose
+RESTRICT="test"
+
+DEPEND="
+ acct-group/mongodb_exporter
+ acct-user/mongodb_exporter
+ kerberos? ( app-crypt/mit-krb5 )
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-lang/go-1.25.8"
+
+QA_PRESTRIPPED=usr/bin/mongodb_exporter
+
+src_compile() {
+ local -x CGO_ENABLED=1
+ local go_ldflags=(
+ -s -w
+ -X main.version=${PV}
+ -X main.buildDate="$(date +%FT%T%z)"
+ -X main.commit=${COMMIT}
+ -X main.Branch="tags/v${PV}^0"
+ -X main.GoVersion=$(ego version | cut -d " " -f3)
+ )
+ use kerberos && local go_tags=( -tags gssapi )
+ ego build "${go_tags[@]}" -ldflags "${go_ldflags[*]}" -o bin/${PN} .
+}
+
+src_install() {
+ dobin bin/${PN}
+ dodoc CHANGELOG {CONTRIBUTING,README,REFERENCE}.md
+
+ newinitd "${FILESDIR}"/${PN}-1.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit .scripts/systemd/${PN}.service
+
+ keepdir /var/log/mongodb_exporter
+ fowners ${PN}:${PN} /var/log/mongodb_exporter
+}
diff --git a/app-metrics/mysqld_exporter/Manifest b/app-metrics/mysqld_exporter/Manifest
new file mode 100644
index 000000000000..b25183562738
--- /dev/null
+++ b/app-metrics/mysqld_exporter/Manifest
@@ -0,0 +1,8 @@
+DIST mysqld_exporter-0.14.0-vendor.tar.xz 1434948 BLAKE2B 9bf1c9dc728aeae678ed42cf75e7dcca1758d1ace02159992c0e11b0c4942a6f5eacad86255225f9ffc023904731165bf7e8a845b9031306c21fa2796911790c SHA512 0bc3735108be955b4056d23df9f9ed593f5e495afeec846944eb4b2c4731db45723e1a3904fb621a4ba7c80dd93eccbcfc02657863271c6c306cf94a54a5fafc
+DIST mysqld_exporter-0.14.0.tar.gz 100413 BLAKE2B 7c995fd538c217964f4d7537961c3d16cb1d9250808832a90eaec251f20f52b5704f38a64b338067cbae2824ea07099a62e5c5083d76bceb9d3c00fed670e7e3 SHA512 91728055fd66d3ba2d8c6f48eac24dcdbe710e627cb3c28af100fec1656064aafedbcfcfcb8c2f164dab9c3870c1867728e33afd57889644b27ceaadf0c59629
+DIST mysqld_exporter-0.14.0_p20221209.tar.gz 103942 BLAKE2B c4184aea6aa3b750dfbba594725d82af6580bfe1424d1e8f9da19cbbec8c1e35f114da562a3c29799df9329df5a248bcf6788df2bdab9d0cc474eac187a395a4 SHA512 8ef068367259e643aba2295d1f087f09b0c61f1534421bfb8400d46c865750d6f115031b445f1f32864e3fb87c80462d4d755f657d289b9144dc7a030ff81b0a
+DIST mysqld_exporter-0.14.0_p20230328.tar.gz 92865 BLAKE2B 490219444b14006a356fa423b21c851693cf97f9aa6a9d20e8ee732ae8af5aed07aeda04a3419aebe26051f00c60f5655c3479c4ec3d5a2c9c18b44218cdc3b4 SHA512 a12aeb676ba81732310599344292f8cd5680abd14d8b380ae2d57198530de1969a5712619eca195e5d7b65abf518de7877789f494a9a4fbcebf42e3c8e35dac8
+DIST mysqld_exporter-0.18.0-vendor.tar.xz 1500844 BLAKE2B 74cf392db3b01cba734e048442875125ea9da46c449fc7959fd384ae78e6e0b79697d612402b1bb178e93f0af624e52de27e2260e1b380d3b27c783aa65b649d SHA512 d8067591598eda3862ecb4fef35feb86f49c50c8de4436a272a0ef8c267f5b9fa652f4d4095d43547be918fd5378742adfe1d8f99bb4a0d3205a18a706a9b134
+DIST mysqld_exporter-0.18.0.tar.gz 99246 BLAKE2B fa5822330cf52e4a97c30cd9ccc075440b9414d183d98d47620aa0c12661b04ae639f2edd2b4122f5139a446123f690511ad6f912f41a915d2b033108f171431 SHA512 ecd63f7375ed0f8b77e6b5a3248e56a8901e0539484923a14b80b8c12e6265a59029a326b06c880e3f4ff7a263e399131bbadb33aec19b2887a2312005d05ab7
+DIST mysqld_exporter-530e351d293dd632f31b80947f5ca420ef17adaf-vendor.tar.xz 1441316 BLAKE2B 8d023ff291c47f30dc6216a255f050591ea585e0c58ca484a8cdb2e0be125f7daabe570b93d786936b6ea59d3996e45210c3ef41932758d05c302bfef2656e81 SHA512 6224d96223b4e38e35626f627c2de1b8ac08294d127556d0c6e73978648296f9a99f21a1aa323053ab07d17642af54ab2d8243bb3d3a9c06919612256fdc32dc
+DIST mysqld_exporter-fad2c0ccd8c0df8fed91a81463e930e4485fdfee-vendor.tar.xz 1473744 BLAKE2B 64f4f9dfee04522dbebdc9682c2619cc0f5c63b0835cfca50a37d0cce542e6a926968e23fe94a13d2e76cfbf931026cdcff74823c6c464b1b2f551bf0c70a5cf SHA512 aa10101fd5bc5a2fdef367c855f85d10ebb38b8a92969c5ebf786f011a287f9992559805b8ed24ea39da4db8aedbaf12893a2c6049ea7e90e989adf1ed13d79f
diff --git a/app-metrics/mysqld_exporter/files/mysqld_exporter-0.12.1-skip-tests.patch b/app-metrics/mysqld_exporter/files/mysqld_exporter-0.12.1-skip-tests.patch
new file mode 100644
index 000000000000..ea59067cb288
--- /dev/null
+++ b/app-metrics/mysqld_exporter/files/mysqld_exporter-0.12.1-skip-tests.patch
@@ -0,0 +1,22 @@
+--- a/collector/exporter_test.go
++++ b/collector/exporter_test.go
+@@ -71,6 +71,8 @@ func TestExporter(t *testing.T) {
+ }
+
+ func TestGetMySQLVersion(t *testing.T) {
++ t.Skip("Test requires running mysqld")
++
+ if testing.Short() {
+ t.Skip("-short is passed, skipping test")
+ }
+--- a/mysqld_exporter_test.go
++++ b/mysqld_exporter_test.go
+@@ -142,6 +142,8 @@ type bin struct {
+
+ // TestBin builds, runs and tests binary.
+ func TestBin(t *testing.T) {
++ t.Skip("Test requires network access")
++
+ var err error
+ binName := "mysqld_exporter"
+
diff --git a/app-metrics/mysqld_exporter/files/mysqld_exporter-r1.confd b/app-metrics/mysqld_exporter/files/mysqld_exporter-r1.confd
new file mode 100644
index 000000000000..2b7f9bf17a3d
--- /dev/null
+++ b/app-metrics/mysqld_exporter/files/mysqld_exporter-r1.confd
@@ -0,0 +1,26 @@
+# /etc/conf.d/mysqld_exporter
+
+# PID file
+#EXPORTER_PIDFILE="/run/${RC_SVCNAME}.pid"
+
+# The termination timeout (start-stop-daemon parameter "retry") ensures
+# that the service will be terminated within a given time (60 + 5 seconds
+# per default) when you are stopping the service.
+#EXPORTER_TERMTIMEOUT="TERM/60/KILL/5"
+
+# User to run exporter as
+#EXPORTER_USER="mysqld_exporter"
+
+# User group to run exporter as
+#EXPORTER_GROUP="mysqld_exporter"
+
+# You can use this configuration option to pass additional options to the
+# start-stop-daemon, see start-stop-daemon(8) for more details.
+# Per default we wait 1000ms after we have started the service to ensure
+# that the daemon is really up and running.
+#EXPORTER_SSDARGS="--wait 1000"
+
+# Exporter flags
+# See `mysqld_exporter --help` for more details
+EXPORTER_FLAGS="--log.level=info"
+#EXPORTER_FLAGS="${EXPORTER_FLAGS} --yourAdditionalFlag"
diff --git a/app-metrics/mysqld_exporter/files/mysqld_exporter-r1.initd b/app-metrics/mysqld_exporter/files/mysqld_exporter-r1.initd
new file mode 100644
index 000000000000..0aecd1025b82
--- /dev/null
+++ b/app-metrics/mysqld_exporter/files/mysqld_exporter-r1.initd
@@ -0,0 +1,73 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus exporter for MySQL server metrics"
+
+EXPORTER_FLAGS=${EXPORTER_FLAGS:-""}
+EXPORTER_USER=${EXPORTER_USER:-"mysqld_exporter"}
+EXPORTER_GROUP=${EXPORTER_GROUP:-"mysqld_exporter"}
+EXPORTER_PIDFILE=${EXPORTER_PIDFILE:-"/run/${RC_SVCNAME}.pid"}
+EXPORTER_SSDARGS=${EXPORTER_SSDARGS:-"--wait 1000"}
+EXPORTER_TERMTIMEOUT=${EXPORTER_TERMTIMEOUT:-"TERM/60/KILL/5"}
+
+command="/usr/bin/mysqld_exporter"
+command_args="${EXPORTER_FLAGS}"
+command_background="true"
+start_stop_daemon_args="${EXPORTER_SSDARGS}"
+start_stop_daemon_args="${start_stop_daemon_args} --user ${EXPORTER_USER}"
+start_stop_daemon_args="${start_stop_daemon_args} --group ${EXPORTER_GROUP}"
+
+# We are forcing log files because upstream is going to remove syslog support :/
+start_stop_daemon_args="${start_stop_daemon_args} --stdout /var/log/mysqld_exporter/${RC_SVCNAME}.log"
+start_stop_daemon_args="${start_stop_daemon_args} --stderr /var/log/mysqld_exporter/${RC_SVCNAME}.log"
+
+getconfig() {
+ local key="$1"
+ local value_default="$2"
+ local value=
+
+ if service_started; then
+ value="$(service_get_value "${key}")"
+ fi
+
+ if [ -z "${value}" ]; then
+ # Value not explicitly set
+ echo "${value_default}"
+ else
+ echo "${value}"
+ fi
+
+ return 0
+}
+
+pidfile="$(getconfig pidfile ${EXPORTER_PIDFILE})"
+retry="$(getconfig retry ${EXPORTER_TERMTIMEOUT})"
+
+configtest() {
+ if test "${command_args#*config\.my-cnf}" = "${command_args}"; then
+ local _default_config_file="/var/lib/mysqld_exporter/.my.cnf"
+ if [ ! -s "${_default_config_file}" ]; then
+ eerror "No MySQL credentials found in \"${_default_config_file}\"!"
+ eerror "Either create that file and add credentials or specify another file via \"-config.my-cnf\" flag."
+ return 1
+ fi
+ fi
+
+ return 0
+}
+
+depend() {
+ after net
+ use mysql
+}
+
+start_pre() {
+ if [ "${RC_CMD}" != "restart" ]; then
+ configtest || return 1
+ fi
+}
+
+start_post() {
+ service_set_value retry "${EXPORTER_TERMTIMEOUT}"
+}
diff --git a/app-metrics/mysqld_exporter/files/mysqld_exporter.logrotate b/app-metrics/mysqld_exporter/files/mysqld_exporter.logrotate
new file mode 100644
index 000000000000..ec360d7ab4cd
--- /dev/null
+++ b/app-metrics/mysqld_exporter/files/mysqld_exporter.logrotate
@@ -0,0 +1,5 @@
+/var/log/mysqld_exporter/*.log {
+ missingok
+ notifempty
+ size 30k
+}
diff --git a/app-metrics/mysqld_exporter/metadata.xml b/app-metrics/mysqld_exporter/metadata.xml
new file mode 100644
index 000000000000..5d08ae950a93
--- /dev/null
+++ b/app-metrics/mysqld_exporter/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0.ebuild b/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0.ebuild
new file mode 100644
index 000000000000..b382ce4510de
--- /dev/null
+++ b/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+# uncomment the first setting of MY_PV for a normal release
+# MY_PV="v${PV/_rc/-rc.}"
+# set MY_PV to the full commit hash for a snapshot release
+MY_PV_HASH=
+if [[ -n "${MY_PV_HASH}" ]]; then
+ MY_PV=${MY_PV_HASH}
+ MYSQLD_EXPORTER_COMMIT=${MY_PV_HASH:0:8}
+ SRC_URI_UPSTREAM="https://github.com/prometheus/mysqld_exporter/archive/${MY_PV}.tar.gz"
+else
+ MY_PV=${PV}
+ MYSQLD_EXPORTER_COMMIT=
+ SRC_URI_UPSTREAM="https://github.com/prometheus/mysqld_exporter/archive/refs/tags/v${PV}.tar.gz"
+fi
+MY_P=${PN}-${MY_PV}
+SRC_URI_VENDOR="https://dev.gentoo.org/~robbat2/distfiles/${MY_P}-vendor.tar.xz"
+
+DESCRIPTION="Prometheus exporter for MySQL server metrics"
+HOMEPAGE="https://github.com/prometheus/mysqld_exporter"
+SRC_URI="
+ ${SRC_URI_UPSTREAM} -> ${P}.tar.gz
+ ${SRC_URI_VENDOR}
+ "
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+BDEPEND="dev-util/promu"
+
+DEPEND="acct-group/mysqld_exporter
+ acct-user/mysqld_exporter"
+
+RDEPEND="${DEPEND}"
+
+# Comment this for a normal release.
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.12.1-skip-tests.patch )
+
+src_prepare() {
+ default
+
+ if [[ -n $MYSQLD_EXPORTER_COMMIT ]]; then
+ sed -i -e "s/{{.Revision}}/${MYSQLD_EXPORTER_COMMIT}/" .promu.yml || die
+ fi
+}
+
+src_compile() {
+ mkdir -p bin || die
+
+ promu build --prefix bin || die
+
+ # comment this for a normal release.
+ mv bin/${PN}-${MY_PV} bin/${PN} || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CHANGELOG,CONTRIBUTING}.md
+
+ keepdir /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fowners ${PN}:${PN} /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fperms 0770 /var/lib/mysqld_exporter
+
+ newinitd "${FILESDIR}"/${PN}-r1.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}-r1.confd ${PN}
+
+ insinto /etc/logrotate.d/
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ # This is a new installation
+ elog "Create \"${EROOT}/var/lib/mysqld_exporter/.my.cnf\" to read MySQL credentials from file."
+ else
+ local _replacing_version=
+ for _replacing_version in ${REPLACING_VERSIONS}; do
+ if ! ver_test "${_replacing_version}" -ge "0.11.0"; then
+ elog "Starting with ${PN}-0.11.0, command-line flags will require double dashes (--)."
+ elog "You must update your configuration or ${PN} won't start."
+
+ break
+ fi
+ done
+ fi
+}
diff --git a/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20221209.ebuild b/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20221209.ebuild
new file mode 100644
index 000000000000..0a23dedb6d98
--- /dev/null
+++ b/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20221209.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+# uncomment the first setting of MY_PV for a normal release
+# MY_PV="v${PV/_rc/-rc.}"
+# set MY_PV to the full commit hash for a snapshot release
+MY_PV_HASH=530e351d293dd632f31b80947f5ca420ef17adaf
+if [[ -n "${MY_PV_HASH}" ]]; then
+ MY_PV=${MY_PV_HASH}
+ MYSQLD_EXPORTER_COMMIT=${MY_PV_HASH:0:8}
+ SRC_URI_UPSTREAM="https://github.com/prometheus/mysqld_exporter/archive/${MY_PV}.tar.gz"
+else
+ MY_PV=$PV
+ MYSQLD_EXPORTER_COMMIT=
+ SRC_URI_UPSTREAM="https://github.com/prometheus/mysqld_exporter/archive/refs/tags/v${PV}.tar.gz"
+fi
+MY_P=${PN}-${MY_PV}
+SRC_URI_VENDOR="https://dev.gentoo.org/~robbat2/distfiles/${MY_P}-vendor.tar.xz"
+
+DESCRIPTION="Prometheus exporter for MySQL server metrics"
+HOMEPAGE="https://github.com/prometheus/mysqld_exporter"
+SRC_URI="
+ ${SRC_URI_UPSTREAM} -> ${P}.tar.gz
+ ${SRC_URI_VENDOR}
+ "
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+BDEPEND="dev-util/promu"
+
+DEPEND="acct-group/mysqld_exporter
+ acct-user/mysqld_exporter"
+
+RDEPEND="${DEPEND}"
+
+# Comment this for a normal release.
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.12.1-skip-tests.patch )
+
+src_prepare() {
+ default
+
+ if [[ -n $MYSQLD_EXPORTER_COMMIT ]]; then
+ sed -i -e "s/{{.Revision}}/${MYSQLD_EXPORTER_COMMIT}/" .promu.yml || die
+ fi
+}
+
+src_compile() {
+ mkdir -p bin || die
+
+ promu build --prefix bin || die
+
+ # comment this for a normal release.
+ mv bin/${PN}-${MY_PV} bin/${PN} || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CHANGELOG,CONTRIBUTING}.md
+
+ keepdir /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fowners ${PN}:${PN} /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fperms 0770 /var/lib/mysqld_exporter
+
+ newinitd "${FILESDIR}"/${PN}-r1.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}-r1.confd ${PN}
+
+ insinto /etc/logrotate.d/
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ # This is a new installation
+ elog "Create \"${EROOT}/var/lib/mysqld_exporter/.my.cnf\" to read MySQL credentials from file."
+ else
+ local _replacing_version=
+ for _replacing_version in ${REPLACING_VERSIONS}; do
+ if ! ver_test "${_replacing_version}" -ge "0.11.0"; then
+ elog "Starting with ${PN}-0.11.0, command-line flags will require double dashes (--)."
+ elog "You must update your configuration or ${PN} won't start."
+
+ break
+ fi
+ done
+ fi
+}
diff --git a/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20230328.ebuild b/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20230328.ebuild
new file mode 100644
index 000000000000..18ec5de25f04
--- /dev/null
+++ b/app-metrics/mysqld_exporter/mysqld_exporter-0.14.0_p20230328.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit eapi9-ver go-module
+# uncomment the first setting of MY_PV for a normal release
+# MY_PV="v${PV/_rc/-rc.}"
+# set MY_PV to the full commit hash for a snapshot release
+MY_PV_HASH=fad2c0ccd8c0df8fed91a81463e930e4485fdfee
+: ${MY_PV_HASH_FOR_VENDOR:=${MY_PV_HASH}}
+if [[ -n "${MY_PV_HASH}" ]]; then
+ MY_PV=${MY_PV_HASH}
+ MYSQLD_EXPORTER_COMMIT=${MY_PV_HASH:0:8}
+ SRC_URI_UPSTREAM="https://github.com/prometheus/mysqld_exporter/archive/${MY_PV}.tar.gz"
+else
+ MY_PV=$PV
+ MYSQLD_EXPORTER_COMMIT=
+ SRC_URI_UPSTREAM="https://github.com/prometheus/mysqld_exporter/archive/refs/tags/v${PV}.tar.gz"
+fi
+MY_P=${PN}-${MY_PV}
+SRC_URI_VENDOR="https://dev.gentoo.org/~robbat2/distfiles/${MY_P}-vendor.tar.xz"
+
+DESCRIPTION="Prometheus exporter for MySQL server metrics"
+HOMEPAGE="https://github.com/prometheus/mysqld_exporter"
+SRC_URI="
+ ${SRC_URI_UPSTREAM} -> ${P}.tar.gz
+ ${SRC_URI_VENDOR}
+ "
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+BDEPEND="dev-util/promu"
+
+DEPEND="acct-group/mysqld_exporter
+ acct-user/mysqld_exporter"
+
+RDEPEND="${DEPEND}"
+
+# Comment this for a normal release.
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.12.1-skip-tests.patch )
+
+src_prepare() {
+ default
+
+ if [[ -n $MYSQLD_EXPORTER_COMMIT ]]; then
+ sed -i -e "s/{{.Revision}}/${MYSQLD_EXPORTER_COMMIT}/" .promu.yml || die
+ fi
+}
+
+src_compile() {
+ mkdir -p bin || die
+
+ promu build --prefix bin || die
+
+ # comment this for a normal release.
+ mv bin/${PN}-${MY_PV} bin/${PN} || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CHANGELOG,CONTRIBUTING}.md
+
+ keepdir /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fowners ${PN}:${PN} /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fperms 0770 /var/lib/mysqld_exporter
+
+ newinitd "${FILESDIR}"/${PN}-r1.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}-r1.confd ${PN}
+
+ insinto /etc/logrotate.d/
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ # This is a new installation
+ elog "Create \"${EROOT}/var/lib/mysqld_exporter/.my.cnf\" to read MySQL credentials from file."
+ elif ver_replacing -lt "0.11.0"; then
+ elog "Starting with ${PN}-0.11.0, command-line flags will require double dashes (--)."
+ elog "You must update your configuration or ${PN} won't start."
+ fi
+}
diff --git a/app-metrics/mysqld_exporter/mysqld_exporter-0.18.0.ebuild b/app-metrics/mysqld_exporter/mysqld_exporter-0.18.0.ebuild
new file mode 100644
index 000000000000..6c44cb152d4a
--- /dev/null
+++ b/app-metrics/mysqld_exporter/mysqld_exporter-0.18.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit eapi9-ver go-module
+
+DESCRIPTION="Prometheus exporter for MySQL server metrics"
+HOMEPAGE="https://github.com/prometheus/mysqld_exporter"
+SRC_URI="https://github.com/prometheus/mysqld_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ acct-group/mysqld_exporter
+ acct-user/mysqld_exporter
+"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ mkdir -p bin || die
+
+ local go_ldflags=(
+ -X github.com/prometheus/common/version.Version=${PV}
+ -X github.com/prometheus/common/version.Revision=${GIT_COMMIT}
+ -X github.com/prometheus/common/version.Branch=master
+ -X github.com/prometheus/common/version.BuildUser=gentoo
+ -X github.com/prometheus/common/version.BuildDate="$(date +%F-%T)"
+ )
+ ego build -mod=vendor -ldflags "${go_ldflags[*]}" -o bin/${PN} .
+ ./bin/"${PN}" --help-man > "${PN}".1 || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CHANGELOG,CONTRIBUTING}.md
+ doman "${PN}".1
+
+ keepdir /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fowners ${PN}:${PN} /var/lib/mysqld_exporter /var/log/mysqld_exporter
+ fperms 0770 /var/lib/mysqld_exporter
+
+ newinitd "${FILESDIR}"/${PN}-r1.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}-r1.confd ${PN}
+
+ insinto /etc/logrotate.d/
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ # This is a new installation
+ elog "Create \"${EROOT}/var/lib/mysqld_exporter/.my.cnf\" to read MySQL credentials from file."
+ elif ver_replacing -lt "0.11.0"; then
+ elog "Starting with ${PN}-0.11.0, command-line flags will require double dashes (--)."
+ elog "You must update your configuration or ${PN} won't start."
+ fi
+}
diff --git a/app-metrics/nftables-exporter/Manifest b/app-metrics/nftables-exporter/Manifest
new file mode 100644
index 000000000000..e69eaa7d6e04
--- /dev/null
+++ b/app-metrics/nftables-exporter/Manifest
@@ -0,0 +1,4 @@
+DIST nftables-exporter-0.2.7-deps.tar.xz 6611016 BLAKE2B c6d5593bcf29f846044fd11602eb38f7296f46394cb61c04c7877b0d100d4f33f5bbccbcb374d267fa87da600c2afe00b1c0f6acb494d078c2cb8f2fe73baa6d SHA512 0039135b52e0f77316a68f482094620531be1a7ef1cbd713905f140fea09627fde4544b0c25ed964950682be905a758f22384e0159bbcf8ee2a9f57c3a7f5f43
+DIST nftables-exporter-0.2.7.tar.gz 22061 BLAKE2B 142c834a77b563d6c57b72a5ec45c88e0542121d334c0b02a6acc18fea7902efad8080e0b3b01a2a519a4cd376938da58fc4b7b3fc2260300a5bc64469c993ee SHA512 69192df420b294b4c3b345999505111f149c00a5d68773b6f958d16b39505c937377075fe4e299688b97f5c12f0bbdac59bdb9bd0447b62f6d76c0bc55caa318
+DIST nftables-exporter-0.3.1-deps.tar.xz 34701580 BLAKE2B 0cabca1e6e1ac758d987cfd9549d45df1cf8852a09a4026343efa61cc2b7162ee398f6cfa6127235c99009d70b5a95586f093bbd8aff50779d8c4be48ad5cdc6 SHA512 1a98852089ea8c0b5a862b01163c4ef3243190e8111617d14d8e4cb8ac83dafb016a685419eb578695708bee33feb92a9087de7f96bf3511e247eb5e769a36c2
+DIST nftables-exporter-0.3.1.tar.gz 22518 BLAKE2B 3c186d26397718a82368e1e18dabd5c2a148cbc350c949b265d1645e2dcc49f10ab35dc307411210521ba27605bba5b6b816b1833d3bf0ea72ef92fba5b3c43d SHA512 3edb32c425fd6f3028a5a9ff2be52120e8ba9b995c8e6861d9e5c925d439941fb50e69e3090b3e4ffa4b433d24b5607c4811c6d5c8176ea9d3a992c69f8095fb
diff --git a/app-metrics/nftables-exporter/files/nftables-exporter.initd b/app-metrics/nftables-exporter/files/nftables-exporter.initd
new file mode 100644
index 000000000000..9d16ccc199ab
--- /dev/null
+++ b/app-metrics/nftables-exporter/files/nftables-exporter.initd
@@ -0,0 +1,15 @@
+#!/sbin/openrc-run
+# Copyright 2023 Gentoo authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus nftables metrics exporter"
+
+command="/usr/bin/nftables-exporter"
+command_background="true"
+error_log="/var/log/nftables-exporter/nftables-exporter.log"
+output_log="/var/log/nftables-exporter/nftables-exporter.log"
+pidfile=${pidfile:-"/run/nftables_exporter.pid"}
+
+depend() {
+ after net
+}
diff --git a/app-metrics/nftables-exporter/metadata.xml b/app-metrics/nftables-exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/nftables-exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/nftables-exporter/nftables-exporter-0.2.7.ebuild b/app-metrics/nftables-exporter/nftables-exporter-0.2.7.ebuild
new file mode 100644
index 000000000000..2714026e1004
--- /dev/null
+++ b/app-metrics/nftables-exporter/nftables-exporter-0.2.7.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+# make sure these are updated based on the Makefile in every bump.
+GITVERSION=tags/v0.2.7-0-ga173315
+SHA=a1733152
+
+DESCRIPTION="prometheus exporter for nftables metrics"
+HOMEPAGE="https://github.com/metal-stack/nftables-exporter"
+SRC_URI="https://github.com/metal-stack/nftables-exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="net-firewall/nftables"
+BDEPEND=">=dev-lang/go-1.21"
+
+src_prepare() {
+ default
+ sed -i -e '/strip bin\//d' Makefile
+}
+
+src_compile() {
+ emake \
+ GONAME=${PN} \
+ GITVERSION=${GITVERSION} \
+ SHA=${SHA} \
+ VERSION=v${PV} \
+ all
+}
+
+src_install() {
+dobin bin/${PN}
+insinto etc
+doins nftables_exporter.yaml
+systemd_dounit systemd/nftables-exporter.service
+newinitd "${FILESDIR}"/${PN}.initd ${PN}
+keepdir /var/log/${PN}
+}
diff --git a/app-metrics/nftables-exporter/nftables-exporter-0.3.1.ebuild b/app-metrics/nftables-exporter/nftables-exporter-0.3.1.ebuild
new file mode 100644
index 000000000000..5c64528b9900
--- /dev/null
+++ b/app-metrics/nftables-exporter/nftables-exporter-0.3.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+# make sure these are updated based on the Makefile in every bump.
+SHA=a8497830
+GITVERSION=tags/v0.3.1-0-ga849783
+
+DESCRIPTION="prometheus exporter for nftables metrics"
+HOMEPAGE="https://github.com/metal-stack/nftables-exporter"
+SRC_URI="https://github.com/metal-stack/nftables-exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="net-firewall/nftables"
+
+src_prepare() {
+ default
+ sed -i -e '/strip bin\//d' -e '/sha256sum/d' Makefile
+}
+
+src_compile() {
+ emake \
+ SHA=${SHA} \
+ GITVERSION=${GITVERSION} \
+ VERSION=v${PV} \
+ build
+}
+
+src_install() {
+ newbin bin/${P}-* ${PN}
+ insinto etc
+ doins nftables_exporter.yaml
+ systemd_dounit systemd/nftables-exporter.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ keepdir /var/log/${PN}
+}
diff --git a/app-metrics/nginx-lua-prometheus/Manifest b/app-metrics/nginx-lua-prometheus/Manifest
new file mode 100644
index 000000000000..71476dd467f1
--- /dev/null
+++ b/app-metrics/nginx-lua-prometheus/Manifest
@@ -0,0 +1 @@
+DIST nginx-lua-prometheus-0.1_pre20170610.tar.gz 10307 BLAKE2B b08fcb126a6d7034c143c7e96709f3f2751d90f60f6b9225f55ed46f7f211ebcf5f1688bd8b2c82286e329dd23e09a5163ad316ba6568755936253e8e55590f1 SHA512 df1022a88e82e388e68146f81e51a53f9b0c1a14a43d58e468d258ac0ca9875c1c88af44c46c91d89dc7fc1fef0ffebdb9163f886d85fde995e61e2cac3b5c81
diff --git a/app-metrics/nginx-lua-prometheus/metadata.xml b/app-metrics/nginx-lua-prometheus/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/nginx-lua-prometheus/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/nginx-lua-prometheus/nginx-lua-prometheus-0.1_pre20170610-r101.ebuild b/app-metrics/nginx-lua-prometheus/nginx-lua-prometheus-0.1_pre20170610-r101.ebuild
new file mode 100644
index 000000000000..a626d7cc20c8
--- /dev/null
+++ b/app-metrics/nginx-lua-prometheus/nginx-lua-prometheus-0.1_pre20170610-r101.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# This should be kept in sync with implementations supported
+# by www-servers/nginx
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+
+# This is the upstream tag which corresponds to this release.
+# It needs to be updated with every bump.
+TAG="0.1-20170610"
+
+inherit lua-single
+
+DESCRIPTION="Library that exports Nginx metrics to Prometheus"
+HOMEPAGE="https://github.com/knyar/nginx-lua-prometheus"
+SRC_URI="https://github.com/knyar/${PN}/archive/${TAG}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${TAG}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+BDEPEND="virtual/pkgconfig"
+
+COMMON_DEPEND="${LUA_DEPS}"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}
+ || (
+ www-nginx/ngx-lua-module[${LUA_SINGLE_USEDEP}]
+ www-servers/nginx[nginx_modules_http_lua(-),${LUA_SINGLE_USEDEP}]
+ )
+"
+
+src_install() {
+ insinto "$(lua_get_lmod_dir)"/${PN}
+ doins prometheus.lua
+ dodoc *.md
+}
diff --git a/app-metrics/nginx-vts-exporter/Manifest b/app-metrics/nginx-vts-exporter/Manifest
new file mode 100644
index 000000000000..6755f93c09ab
--- /dev/null
+++ b/app-metrics/nginx-vts-exporter/Manifest
@@ -0,0 +1,2 @@
+DIST nginx-vts-exporter-0.10.8-deps.tar.xz 974428 BLAKE2B c13f9b68f614bdc64d144d71a5e227745103fa3d89c797986015d57c09e6150de17805ac6e7dbd88b3124adb7aa904f9913d6ac39dad235ff7acb6097760ba22 SHA512 47e0df6516c4f733bd1ee9dbf6c1f54d8b28006c584fecb49eed544251accd2ef0ea0fc9f01caed812b1a0488cc55b46b519a61953b3fd73d4c7c6e4519c0e6b
+DIST nginx-vts-exporter-0.10.8.tar.gz 15612 BLAKE2B 136ecd595d07da77ab40b293e4e110ec0c28400feb5f791d7eb10671e2624e90ee7bcb8e143eec31517c63bf3248124520a59bbf96471b656274ecf9ed944494 SHA512 4e82c4d9a2b23e7b2c7479c2888b5f12f1a0fd1f05d14da02a4774aeb3183b1752b422370c025c6e7378891f682e79d20abd89f4ea8bff69905fad6e44d12396
diff --git a/app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.confd b/app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.confd
new file mode 100644
index 000000000000..ae134353a235
--- /dev/null
+++ b/app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus nginx virtual host traffic stats exporter
+command_args="-nginx.scrape_uri=http://localhost/status/format/json"
diff --git a/app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.initd b/app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.initd
new file mode 100644
index 000000000000..f61549b061d7
--- /dev/null
+++ b/app-metrics/nginx-vts-exporter/files/nginx-vts-exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus nginx virtual host traffic status exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/nginx-vts-exporter"
+command_args="${command_args:--nginx.scrape_uri=http://localhost/status/format/json}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/nginx-vts-exporter/metadata.xml b/app-metrics/nginx-vts-exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/nginx-vts-exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/nginx-vts-exporter/nginx-vts-exporter-0.10.8.ebuild b/app-metrics/nginx-vts-exporter/nginx-vts-exporter-0.10.8.ebuild
new file mode 100644
index 000000000000..d1ad6cdcf32d
--- /dev/null
+++ b/app-metrics/nginx-vts-exporter/nginx-vts-exporter-0.10.8.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Nginx virtual host traffic stats exporter for Prometheus"
+HOMEPAGE="https://github.com/hnlq715/nginx-vts-exporter"
+SRC_URI="https://github.com/hnlq715/nginx-vts-exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+COMMON_DEPEND="acct-group/nginx-vts-exporter
+ acct-user/nginx-vts-exporter"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+src_compile() {
+ ego build .
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc README.md
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/node_exporter/Manifest b/app-metrics/node_exporter/Manifest
new file mode 100644
index 000000000000..bdd668a2ba1f
--- /dev/null
+++ b/app-metrics/node_exporter/Manifest
@@ -0,0 +1,10 @@
+DIST node_exporter-1.10.2-vendor.tar.xz 1673036 BLAKE2B f64be0325b28d1ae4ea1381a238ab45f163de6ff340ef4367a3928f0102f7511bb581f28456e0ea3f179ee37e81b66b595655bb34c962758eadee8a85ad30126 SHA512 5c1954dac2e7828346b4489db5c4629f33fec694c301398db2cd29e5c310bdd57c80c39ca6befb2fa0be151e572e354dbcc26e6f42399a9fcc22a5288450e84b
+DIST node_exporter-1.10.2.tar.gz 380242 BLAKE2B 800fea05624e2740735e32271e868d983909e17247efc82028de24dbda1e0ff2058a5b714e16866239cf8a0b07ea876b30ba9d07494a0c1b00bbc3ca82f3f8c7 SHA512 0da5e711e7c314f6eca4064f48b035b46c99610df8ae14ab2522b0fbafbc4d3addae2ff8555191ec077af23aca0a672b3ed0c791ff6bf13bba614d0a42736be9
+DIST node_exporter-1.11.1-vendor.tar.xz 1695068 BLAKE2B 68bc8f70212ef8147bdf0afb91508e769853c3488335536725479cae9e25eafe566a56b2157700f4ea644ee66bcd65a26f2da4adde3c6c6578b77a35f9133752 SHA512 f48414691e376d99ecfedcee84281132d0d1eda8453092638f278058d2e8052f2809bc65e813d74bf2e51099f049d6533cfab8082adc5f008ccab1e9af47cbd9
+DIST node_exporter-1.11.1.tar.gz 402911 BLAKE2B 9f6a697436bb797065cdcb7b91df811cdf5b656737cfb6db967d810c776953e08daca7242fcd36196c9ce5bcfb89690309be3699a1882b5ecd2c849da6573101 SHA512 52422f030c71a26fdfd1e56b739a801c6bee7818e359685bf3aee834833a07509bb9830444a91a0aab2a6ca6965434b553655e0b5b3d1d73a51a2a674e6a2a0c
+DIST node_exporter-1.8.2-deps.tar.xz 9579024 BLAKE2B 7fb5abc6f5c0517350dce5fd9ee895ee599853804d97e1229dfcc1b2fa4a75fa900d7af6ae00558b509c798f852432515045986102a55ba4fcb43ec18af18874 SHA512 4acc939c63935191dd5b58860e1543f76ddc67abe16370d19f163c0c982fad53f05a6ffd049555c0c5475d640ca495df0696e77fa23c6dd79f314ce67d014b8f
+DIST node_exporter-1.8.2.tar.gz 335292 BLAKE2B 7aad2ac3433ba58be887c86d1cfbf0cd53d6712d171d2a928145588ea68f2839d593758254ab8742b7c27f068a75391959ea78ae768ffc1a0a1f5b08069dcf52 SHA512 68112a85a9ffde88d75893c30ab992ae3c591d44fbefa10e45cf94d228c8f8c44bb3585707521e355817c4b4276cf77eeaf4ed9d0261de02620135ad12f5e711
+DIST node_exporter-1.9.0-deps.tar.xz 1751656 BLAKE2B 99e81c1bc46bedbfec3366666333d17446a2693da396a8ce7c465608b69d2936d3291b6da736f24c14509633558aefa0bc53dadb74c4c24ad4afc1f76ad4ff43 SHA512 57163a1c35efd54efaff9088af6cfde5d54ec484eafab5961e94ce1cc14d71ff97480294dc18538fcd2329486d0737bc8ee17a6d31e18ae5b6738b91b23b30e8
+DIST node_exporter-1.9.0.tar.gz 353621 BLAKE2B 337a7214d18eb2d972aaea0f92bb946490916779de40934c1b8aea5f8b140959ed08d8f260547cdb693792f40f6d9818e65f9c6f197cd2dbd6a3b716cc7174d9 SHA512 b9076ad2c92bf373728da6bd385ac1ac67a8867a6825c18a7c298a5ae4c2ef8abdea560b6de949276684584d2efccf34badd6b1443ba9c08c2f7d5ddcd2d3c78
+DIST node_exporter-1.9.1-deps.tar.xz 1751016 BLAKE2B 6edfd93e2325ea4ca12629bc50c52138f2351d885461ea2dfe6b181c86401537f102dd1a2c5382b7629e7b5c8c38e53d79d2a9ef4d16e88b77083d557c445700 SHA512 2e8a9ee8c88fd5d2ceb657e28ee0e38aae0b618bbfc8b4e39d19245b00a17bfb0c97868d81f250cb5973ca5734e7dbd2a445bb9961e2bebfe22dda6bf723aa4b
+DIST node_exporter-1.9.1.tar.gz 353747 BLAKE2B a0c911b69a388e8e83413549601b48abb6d339eba39ea27ff4b36d54b54975b4d4cd9aaa2af2daf1204f552efb9ac8fb2202861f33485b5b9f8c806cd4be9921 SHA512 233d1d856d9e2598818f7487357a51b94a39207810d9f35e0cb44c4703583be07ebde6eb658c25560d9345d0c43651a880be5fc42fe3cbe1975d6f6c348eeddf
diff --git a/app-metrics/node_exporter/files/node_exporter-1.7.0.logrotate b/app-metrics/node_exporter/files/node_exporter-1.7.0.logrotate
new file mode 100644
index 000000000000..82cad3ace322
--- /dev/null
+++ b/app-metrics/node_exporter/files/node_exporter-1.7.0.logrotate
@@ -0,0 +1,9 @@
+/var/log/node_exporter/node_exporter.log {
+ weekly
+ rotate 10
+ copytruncate
+ compress
+ delaycompress
+ notifempty
+ missingok
+}
diff --git a/app-metrics/node_exporter/files/node_exporter.confd b/app-metrics/node_exporter/files/node_exporter.confd
new file mode 100644
index 000000000000..b65652001308
--- /dev/null
+++ b/app-metrics/node_exporter/files/node_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus node exporter
+command_args="--collector.textfile.directory=/var/lib/node_exporter/"
diff --git a/app-metrics/node_exporter/files/node_exporter.initd-1 b/app-metrics/node_exporter/files/node_exporter.initd-1
new file mode 100644
index 000000000000..6e9de80da590
--- /dev/null
+++ b/app-metrics/node_exporter/files/node_exporter.initd-1
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 2016-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus machine metrics exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/sbin/node_exporter"
+command_args="${command_args:---collector.textfile.directory=/var/lib/node_exporter/}"
+command_background="true"
+command_user="${user}:${group}"
+output_log="/var/log/node_exporter/${RC_SVCNAME}.log"
+error_log="/var/log/node_exporter/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
+
+start_pre() {
+ checkpath -q -d -m 0755 -o ${user}:${group} /var/log/node_exporter
+}
diff --git a/app-metrics/node_exporter/metadata.xml b/app-metrics/node_exporter/metadata.xml
new file mode 100644
index 000000000000..987f183751a4
--- /dev/null
+++ b/app-metrics/node_exporter/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>me@rahil.rocks</email>
+ <name>Rahil Bhimjiani</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/prometheus/node_exporter/issues</bugs-to>
+ <doc>https://github.com/prometheus/node_exporter/blob/master/README.md</doc>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/node_exporter/node_exporter-1.10.2.ebuild b/app-metrics/node_exporter/node_exporter-1.10.2.ebuild
new file mode 100644
index 000000000000..1ca3c80ed830
--- /dev/null
+++ b/app-metrics/node_exporter/node_exporter-1.10.2.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for machine metrics"
+HOMEPAGE="https://github.com/prometheus/node_exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/prometheus/node_exporter.git"
+else
+ SRC_URI="https://github.com/prometheus/node_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+ KEYWORDS="amd64 arm64 ~loong ~riscv ~x86"
+fi
+
+# main pkg
+LICENSE="Apache-2.0"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+IUSE="selinux"
+
+DEPEND="
+ acct-group/node_exporter
+ acct-user/node_exporter
+ selinux? ( sec-policy/selinux-node_exporter )
+"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ else
+ default
+ fi
+}
+
+src_compile() {
+ if use x86; then
+ #917577 pie breaks build on x86
+ GOFLAGS=${GOFLAGS//-buildmode=pie}
+ fi
+ local go_ldflags=(
+ -X github.com/prometheus/common/version.Version=${PV}
+ -X github.com/prometheus/common/version.Revision=${GIT_COMMIT}
+ -X github.com/prometheus/common/version.Branch=master
+ -X github.com/prometheus/common/version.BuildUser=gentoo
+ -X github.com/prometheus/common/version.BuildDate="$(date +%F-%T)"
+ )
+ ego build -mod=vendor -ldflags "${go_ldflags[*]}" -o ${PN} .
+ ./"${PN}" --help-man > "${PN}".1 || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dosbin "${PN}"
+ dodoc example-rules.yml *.md
+ doman "${PN}".1
+
+ systemd_dounit examples/systemd/node_exporter.{service,socket}
+ newinitd "${FILESDIR}"/${PN}.initd-1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+
+ insinto /etc/sysconfig
+ newins examples/systemd/sysconfig.node_exporter node_exporter
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/node_exporter-1.7.0.logrotate "${PN}"
+
+ keepdir /var/lib/node_exporter/textfile_collector /var/log/node_exporter
+ fowners -R ${PN}:${PN} /var/lib/node_exporter /var/log/node_exporter
+}
diff --git a/app-metrics/node_exporter/node_exporter-1.11.1.ebuild b/app-metrics/node_exporter/node_exporter-1.11.1.ebuild
new file mode 100644
index 000000000000..c05552f39cbe
--- /dev/null
+++ b/app-metrics/node_exporter/node_exporter-1.11.1.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for machine metrics"
+HOMEPAGE="https://github.com/prometheus/node_exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/prometheus/node_exporter.git"
+else
+ SRC_URI="https://github.com/prometheus/node_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+ KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+fi
+
+# main pkg
+LICENSE="Apache-2.0"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+IUSE="selinux"
+
+DEPEND="
+ acct-group/node_exporter
+ acct-user/node_exporter
+ selinux? ( sec-policy/selinux-node_exporter )
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-lang/go-1.25.0"
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ else
+ default
+ fi
+}
+
+src_compile() {
+ if use x86; then
+ #917577 pie breaks build on x86
+ GOFLAGS=${GOFLAGS//-buildmode=pie}
+ fi
+ local go_ldflags=(
+ -X github.com/prometheus/common/version.Version=${PV}
+ -X github.com/prometheus/common/version.Revision=${GIT_COMMIT}
+ -X github.com/prometheus/common/version.Branch=master
+ -X github.com/prometheus/common/version.BuildUser=gentoo
+ -X github.com/prometheus/common/version.BuildDate="$(date +%F-%T)"
+ )
+ ego build -mod=vendor -ldflags "${go_ldflags[*]}" -o ${PN} .
+ ./"${PN}" --help-man > "${PN}".1 || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dosbin "${PN}"
+ dodoc example-rules.yml *.md
+ doman "${PN}".1
+
+ systemd_dounit examples/systemd/node_exporter.{service,socket}
+ newinitd "${FILESDIR}"/${PN}.initd-1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+
+ insinto /etc/sysconfig
+ newins examples/systemd/sysconfig.node_exporter node_exporter
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/node_exporter-1.7.0.logrotate "${PN}"
+
+ keepdir /var/lib/node_exporter/textfile_collector /var/log/node_exporter
+ fowners -R ${PN}:${PN} /var/lib/node_exporter /var/log/node_exporter
+}
diff --git a/app-metrics/node_exporter/node_exporter-1.8.2.ebuild b/app-metrics/node_exporter/node_exporter-1.8.2.ebuild
new file mode 100644
index 000000000000..d2235073a3a5
--- /dev/null
+++ b/app-metrics/node_exporter/node_exporter-1.8.2.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for machine metrics"
+HOMEPAGE="https://github.com/prometheus/node_exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/prometheus/node_exporter.git"
+else
+ SRC_URI="https://github.com/prometheus/node_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+ KEYWORDS="amd64 arm64 ~loong ~riscv ~x86"
+fi
+
+# main pkg
+LICENSE="Apache-2.0"
+# deps
+LICENSE+=" BSD BSD-2 MIT"
+SLOT="0"
+IUSE="selinux"
+
+COMMON_DEPEND="
+ acct-group/node_exporter
+ acct-user/node_exporter
+ selinux? ( sec-policy/selinux-node_exporter )
+"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-util/promu-0.17.0"
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ else
+ default
+ fi
+}
+
+src_compile() {
+ if use x86; then
+ #917577 pie breaks build on x86
+ GOFLAGS=${GOFLAGS//-buildmode=pie}
+ fi
+ promu build -v || die
+ ./"${PN}" --help-man > "${PN}".1 || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dosbin "${PN}"
+ dodoc example-rules.yml *.md
+ doman "${PN}".1
+ systemd_dounit examples/systemd/node_exporter.{service,socket}
+ insinto /etc/sysconfig
+ newins examples/systemd/sysconfig.node_exporter node_exporter
+ newinitd "${FILESDIR}"/${PN}.initd-1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/node_exporter-1.7.0.logrotate "${PN}"
+ keepdir /var/lib/node_exporter /var/log/node_exporter
+ fowners ${PN}:${PN} /var/lib/node_exporter /var/log/node_exporter
+}
diff --git a/app-metrics/node_exporter/node_exporter-1.9.0.ebuild b/app-metrics/node_exporter/node_exporter-1.9.0.ebuild
new file mode 100644
index 000000000000..d42a180b1a8d
--- /dev/null
+++ b/app-metrics/node_exporter/node_exporter-1.9.0.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for machine metrics"
+HOMEPAGE="https://github.com/prometheus/node_exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/prometheus/node_exporter.git"
+else
+ SRC_URI="https://github.com/prometheus/node_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" https://github.com/rahilarious/gentoo-distfiles/releases/download/${P}/deps.tar.xz -> ${P}-deps.tar.xz"
+
+ KEYWORDS="amd64 arm64 ~loong ~riscv ~x86"
+fi
+
+# main pkg
+LICENSE="Apache-2.0"
+# deps
+LICENSE+=" BSD BSD-2 MIT"
+SLOT="0"
+IUSE="selinux"
+
+COMMON_DEPEND="
+ acct-group/node_exporter
+ acct-user/node_exporter
+ selinux? ( sec-policy/selinux-node_exporter )
+"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-util/promu-0.17.0"
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ [[ ${PV} != 9999* ]] && { ln -sv ../vendor ./ || die ; }
+ default
+}
+
+src_compile() {
+ if use x86; then
+ #917577 pie breaks build on x86
+ GOFLAGS=${GOFLAGS//-buildmode=pie}
+ fi
+ promu build -v || die
+ ./"${PN}" --help-man > "${PN}".1 || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dosbin "${PN}"
+ dodoc example-rules.yml *.md
+ doman "${PN}".1
+ systemd_dounit examples/systemd/node_exporter.{service,socket}
+ insinto /etc/sysconfig
+ newins examples/systemd/sysconfig.node_exporter node_exporter
+ newinitd "${FILESDIR}"/${PN}.initd-1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/node_exporter-1.7.0.logrotate "${PN}"
+ keepdir /var/lib/node_exporter /var/log/node_exporter
+ fowners ${PN}:${PN} /var/lib/node_exporter /var/log/node_exporter
+}
diff --git a/app-metrics/node_exporter/node_exporter-1.9.1.ebuild b/app-metrics/node_exporter/node_exporter-1.9.1.ebuild
new file mode 100644
index 000000000000..761604506d3b
--- /dev/null
+++ b/app-metrics/node_exporter/node_exporter-1.9.1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for machine metrics"
+HOMEPAGE="https://github.com/prometheus/node_exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/prometheus/node_exporter.git"
+else
+ SRC_URI="https://github.com/prometheus/node_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" https://github.com/rahilarious/gentoo-distfiles/releases/download/${P}/deps.tar.xz -> ${P}-deps.tar.xz"
+
+ KEYWORDS="amd64 arm64 ~loong ~riscv ~x86"
+fi
+
+# main pkg
+LICENSE="Apache-2.0"
+# deps
+LICENSE+=" BSD BSD-2 MIT"
+SLOT="0"
+IUSE="selinux"
+
+COMMON_DEPEND="
+ acct-group/node_exporter
+ acct-user/node_exporter
+ selinux? ( sec-policy/selinux-node_exporter )
+"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-util/promu-0.17.0"
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ [[ ${PV} != 9999* ]] && { ln -sv ../vendor ./ || die ; }
+ default
+}
+
+src_compile() {
+ if use x86; then
+ #917577 pie breaks build on x86
+ GOFLAGS=${GOFLAGS//-buildmode=pie}
+ fi
+ promu build -v || die
+ ./"${PN}" --help-man > "${PN}".1 || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dosbin "${PN}"
+ dodoc example-rules.yml *.md
+ doman "${PN}".1
+ systemd_dounit examples/systemd/node_exporter.{service,socket}
+ insinto /etc/sysconfig
+ newins examples/systemd/sysconfig.node_exporter node_exporter
+ newinitd "${FILESDIR}"/${PN}.initd-1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/node_exporter-1.7.0.logrotate "${PN}"
+ keepdir /var/lib/node_exporter/textfile_collector /var/log/node_exporter
+ fowners -R ${PN}:${PN} /var/lib/node_exporter /var/log/node_exporter
+}
diff --git a/app-metrics/node_exporter/node_exporter-9999.ebuild b/app-metrics/node_exporter/node_exporter-9999.ebuild
new file mode 100644
index 000000000000..c05552f39cbe
--- /dev/null
+++ b/app-metrics/node_exporter/node_exporter-9999.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for machine metrics"
+HOMEPAGE="https://github.com/prometheus/node_exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/prometheus/node_exporter.git"
+else
+ SRC_URI="https://github.com/prometheus/node_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+ KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+fi
+
+# main pkg
+LICENSE="Apache-2.0"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+IUSE="selinux"
+
+DEPEND="
+ acct-group/node_exporter
+ acct-user/node_exporter
+ selinux? ( sec-policy/selinux-node_exporter )
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-lang/go-1.25.0"
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ else
+ default
+ fi
+}
+
+src_compile() {
+ if use x86; then
+ #917577 pie breaks build on x86
+ GOFLAGS=${GOFLAGS//-buildmode=pie}
+ fi
+ local go_ldflags=(
+ -X github.com/prometheus/common/version.Version=${PV}
+ -X github.com/prometheus/common/version.Revision=${GIT_COMMIT}
+ -X github.com/prometheus/common/version.Branch=master
+ -X github.com/prometheus/common/version.BuildUser=gentoo
+ -X github.com/prometheus/common/version.BuildDate="$(date +%F-%T)"
+ )
+ ego build -mod=vendor -ldflags "${go_ldflags[*]}" -o ${PN} .
+ ./"${PN}" --help-man > "${PN}".1 || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dosbin "${PN}"
+ dodoc example-rules.yml *.md
+ doman "${PN}".1
+
+ systemd_dounit examples/systemd/node_exporter.{service,socket}
+ newinitd "${FILESDIR}"/${PN}.initd-1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+
+ insinto /etc/sysconfig
+ newins examples/systemd/sysconfig.node_exporter node_exporter
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/node_exporter-1.7.0.logrotate "${PN}"
+
+ keepdir /var/lib/node_exporter/textfile_collector /var/log/node_exporter
+ fowners -R ${PN}:${PN} /var/lib/node_exporter /var/log/node_exporter
+}
diff --git a/app-metrics/openvpn_exporter/Manifest b/app-metrics/openvpn_exporter/Manifest
new file mode 100644
index 000000000000..effd201d2d9b
--- /dev/null
+++ b/app-metrics/openvpn_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST openvpn_exporter-0.3.0-deps.tar.xz 4254448 BLAKE2B 982490b250119a984a3feff7b6a7d634fc1450b71a4e859f81894708643c3cff8de93bf3d799cc34396e3f18f271f23227dac142037c5986307716fc09c02606 SHA512 d4868e1cc553506aba88cc5268faf438e8504a231851315e8c13ee9871a9582e0db787e1a8237e4250740f50336844d8f1557ae4e2521ece9f9235376f394bb7
+DIST openvpn_exporter-0.3.0.tar.gz 11505 BLAKE2B 61a991e3ea8001a9481b8207c83316c1e028a68f657f3de191b7d69d7a3fefa753663292c2d77d09ef6024f9392b0077fc5170f2e8a19c0397240281dec09482 SHA512 4bea502e7dfd32e5fea9fc21fbfdb65ddcb381d6d1b5463c361e60026f88693912b998979e9fab3e455196eb7dec1677dc9feb293f4f14609f4352eb9d238cd9
diff --git a/app-metrics/openvpn_exporter/files/openvpn_exporter.confd b/app-metrics/openvpn_exporter/files/openvpn_exporter.confd
new file mode 100644
index 000000000000..5aef9b6d5a79
--- /dev/null
+++ b/app-metrics/openvpn_exporter/files/openvpn_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus openvpn exporter
+command_args="-openvpn.status_paths /etc/openvpn/openvpn-status.log"
diff --git a/app-metrics/openvpn_exporter/files/openvpn_exporter.initd b/app-metrics/openvpn_exporter/files/openvpn_exporter.initd
new file mode 100644
index 000000000000..50fa4dab4fb2
--- /dev/null
+++ b/app-metrics/openvpn_exporter/files/openvpn_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus Exporter for OpenVPN status Metrics"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/openvpn_exporter"
+command_args="${command_args:--openvpn.status_paths /etc/openvpn/openvpn-status.log}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/openvpn_exporter/files/openvpn_exporter.logrotated b/app-metrics/openvpn_exporter/files/openvpn_exporter.logrotated
new file mode 100644
index 000000000000..37ffbe501421
--- /dev/null
+++ b/app-metrics/openvpn_exporter/files/openvpn_exporter.logrotated
@@ -0,0 +1,7 @@
+/var/log/openvpn_exporter/openvpn_exporter.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/app-metrics/openvpn_exporter/metadata.xml b/app-metrics/openvpn_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/openvpn_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/openvpn_exporter/openvpn_exporter-0.3.0.ebuild b/app-metrics/openvpn_exporter/openvpn_exporter-0.3.0.ebuild
new file mode 100644
index 000000000000..13a0b9759eda
--- /dev/null
+++ b/app-metrics/openvpn_exporter/openvpn_exporter-0.3.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Prometheus Exporter for OpenVPN"
+HOMEPAGE="https://github.com/kumina/openvpn_exporter"
+SRC_URI="https://github.com/kumina/openvpn_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+COMMON_DEPEND="
+ acct-user/openvpn_exporter
+ acct-group/openvpn_exporter
+"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+src_compile() {
+ ego build -o ${PN}
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc {CHANGELOG,README}.md
+ keepdir "/var/log/${PN}"
+ fowners ${PN}:${PN} "/var/log/${PN}"
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+}
diff --git a/app-metrics/portage-exporter/Manifest b/app-metrics/portage-exporter/Manifest
new file mode 100644
index 000000000000..187c1ee1fd0c
--- /dev/null
+++ b/app-metrics/portage-exporter/Manifest
@@ -0,0 +1 @@
+DIST portage-exporter-0.1.0.tar.gz 14931 BLAKE2B bfafe9ac71b3ca756ac621d424cf80f988c3564c3a7d28b1d87781674cca00b7e3ed0c045d3d82bf19e6ce2021135dd85001aef3fe33360760da00dc17573666 SHA512 16efcb1ae6417f0db48247468f369db76bafeace136e296724fbb517d38b0ec5cbaf7b1949b7c5fb87337eeb374535f53a4a432f8aa5b10a3bb5b418fead2a94
diff --git a/app-metrics/portage-exporter/files/portage-exporter.confd b/app-metrics/portage-exporter/files/portage-exporter.confd
new file mode 100644
index 000000000000..3bd24a22a809
--- /dev/null
+++ b/app-metrics/portage-exporter/files/portage-exporter.confd
@@ -0,0 +1,26 @@
+# /etc/conf.d/portage-exporter
+
+# PID file
+#EXPORTER_PIDFILE="/run/${RC_SVCNAME}.pid"
+
+# The termination timeout (start-stop-daemon parameter "retry") ensures
+# that the service will be terminated within a given time (60 + 5 seconds
+# per default) when you are stopping the service.
+#EXPORTER_TERMTIMEOUT="TERM/60/KILL/5"
+
+# User to run exporter as
+#EXPORTER_USER="portage-exporter"
+
+# User group to run exporter as
+#EXPORTER_GROUP="portage-exporter"
+
+# You can use this configuration option to pass additional options to the
+# start-stop-daemon, see start-stop-daemon(8) for more details.
+# Per default we wait 1000ms after we have started the service to ensure
+# that the daemon is really up and running.
+#EXPORTER_SSDARGS="--wait 1000"
+
+# Exporter flags (passed via env)
+#SERVE_ADDRESS=":2112"
+#SERVE_PATH=/metrics
+VDB_UPDATE_INTERVAL=1800
diff --git a/app-metrics/portage-exporter/files/portage-exporter.initd b/app-metrics/portage-exporter/files/portage-exporter.initd
new file mode 100644
index 000000000000..9aa53f509a6e
--- /dev/null
+++ b/app-metrics/portage-exporter/files/portage-exporter.initd
@@ -0,0 +1,49 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus exporter for Portage packages"
+
+EXPORTER_FLAGS=${EXPORTER_FLAGS:-""}
+#EXPORTER_USER=${EXPORTER_USER:-"portage-exporter"}
+#EXPORTER_GROUP=${EXPORTER_GROUP:-"portage-exporter"}
+EXPORTER_PIDFILE=${EXPORTER_PIDFILE:-"/run/${RC_SVCNAME}.pid"}
+EXPORTER_SSDARGS=${EXPORTER_SSDARGS:-"--wait 1000"}
+EXPORTER_TERMTIMEOUT=${EXPORTER_TERMTIMEOUT:-"TERM/60/KILL/5"}
+
+command="/usr/bin/portage-exporter"
+command_args="${EXPORTER_FLAGS}"
+command_background="true"
+start_stop_daemon_args="${EXPORTER_SSDARGS}"
+start_stop_daemon_args="${start_stop_daemon_args} ${EXPORTER_USER:+--user }${EXPORTER_USER}"
+start_stop_daemon_args="${start_stop_daemon_args} ${EXPORTER_GROUP:+--group }${EXPORTER_GROUP}"
+
+getconfig() {
+ local key="$1"
+ local value_default="$2"
+ local value=
+
+ if service_started; then
+ value="$(service_get_value "${key}")"
+ fi
+
+ if [ -z "${value}" ]; then
+ # Value not explicitly set
+ echo "${value_default}"
+ else
+ echo "${value}"
+ fi
+
+ return 0
+}
+
+pidfile="$(getconfig pidfile ${EXPORTER_PIDFILE})"
+retry="$(getconfig retry ${EXPORTER_TERMTIMEOUT})"
+
+depend() {
+ after net.lo loopback
+}
+
+start_post() {
+ service_set_value retry "${EXPORTER_TERMTIMEOUT}"
+}
diff --git a/app-metrics/portage-exporter/files/portage-exporter.service b/app-metrics/portage-exporter/files/portage-exporter.service
new file mode 100644
index 000000000000..bec84b4c0413
--- /dev/null
+++ b/app-metrics/portage-exporter/files/portage-exporter.service
@@ -0,0 +1,18 @@
+[Unit]
+Description=Gentoo Portage Exporter
+Wants=network-online.target
+After=network-online.target
+
+[Service]
+User=portage-exporter
+DynamicUser=yes
+Type=simple
+PassEnvironment=SERVE_ADDRESS SERVE_PATH VDB_UPDATE_INTERVAL
+ExecStart=/usr/bin/portage-exporter
+
+# Environment=SERVE_ADDRESS=:2112
+# Environment=SERVE_PATH=/metrics
+# Environment=VDB_UPDATE_INTERVAL=1800
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/portage-exporter/metadata.xml b/app-metrics/portage-exporter/metadata.xml
new file mode 100644
index 000000000000..8f5778a21fc1
--- /dev/null
+++ b/app-metrics/portage-exporter/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>arthurzam@gentoo.org</email>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/portage-exporter/portage-exporter-0.1.0.ebuild b/app-metrics/portage-exporter/portage-exporter-0.1.0.ebuild
new file mode 100644
index 000000000000..a9b7cbd38c65
--- /dev/null
+++ b/app-metrics/portage-exporter/portage-exporter-0.1.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake systemd
+
+DESCRIPTION="Prometheus exporter for Gentoo Portage"
+HOMEPAGE="https://github.com/projg2/portage-exporter"
+SRC_URI="https://github.com/projg2/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-cpp/prometheus-cpp"
+
+src_install() {
+ cmake_src_install
+
+ systemd_newunit "${FILESDIR}"/${PN}.service ${PN}.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+}
diff --git a/app-metrics/postfix_exporter/Manifest b/app-metrics/postfix_exporter/Manifest
new file mode 100644
index 000000000000..637770d42712
--- /dev/null
+++ b/app-metrics/postfix_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST postfix_exporter-0.3.0-deps.tar.xz 10261848 BLAKE2B 3ab985ae873f53019b093266df90d4593b3a1755bafb6a0df600ae84411fd73f578cfeb6749fdfade5392ec55ec4df1916cf6b86f0ea0b5e04828dda50687789 SHA512 d591ef808fd3ccc7b48f37257ae6925b8ae491decef9ac679f13af08d0c6717b162a53cc2cd2ffb98361f38eaceaac24b2fba1db958fc9fa172fbe5060b639b1
+DIST postfix_exporter-0.3.0.tar.gz 26528 BLAKE2B 9d1b17917f4a6a6e73e1477e973454d9ce774d218463f151117e8772f77ea17c00536d0262789644716992c3c6ddcbf8b26d9c92eea77f9750e971e3a7c0d1d4 SHA512 1812d2ad95803290c12615975ba6e44c0a6f73dd0e10db927a9f1c58bfce27b71c9c2928f58623e263ba2737d2780f220e6a7fe0992e2607f290478eaa080b39
diff --git a/app-metrics/postfix_exporter/files/postfix_exporter.confd b/app-metrics/postfix_exporter/files/postfix_exporter.confd
new file mode 100644
index 000000000000..a96327925e11
--- /dev/null
+++ b/app-metrics/postfix_exporter/files/postfix_exporter.confd
@@ -0,0 +1,9 @@
+# -postfix.logfile_path string
+# Path where Postfix writes log entries. This file will be truncated by this exporter. (default "/var/log/postfix_exporter_input.log")
+# -postfix.showq_path string
+# Path at which Postfix places its showq socket. (default "/var/spool/postfix/public/showq")
+# -web.listen-address string
+# Address to listen on for web interface and telemetry. (default ":9154")
+# -web.telemetry-path string
+# Path under which to expose metrics. (default "/metrics")
+command_args=""
diff --git a/app-metrics/postfix_exporter/files/postfix_exporter.initd b/app-metrics/postfix_exporter/files/postfix_exporter.initd
new file mode 100644
index 000000000000..8fce39c9db03
--- /dev/null
+++ b/app-metrics/postfix_exporter/files/postfix_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus Exporter for Postfix Metrics"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/postfix_exporter"
+command_args="${command_args:-}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/postfix_exporter/files/postfix_exporter.logrotated b/app-metrics/postfix_exporter/files/postfix_exporter.logrotated
new file mode 100644
index 000000000000..7c9e9f4018c8
--- /dev/null
+++ b/app-metrics/postfix_exporter/files/postfix_exporter.logrotated
@@ -0,0 +1,7 @@
+/var/log/postfix_exporter/postfix_exporter.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/app-metrics/postfix_exporter/metadata.xml b/app-metrics/postfix_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/postfix_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/postfix_exporter/postfix_exporter-0.3.0.ebuild b/app-metrics/postfix_exporter/postfix_exporter-0.3.0.ebuild
new file mode 100644
index 000000000000..ec665dd32649
--- /dev/null
+++ b/app-metrics/postfix_exporter/postfix_exporter-0.3.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Prometheus Exporter for Postfix"
+HOMEPAGE="https://github.com/kumina/postfix_exporter"
+SRC_URI="
+ https://github.com/kumina/postfix_exporter/archive/${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~arthurzam/distfiles/app-metrics/${PN}/${P}-deps.tar.xz
+"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="systemd"
+RESTRICT+=" test"
+
+RDEPEND="
+ acct-group/postfix_exporter
+ acct-user/postfix_exporter
+"
+DEPEND="${RDEPEND}
+ systemd? ( sys-apps/systemd )
+"
+
+src_compile() {
+ ego build -tags "$(usex systemd '' 'nosystemd')" -v -o bin/${PN}
+}
+
+src_install() {
+ dobin bin/${PN}
+ dodoc {CHANGELOG,README}.md
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+}
diff --git a/app-metrics/postgres_exporter/Manifest b/app-metrics/postgres_exporter/Manifest
new file mode 100644
index 000000000000..b9d6179e10fb
--- /dev/null
+++ b/app-metrics/postgres_exporter/Manifest
@@ -0,0 +1,8 @@
+DIST postgres_exporter-0.15.0-deps.tar.xz 10107168 BLAKE2B 2c63161629b7a7aa7e4ca8332f1ad140bfd4c6d496cf860964da4b1897ca67e8716f22db35df6e0558c2764442afea657f3d3e2406762f14b88bf2266f2464f7 SHA512 91a0d8b471ef06635ee3520c8b2a15e19ebb9427356602752f0b35d87efacc129709cac50873f94305edf85149d0b9bb0b2cf6d2bfa8d1ec88e6c6a6be1f4880
+DIST postgres_exporter-0.15.0.tar.gz 86818 BLAKE2B bf4b3f842c98e82c54eb8393271bd9879a93cd8f28b2fcafa09bbb907caf96c4b728139b08074f1de08295b18d61aaa29b4fb53321164c8b4fc93545f7da5b7a SHA512 332700809454dba11e1e6b9cbc46be9683925a6c692e110efa1204ce1ad1457a8d2237ee8af20f1ee6d5c663266fc1629da6f4f5ff9151faf294a26af8be7682
+DIST postgres_exporter-0.16.0-deps.tar.xz 42043172 BLAKE2B 0a7adca9f8f93e8bef092492c6b8f6478ca27c61bb31ac9b4427a11579b9a5c232996ae2c9e24d8d04daacb8a6e407468181a6a0a7871fe0b6293de28c4f3194 SHA512 f87f1d6e6a5390092b188fcf6510c54d88036ad493bc996d9b2b72941d21606cd7a14e10b9b7cb85800c7ae99400983704309b9edfddc4b9f4adf83cf8d1dde3
+DIST postgres_exporter-0.16.0.tar.gz 88742 BLAKE2B 2cb8240a350b80bb2681d65f4ba1030f47effb45e9b3e21d260e9bd8ecb8e76d05cf7523b6e0bf973c27457ac547851c71162826a4f88c52b35cce1e22fc0c24 SHA512 a4930ec95e0b5eb08712814a99662bdadbdcefd77f9950ca8ffc8015f1df09345aa7992ed2848e5aad505db249be79a0c5d0d8550a9e138f29b3a82e5229ef0e
+DIST postgres_exporter-0.17.1-deps.tar.xz 42376940 BLAKE2B a69f4d27d6452914ec6e6828eaba66891b0feabfd37659f0008149d00a6a13b0087b6741fd76880073949f8f8452340c474fb676880453e2e64962ef5e583e2d SHA512 300f936b9447574488ee724d81eeec46f3a36f06017f5688b1ae36232ccb36e38c4c705b4d2b10c3fe6713316adde757598a023fc7e477c1958337e6fb707704
+DIST postgres_exporter-0.17.1.tar.gz 90806 BLAKE2B 04a86f7d1c6f3cd1159cb927ae1064d1e007f6de56fae82e13e899215ed774bdcb7c78fad363f25781caf48d3c0f36fcbba96c08f84a03038abc451d44ecc5e7 SHA512 f48792d728ef86a5863d71b2b0180c2c7e51bfb2c741aa88c8c45a05faad47dc7fb0efbbc748265cf6d493cdfe98d2ffccd47aa77c9e657918804ff61e41031f
+DIST postgres_exporter-0.19.1-vendor.tar.xz 1487036 BLAKE2B 5ffe4aaf269f89db7ab6d6ac2a75142013a5cd3a4146ba2bf851e7d2932ed05f7070ac80fe4d9080fa430b718c3c1cf8b3f0e0e697bac2c25e741b20adf036b5 SHA512 d58b2fa259fed6419aa1c9f820c0fc0749abff30c97265681be989189f757969e684de0094ed067dc996430059f6893f94e108a1fa6331c9f973c59808e59e55
+DIST postgres_exporter-0.19.1.tar.gz 102771 BLAKE2B ff1309d5df9ee2ff7c10436de4e7ec065a1879765dcf84f13fe1bd4cc74234d7858808529478a9e15877fd9926555317fdb79e218bbc72b6fa215e0552d44c3b SHA512 ae079af1649933acf33773bca657c812b97170fa231bd340a1f4966cc6b8605ea7aa5da1505875c21eaa033d1c7c3eeb24f553d3ecd542dbe235996f8be4ce15
diff --git a/app-metrics/postgres_exporter/files/postgres_exporter.confd b/app-metrics/postgres_exporter/files/postgres_exporter.confd
new file mode 100644
index 000000000000..88fa9e35088f
--- /dev/null
+++ b/app-metrics/postgres_exporter/files/postgres_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus postgres exporter
+command_args=""
diff --git a/app-metrics/postgres_exporter/files/postgres_exporter.initd b/app-metrics/postgres_exporter/files/postgres_exporter.initd
new file mode 100644
index 000000000000..83bff2029518
--- /dev/null
+++ b/app-metrics/postgres_exporter/files/postgres_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus PostgreSQL exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/postgres_exporter"
+command_args="${command_args:-}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/postgres_exporter/files/postgres_exporter.service b/app-metrics/postgres_exporter/files/postgres_exporter.service
new file mode 100644
index 000000000000..d80f6725f7f6
--- /dev/null
+++ b/app-metrics/postgres_exporter/files/postgres_exporter.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=PostgreSQL Exporter
+Documentation="https://github.com/prometheus-community/postgres_exporter"
+
+[Service]
+User=postgres_exporter
+#Environment=DATA_SOURCE_URI=localhost:5432/postgres?sslmode=disable
+#Environment=DATA_SOURCE_USER=postgres
+#Environment=DATA_SOURCE_PASS=password
+#Environment=DATA_SOURCE_PASS_FILE=/path/to/passwordfile
+ExecStart=/usr/bin/postgres_exporter
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/postgres_exporter/metadata.xml b/app-metrics/postgres_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/postgres_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/postgres_exporter/postgres_exporter-0.15.0.ebuild b/app-metrics/postgres_exporter/postgres_exporter-0.15.0.ebuild
new file mode 100644
index 000000000000..6ff33eff04cb
--- /dev/null
+++ b/app-metrics/postgres_exporter/postgres_exporter-0.15.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+GIT_COMMIT=68c176b8833b7580bf847cecf60f8e0ad5923f9a
+
+DESCRIPTION="PostgreSQL stats exporter for Prometheus"
+HOMEPAGE="https://github.com/prometheus-community/postgres_exporter"
+SRC_URI="https://github.com/prometheus-community/postgres_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~arthurzam/distfiles/app-metrics/${PN}/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ acct-group/postgres_exporter
+ acct-user/postgres_exporter
+"
+RDEPEND="${DEPEND}"
+BDEPEND="dev-util/promu"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ .promu.yml || die "sed failed"
+}
+
+src_compile() {
+ promu build -v --prefix bin || die
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README.md queries.yaml
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/postgres_exporter/postgres_exporter-0.16.0.ebuild b/app-metrics/postgres_exporter/postgres_exporter-0.16.0.ebuild
new file mode 100644
index 000000000000..83f78935d115
--- /dev/null
+++ b/app-metrics/postgres_exporter/postgres_exporter-0.16.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module edo systemd
+
+GIT_COMMIT=a324fe37bca5193a293118b940b3df7ab3a8505c
+
+DESCRIPTION="PostgreSQL stats exporter for Prometheus"
+HOMEPAGE="https://github.com/prometheus-community/postgres_exporter"
+SRC_URI="https://github.com/prometheus-community/postgres_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~arthurzam/distfiles/app-metrics/${PN}/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ acct-group/postgres_exporter
+ acct-user/postgres_exporter
+"
+RDEPEND="${DEPEND}"
+BDEPEND="dev-util/promu"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ .promu.yml || die "sed failed"
+}
+
+src_compile() {
+ edo promu build -v --prefix bin
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README.md queries.yaml
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/postgres_exporter/postgres_exporter-0.17.1.ebuild b/app-metrics/postgres_exporter/postgres_exporter-0.17.1.ebuild
new file mode 100644
index 000000000000..b603f08c7b20
--- /dev/null
+++ b/app-metrics/postgres_exporter/postgres_exporter-0.17.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module edo systemd
+
+GIT_COMMIT=1e574cf4fd2a75a8a707d424eafcaa0b88cb7af4
+
+DESCRIPTION="PostgreSQL stats exporter for Prometheus"
+HOMEPAGE="https://github.com/prometheus-community/postgres_exporter"
+SRC_URI="https://github.com/prometheus-community/postgres_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ acct-group/postgres_exporter
+ acct-user/postgres_exporter
+"
+RDEPEND="${DEPEND}"
+BDEPEND="dev-util/promu"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ .promu.yml || die "sed failed"
+}
+
+src_compile() {
+ edo promu build -v --prefix bin
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README.md queries.yaml
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/postgres_exporter/postgres_exporter-0.19.1.ebuild b/app-metrics/postgres_exporter/postgres_exporter-0.19.1.ebuild
new file mode 100644
index 000000000000..4b86244955dd
--- /dev/null
+++ b/app-metrics/postgres_exporter/postgres_exporter-0.19.1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module edo systemd
+
+GIT_COMMIT=333363aeb548b66340a61a7fb2b3f0e8a8d39f90
+
+DESCRIPTION="PostgreSQL stats exporter for Prometheus"
+HOMEPAGE="https://github.com/prometheus-community/postgres_exporter"
+SRC_URI="https://github.com/prometheus-community/postgres_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="Apache-2.0"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+
+DEPEND="
+ acct-group/postgres_exporter
+ acct-user/postgres_exporter
+"
+RDEPEND="${DEPEND}"
+BDEPEND="dev-util/promu"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ .promu.yml || die "sed failed"
+}
+
+src_compile() {
+ edo promu build -v --prefix bin
+}
+
+src_install() {
+ dobin bin/*
+ dodoc README.md queries.yaml
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/process-exporter/Manifest b/app-metrics/process-exporter/Manifest
new file mode 100644
index 000000000000..e5a562a398cf
--- /dev/null
+++ b/app-metrics/process-exporter/Manifest
@@ -0,0 +1,4 @@
+DIST process-exporter-0.7.10-deps.tar.xz 106360268 BLAKE2B a06448eb38cee7cac6c93d8dedecfbb4fc7152f25c7ff42cb440aa6162aa8daac5ddbe7e56e99d96386b70723124b59f0bd0ab9df2b3f519532ac9487ba34b9e SHA512 6982da5d9c4ecdeacaa970baf0c820e0e3053ff3dbbbb260e7f3e68bff2c1e04beffbbbe8546e1f680d0dcba2eaac256a1bce4b6eee290a847ce70fe8653b68d
+DIST process-exporter-0.7.10.tar.gz 55320 BLAKE2B 72497d513105486de9bc212f4b8af14c52afa8acbcf04f52ab8015bef78172936917cb58573a4ea16b4b3e433e90b404da6658012d904e3d3d787787c7c16c4d SHA512 fd7ff44b28a608184ee0045c2304dad6d5ba0a1b122f9098244a46dfcfd54d0a9e65bb2891e5198ecb9f4bc51a0fcc8577880a05f2e29a073d15e8b0cb5766c1
+DIST process-exporter-0.8.5-deps.tar.xz 9016516 BLAKE2B 567537f60be2e56a3462e34bf46e15d6ba6c4209ea36e6574e57ff4c568a2fd50dcb9cfd45bf086481184d9afb02068814fe8f31f05ae1206f7474816e3a324b SHA512 0aea48891eac031fa9e99cc839b23238557d4f728f299f1a299f56d747ccabe698fdf2ff611a6f25c063e4e9eb545c471e65cf5514eef6225f1800b09a20b6ad
+DIST process-exporter-0.8.5.tar.gz 43154 BLAKE2B 094d9b1dcc516b09e5a0984cd4a7d1180a321c73e86095bb258e786fbaa2db3f703102df6463d4ac56404b1d779034dd7018abf59cc00611d53d5c61e957cc2f SHA512 e213f7ee139c4bd07686c009dede432117aac2e7a80416f0e50a46910ba394fcbae69bfdefd3a48fef9e68aff2c5ac0f0da14bb0382392fc95aca55a9a90cf23
diff --git a/app-metrics/process-exporter/files/process-exporter.initd b/app-metrics/process-exporter/files/process-exporter.initd
new file mode 100644
index 000000000000..f25eadc2a11f
--- /dev/null
+++ b/app-metrics/process-exporter/files/process-exporter.initd
@@ -0,0 +1,12 @@
+#!/sbin/openrc-run
+# Copyright 2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Process Exporter for Prometheus"
+command=/usr/bin/process-exporter
+command_args="--config.path /etc/process-exporter/all.yaml
+ ${COMMAND_ARGS}"
+command_background=yes
+error_log=/var/log/process-exporter/${RC_SVCNAME}.log
+output_log=/var/log/process-exporter/${RC_SVCNAME}.log
+pidfile=/var/run/${RC_SVCNAME}.pid
diff --git a/app-metrics/process-exporter/metadata.xml b/app-metrics/process-exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/process-exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/process-exporter/process-exporter-0.7.10.ebuild b/app-metrics/process-exporter/process-exporter-0.7.10.ebuild
new file mode 100644
index 000000000000..3d4199894c57
--- /dev/null
+++ b/app-metrics/process-exporter/process-exporter-0.7.10.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2019-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+DESCRIPTION="Process exporter for prometheus"
+HOMEPAGE="https://github.com/ncabatoff/process-exporter"
+SRC_URI="https://github.com/ncabatoff/process-exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ emake build
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc *.md
+ insinto /etc/${PN}
+ doins packaging/conf/all.yaml
+ systemd_dounit packaging/${PN}.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ keepdir /var/log/${PN}
+}
diff --git a/app-metrics/process-exporter/process-exporter-0.8.5.ebuild b/app-metrics/process-exporter/process-exporter-0.8.5.ebuild
new file mode 100644
index 000000000000..0bb5ac941ab2
--- /dev/null
+++ b/app-metrics/process-exporter/process-exporter-0.8.5.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+# update on every bump
+REVISION=626431b9a759d425bbb78eb15153f892970aadee
+DESCRIPTION="Process exporter for prometheus"
+HOMEPAGE="https://github.com/ncabatoff/process-exporter"
+SRC_URI="https://github.com/ncabatoff/process-exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+src_prepare() {
+ #See bug 924632
+ case $ARCH in
+ x86|arm)
+ ewarn "Force CGO_ENABLED=1 for $ARCH, see bug #924632"
+ sed -r -i \
+ -e 's/(CGO_ENABLED=)0/\11/g' \
+ Makefile \
+ || ewarn "Can not force CGO_ENABLED=1"
+ ;;
+ esac
+ eapply_user
+}
+
+src_compile() {
+ emake \
+ BRANCH=HEAD \
+ REVISION=${REVISION} \
+ TAG_VERSION=v${PV} \
+ build
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc *.md
+ insinto /etc/${PN}
+ doins packaging/conf/all.yaml
+ systemd_dounit packaging/${PN}.service
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ keepdir /var/log/${PN}
+}
diff --git a/app-metrics/prom2json/Manifest b/app-metrics/prom2json/Manifest
new file mode 100644
index 000000000000..27f6e4fdac42
--- /dev/null
+++ b/app-metrics/prom2json/Manifest
@@ -0,0 +1,2 @@
+DIST prom2json-1.4.1-deps.tar.xz 2788996 BLAKE2B b720c8d4fb0157c63873e2c15ad2adaef057ac6e6f340d25b321f9a380ee35d6d8eac153fc4cd6e75e60f0a75f6f74c17d8caaa51c46cead0e9942a2b9e29660 SHA512 47f33537a83ed0d24f49f3faa1805593ad4f848b1ff79fe19d3a6a3b2dc3a1e1587217ea7a985c6ae4eae4aca2fac2cff8773e3782c0d0e265722341d0296247
+DIST prom2json-1.4.1.tar.gz 21261 BLAKE2B 76d0f4ba6f7433fbb8701945d297df5fd011d2c62ca39c12647c114202e0a74db8d2c08808b179a5b07f08b7ec7742da238dec9b31bead6b1414b1265f495834 SHA512 4ec0aad8df3e1da4768fdf0c81c4f556589c7d84bee05ad5cf00eface323f3d8770ccb1c48b43a1598be4455307c21af3a0e62842c429ac194e34535b02fa8e8
diff --git a/app-metrics/prom2json/metadata.xml b/app-metrics/prom2json/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/prom2json/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/prom2json/prom2json-1.4.1.ebuild b/app-metrics/prom2json/prom2json-1.4.1.ebuild
new file mode 100644
index 000000000000..34d59e6ec49d
--- /dev/null
+++ b/app-metrics/prom2json/prom2json-1.4.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module edo
+
+GIT_COMMIT=e76e84858a35a1094458b792c631cb75867fd550
+
+DESCRIPTION="A tool to scrape a Prometheus client and dump the result as JSON"
+HOMEPAGE="https://github.com/prometheus/prom2json"
+SRC_URI="https://github.com/prometheus/prom2json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~arthurzam/distfiles/app-metrics/${PN}/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="dev-util/promu"
+
+src_prepare() {
+ default
+ sed -i .promu.yml \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" || die
+}
+
+src_compile() {
+ mkdir bin || die
+ edo promu build --prefix bin
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dobin bin/*
+ dodoc {README,CONTRIBUTING}.md
+}
diff --git a/app-metrics/prometheus-lvm-exporter/Manifest b/app-metrics/prometheus-lvm-exporter/Manifest
new file mode 100644
index 000000000000..678e256a53a3
--- /dev/null
+++ b/app-metrics/prometheus-lvm-exporter/Manifest
@@ -0,0 +1,2 @@
+DIST prometheus-lvm-exporter-0.3.3-deps.tar.xz 8813080 BLAKE2B 3fad55a4a57bd34ca29b27d2a3812f5e3f1bb4b2315bd9a10d4cb264cbacb13e3aa0385da117bc193cea12c9ea1245aa80e74a49339d25c7ed277cd681ff38ad SHA512 df93b13bc389d87d9d33bb637ca13af13cff02c411e4ba16159dd9be560e15b1f107c593a95ecb72f0d92ce5124439c42673562e5da5016b726512e5cd32c7f4
+DIST prometheus-lvm-exporter-0.3.3.tar.gz 47239 BLAKE2B 5e91e9a06090843f1637624bcde9dcf5af771fb03467d3c09affed20ccc7f8f565bcbd4b7cf97df3be5d06dbfaaeacf76af43b635b5e887cfaa4cfe7a601fc78 SHA512 84315d248310c4cd2e2a51e57026561beb813d4cdc621f545b8b285804ecc6faba28644e19fb2435fefe77552385f04fc1e604d543675ccc002f1984d92c8c21
diff --git a/app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.confd b/app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.confd
new file mode 100644
index 000000000000..6bcabc1df256
--- /dev/null
+++ b/app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.confd
@@ -0,0 +1,26 @@
+# /etc/conf.d/prometheus-lvm-exporter
+
+# PID file
+#EXPORTER_PIDFILE="/run/${RC_SVCNAME}.pid"
+
+# The termination timeout (start-stop-daemon parameter "retry") ensures
+# that the service will be terminated within a given time (60 + 5 seconds
+# per default) when you are stopping the service.
+#EXPORTER_TERMTIMEOUT="TERM/60/KILL/5"
+
+# User to run exporter as
+#EXPORTER_USER="prometheus-lvm-exporter"
+
+# User group to run exporter as
+#EXPORTER_GROUP="prometheus-lvm-exporter"
+
+# You can use this configuration option to pass additional options to the
+# start-stop-daemon, see start-stop-daemon(8) for more details.
+# Per default we wait 1000ms after we have started the service to ensure
+# that the daemon is really up and running.
+#EXPORTER_SSDARGS="--wait 1000"
+
+# Exporter flags
+# See `prometheus-lvm-exporter --help` for more details
+EXPORTER_FLAGS="--log.level=info"
+#EXPORTER_FLAGS="${EXPORTER_FLAGS} --yourAdditionalFlag"
diff --git a/app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.initd b/app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.initd
new file mode 100644
index 000000000000..1fa73569ac7b
--- /dev/null
+++ b/app-metrics/prometheus-lvm-exporter/files/prometheus-lvm-exporter.initd
@@ -0,0 +1,49 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus exporter for LVM metrics"
+
+EXPORTER_FLAGS=${EXPORTER_FLAGS:-""}
+#EXPORTER_USER=${EXPORTER_USER:-"prometheus-lvm-exporter"}
+#EXPORTER_GROUP=${EXPORTER_GROUP:-"prometheus-lvm-exporter"}
+EXPORTER_PIDFILE=${EXPORTER_PIDFILE:-"/run/${RC_SVCNAME}.pid"}
+EXPORTER_SSDARGS=${EXPORTER_SSDARGS:-"--wait 1000"}
+EXPORTER_TERMTIMEOUT=${EXPORTER_TERMTIMEOUT:-"TERM/60/KILL/5"}
+
+command="/usr/bin/prometheus-lvm-exporter"
+command_args="${EXPORTER_FLAGS}"
+command_background="true"
+start_stop_daemon_args="${EXPORTER_SSDARGS}"
+start_stop_daemon_args="${start_stop_daemon_args} ${EXPORTER_USER:+--user }${EXPORTER_USER}"
+start_stop_daemon_args="${start_stop_daemon_args} ${EXPORTER_GROUP:+--group }${EXPORTER_GROUP}"
+
+getconfig() {
+ local key="$1"
+ local value_default="$2"
+ local value=
+
+ if service_started; then
+ value="$(service_get_value "${key}")"
+ fi
+
+ if [ -z "${value}" ]; then
+ # Value not explicitly set
+ echo "${value_default}"
+ else
+ echo "${value}"
+ fi
+
+ return 0
+}
+
+pidfile="$(getconfig pidfile ${EXPORTER_PIDFILE})"
+retry="$(getconfig retry ${EXPORTER_TERMTIMEOUT})"
+
+depend() {
+ after net lvm lvm-monitoring
+}
+
+start_post() {
+ service_set_value retry "${EXPORTER_TERMTIMEOUT}"
+}
diff --git a/app-metrics/prometheus-lvm-exporter/metadata.xml b/app-metrics/prometheus-lvm-exporter/metadata.xml
new file mode 100644
index 000000000000..5d08ae950a93
--- /dev/null
+++ b/app-metrics/prometheus-lvm-exporter/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/prometheus-lvm-exporter/prometheus-lvm-exporter-0.3.3.ebuild b/app-metrics/prometheus-lvm-exporter/prometheus-lvm-exporter-0.3.3.ebuild
new file mode 100644
index 000000000000..28809292d70e
--- /dev/null
+++ b/app-metrics/prometheus-lvm-exporter/prometheus-lvm-exporter-0.3.3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Prometheus exporter for LVM metrics"
+HOMEPAGE="https://github.com/hansmi/prometheus-lvm-exporter"
+SRC_URI="
+ https://github.com/hansmi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~arthurzam/distfiles/app-metrics/${PN}/${P}-deps.tar.xz
+"
+
+LICENSE="Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# lvm is explicitly not included here; this could be installed before it safely.
+# RDEPEND=""
+
+src_prepare() {
+ default
+ sed -i -e '/kingpin.Flag.*\<command\>.*/s,/usr/sbin/lvm,/sbin/lvm,g' "${S}"/main.go || die
+}
+
+src_compile() {
+ default
+ ego build .
+}
+
+src_test() {
+ ego test .
+}
+
+src_install() {
+ default
+ dobin ${PN}
+ dodoc README.md
+
+ systemd_dounit contrib/systemd/${PN}.service
+ insinto /etc/default
+ newins contrib/systemd/${PN}.default ${PN}
+
+ # TODO: more secure config would be a dedicated user AND a sudo command, so
+ # the daemon can run 'sudo lvm ...'.
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+}
diff --git a/app-metrics/prometheus-podman-exporter/Manifest b/app-metrics/prometheus-podman-exporter/Manifest
new file mode 100644
index 000000000000..a352fdea24a3
--- /dev/null
+++ b/app-metrics/prometheus-podman-exporter/Manifest
@@ -0,0 +1,2 @@
+DIST prometheus-podman-exporter-1.19.0.tar.gz 14496164 BLAKE2B 2403a07b0a715e2d5b72f9ee719dc784b2225a0541e7885e4a5e0958ef27831bae221a80861e70d1dce5d295db09466817976b43ab78b86a08648beb33860fec SHA512 bb4856e99be90cc227b448a88aae984fb7c8319b0428269a96e1419e63c2e2888bf3fea90f613d16205afbc32ca450af0269e5e47d98ef4166fb53fc174f804c
+DIST prometheus-podman-exporter-1.20.0.tar.gz 14667328 BLAKE2B 6588022bb78cc4c44e8a0a4197006af4f984da2e2e0231089f2607a7f50f0404836be2c1e120a48c7475bc1fe1da78e5be530523b871aef6900708d4a3dceaab SHA512 1e656ae6189f2285efbbe53c9113d89f9bce2139f1faea6dde037f734168501bb9220cc46638d42148bfe8ef19a6ae0806f74b6c10d1452473a0b00580f4958c
diff --git a/app-metrics/prometheus-podman-exporter/files/prometheus-podman-exporter-1.10.1-gentoo-systemd.patch b/app-metrics/prometheus-podman-exporter/files/prometheus-podman-exporter-1.10.1-gentoo-systemd.patch
new file mode 100644
index 000000000000..b4006da393a4
--- /dev/null
+++ b/app-metrics/prometheus-podman-exporter/files/prometheus-podman-exporter-1.10.1-gentoo-systemd.patch
@@ -0,0 +1,22 @@
+--- a/contrib/systemd/system/prometheus-podman-exporter.service
++++ b/contrib/systemd/system/prometheus-podman-exporter.service
+@@ -2,7 +2,7 @@
+ Description=Prometheus exporter for podman (v4) machine
+ [Service]
+ Restart=on-failure
+-EnvironmentFile=-/etc/sysconfig/prometheus-podman-exporter
++EnvironmentFile=-/etc/default/prometheus-podman-exporter
+ ExecStart=/usr/bin/prometheus-podman-exporter $PODMAN_EXPORTER_OPTS
+ ExecReload=/bin/kill -HUP $MAINPID
+ TimeoutStopSec=20s
+--- a/contrib/systemd/user/prometheus-podman-exporter.service
++++ b/contrib/systemd/user/prometheus-podman-exporter.service
+@@ -2,7 +2,7 @@
+ Description=Prometheus exporter for podman (v4) machine
+ [Service]
+ Restart=on-failure
+-EnvironmentFile=-/etc/sysconfig/prometheus-podman-exporter
++EnvironmentFile=-/etc/default/prometheus-podman-exporter
+ EnvironmentFile=-%h/.config/prometheus-podman-exporter
+ ExecStart=/usr/bin/prometheus-podman-exporter $PODMAN_EXPORTER_OPTS
+ ExecReload=/bin/kill -HUP $MAINPID
diff --git a/app-metrics/prometheus-podman-exporter/metadata.xml b/app-metrics/prometheus-podman-exporter/metadata.xml
new file mode 100644
index 000000000000..ce10c433bfd7
--- /dev/null
+++ b/app-metrics/prometheus-podman-exporter/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>me@rahil.rocks</email>
+ <name>Rahil Bhimjiani</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>zmedico@gentoo.org</email>
+ <name>Zac Medico</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="btrfs">Collect metrics for btrfs filesystem</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://github.com/containers/prometheus-podman-exporter/issues</bugs-to>
+ <doc>https://github.com/containers/prometheus-podman-exporter/blob/main/README.md</doc>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.19.0.ebuild b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.19.0.ebuild
new file mode 100644
index 000000000000..dceede9effd1
--- /dev/null
+++ b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.19.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Exporter for podman giving containers, pods, images, volumes & networks metrics"
+HOMEPAGE="https://github.com/containers/prometheus-podman-exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/containers/prometheus-podman-exporter.git"
+else
+ SRC_URI="https://github.com/containers/prometheus-podman-exporter/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+# Main package
+LICENSE="Apache-2.0"
+# Dependencies
+LICENSE+=" BSD-2 BSD ISC MIT MPL-2.0"
+
+SLOT="0"
+IUSE="btrfs systemd"
+
+# there are no test files so prevent tests
+RESTRICT="test"
+
+DEPEND="
+ app-crypt/gpgme:1=
+ btrfs? ( sys-fs/btrfs-progs )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.10.1-gentoo-systemd.patch"
+)
+
+src_compile() {
+ export BUILDTAGS=""
+ use !btrfs && BUILDTAGS+=",exclude_graphdriver_btrfs"
+ use systemd && BUILDTAGS+=",systemd"
+ default
+}
+
+src_install() {
+ emake DESTDIR="${ED}/usr/bin" install
+ dosym -r /usr/bin/"${PN}" /usr/bin/podman_exporter
+
+ insinto /etc/default
+ newins "contrib/systemd/system/prometheus-podman-exporter.sysconfig" "${PN}"
+ systemd_dounit "contrib/systemd/system/prometheus-podman-exporter.service"
+ systemd_douserunit "contrib/systemd/user/prometheus-podman-exporter.service"
+ dosym prometheus-podman-exporter.service $(systemd_get_systemunitdir)/podman_exporter.service
+ dosym prometheus-podman-exporter.service $(systemd_get_userunitdir)/podman_exporter.service
+
+ newconfd "contrib/openrc/prometheus-podman-exporter.confd" "${PN}"
+ newinitd "contrib/openrc/prometheus-podman-exporter.initd" "${PN}"
+ dosym "${PN}" /etc/conf.d/podman_exporter
+ dosym "${PN}" /etc/init.d/podman_exporter
+
+ einstalldocs
+}
diff --git a/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.20.0.ebuild b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.20.0.ebuild
new file mode 100644
index 000000000000..69d2017fde22
--- /dev/null
+++ b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-1.20.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Exporter for podman giving containers, pods, images, volumes & networks metrics"
+HOMEPAGE="https://github.com/containers/prometheus-podman-exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/containers/prometheus-podman-exporter.git"
+else
+ SRC_URI="https://github.com/containers/prometheus-podman-exporter/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+# Main package
+LICENSE="Apache-2.0"
+# Dependencies
+LICENSE+=" BSD-2 BSD ISC MIT MPL-2.0"
+
+SLOT="0"
+IUSE="btrfs systemd"
+
+# there are no test files so prevent tests
+RESTRICT="test"
+
+DEPEND="
+ app-crypt/gpgme:1=
+ btrfs? ( sys-fs/btrfs-progs )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.10.1-gentoo-systemd.patch"
+)
+
+src_compile() {
+ export BUILDTAGS=""
+ use !btrfs && BUILDTAGS+=",exclude_graphdriver_btrfs"
+ use systemd && BUILDTAGS+=",systemd"
+ default
+}
+
+src_install() {
+ emake DESTDIR="${ED}/usr/bin" install
+ dosym -r /usr/bin/"${PN}" /usr/bin/podman_exporter
+
+ insinto /etc/default
+ newins "contrib/systemd/system/prometheus-podman-exporter.sysconfig" "${PN}"
+ systemd_dounit "contrib/systemd/system/prometheus-podman-exporter.service"
+ systemd_douserunit "contrib/systemd/user/prometheus-podman-exporter.service"
+ dosym prometheus-podman-exporter.service $(systemd_get_systemunitdir)/podman_exporter.service
+ dosym prometheus-podman-exporter.service $(systemd_get_userunitdir)/podman_exporter.service
+
+ newconfd "contrib/openrc/prometheus-podman-exporter.confd" "${PN}"
+ newinitd "contrib/openrc/prometheus-podman-exporter.initd" "${PN}"
+ dosym "${PN}" /etc/conf.d/podman_exporter
+ dosym "${PN}" /etc/init.d/podman_exporter
+
+ einstalldocs
+}
diff --git a/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild
new file mode 100644
index 000000000000..aebc06427023
--- /dev/null
+++ b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Exporter for podman giving containers, pods, images, volumes & networks metrics"
+HOMEPAGE="https://github.com/containers/prometheus-podman-exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/containers/prometheus-podman-exporter.git"
+else
+ SRC_URI="https://github.com/containers/prometheus-podman-exporter/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+# Main package
+LICENSE="Apache-2.0"
+# Dependencies
+LICENSE+=" BSD-2 BSD ISC MIT MPL-2.0"
+
+SLOT="0"
+IUSE="btrfs systemd"
+
+# there are no test files so prevent tests
+RESTRICT="test"
+
+DEPEND="
+ app-crypt/gpgme
+ btrfs? ( sys-fs/btrfs-progs )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.10.1-gentoo-systemd.patch"
+)
+
+src_compile() {
+ export BUILDTAGS=""
+ use !btrfs && BUILDTAGS+=",exclude_graphdriver_btrfs"
+ use systemd && BUILDTAGS+=",systemd"
+ default
+}
+
+src_install() {
+ emake DESTDIR="${ED}/usr/bin" install
+ dosym -r /usr/bin/"${PN}" /usr/bin/podman_exporter
+
+ insinto /etc/default
+ newins "contrib/systemd/system/prometheus-podman-exporter.sysconfig" "${PN}"
+ systemd_dounit "contrib/systemd/system/prometheus-podman-exporter.service"
+ systemd_douserunit "contrib/systemd/user/prometheus-podman-exporter.service"
+ dosym prometheus-podman-exporter.service $(systemd_get_systemunitdir)/podman_exporter.service
+ dosym prometheus-podman-exporter.service $(systemd_get_userunitdir)/podman_exporter.service
+
+ newconfd "contrib/openrc/prometheus-podman-exporter.confd" "${PN}"
+ newinitd "contrib/openrc/prometheus-podman-exporter.initd" "${PN}"
+ dosym "${PN}" /etc/conf.d/podman_exporter
+ dosym "${PN}" /etc/init.d/podman_exporter
+
+ einstalldocs
+}
diff --git a/app-metrics/prometheus/Manifest b/app-metrics/prometheus/Manifest
new file mode 100644
index 000000000000..2b9041b72d00
--- /dev/null
+++ b/app-metrics/prometheus/Manifest
@@ -0,0 +1,12 @@
+DIST prometheus-2.52.0-assets.tar.xz 40948988 BLAKE2B 6c5812c7b0470e796f9f052be4c4248ee4dcacbaeccd0aa5bb136a4775ce939870f9b366cd87ec325cd93364e69e04b1bbef461842d6fe850cd7e3d9d08fd652 SHA512 0f12548dd97a0aa19379a3090fcad7002cd2917cff59937630302edb6d9f6be49b91476111f9ef23bc3f4a009f2a9ff871e1fa78a765543fd7ac9eacd0233228
+DIST prometheus-2.52.0-deps.tar.xz 136485640 BLAKE2B aba4869ca0aa810c9651737f9089c0a5c64ec6f54f9bb1fec7e8e51fbc3042033e4935128af59cf5f9059e2815119e95b1bd8db4d1ce316f2a5af2d32913e2c4 SHA512 11c63ba8a96a8cad655d6f66accb4528d4562c21f9cec671d63120246d3a963690d0d27b0e41e3a24882e2c111b42e0f678d244ebb8a712a794f90eb9b415b5c
+DIST prometheus-2.52.0.tar.gz 6192779 BLAKE2B 488483b32ee0927f2d0aa5d7bd1f82dee39c0e8273244a0260421f1523c2555541d35d02d869d2a35b434d41ff3210ce9da4a5430ae1f5a41a9d7e250d24246f SHA512 6ad5825ee6dfe6ba82ad8f091cb1fd8bfaf323558f0171c8e16fccb070fa99865cc9e9137a60405a5ec7c90706469cefefbe25c47e47bc37c30de671981955e3
+DIST prometheus-3.1.0-assets.tar.xz 78517784 BLAKE2B df17c7a545d1efe770d70d0d250d03bc8c1887df34fedde3a785de1c03004de209c0d30287bd7abd134550afac39152c57a3e37271ca3baa5487e40b3352f300 SHA512 96293cc3395e5a3a7a7b64ee3c8372255e1cfe9986145f09656a82dfea19019fff517ffd622de9edfa93fa62bb02dac09cd1e85bec105190eae359aa0e88a1f9
+DIST prometheus-3.1.0-deps.tar.xz 126208728 BLAKE2B 36007a7ea302badaee745a49fb706f870c62c6ed9dd1ad5616ebf70e5cde05b5f7d8143c3d1a1f6bfbaca7dae1b00fb0d83347814245fe2a6db10073a85b6175 SHA512 1740230d930bf038e5d7eb1655e506bda88f2161be9d831ab06902d7559c12973367d13b05aa9c0d3f44a8f9cd9a0ac1e14a2e162da775e6f1cee4b97e0e18cf
+DIST prometheus-3.1.0.tar.gz 4973352 BLAKE2B ac8f68002f3924f79ee2a75aed8ea585fc09a9d0188e2b5e97152896717f04855124335ca6713e97c399109c6d087c1098dd2dc1485440dca775c5e34a5a52ef SHA512 9e61ba2aae62319f0da8b01a52d033f504adb5155955cc0d74bef251aa06b7a01f9df8e3347ceb1031826ec7518773423a342c6ee526b9d48577701594c973bc
+DIST prometheus-3.2.1-assets.tar.xz 78754104 BLAKE2B 142dcf8bf5e2fd7d241f5ed0e7d9ed5beaea413b631a8c80b93766aa7554ef125c769d262b6af23efd128eb787d40c673e75dde917fe0ded9518581194c80901 SHA512 8f1b74397d111676a091dc58730e180a9d350726d2195daebd40dad8f90deb7e226919864e4bb7206a1b95cb082e227a19c3406ff53eee177874a0b53e5accc9
+DIST prometheus-3.2.1-deps.tar.xz 137051124 BLAKE2B a0b74c935bfcfc2dc369ed9e3474e4da25f69a1da6d602524b21958858550f892d1c7e1b4d414e9c075445055608910c21b3e72b82076313f733b39e03c42b2e SHA512 b187411b7e3586c638a9c7cdbf3289255e8fee987a95f17e2d606ebfbd31e4926472990ad7d92a0b416592a227a0e238be64b2ce8444312134ce050d619b4e52
+DIST prometheus-3.2.1.tar.gz 5001971 BLAKE2B f341e177c94ca949fa374603d57356ba191daa7ffd5f2edda532cdb4b977f25dbbb241e6a08dc04dbc6aac4c0cf4e5db951c0add5fd92451fecacb9eac2e422f SHA512 6e6a972c23efaba80699d2f82f4ca3fbe2bc81644d9a4540a3a82c556009a5388a2e81e7548792fa01f7cfea8727d3aa8c9e4bc0f0538f0016e0a88502399c51
+DIST prometheus-3.4.1-assets.tar.xz 71179932 BLAKE2B 2a93859c94aa59d2ef871811318df71ced59ada80a741cef2e594fd3bd53a91c1c5435139602bfd644346b4a71d4ea967a022329e022e82cd8b2b995af1b0155 SHA512 80833ed6c1dfb52c8497b2a820b570b90b066a712caeb3433659e9eb0d923e797d1ea9a623a1536d575f3596f198e0dcc91b3816e24a714cf42804e26ba95f0f
+DIST prometheus-3.4.1-deps.tar.xz 162720712 BLAKE2B d3048b78ddc4f32485d2c76614063623e822d78dde5cb6df17138b7d34f9469beb0acb929b3f8d594c26e9f24c19548e3e2f228b8b5bfdfb9eec550607ad2c60 SHA512 6a750ae390890beb0557d3dc93d6514af1b67ebc1165bcfa1f3835e6adc60cc4ace9064248bfce3c8d349f817887bf89c7b19977020c82e070b2ccec31198370
+DIST prometheus-3.4.1.tar.gz 5078318 BLAKE2B b37da194843f135c3c90480a071a3261d41ab4fa6e761be6461e315c5117b256636b4ba8b71607c20adb68472d841b9cb7b4aa0c87fafebc364eeada66c756e2 SHA512 491e6d4b82dae66900ec74ffc2e12388ec5ae6b9348efe2d61a30892226ec4a20a8e5293a56f917ef6a63f1528f8e19a2a7609f7a648d6fa4710f8a24755a1f8
diff --git a/app-metrics/prometheus/files/prometheus-3.2.confd b/app-metrics/prometheus/files/prometheus-3.2.confd
new file mode 100644
index 000000000000..b6857c42ab02
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus-3.2.confd
@@ -0,0 +1,22 @@
+# additional arguments for Prometheus
+#
+# command_args should not be set in this file. Instead, you should set
+# prometheus_args.
+#
+# The default settings are listed below.
+# If you are not changing these settings, you do
+# not need to include them in prometheus_args.
+#
+# To migrate from using command_args to prometheus_args, drop any of the
+# default settings below that you have set the same way then switch to
+# prometheus_args.
+#
+# The new behavior is that prometheus_args will be appended to these
+# defaults.
+#
+#The default settings are:
+#
+# --config.file=/etc/prometheus/prometheus.yml
+# --storage.tsdb.path=/var/lib/prometheus/data
+#
+prometheus_args=""
diff --git a/app-metrics/prometheus/files/prometheus-3.2.initd b/app-metrics/prometheus/files/prometheus-3.2.initd
new file mode 100644
index 000000000000..21242af90625
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus-3.2.initd
@@ -0,0 +1,37 @@
+#!/sbin/openrc-run
+# Copyright 2016-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus monitoring system and time series database"
+pidfile=/var/run/${RC_SVCNAME}.pid
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+command_user=${user}:${group}
+
+command="/usr/bin/prometheus"
+command_args="
+ --config.file=/etc/prometheus/prometheus.yml
+ --storage.tsdb.path=/var/lib/prometheus/data
+ ${prometheus_args}"
+command_background="true"
+error_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+output_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+
+extra_started_commands="reload"
+
+depend() {
+ after net
+}
+
+reload() {
+ ebegin "Reloading configuration for ${RC_SVCNAME}"
+ case "$supervisor" in
+ supervise-daemon)
+ supervise-daemon ${RC_SVCNAME} --signal HUP
+ ;;
+ *)
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ ;;
+ esac
+ eend $? "Failed to reload ${RC_SVCNAME}"
+}
diff --git a/app-metrics/prometheus/files/prometheus-3.2.service b/app-metrics/prometheus/files/prometheus-3.2.service
new file mode 100644
index 000000000000..816a4bab3072
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus-3.2.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=Prometheus Server
+Documentation=https://prometheus.io/docs/
+Wants=network-online.target
+After=network-online.target
+
+[Service]
+Type=simple
+User=prometheus
+Group=prometheus
+Restart=always
+ExecStart=/usr/bin/prometheus \
+ --config.file=/etc/prometheus/prometheus.yml \
+ --storage.tsdb.path=/var/lib/prometheus/data
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/prometheus/files/prometheus-3.confd b/app-metrics/prometheus/files/prometheus-3.confd
new file mode 100644
index 000000000000..48aaab780b62
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus-3.confd
@@ -0,0 +1,25 @@
+# additional arguments for Prometheus
+#
+# command_args should not be set in this file. Instead, you should set
+# prometheus_args.
+#
+# The default settings are listed below.
+# If you are not changing these settings, you do
+# not need to include them in prometheus_args.
+#
+# To migrate from using command_args to prometheus_args, drop any of the
+# default settings below that you have set the same way then switch to
+# prometheus_args.
+#
+# The new behavior is that prometheus_args will be appended to these
+# defaults allowing anything you add to override them.
+#
+#The default settings are:
+#
+# --web.enable-lifecycle
+# --config.file=/etc/prometheus/prometheus.yml
+# --storage.tsdb.path=/var/lib/prometheus/data
+# --web.listen-address=0.0.0.0:9090
+# --web.enable-admin-api
+#
+prometheus_args=""
diff --git a/app-metrics/prometheus/files/prometheus-3.initd b/app-metrics/prometheus/files/prometheus-3.initd
new file mode 100644
index 000000000000..4cf7e157c1e9
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus-3.initd
@@ -0,0 +1,40 @@
+#!/sbin/openrc-run
+# Copyright 2016-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus monitoring system and time series database"
+pidfile=/var/run/${RC_SVCNAME}.pid
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+command_user=${user}:${group}
+
+command="/usr/bin/prometheus"
+command_args="
+ --web.enable-lifecycle
+ --config.file=/etc/prometheus/prometheus.yml
+ --storage.tsdb.path=/var/lib/prometheus/data
+ --web.listen-address=0.0.0.0:9090
+ --web.enable-admin-api
+ ${prometheus_args}"
+command_background="true"
+error_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+output_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+
+extra_started_commands="reload"
+
+depend() {
+ after net
+}
+
+reload() {
+ ebegin "Reloading configuration for ${RC_SVCNAME}"
+ case "$supervisor" in
+ supervise-daemon)
+ supervise-daemon ${RC_SVCNAME} --signal HUP
+ ;;
+ *)
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ ;;
+ esac
+ eend $? "Failed to reload ${RC_SVCNAME}"
+}
diff --git a/app-metrics/prometheus/files/prometheus-3.service b/app-metrics/prometheus/files/prometheus-3.service
new file mode 100644
index 000000000000..a3a7e5813662
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus-3.service
@@ -0,0 +1,20 @@
+[Unit]
+Description=Prometheus
+Wants=network-online.target
+After=network-online.target
+
+[Service]
+Type=simple
+User=prometheus
+Group=prometheus
+ExecStart=/usr/bin/prometheus \
+ --web.enable-lifecycle \
+ --config.file=/etc/prometheus/prometheus.yml \
+ --storage.tsdb.path="/var/lib/prometheus/data" \
+ --web.listen-address=0.0.0.0:9090 \
+ --web.enable-admin-api
+
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/prometheus/files/prometheus.confd b/app-metrics/prometheus/files/prometheus.confd
new file mode 100644
index 000000000000..19a286f5677a
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus.confd
@@ -0,0 +1,26 @@
+# additional arguments for Prometheus
+#
+# command_args should not be set in this file. Instead, you should set
+# prometheus_args.
+#
+# The default settings are listed below.
+# If you are not changing these settings, you do
+# not need to include them in prometheus_args.
+#
+# To migrate from using command_args to prometheus_args, drop any of the
+# default settings below that you have set the same way then switch to
+# prometheus_args.
+#
+# The new behavior is that prometheus_args will be appended to these
+# defaults allowing anything you add to override them.
+#
+#The default settings are:
+#
+# --web.enable-lifecycle
+# --config.file=/etc/prometheus/prometheus.yml
+# --storage.tsdb.path=/var/lib/prometheus/data
+# --web.console.templates=/etc/prometheus/consoles
+# --web.console.libraries=/etc/prometheus/console_libraries
+# --web.enable-admin-api
+#
+prometheus_args=""
diff --git a/app-metrics/prometheus/files/prometheus.initd b/app-metrics/prometheus/files/prometheus.initd
new file mode 100644
index 000000000000..00e3c25ebe84
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus.initd
@@ -0,0 +1,45 @@
+#!/sbin/openrc-run
+# Copyright 2016-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus monitoring system and time series database"
+pidfile=/var/run/${RC_SVCNAME}.pid
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+command_user=${user}:${group}
+
+command="/usr/bin/prometheus"
+if [ -z "${command_args}" ]; then
+command_args="
+ --web.enable-lifecycle
+ --config.file=/etc/prometheus/prometheus.yml
+ --storage.tsdb.path=/var/lib/prometheus/data
+ --web.console.templates=/etc/prometheus/consoles
+ --web.console.libraries=/etc/prometheus/console_libraries
+ --web.enable-admin-api
+ ${prometheus_args}"
+else
+command_args="${command_args:---config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus/data}"
+fi
+command_background="true"
+error_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+output_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+
+extra_started_commands="reload"
+
+depend() {
+ after net
+}
+
+reload() {
+ ebegin "Reloading configuration for ${RC_SVCNAME}"
+ case "$supervisor" in
+ supervise-daemon)
+ supervise-daemon ${RC_SVCNAME} --signal HUP
+ ;;
+ *)
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ ;;
+ esac
+ eend $? "Failed to reload ${RC_SVCNAME}"
+}
diff --git a/app-metrics/prometheus/files/prometheus.service b/app-metrics/prometheus/files/prometheus.service
new file mode 100644
index 000000000000..ebd8a901d1fd
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus.service
@@ -0,0 +1,22 @@
+[Unit]
+Description=Prometheus
+Wants=network-online.target
+After=network-online.target
+
+[Service]
+Type=simple
+User=prometheus
+Group=prometheus
+ExecStart=/usr/bin/prometheus \
+ --web.enable-lifecycle \
+ --config.file=/etc/prometheus/prometheus.yml \
+ --storage.tsdb.path="/var/lib/prometheus/data" \
+ --web.console.templates=/etc/prometheus/consoles \
+ --web.console.libraries=/etc/prometheus/console_libraries \
+ --web.listen-address=0.0.0.0:9090 \
+ --web.enable-admin-api
+
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/prometheus/metadata.xml b/app-metrics/prometheus/metadata.xml
new file mode 100644
index 000000000000..67095037dfce
--- /dev/null
+++ b/app-metrics/prometheus/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:prometheus:prometheus</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/prometheus/prometheus-2.52.0.ebuild b/app-metrics/prometheus/prometheus-2.52.0.ebuild
new file mode 100644
index 000000000000..ba8401e87264
--- /dev/null
+++ b/app-metrics/prometheus/prometheus-2.52.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+GIT_COMMIT=879d80922a227c37df502e7315fad8ceb10a986d
+MY_PV=v${PV/_rc/-rc.}
+
+# To create the assets tarball run the following:
+# git checkout <tag>
+# make assets-compress
+# tar -acf <tarball> web/ui
+
+DESCRIPTION="Prometheus monitoring system and time series database"
+HOMEPAGE="https://github.com/prometheus/prometheus"
+SRC_URI="https://github.com/prometheus/prometheus/archive/${MY_PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz
+ https://dev.gentoo.org/~williamh/dist/${P}-assets.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~riscv"
+
+COMMON_DEPEND="acct-group/prometheus
+ acct-user/prometheus"
+DEPEND="!app-metrics/prometheus-bin
+ ${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+BDEPEND=">=dev-util/promu-0.3.0"
+
+RESTRICT=" test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" \
+ .promu.yml || die
+ cp -a -u "${WORKDIR}"/web/ui web || die "cp failed"
+}
+
+src_compile() {
+ emake PROMU="${EPREFIX}"/usr/bin/promu common-build plugins
+}
+
+src_install() {
+ dobin prometheus promtool
+ dodoc -r {documentation,{README,CHANGELOG,CONTRIBUTING}.md}
+ insinto /usr/share/prometheus
+ doins -r console_libraries consoles
+ insinto /etc/prometheus
+ doins documentation/examples/prometheus.yml
+ dosym -r /usr/share/prometheus/console_libraries /etc/prometheus/console_libraries
+ dosym -r /usr/share/prometheus/consoles /etc/prometheus/consoles
+
+ systemd_dounit "${FILESDIR}"/prometheus.service
+ newinitd "${FILESDIR}"/prometheus.initd prometheus
+ newconfd "${FILESDIR}"/prometheus.confd prometheus
+ keepdir /var/log/prometheus /var/lib/prometheus
+ fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
+}
+
+pkg_postinst() {
+ if has_version '<net-analyzer/prometheus-2.0.0_rc0'; then
+ ewarn "Old prometheus 1.x TSDB won't be converted to the new prometheus 2.0 format"
+ ewarn "Be aware that the old data currently cannot be accessed with prometheus 2.0"
+ ewarn "This release requires a clean storage directory and is not compatible with"
+ ewarn "files created by previous beta releases"
+ fi
+}
diff --git a/app-metrics/prometheus/prometheus-3.1.0.ebuild b/app-metrics/prometheus/prometheus-3.1.0.ebuild
new file mode 100644
index 000000000000..d5df0158a22f
--- /dev/null
+++ b/app-metrics/prometheus/prometheus-3.1.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+GIT_COMMIT=7086161a93b262aa0949dbf2aba15a5a7b13e0a3
+MY_PV=v${PV/_rc/-rc.}
+
+# To create the assets tarball run the following:
+# git checkout <tag>
+# make assets-compress
+# tar -acf <tarball> web/ui
+
+DESCRIPTION="Prometheus monitoring system and time series database"
+HOMEPAGE="https://prometheus.io"
+SRC_URI="https://github.com/prometheus/prometheus/archive/${MY_PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz
+ https://dev.gentoo.org/~williamh/dist/${P}-assets.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv"
+
+COMMON_DEPEND="acct-group/prometheus
+ acct-user/prometheus"
+DEPEND="!app-metrics/prometheus-bin
+ ${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+BDEPEND=">=dev-util/promu-0.3.0"
+
+RESTRICT=" test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" \
+ .promu.yml || die
+ cp -a -u "${WORKDIR}"/web/ui web || die "cp failed"
+}
+
+src_compile() {
+ emake PROMU="${EPREFIX}"/usr/bin/promu common-build plugins
+}
+
+src_install() {
+ dobin prometheus promtool
+ dodoc -r documentation/{images,*.md} *.md docs
+ insinto /etc/prometheus
+ doins -r documentation/examples/prometheus.yml
+ insinto /usr/share/prometheus
+ doins -r documentation/examples
+
+ systemd_dounit "${FILESDIR}"/prometheus-3.service
+ newinitd "${FILESDIR}"/prometheus-3.initd prometheus
+ newconfd "${FILESDIR}"/prometheus-3.confd prometheus
+ keepdir /var/log/prometheus /var/lib/prometheus
+ fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
+}
diff --git a/app-metrics/prometheus/prometheus-3.2.1.ebuild b/app-metrics/prometheus/prometheus-3.2.1.ebuild
new file mode 100644
index 000000000000..5844b43288fd
--- /dev/null
+++ b/app-metrics/prometheus/prometheus-3.2.1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd eapi9-ver
+
+GIT_COMMIT=804c49d58f3f3784c77c9c8ec17c9062092cae27
+MY_PV=v${PV/_rc/-rc.}
+
+# To create the assets tarball run the following:
+# git checkout <tag>
+# make assets-compress
+# tar -acf <tarball> web/ui
+
+DESCRIPTION="Prometheus monitoring system and time series database"
+HOMEPAGE="https://prometheus.io"
+SRC_URI="https://github.com/prometheus/prometheus/archive/${MY_PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz
+ https://dev.gentoo.org/~williamh/dist/${P}-assets.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~riscv"
+
+COMMON_DEPEND="acct-group/prometheus
+ acct-user/prometheus"
+DEPEND="!app-metrics/prometheus-bin
+ ${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+BDEPEND=">=dev-util/promu-0.17.0"
+
+RESTRICT=" test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" \
+ .promu.yml || die
+ cp -a -u "${WORKDIR}"/web/ui web || die "cp failed"
+}
+
+src_compile() {
+ emake PROMU="${EPREFIX}"/usr/bin/promu common-build plugins
+}
+
+src_install() {
+ dobin prometheus promtool
+ dodoc -r documentation/{images,*.md} *.md docs
+ insinto /etc/prometheus
+ doins -r documentation/examples/prometheus.yml
+ insinto /usr/share/prometheus
+ doins -r documentation/examples
+
+ systemd_newunit "${FILESDIR}"/prometheus-3.2.service prometheus.service
+ newinitd "${FILESDIR}"/prometheus-3.2.initd prometheus
+ newconfd "${FILESDIR}"/prometheus-3.2.confd prometheus
+ keepdir /var/log/prometheus /var/lib/prometheus
+ fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
+}
+
+pkg_postinst() {
+ # added 2025-03-28 to warn about a fix for version 3.1.0
+ if ver_replacing -eq 3.1.0; then
+ ewarn "The systemd service has been renamed from prometheus-3 to prometheus."
+ fi
+ # added 2025-03-28 for version 3.2.1
+ if ver_replacing -lt 3.2; then
+ ewarn "The --web.enable-lifecycle and --web.enable-admin-api options have been removed"
+ ewarn "from the default command line."
+ ewarn "If you need these options, please enable them in /etc/prometheus/prometheus.yml"
+ elog
+ elog "The --web.listen-address option was removed from the default command line"
+ elog "because we were using the default upstream setting."
+ fi
+}
diff --git a/app-metrics/prometheus/prometheus-3.4.1.ebuild b/app-metrics/prometheus/prometheus-3.4.1.ebuild
new file mode 100644
index 000000000000..4e8d6f3abf6c
--- /dev/null
+++ b/app-metrics/prometheus/prometheus-3.4.1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd eapi9-ver
+
+GIT_COMMIT=aea6503d9bbaad6c5faff3ecf6f1025213356c92
+MY_PV=v${PV/_rc/-rc.}
+
+# To create the assets tarball run the following:
+# git checkout <tag>
+# make assets-compress
+# tar -acf <tarball> web/ui
+
+DESCRIPTION="Prometheus monitoring system and time series database"
+HOMEPAGE="https://prometheus.io"
+SRC_URI="https://github.com/prometheus/prometheus/archive/${MY_PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz
+ https://dev.gentoo.org/~williamh/dist/${P}-assets.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~riscv"
+
+COMMON_DEPEND="acct-group/prometheus
+ acct-user/prometheus"
+DEPEND="!app-metrics/prometheus-bin
+ ${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+BDEPEND=">=dev-util/promu-0.17.0"
+
+RESTRICT=" test"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s/{{.Branch}}/HEAD/" \
+ -e "s/{{.Revision}}/${GIT_COMMIT}/" \
+ -e "s/{{.Version}}/${PV}/" \
+ .promu.yml || die
+ cp -a -u "${WORKDIR}"/web/ui web || die "cp failed"
+}
+
+src_compile() {
+ emake PROMU="${EPREFIX}"/usr/bin/promu common-build plugins
+}
+
+src_install() {
+ dobin prometheus promtool
+ dodoc -r documentation/{images,*.md} *.md docs
+ insinto /etc/prometheus
+ doins -r documentation/examples/prometheus.yml
+ insinto /usr/share/prometheus
+ doins -r documentation/examples
+
+ systemd_newunit "${FILESDIR}"/prometheus-3.2.service prometheus.service
+ newinitd "${FILESDIR}"/prometheus-3.2.initd prometheus
+ newconfd "${FILESDIR}"/prometheus-3.2.confd prometheus
+ keepdir /var/log/prometheus /var/lib/prometheus
+ fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
+}
+
+pkg_postinst() {
+ # added 2025-03-28 to warn about a fix for version 3.1.0
+ if ver_replacing -eq 3.1.0; then
+ ewarn "The systemd service has been renamed from prometheus-3 to prometheus."
+ fi
+ # added 2025-03-28 for version 3.2.1
+ if ver_replacing -lt 3.2; then
+ ewarn "The --web.enable-lifecycle and --web.enable-admin-api options have been removed"
+ ewarn "from the default command line."
+ ewarn "If you need these options, please enable them in /etc/prometheus/prometheus.yml"
+ elog
+ elog "The --web.listen-address option was removed from the default command line"
+ elog "because we were using the default upstream setting."
+ fi
+}
diff --git a/app-metrics/pushgateway/Manifest b/app-metrics/pushgateway/Manifest
new file mode 100644
index 000000000000..05b1903291a0
--- /dev/null
+++ b/app-metrics/pushgateway/Manifest
@@ -0,0 +1,4 @@
+DIST pushgateway-1.11.1-vendor.tar.xz 1400592 BLAKE2B 2c2b8cdc3007b66f1ffe105dc3d12a16b0e642c6f8cb0576da7fa2d14064c7c72b4fc9d436c826b6eb65eae35849414b9fa8079309cf3e4d742e31685362fa1f SHA512 de8468aa6ef4af3e37298c46b8da40c894a78b9a6d2aea984a323457830685b0fea49cf00faa1e14aea3f50691979e844a916a2091ea85a9a5c0c5d1d4e0059f
+DIST pushgateway-1.11.1.tar.gz 4256655 BLAKE2B 1e92432bb09159e981c754d80294ed349a32f17ddd87b714d6d76e70aa3b126da3df696996cc58811e582ea62e4a0a30958c0a60f4ea63856b7ebe9bbae9ac23 SHA512 e26311bddf6b9d8419aa1ec2ee5204c4ee8c6b0ae95a1be6f3bd3bc5a8eb7302c59b21b12ea0f3824fef4513dc871e56b1573529275cb4eae531e6dad29946a7
+DIST pushgateway-1.11.2-vendor.tar.xz 1413788 BLAKE2B 3183476bab1d2351f546b0b3416db98b5fa794bd8623f380bfe76d188fffc90bac8b7e6ef459acb718d4bedebfd1d69ec7138b665397b1db3857e751e99c0e89 SHA512 b045ec5cb80713656347ee1e01b0bb88e145f9b8adca7e6001b752119e12d87755d56c32a123c73f811953d7612d8bb3ce32647ebfa042d27e4e10c838cc96b3
+DIST pushgateway-1.11.2.tar.gz 4258561 BLAKE2B c5db1cc4fc81488f99edce9b14ce4c9e59f0c20d1caf318861855b90f19b0c036076b75cdafe086532ebd1a6350230132fb832a6eed815f10766d4d119a3b566 SHA512 6f40d6c5cd92cd61c33329405660fb38060dbdfe75b130ab03b50b5c2ae4a1874dc7bc15872925865b4dd9e989fc11ad5d6e9e292283ef0886794ae74cd9d6a1
diff --git a/app-metrics/pushgateway/files/pushgateway-1.confd b/app-metrics/pushgateway/files/pushgateway-1.confd
new file mode 100644
index 000000000000..73149075bb4e
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway-1.confd
@@ -0,0 +1,14 @@
+# --log.format value
+# If set use a syslog logger or JSON logging. Example: logger:syslog?appname=bob&local=7 or logger:stdout?json=true. Defaults to stderr.
+# --log.level value
+# Only log messages with the given severity or above. Valid levels: [debug, info, warn, error, fatal].
+# --persistence.file string
+# File to persist metrics. If empty, metrics are only kept in memory.
+# --persistence.interval duration
+# The minimum interval at which to write out the persistence file. (default 5m0s)
+# --web.listen-address string
+# Address to listen on for the web interface, API, and telemetry. (default ":9091")
+# --web.telemetry-path string
+# Path under which to expose metrics. (default "/metrics")
+
+#command_args="--web.listen-address localhost:9091 --persistence.file=/var/lib/${RC_SVCNAME}/persistence.gob"
diff --git a/app-metrics/pushgateway/files/pushgateway-1.service b/app-metrics/pushgateway/files/pushgateway-1.service
new file mode 100644
index 000000000000..03ae0a442772
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway-1.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Prometheus exporter for ephemereal jobs
+Documentation=https://prometheus.io/docs/instrumenting/pushing/
+After=network-online.target
+
+[Service]
+User=pushgateway
+Restart=on-failure
+Environment=PUSHGATEWAY_ARGS="--web.listen-address localhost:9091 --persistence.file=/var/lib/pushgateway/persistence.gob"
+ExecStart=/usr/bin/pushgateway $PUSHGATEWAY_ARGS
+ExecReload=/bin/kill -HUP $MAINPID
+TimeoutStopSec=20s
+SendSIGKILL=no
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/pushgateway/files/pushgateway-2.initd b/app-metrics/pushgateway/files/pushgateway-2.initd
new file mode 100644
index 000000000000..4fd1b6bce75b
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway-2.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 2018-2025 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus push acceptor for ephemeral and batch jobs"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+output_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+error_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+
+command="/usr/bin/pushgateway"
+command_args="${command_args:---web.listen-address localhost:9091 --persistence.file=/var/lib/${RC_SVCNAME}/persistence.gob}"
+command_background="true"
+
+depend() {
+ need net
+}
diff --git a/app-metrics/pushgateway/files/pushgateway.logrotated b/app-metrics/pushgateway/files/pushgateway.logrotated
new file mode 100644
index 000000000000..c94b73952bc7
--- /dev/null
+++ b/app-metrics/pushgateway/files/pushgateway.logrotated
@@ -0,0 +1,7 @@
+/var/log/pushgateway/pushgateway.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/app-metrics/pushgateway/metadata.xml b/app-metrics/pushgateway/metadata.xml
new file mode 100644
index 000000000000..591131b1265f
--- /dev/null
+++ b/app-metrics/pushgateway/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zmedico@gentoo.org</email>
+ <name>Zac Medico</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/pushgateway/pushgateway-1.11.1.ebuild b/app-metrics/pushgateway/pushgateway-1.11.1.ebuild
new file mode 100644
index 000000000000..1a0bf9822a92
--- /dev/null
+++ b/app-metrics/pushgateway/pushgateway-1.11.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+GIT_COMMIT="aff0d83"
+DESCRIPTION="Prometheus push acceptor for ephemeral and batch jobs"
+HOMEPAGE="https://github.com/prometheus/pushgateway"
+SRC_URI="
+ https://github.com/prometheus/pushgateway/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz
+"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/pushgateway
+ acct-user/pushgateway
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-lang/go-1.24"
+
+src_compile() {
+ local go_ldflags=(
+ -X github.com/prometheus/common/version.Version=${PV}
+ -X github.com/prometheus/common/version.Revision=${GIT_COMMIT}
+ -X github.com/prometheus/common/version.Branch=master
+ -X github.com/prometheus/common/version.BuildUser=gentoo
+ -X github.com/prometheus/common/version.BuildDate="$(date +%F-%T)"
+ )
+ ego build -mod=vendor -ldflags "${go_ldflags[*]}" -o bin/${PN} .
+}
+
+src_install() {
+ dobin bin/${PN}
+ dodoc {README,CHANGELOG,CONTRIBUTING}.md
+
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+
+ newinitd "${FILESDIR}"/${PN}-2.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}-1.confd ${PN}
+ systemd_newunit "${FILESDIR}/${PN}-1.service" "${PN}.service"
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+}
diff --git a/app-metrics/pushgateway/pushgateway-1.11.2.ebuild b/app-metrics/pushgateway/pushgateway-1.11.2.ebuild
new file mode 100644
index 000000000000..7277d933d3da
--- /dev/null
+++ b/app-metrics/pushgateway/pushgateway-1.11.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+GIT_COMMIT="aff0d83"
+DESCRIPTION="Prometheus push acceptor for ephemeral and batch jobs"
+HOMEPAGE="https://github.com/prometheus/pushgateway"
+SRC_URI="
+ https://github.com/prometheus/pushgateway/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz
+"
+
+LICENSE="Apache-2.0"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+RESTRICT="test"
+
+RDEPEND="
+ acct-group/pushgateway
+ acct-user/pushgateway
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-lang/go-1.24"
+
+src_compile() {
+ local go_ldflags=(
+ -X github.com/prometheus/common/version.Version=${PV}
+ -X github.com/prometheus/common/version.Revision=${GIT_COMMIT}
+ -X github.com/prometheus/common/version.Branch=master
+ -X github.com/prometheus/common/version.BuildUser=gentoo
+ -X github.com/prometheus/common/version.BuildDate="$(date +%F-%T)"
+ )
+ ego build -ldflags "${go_ldflags[*]}" -o bin/${PN} .
+}
+
+src_install() {
+ dobin bin/${PN}
+ dodoc {README,CHANGELOG,CONTRIBUTING}.md
+
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+
+ newinitd "${FILESDIR}"/${PN}-2.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}-1.confd ${PN}
+ systemd_newunit "${FILESDIR}/${PN}-1.service" "${PN}.service"
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+}
diff --git a/app-metrics/rabbitmq_exporter/Manifest b/app-metrics/rabbitmq_exporter/Manifest
new file mode 100644
index 000000000000..75ebbf36e29f
--- /dev/null
+++ b/app-metrics/rabbitmq_exporter/Manifest
@@ -0,0 +1,2 @@
+DIST rabbitmq_exporter-1.0.0-deps.tar.xz 9804184 BLAKE2B 3b3ff8a2911104f708f4c3b7272648bf4a36ee06251216bf91e5bb5591c8aba6a5d0f392494e597d83ef0850f821a25388b2546cbb65039cf8a2451076344e7f SHA512 1ae21e35f9762a2c45c69c382a01367f425b5e5faa0a421d2f5c1ad98356915447ea0f76b15cb65a4816506e7753d8c60836479b5760d21db643d309b9567d9d
+DIST rabbitmq_exporter-1.0.0.tar.gz 59708 BLAKE2B 1caff29efe8b5d41089587c0a35c4ec581eada54f8a54fdc308e3d3200dcff8c5cff9ebe0f6b10d026af28484c931ac9c9c01285d0b37714002b4fb5f13c47ee SHA512 29592c9ca1d8b67efbdfb44c5c1f881977a74e4e9aabb44903d5afd5c10696202198ac02b84beb90853f8927cd05abcf8f4ff43a467a8f22b1c8af00df0a52b2
diff --git a/app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.confd b/app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.confd
new file mode 100644
index 000000000000..fb132bc9f51a
--- /dev/null
+++ b/app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.confd
@@ -0,0 +1,6 @@
+# The following are the upstream recommended and default settings.
+# For the full list of settings and their default values, see
+# /usr/share/doc/rabbitmq_exporter-*/README.md.
+
+# PUBLISH_PORT=9419
+# RABBIT_CAPABILITIES=bert,no_sort
diff --git a/app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.initd b/app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.initd
new file mode 100644
index 000000000000..d45de4ecbeca
--- /dev/null
+++ b/app-metrics/rabbitmq_exporter/files/rabbitmq_exporter.initd
@@ -0,0 +1,79 @@
+#!/sbin/openrc-run
+
+description="rabbitmq exporter for Prometheus"
+command=/usr/bin/rabbitmq_exporter
+command_background=yes
+command_user=${RC_SVCNAME}:${RC_SVCNAME}
+pidfile=/var/run/${RC_SVCNAME}.pid
+error_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+output_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
+
+start_pre() {
+ local env_args
+ if [ -n "${RABBIT_URL}" ]; then
+ env_args="${env_args} -e RABBIT_URL=${RABBIT_URL}"
+ fi
+ if [ -n "${RABBIT_USER}" ]; then
+ env_args="${env_args} -e RABBIT_USER=${RABBIT_USER}"
+ fi
+ if [ -n "${RABBIT_PASSWORD}" ]; then
+ env_args="${env_args} -e RABBIT_PASSWORD=${RABBIT_PASSWORD}"
+ fi
+ if [ -n "${RABBIT_USER_FILE}" ]; then
+ env_args="${env_args} -e RABBIT_USER_FILE=${RABBIT_USER_FILE}"
+ fi
+ if [ -n "${RABBIT_PASSWORD_FILE}" ]; then
+ env_args="${env_args} -e RABBIT_PASSWORD_FILE=${RABBIT_PASSWORD_FILE}"
+ fi
+ if [ -n "${PUBLISH_PORT}" ]; then
+ env_args="${env_args} -e PUBLISH_PORT=${PUBLISH_PORT}"
+ else
+ env_args="${env_args} -e PUBLISH_PORT=9419"
+ fi
+ if [ -n "${PUBLISH_ADDR}" ]; then
+ env_args="${env_args} -e PUBLISH_ADDR=${PUBLISH_ADDR}"
+ fi
+ if [ -n "${OUTPUT_FORMAT}" ]; then
+ env_args="${env_args} -e OUTPUT_FORMAT=${OUTPUT_FORMAT}"
+ fi
+ if [ -n "${LOG_LEVEL}" ]; then
+ env_args="${env_args} -e LOG_LEVEL=${LOG_LEVEL}"
+ fi
+ if [ -n "${CAFILE}" ]; then
+ env_args="${env_args} -e CAFILE=${CAFILE}"
+ fi
+ if [ -n "${SKIPVERIFY}" ]; then
+ env_args="${env_args} -e SKIPVERIFY=${SKIPVERIFY}"
+ fi
+ if [ -n "${SKIP_VHOST}" ]; then
+ env_args="${env_args} -e SKIP_VHOST=${SKIP_VHOST}"
+ fi
+ if [ -n "${INCLUDE_VHOST}" ]; then
+ env_args="${env_args} -e INCLUDE_VHOST=${INCLUDE_VHOST}"
+ fi
+ if [ -n "${INCLUDE_QUEUES}" ]; then
+ env_args="${env_args} -e INCLUDE_QUEUES=${INCLUDE_QUEUES}"
+ fi
+ if [ -n "${SKIP_QUEUES}" ]; then
+ env_args="${env_args} -e SKIP_QUEUES=${SKIP_QUEUES}"
+ fi
+ if [ -n "${RABBIT_CAPABILITIES}" ]; then
+ env_args="${env_args} -e RABBIT_CAPABILITIES=${RABBIT_CAPABILITIES}"
+ fi
+ if [ -n "${RABBIT_EXPORTERS}" ]; then
+ env_args="${env_args} -e RABBIT_EXPORTERS=${RABBIT_EXPORTERS}"
+ fi
+ if [ -n "${RABBIT_TIMEOUT}" ]; then
+ env_args="${env_args} -e RABBIT_TIMEOUT=${RABBIT_TIMEOUT}"
+ fi
+ if [ -n "${MAX_QUEUES}" ]; then
+ env_args="${env_args} -e MAX_QUEUES=${MAX_QUEUES}"
+ fi
+ start_stop_daemon_args="${start_stop_daemon_args} ${env_args}"
+ supervise_daemon_args="${supervise_daemon_args} ${env_args}"
+ return 0
+}
diff --git a/app-metrics/rabbitmq_exporter/metadata.xml b/app-metrics/rabbitmq_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/rabbitmq_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/rabbitmq_exporter/rabbitmq_exporter-1.0.0.ebuild b/app-metrics/rabbitmq_exporter/rabbitmq_exporter-1.0.0.ebuild
new file mode 100644
index 000000000000..8f47d4555b87
--- /dev/null
+++ b/app-metrics/rabbitmq_exporter/rabbitmq_exporter-1.0.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Rabbitmq exporter for Prometheus"
+HOMEPAGE="https://github.com/kbudde/rabbitmq_exporter"
+SRC_URI="https://github.com/kbudde/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="acct-group/rabbitmq_exporter
+ acct-user/rabbitmq_exporter"
+ RDEPEND="${DEPEND}"
+
+RESTRICT+=" test "
+
+src_compile() {
+ ego build .
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc *.md
+ insinto /usr/share/${PN}
+ doins *.json
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/app-metrics/redis_exporter/Manifest b/app-metrics/redis_exporter/Manifest
new file mode 100644
index 000000000000..4ed82bee53a4
--- /dev/null
+++ b/app-metrics/redis_exporter/Manifest
@@ -0,0 +1,6 @@
+DIST redis_exporter-1.61.0-deps.tar.xz 815816 BLAKE2B b57f1d3094e3e03f990a5b26b75d95621d55cdd519882689c640e90b76750b4f7de7d48ebc7dd8456af33e14be14a07644211921667d2ba6b16a5f2567fc8430 SHA512 176442e32ec79f8621f57712a2658398f9481f0ddb1c104881305f6cfa36b74833b53078355d7fdd5e4a3d13f546fdfb844d5faf7dc5e38763f7f17228de4d68
+DIST redis_exporter-1.61.0.tar.gz 82438 BLAKE2B fe62e6c56206718eaf908de913dcb80dd9e27825dfc74b2f9bef3d4c914b75cfe0223924b852e8b99421ccbd0a3618bc9f9a0aea8c9a7733bcb95221731f7f97 SHA512 2528be4680b5cb2b1a1077a3a28ddac8f5a8a4a2b936504553cb218e8c53f8a9d9e52a9266c247f85bda03ae76eec90dbc9ab9bcc8df828d5850538e818d8188
+DIST redis_exporter-1.67.0-deps.tar.xz 955620 BLAKE2B d319e605a8685ec2a8dc441d42346009c019eabb385c758d8a7f09bff37ebe6c158f9a04353fdac51821b54dcdbee873bc747ae008d3dc2148e153eaeaa154d8 SHA512 e1dae9c1e941aaff88769008d70811c22d4ec2946076d43b74269a5fb6b1b12aa8bc0c73e114cf9ec9ecafe6b9af6ef8b0236fe6b3788bdfe7f94241785c6bfd
+DIST redis_exporter-1.67.0.tar.gz 87552 BLAKE2B d97f181f95b8ac44292892c6df031762fcea79eb8a06a224346152631ce18a5229d9ef14b53893709b83933053a8e47bedff52040a07849704b29961b1f69b54 SHA512 5acb905cf8b41c95013d917754837066e4c68535414c1459b985cea901c4cb1ab347be5715fec9d1306810915c4bcac2e4aea4a9fbf64403921b5ef30c6ab1a2
+DIST redis_exporter-1.83.0-vendor.tar.xz 1024056 BLAKE2B 616708c771579397fd397319729a2df8d73cf1ea03ba0ff76f84fb58c1ab29040474529ace83829df99d240c5bc99d47ee38f80fc934db0ef2fd1eaa0772ca4f SHA512 b29a7db08a822b280d98028e374723c4255e19f9611fa11058691e1c08b872b95741b94b8f415264baabc73f8bf965d4ce2b7aa1724fcbc8dde9bf773c24ab3c
+DIST redis_exporter-1.83.0.tar.gz 120997 BLAKE2B 9301d489f3d55e273954986448a74fefcd9949e08aac64a73aa8998880e4bf53e6a1596292ad50dbc9e36bef6116f7032806cc4f877cb822ee7a1bd458e91adb SHA512 5130aa772f43d48a1da6ce0be051625317fce129ae8bd092c2e3176846d95a51c689a4218b58b9d7279437591d5f994ca62cc364e904d52cff765380be632b07
diff --git a/app-metrics/redis_exporter/files/redis_exporter.confd b/app-metrics/redis_exporter/files/redis_exporter.confd
new file mode 100644
index 000000000000..8573aef35405
--- /dev/null
+++ b/app-metrics/redis_exporter/files/redis_exporter.confd
@@ -0,0 +1,30 @@
+# -check-keys string
+# Comma separated list of keys to export value and length/size
+# -debug
+# Output verbose debug information
+# -log-format string
+# Log format, valid options are txt and json (default "txt")
+# -namespace string
+# Namespace for metrics (default "redis")
+# -redis-only-metrics
+# Whether to export go runtime metrics also
+# -redis.addr string
+# Address of one or more redis nodes, separated by separator
+# -redis.alias string
+# Redis instance alias for one or more redis nodes, separated by separator
+# -redis.file string
+# Path to file containing one or more redis nodes, separated by newline. NOTE: mutually exclusive with redis.addr
+# -redis.password string
+# Password for one or more redis nodes, separated by separator
+# -separator string
+# separator used to split redis.addr, redis.password and redis.alias into several elements. (default ",")
+# -use-cf-bindings
+# Use Cloud Foundry service bindings
+# -version
+# Show version information and exit
+# -web.listen-address string
+# Address to listen on for web interface and telemetry. (default ":9121")
+# -web.telemetry-path string
+# Path under which to expose metrics. (default "/metrics")
+
+#command_args="--web.listen-address=:9121 --redis.addr=localhost:6379"
diff --git a/app-metrics/redis_exporter/files/redis_exporter.initd b/app-metrics/redis_exporter/files/redis_exporter.initd
new file mode 100644
index 000000000000..6e1ffc23f87e
--- /dev/null
+++ b/app-metrics/redis_exporter/files/redis_exporter.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 2016-2026 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus Exporter for Redis Metrics"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+output_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+error_log=/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log
+
+command="/usr/bin/redis_exporter"
+command_args="${command_args:---web.listen-address=:9121 --redis.addr=localhost:6379}"
+command_background="true"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/redis_exporter/files/redis_exporter.logrotated b/app-metrics/redis_exporter/files/redis_exporter.logrotated
new file mode 100644
index 000000000000..e83de5eb6436
--- /dev/null
+++ b/app-metrics/redis_exporter/files/redis_exporter.logrotated
@@ -0,0 +1,7 @@
+/var/log/redis_exporter/redis_exporter.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/app-metrics/redis_exporter/files/redis_exporter.service b/app-metrics/redis_exporter/files/redis_exporter.service
new file mode 100644
index 000000000000..4dbb09d7b641
--- /dev/null
+++ b/app-metrics/redis_exporter/files/redis_exporter.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Prometheus Exporter for Redis Metrics
+Documentation=https://github.com/oliver006/redis_exporter/
+After=network-online.target
+
+[Service]
+User=redis_exporter
+Restart=on-failure
+Environment=REDIS_EXPORTER_ARGS="--web.listen-address=:9121 --redis.addr=localhost:6379"
+ExecStart=/usr/bin/redis_exporter $REDIS_EXPORTER_ARGS
+ExecReload=/bin/kill -HUP $MAINPID
+TimeoutStopSec=20s
+SendSIGKILL=no
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/redis_exporter/metadata.xml b/app-metrics/redis_exporter/metadata.xml
new file mode 100644
index 000000000000..591131b1265f
--- /dev/null
+++ b/app-metrics/redis_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zmedico@gentoo.org</email>
+ <name>Zac Medico</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/redis_exporter/redis_exporter-1.61.0.ebuild b/app-metrics/redis_exporter/redis_exporter-1.61.0.ebuild
new file mode 100644
index 000000000000..f7d466947383
--- /dev/null
+++ b/app-metrics/redis_exporter/redis_exporter-1.61.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+EGIT_COMMIT=e9871c1465679cd3543953f57bd4d015bc73c990
+
+DESCRIPTION="Prometheus Exporter for Redis Metrics. Supports Redis 2.x, 3.x and 4.x"
+HOMEPAGE="https://github.com/oliver006/redis_exporter"
+SRC_URI="https://github.com/oliver006/redis_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+RDEPEND="
+ acct-user/redis_exporter
+ acct-group/redis_exporter"
+DEPEND="${RDEPEND}"
+RESTRICT="test"
+
+src_prepare() {
+ default
+ sed -e "s|\(^[[:space:]]*VERSION[[:space:]]*=[[:space:]]*\).*|\1\"${PV}\"|" \
+ -e "s|\(^[[:space:]]*BUILD_DATE[[:space:]]*=[[:space:]]*\).*|\1\"$(LC_ALL=C date -u)\"|" \
+ -e "s|\(^[[:space:]]*COMMIT_SHA1[[:space:]]*=[[:space:]]*\).*|\1\"${EGIT_COMMIT}\"|" \
+ -i main.go || die
+}
+
+src_compile() {
+ export GOBIN="${S}/bin"
+ go install \
+ -ldflags="-X main.BuildVersion=${PV} -X main.BuildCommitSha=${EGIT_COMMIT} -X main.BuildDate=$(date +%F-%T)" \
+ ./... || die
+}
+
+src_test() {
+ go test -work ./... || die
+}
+
+src_install() {
+ dobin "${GOBIN}/redis_exporter"
+ dodoc README.md
+ local dir
+ for dir in /var/{lib,log}/${PN}; do
+ keepdir "${dir}"
+ fowners ${PN}:${PN} "${dir}"
+ done
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+ systemd_dounit "${FILESDIR}/${PN}.service"
+}
diff --git a/app-metrics/redis_exporter/redis_exporter-1.67.0.ebuild b/app-metrics/redis_exporter/redis_exporter-1.67.0.ebuild
new file mode 100644
index 000000000000..9c0c9e913b87
--- /dev/null
+++ b/app-metrics/redis_exporter/redis_exporter-1.67.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+EGIT_COMMIT=e2bb7fd6af3b950efa3267e4b932531098dc06b0
+
+DESCRIPTION="Prometheus Exporter for Redis Metrics. Supports Redis 2.x, 3.x and 4.x"
+HOMEPAGE="https://github.com/oliver006/redis_exporter"
+SRC_URI="https://github.com/oliver006/redis_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+RDEPEND="
+ acct-user/redis_exporter
+ acct-group/redis_exporter"
+DEPEND="${RDEPEND}"
+RESTRICT="test"
+
+src_unpack() {
+ default
+}
+
+src_prepare() {
+ ln -sv ../vendor ./ || die
+ default
+ sed -e "s|\(^[[:space:]]*VERSION[[:space:]]*=[[:space:]]*\).*|\1\"${PV}\"|" \
+ -e "s|\(^[[:space:]]*BUILD_DATE[[:space:]]*=[[:space:]]*\).*|\1\"$(LC_ALL=C date -u)\"|" \
+ -e "s|\(^[[:space:]]*COMMIT_SHA1[[:space:]]*=[[:space:]]*\).*|\1\"${EGIT_COMMIT}\"|" \
+ -i main.go || die
+}
+
+src_compile() {
+ export GOBIN="${S}/bin"
+ go install \
+ -ldflags="-X main.BuildVersion=${PV} -X main.BuildCommitSha=${EGIT_COMMIT} -X main.BuildDate=$(date +%F-%T)" \
+ ./... || die
+}
+
+src_test() {
+ go test -work ./... || die
+}
+
+src_install() {
+ dobin "${GOBIN}/redis_exporter"
+ dodoc README.md
+ local dir
+ for dir in /var/{lib,log}/${PN}; do
+ keepdir "${dir}"
+ fowners ${PN}:${PN} "${dir}"
+ done
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+ systemd_dounit "${FILESDIR}/${PN}.service"
+}
diff --git a/app-metrics/redis_exporter/redis_exporter-1.83.0.ebuild b/app-metrics/redis_exporter/redis_exporter-1.83.0.ebuild
new file mode 100644
index 000000000000..d40a535bd409
--- /dev/null
+++ b/app-metrics/redis_exporter/redis_exporter-1.83.0.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+EGIT_COMMIT=1c261b87e1431be106c241181038274b406c9592
+
+DESCRIPTION="Prometheus Exporter for Redis Metrics. Supports Redis 2.x, 3.x and 4.x"
+HOMEPAGE="https://github.com/oliver006/redis_exporter"
+SRC_URI="https://github.com/oliver006/redis_exporter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="MIT Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ acct-user/redis_exporter
+ acct-group/redis_exporter"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ >=dev-lang/go-1.25.0
+ test? ( dev-db/redis )
+"
+
+src_compile() {
+ local egoldflags=(
+ -X main.BuildVersion=${PV}
+ -X main.BuildCommitSha=${EGIT_COMMIT}
+ -X main.BuildDate=$(date +%F-%T)
+ )
+ ego build -o bin/ -ldflags="${egoldflags[*]}" ./...
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+
+ if has_version ">=dev-db/redis-7"; then
+ local extra_conf="
+ enable-debug-command yes
+ enable-module-command yes
+ "
+ fi
+
+ # Spawn Redis itself for testing purposes
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1 ::1
+ ${extra_conf}
+ EOF
+
+ contrib/tls/gen-test-certs.sh || die "Unable to generate TLS certs"
+
+ local -x TEST_REDIS_URI="redis://localhost:${redis_port}"
+ ego test -work ./...
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
+
+src_install() {
+ dobin bin/redis_exporter
+ dodoc README.md
+
+ local dir
+ for dir in /var/{lib,log}/${PN}; do
+ keepdir "${dir}"
+ fowners ${PN}:${PN} "${dir}"
+ done
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+}
diff --git a/app-metrics/smartctl_exporter/Manifest b/app-metrics/smartctl_exporter/Manifest
new file mode 100644
index 000000000000..92c3f95cfa2d
--- /dev/null
+++ b/app-metrics/smartctl_exporter/Manifest
@@ -0,0 +1,3 @@
+DIST smartctl_exporter-0.12.0-d33b5a391f4a18b3d9c0a194e57cdd3491130099.patch 4997 BLAKE2B cf03225eeaea9553e6e0686450efc574c3c0b9b67cce0866a514cdd19ef6d91f6c5e4253fad9ac10a99bc92c6057ca27cce3bde1ebe3942e2fe0fb8070c6e199 SHA512 2ca0ad57fb4cb92a5db6cffa650a7045eb5c309e3cecf227c971262617d94e4a32cdc1d9465a7030d9b24d243f1a717d92d3b327dc494fb18e57d9da67b59002
+DIST smartctl_exporter-0.12.0-vendor.tar.xz 1400804 BLAKE2B 5c4ba0440860c86d3a3bd84308c97a6fe1eaf231776ed64840f6ebd3cad533bab5f8b97ee9f4c3d573b08442fc66f565c8b83a7f70fea889cf2e9e1337ce24cc SHA512 28e235eb6e560042ae0783a1fb1276ff07dff5e838f1f2d6a93886f0fdea85151b1c1c87c8476d42524f7e563a58ae30f354fa1138a93fcbe0f39ff7bcba0b3d
+DIST smartctl_exporter-0.12.0.tar.gz 91406 BLAKE2B 9ab0fa3e4dcee1e21a566cd9677b99f579f60e761d40d9ab1dd75380bbff9c189d9895ee2e914d1b6bdeee0c5b6d185c71ae62f4ce7585b3954192091cc96e25 SHA512 8f2cc973fd967c9ab737dcaa7456f019cb574ac3297bd5d15559167cde51f8076bcb48c7befb7efb869e056c1c5e404f4bb2774e8fe020736354ede4ae3e77f3
diff --git a/app-metrics/smartctl_exporter/files/smartctl_exporter.confd b/app-metrics/smartctl_exporter/files/smartctl_exporter.confd
new file mode 100644
index 000000000000..5a8a1d649a60
--- /dev/null
+++ b/app-metrics/smartctl_exporter/files/smartctl_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for smartctl exporter
+command_args=""
diff --git a/app-metrics/smartctl_exporter/files/smartctl_exporter.initd b/app-metrics/smartctl_exporter/files/smartctl_exporter.initd
new file mode 100644
index 000000000000..b9e18a61449a
--- /dev/null
+++ b/app-metrics/smartctl_exporter/files/smartctl_exporter.initd
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 2016-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="smartctl metrics exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=root
+group=root
+
+command="/usr/bin/smartctl_exporter"
+command_args="${command_args}"
+command_background="true"
+command_user="${user}:${group}"
+output_log="/var/log/smartctl_exporter/${RC_SVCNAME}.log"
+error_log="/var/log/smartctl_exporter/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
+
+start_pre() {
+ checkpath -q -d -m 0755 -o ${user}:${group} /var/log/smartctl_exporter
+}
diff --git a/app-metrics/smartctl_exporter/files/smartctl_exporter.service b/app-metrics/smartctl_exporter/files/smartctl_exporter.service
new file mode 100644
index 000000000000..c21aa5af5283
--- /dev/null
+++ b/app-metrics/smartctl_exporter/files/smartctl_exporter.service
@@ -0,0 +1,22 @@
+[Unit]
+Description=smartctl exporter
+Documentation=https://github.com/prometheus-community/smartctl_exporter
+After=network-online.target
+
+[Service]
+# Security improvements required in future, but needs care; ideally
+# smartctl_exporter runs minimal privilege, but can invoke smartctl via sudo to
+# touch disks.
+# https://github.com/prometheus-community/smartctl_exporter/issues/146
+User=root
+Group=root
+Restart=on-failure
+Type=exec
+# TODO: find a good way to add args here
+ExecStart=/usr/sbin/smartctl_exporter
+ExecReload=/usr/bin/kill -HUP $MAINPID
+TimeoutStopSec=20s
+SendSIGKILL=no
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-metrics/smartctl_exporter/metadata.xml b/app-metrics/smartctl_exporter/metadata.xml
new file mode 100644
index 000000000000..5d08ae950a93
--- /dev/null
+++ b/app-metrics/smartctl_exporter/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/smartctl_exporter/smartctl_exporter-0.12.0-r1.ebuild b/app-metrics/smartctl_exporter/smartctl_exporter-0.12.0-r1.ebuild
new file mode 100644
index 000000000000..a538f9f1c89b
--- /dev/null
+++ b/app-metrics/smartctl_exporter/smartctl_exporter-0.12.0-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+DESCRIPTION="Export smartctl statistics to prometheus"
+HOMEPAGE="https://github.com/prometheus-community/smartctl_exporter"
+
+# uncomment the first setting of MY_PV for a normal release
+# MY_PV="v${PV/_rc/-rc.}"
+# set MY_PV to the full commit hash for a snapshot release
+MY_PV_HASH=
+: ${MY_PV_HASH_FOR_VENDOR:=${MY_PV_HASH}}
+if [[ -n "${MY_PV_HASH}" ]]; then
+ MY_PV=${MY_PV_HASH}
+ SMARTCTL_EXPORTER_COMMIT=${MY_PV_HASH:0:8}
+ SRC_URI_UPSTREAM="${HOMEPAGE}/archive/${MY_PV}.tar.gz"
+else
+ MY_PV=$PV
+ SMARTCTL_EXPORTER_COMMIT=
+ SRC_URI_UPSTREAM="${HOMEPAGE}/archive/refs/tags/v${PV}.tar.gz"
+fi
+MY_P=${PN}-${MY_PV}
+SRC_URI_VENDOR="https://dev.gentoo.org/~robbat2/distfiles/${MY_P}-vendor.tar.xz"
+UPSTREAM_PATCHES=(
+ 0.12.0:d33b5a391f4a18b3d9c0a194e57cdd3491130099
+)
+SRC_URI="
+ ${SRC_URI_UPSTREAM} -> ${P}.tar.gz
+ ${SRC_URI_VENDOR}
+ "
+PATCHES=()
+for p in $UPSTREAM_PATCHES; do
+ SRC_URI+=" https://github.com/prometheus-community/smartctl_exporter/commit/${p/*:}.patch -> ${PN}-${p/:/-}.patch"
+ PATCHES+=( "${DISTDIR}/${PN}-${p/:/-}.patch" )
+done
+
+# Upstream LICENSE file is wrong see https://github.com/prometheus-community/smartctl_exporter/pull/113
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+BDEPEND="dev-util/promu"
+DEPEND="dev-lang/go"
+RDEPEND="sys-apps/smartmontools"
+
+src_prepare() {
+ default
+ if [[ -n $SMARTCTL_EXPORTER_COMMIT ]]; then
+ sed -i -e "s/{{.Revision}}/${SMARTCTL_EXPORTER_COMMIT}/" .promu.yml || die
+ fi
+}
+
+src_compile() {
+ emake build PROMU='/usr/bin/promu'
+}
+
+src_install() {
+ dodoc *.md
+ dobin ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ systemd_dounit "${FILESDIR}/${PN}.service"
+
+}
diff --git a/app-metrics/snmp_exporter/Manifest b/app-metrics/snmp_exporter/Manifest
new file mode 100644
index 000000000000..5342bd2ce26a
--- /dev/null
+++ b/app-metrics/snmp_exporter/Manifest
@@ -0,0 +1,4 @@
+DIST snmp_exporter-0.24.1-deps.tar.xz 23690876 BLAKE2B 35cc65341bbae092fb88ebb42c24cf93c8e926265e5fc1fa67a4a38c99c013f704b4ce02704341bd6aca841fbd75cdcb98635b2f7856c94d9c17a8f96acc29c2 SHA512 090437acf2f66094982374f06ea889bb8694b018a1a74da7cd1275ae4ee4ed1c8147253d4d87b8916e8f397c029881f29bf5ad4d33bfec5d6a99efa7b1d2326b
+DIST snmp_exporter-0.24.1.tar.gz 168914 BLAKE2B 555136b42af1057cbd553a774ab96f00877f20b1d72b8f78dc87d85e958d14d56b8d58eb5aab829ad33acd9581fe80c4d65ae4faad1c8be0773e2205ac088cb2 SHA512 5268129a50bd255a9505b16d27957ab2e7a23321a25933c9a1a98cd9900aef3a882a59a43d92e021dfa6e732f84f8be1fe171271935a8eac1e023588f417822e
+DIST snmp_exporter-0.27.0-deps.tar.xz 40692548 BLAKE2B 3a553497515153e2cc5fdf2b03190a5b3fd4169b6d9ea2e869c92a662d1a7cd1210a76b02662222326b8a4c4861a2f7448f75c8b6ecbe6179a4e2c831a76fe24 SHA512 11d4072a4ffd94943fac8704d45b1c8f5ed23fb1e7ea0102b67aa29a1be95c91b9ca899eb99eb828b140f82828e3f30c448eeedf05c735604c165c63bdb6024f
+DIST snmp_exporter-0.27.0.tar.gz 235589 BLAKE2B e61262a3785e0f81e112c5eaf046c0607bef64d61cac81b394f15e276e0648f14166e0854708e41f64b9740ab5deb10b61d1e45f748134f11014c93d937a327c SHA512 bcc6e795c73c278cbb1497eb49e9b4aec8624132771016804dcbfb092c9c02d9ef73e74a0cf6e47567a299dc2cdb19621cbbee3c6bfc2a988d697c743434746d
diff --git a/app-metrics/snmp_exporter/files/snmp_exporter.confd b/app-metrics/snmp_exporter/files/snmp_exporter.confd
new file mode 100644
index 000000000000..c5e56a67e15e
--- /dev/null
+++ b/app-metrics/snmp_exporter/files/snmp_exporter.confd
@@ -0,0 +1,2 @@
+# arguments for prometheus snmp exporter
+command_args="--config.file=/etc/snmp_exporter/snmp.yml"
diff --git a/app-metrics/snmp_exporter/files/snmp_exporter.initd b/app-metrics/snmp_exporter/files/snmp_exporter.initd
new file mode 100644
index 000000000000..b214422704e2
--- /dev/null
+++ b/app-metrics/snmp_exporter/files/snmp_exporter.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus snmp exporter"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${RC_SVCNAME}}
+group=${group:-${RC_SVCNAME}}
+
+command="/usr/bin/snmp_exporter"
+command_args="${command_args:---config.file=/etc/snmp_exporter/snmp.yml}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/snmp_exporter/${RC_SVCNAME}.log \
+ --stderr /var/log/snmp_exporter/${RC_SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/app-metrics/snmp_exporter/files/snmp_exporter.logrotated b/app-metrics/snmp_exporter/files/snmp_exporter.logrotated
new file mode 100644
index 000000000000..a34537f58c3e
--- /dev/null
+++ b/app-metrics/snmp_exporter/files/snmp_exporter.logrotated
@@ -0,0 +1,7 @@
+/var/log/snmp_exporter/snmp_exporter.log {
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/app-metrics/snmp_exporter/metadata.xml b/app-metrics/snmp_exporter/metadata.xml
new file mode 100644
index 000000000000..17492b5107c4
--- /dev/null
+++ b/app-metrics/snmp_exporter/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>williamh@gentoo.org</email>
+ <name>William Hubbs</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/snmp_exporter/snmp_exporter-0.24.1.ebuild b/app-metrics/snmp_exporter/snmp_exporter-0.24.1.ebuild
new file mode 100644
index 000000000000..2935cb98ccfd
--- /dev/null
+++ b/app-metrics/snmp_exporter/snmp_exporter-0.24.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+SNMP_EXPORTER_COMMIT=f8826bcf
+inherit go-module
+
+DESCRIPTION="Prometheus exporter for snmp metrics"
+HOMEPAGE="https://github.com/prometheus/snmp_exporter"
+SRC_URI="https://github.com/prometheus/${PN}/archive/v${PV/_rc/-rc.}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~ajak/dist/${CATEGORY}/${PN}/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="amd64"
+
+COMMON_DEPEND="acct-group/snmp_exporter
+ acct-user/snmp_exporter
+ net-analyzer/net-snmp"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND="dev-util/promu"
+
+src_prepare() {
+ default
+ sed -i -e "s/{{.Revision}}/${SNMP_EXPORTER_COMMIT}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build --prefix bin || die
+ pushd generator || die
+ ego build -o ../bin/generator
+ popd || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dobin bin/generator
+ newbin bin/${PN}-${PV} ${PN}
+ dodoc {README,CONTRIBUTING}.md generator/{FORMAT,README}.md generator/generator.yml
+ insinto /etc/snmp_exporter
+ newins snmp.yml snmp.yml.example
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+ keepdir /var/lib/snmp_exporter /var/log/snmp_exporter
+ fowners ${PN}:${PN} /var/lib/snmp_exporter /var/log/snmp_exporter
+}
diff --git a/app-metrics/snmp_exporter/snmp_exporter-0.27.0.ebuild b/app-metrics/snmp_exporter/snmp_exporter-0.27.0.ebuild
new file mode 100644
index 000000000000..35411041a36b
--- /dev/null
+++ b/app-metrics/snmp_exporter/snmp_exporter-0.27.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+# update this on every bump
+SNMP_EXPORTER_COMMIT=4c054bf5
+
+DESCRIPTION="Prometheus exporter for snmp metrics"
+HOMEPAGE="https://github.com/prometheus/snmp_exporter"
+SRC_URI="https://github.com/prometheus/${PN}/archive/v${PV/_rc/-rc.}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="amd64"
+
+COMMON_DEPEND="acct-group/snmp_exporter
+ acct-user/snmp_exporter
+ net-analyzer/net-snmp"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND="dev-util/promu"
+
+src_prepare() {
+ default
+ sed -i -e "s/{{.Revision}}/${SNMP_EXPORTER_COMMIT}/" .promu.yml || die
+}
+
+src_compile() {
+ promu build --prefix bin || die
+ pushd generator || die
+ ego build -o ../bin/generator
+ popd || die
+}
+
+src_test() {
+ emake test-flags= test
+}
+
+src_install() {
+ dobin bin/generator
+ newbin bin/${PN}-${PV} ${PN}
+ dodoc {README,CONTRIBUTING}.md generator/{FORMAT,README}.md generator/generator.yml CHANGELOG.md
+ insinto /etc/snmp_exporter
+ newins snmp.yml snmp.yml.example
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+ keepdir /var/lib/snmp_exporter /var/log/snmp_exporter
+ fowners ${PN}:${PN} /var/lib/snmp_exporter /var/log/snmp_exporter
+}
diff --git a/app-metrics/unbound-telemetry/Manifest b/app-metrics/unbound-telemetry/Manifest
new file mode 100644
index 000000000000..8aef6b580dbd
--- /dev/null
+++ b/app-metrics/unbound-telemetry/Manifest
@@ -0,0 +1,110 @@
+DIST ansi_term-0.11.0.crate 17087 BLAKE2B 9bd35c045a01ce4c6c4a5db1b4f15e9412bb97426eec19d4421dffbec633de8d13452c13c1dc1b30998690b78d7ed38311aca700087f13a81f66bd1d5d7300c4 SHA512 a637466a380748f939b3af090b8c0333f35581925bc03f4dda9b3f95d338836403cf5487ae3af9ff68f8245a837f8ab061aabe57a126a6a2c20f2e972c77d1fa
+DIST approx-0.5.0.crate 14359 BLAKE2B d1811157cb560d24b559b5f4954654dcfe4d1d418f90ed98536c0f8c72584b9cc10c93c4e89fa376f96be043338964d07bc722ef16ebf3041e8c7eb755f2941e SHA512 4c7ef7d54b6a9fac11587fd16638d36d8738e5156f5abf77cd994056377427f12170b61c03d1acf591dbb897911babc852c2a4a12b3c5277e1065d952c9e7dc6
+DIST async-trait-0.1.51.crate 25531 BLAKE2B b4ae85616d5f84392381539d98c1751baaa01cf936045423179538fa4e027d86c8aaf42f98d4e781e0f8ce7ee3bf95d64fc5aa624997fa4aedd06f1e9144b11b SHA512 9a0505109f984bde511a6e1543925ac447935824594fb0ae3da6af3f72fca29cbbfa0cc282f751bb2c597e73084d831fd75c202beb5998cd368eb0c13a067990
+DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
+DIST autocfg-1.0.1.crate 12908 BLAKE2B 40c53cab298e4f26634c3acff3ece6a3371188d91dbf377ed664eabedcde20536edaa93daf406618f37edde019f049a6e7b9a47f627344587dbd126bee2b5e3a SHA512 630b348acb98b012e97804e6325d03c89abc22f2157762c59144c04e6c733daf550bdc7f0fe0b9f3b50e15dae8c1c3c4bdfce3d805b02f0fc987311f5332419b
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bytes-0.5.6.crate 46291 BLAKE2B 6d33ab47d04f2e469db2add31db118f95cad53002be7969738923d62a4fe3605ccbe9fbcae6d8741310c543625e80d9adac7d9e9fed01b71cb3943ddd015d920 SHA512 a1caa1f58754f4d2e54b8df8d0ca0083ee5282f5e4d3bb5b1735022933dd2e66fb3f39c7a82216bf7a7e29591695c2e10c8b7144c83ac598e34193f2425a32cc
+DIST bytes-1.1.0.crate 49640 BLAKE2B b3140dd49dc222cd0405e405da9629038eb7d71dd4c22c8d6419ade041dc1118aa46df38f3426a36a44d8e5591c368ae32a89e71850dca7e810bbfff4441c37d SHA512 d34441ea146ccaf55da4d5c645f8ffbd008eeb3204dafd5961771abc85df52751dfd1af3975fb5c91eb83d9a43da4f3589bc3aa07c8d715906d8158f3092af2d
+DIST cc-1.0.70.crate 57200 BLAKE2B 196b0435c8a521a02e9877ed3ff81fbefa88cd56717556776b46366bad1835bff134a1b4fc4e31ee5497600e98d1031119d0973b420cf16aece1ff18fbdcd1bc SHA512 9158eabcb9405fa2ef41fb120821ddaa2e5c7234c02d5cfbb5b59570f7de393d1fa33942ca52f86bf9271765b3df934debdea89e7563cbfe193dc01b2dcd72f9
+DIST cfg-if-0.1.10.crate 7933 BLAKE2B 063a96ed176f34f788666b40adc483d147fc011dee941ab60569ddd0e57502b5dd06ed71090f4e14ce005d06e240500a286f74652615e9d068fba649610d8cf8 SHA512 9d22616bfb4a75770a828a0a3cddac6787297a5fdc53eb17e25811cc94de717f2de8bd66d53c5d65ba1c83d8892aefee5ae758cf56a1ef0a0c3120f70b244339
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST claim-0.5.0.crate 12858 BLAKE2B 56dcf43f7b5c68924cf58bee7fcc68d1da891a37c21cbb4236b65745d3d51b15d348df5eb251ff7f4c83412dd09a97760db88f30dd9f8fd184fdd6616f505ca7 SHA512 699ca80456f54d7d1ce6e4ae34bca33839069982f011aa63679ab9570ac80a0b09caa4379a2dce2fc307f7881862442175e0548600842177eaa13d3931148d7c
+DIST clap-2.33.3.crate 201925 BLAKE2B bec9c866481c5b3fddeb314f68af9bce38fc421e42816182de3209e8ea3447b72cf033e6251eea27fe974eff8085b7d98cdd2911b5cc0ec6b4bf4c750deb8a25 SHA512 3eb0fd648e2e3f9e5ff69a5e6cf0d867304fe18523accd036f28a86de368e4774088a6936c108ccc045092c539fe7f7494ea96420ebf6b4bec16880cea84bedf
+DIST core-foundation-0.6.4.crate 25233 BLAKE2B 720cb670e0ce589fcb75e583c3f70b54669407481f61b67bb5df1a5056f07c88f568f2adeb65188004424b26b623ac42b03d830239571c15f241216e55fd8dfa SHA512 5dce50f15aa48f38e1bf287fdd3c5276d8e5f1d64bcf29da7d8a68008414f6ee560a940040361eb2f4e65657ca4329958dbec8105cc6d3606ecfe9e71ccb7632
+DIST core-foundation-sys-0.6.2.crate 16204 BLAKE2B 32766d4b23a2b108777c57b2115cc718a0cdb42fcd2e3973a0adf944d326e0796a6953756c42140eb4e6e96a2609bfb41f84a54c59b4b840d7213f3c5dd4234e SHA512 bfbe4e77a5e2644952c66a2afd21058a07583d3a1776c34dbfc316d159289073d92b8672eaab2f39fa46c48cd7f22d88f0354f02b3208482d700473a807ebf07
+DIST domain-0.6.1.crate 270027 BLAKE2B 292a619226bcd6de5d7240c1a63003b6c37ca8469cd57eede5aa37eaf059e95135b39ff4a90d75029404bedffda20f51807a92231d214fa56064ff1d893b038a SHA512 5c612ee0c52c6fb0cb7dd0cbebd2c2f463e5d3901e758be5c4685e19be0ab05de3f1d4aa0cf21ea256b1273857a2dc1430c66a2a71b2d7ea9dfdedc4ae856252
+DIST dtoa-0.4.8.crate 16175 BLAKE2B 5fff15e66c2edeb9eb9da89c66389b3a9bbb891d75afc3bb7da4dcbe9cad9e50af318cc8cc01cc7e56730763e8ea8ceb33b9447d1a7fa52a8d0f0d2060a97522 SHA512 fe1701ba2c40988b92f5f4ef78a8c81718b140ff8ca2d04023b09a89440e6ddb53ef36d1ebd9dd3e948428b361ed6611bd24ec1a31b5010c220c555e1f0bf6b8
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST foreign-types-0.3.2.crate 7504 BLAKE2B 520818b702d990d296ecd31a8646850202509ccfa18edd0e1b260289619a6c351e758f317ec0824bd76eccb209b6f087057c25f1bd01a47897715013dd834867 SHA512 bf27b8243ed482c202d120383374f19ff09422535e24b9c1aebccc66529bf300ca17b8bbc76d67f98ac092e614497afe3add9dc68aa69c93074df05762f91232
+DIST foreign-types-shared-0.1.1.crate 5672 BLAKE2B d2e42e04b6657e7a69fe0bd20c672176629c743e49a55fd007bb30e289710b70045d445ae9cae0eeaa747ee708c90e8abd9b5fc39bad8ec0666befe1b696d4f1 SHA512 bafdb2143e136fb0818e2ffd90b5c862b7181647d6568947d4e4531012bbf7a57b597221ec7056c1b562dfc0c3b5dead26d1a4111ebc15e7863737a873518a4a
+DIST fuchsia-zircon-0.3.3.crate 22565 BLAKE2B a4dac3457036efab8f79fe5d5b4545e4091e994d3dc63188f71fafbcc28bf98ef359dcd20add30ac1d990ab2e66159723302fb66697349c65fab0aa58d54535e SHA512 a43ee59452d49742111e506d6bdd8b8399a3a646e08648e25292864d7f71460c1dd1f2d77b8efa8ed09ac21fa4ff0442a2709f16d8833a3849bde0c388d83a93
+DIST fuchsia-zircon-sys-0.3.3.crate 7191 BLAKE2B 530bb5d475ac828843af248c6bbd24ca3b5dd8118c8884ccc6d7261818cff1c79038077114ffa04bc73a078177527824c4d9d20a9b022e4057afee3330258cff SHA512 978b7e8795a5877a68409ed3a1d7b4246263f8e7e7ce9ba8a022643be98f58f329cc1c234717df80a509db849da4394f39e90a8e2a6f56f8fa8dd3c07e7d4386
+DIST futures-channel-0.3.17.crate 31765 BLAKE2B a1055de0a6b8812546442acd8acf8251168015b5f6be7bb7e223b7c61841a1a15ec1fbca3e4d40e0a552d5c3fc89ed2306a29c9ef33b1665f828ab9c8c0aa142 SHA512 884fed34839c9f73551a90fdbcdc542f88623c0d74d506febd6fb0308429e0d7df879f378b6d0bc818ce8c948da495a9dc210ca55331f4760273d51f627cc416
+DIST futures-core-0.3.17.crate 14478 BLAKE2B bad5d1fccef7e823d52eff0db7522545c6dcc6ba94bc0cad33c013b6abe624ebc6c8ddc6a6f5a4ede5982e175eeac48113ef929cc6633a22a18bbbd4cb1cb114 SHA512 6f290620b5051a3f3a317acade5a077f502fa3ab7fdb230b6ecd4d007c63685bf343ddcb8b8d1170b5ebeb94fbf1c495dab36918490b14885361d6e53c45bf22
+DIST futures-sink-0.3.17.crate 7663 BLAKE2B 598e864fb6f2f34cd72c67e5ced93d0e54d2e508319ba191a2779377d9565799226783b2009190cd6eea63c75562e209a526c724ea8616d22a1c7b4ae543ddd7 SHA512 39996fd6bf1fb5ebb0dbd5c0d18f9a34f21e65dfe998237c2e047d836a380ebfb9a2fea05a2c11e447e9a27dff0bffe4a9762e83df2f17aa90a717fc98ba5803
+DIST futures-task-0.3.17.crate 11712 BLAKE2B ca42fc54c3a3795e59b423fbd1235b10b4ae1903256fa61e80dc9318f35fb59fbc15ca8a3be3fed67e17809ed2d5f594f939d3f51d0d718b0dff5be069200361 SHA512 2f12d8d9d404f147b601ddc6fb9b6869e2e68a4bc55cd3851cb9f7aa8ebe6519c5cd0fa14da92e564d2003ded2ac2202f5e09e1a83e81129d1600d01ecf86844
+DIST futures-util-0.3.17.crate 147679 BLAKE2B e29d07117a7285fc52a390821299f55da901573a5d3df6a1845b852488f98b359ef35de0aa3fe05e613dc662247318cf3df5aebcb00149012c6a3ff24c171a57 SHA512 6a87b0510c3f8214ce14b7f333d212558647c523b5eb7da36dfe4f694e0ca4be3cbf97fdd7bfff5e0c7015644742d74d6184221482d644653a106d5564722fba
+DIST getrandom-0.2.3.crate 26261 BLAKE2B 3e52a87b9355f850e07e5080c20e1ab3acfa927bae28c63bb8bfd6a773ad77be96d3ba770c344631cc0f2d9a95aac920790173168b102e25f50480ee96663569 SHA512 e6da64ed529cb0fc000b613f75187ed6b20f716e721d8a02ac2ae39c507fb9f6189ebb66b522d28584eff1e7e9efc274cad6bfe43f464f58053701e1d51c603d
+DIST h2-0.2.7.crate 156989 BLAKE2B 2f75a2f82391c994299e01fae5958dc7e21b78e38b8ade83a0c90698f54d232e6f0068bed88b98314e702bff773e8753c600ecf6b638b5bc1c7e692ef636d289 SHA512 6157bcd335d303246478f45b8740dca687f693dbbb462a0ea9560af12d1fe12a9c680c57c1e7ea0b0842137ee66cde827f273e0faa619db3b6180c5587bd0fc9
+DIST hashbrown-0.11.2.crate 85713 BLAKE2B 402f9f1bdcb92631206f9b72923ee35e28db8623e87469c0f1496664bc7185077013ab3c8aea68268241e5b2504f10cddc613a350abd4291050deda6c112e559 SHA512 c21ca68fd49bbb741901f59fed04cc124b8da99e2a4dfc26e2e5e1140637872b344612a01691bd30cc771575c571be15f756c84dde225441699cd2322af2ad6c
+DIST heck-0.3.3.crate 10260 BLAKE2B dc756738081d855583f239908f671e9b5dde72ebfb577f6387b1a169817a03332464cf67071708a4c4f06b1ecb222118e8c719073ccdec1c0f938e5ef378b13f SHA512 b3498e033f44e03206421e565efec5b21d13107b60d35e4476331c44e6effd75c81f7678f2452c822eefd581209a2ffefd2034779cca2d8b4fac4583bbbf777f
+DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
+DIST http-0.2.4.crate 105489 BLAKE2B 07acee6b91b6a316f3277ad324df6da1d2ac804a409983384d2fc027ab63ed05390278b21867c0096730c91a00b8f8971ab6a66d17b9764f119d245592a1cfb6 SHA512 0b5c609c12ae4020801a184dd6c751919bfd4db985844c55b53368afbe2b9f641cf9aa523ae49a0b25a251cd8f19ed634fa28990d4582cf7a27f10c4304eb465
+DIST http-body-0.3.1.crate 5394 BLAKE2B 9dd7a35cd22d22060762e17f028e9353fd66fcdc81c0fcb2f0361dc7ac86bab18b89ba774f28e2e2b451aebd01a31b01029587a3d119c5a30ff176c203482367 SHA512 0c81b2d8512be3f07d5b08534d2a27424fd6abdf175e9bad9a657b9d95a48e2916c8713bea8de3154520c7ebd097324de246a1d2ca6595f2355e1c93fd9fe6ee
+DIST httparse-1.5.1.crate 26758 BLAKE2B c2f17a601b54032c1898b88feb836ec380465b5305e240d9466760aea85bc709ed873d1677714acba0d493d27fa5f5288931cb7d62f240e50e2d6b84d4e72046 SHA512 70eec6bec5927e272d7cbd09472a14b0f33d153498d5e1894c0853bfd35981c0d249a799c3f4acc01b8499c29519a49d81efb755bdbce124e55f73eb75cf8592
+DIST httpdate-0.3.2.crate 10768 BLAKE2B b435d0a530fcab46496a921a565c3ad8654cb39ea038bc942c8fefab8dee2576e9b157f203b376e80a10690650c1c899eaa29e5af75888c8998b07d5d049fa97 SHA512 5cb56c85aac5acc0e9e2c72fe0913d2faaaaeab10a15c0479407ab779494bd81f8e3fc9675f5990186a34689e841427e83723a87a91a5204ff57188e89be98ea
+DIST hyper-0.13.10.crate 141981 BLAKE2B 8cc13ed7579957040f19a81aa2540d4b9d453737b6e277dc65df648530673a536ba009e8b1d61f61da88dd2613d2fd5ba537271b1105eaa528ba2933cd66c9d7 SHA512 cc7c6b00e1864c44a647fcdbe6e59c7a7574169b787778b1074d102a39e092a80802383d93eb4a6d0f7f5da9449c45e5dcd1e6caf6efb946ddebd687d2c2c10a
+DIST indexmap-1.7.0.crate 50363 BLAKE2B b45318ae2a6e1f008494db77a3159eea3fed4f77eb04ae65599be9392d6ef78d4677b65d04fefab8f917f6808fee821a33bcf53a50b88785fae5ef6848e3a08a SHA512 9b882b4a7068a686acaee0a08bd4f3b35b58d36e786358cf14a3436eb61339649e64f1757331cc7833a2fa364c76eb6b75cf0c732afaeb202113de1e66b72ab9
+DIST iovec-0.1.4.crate 8720 BLAKE2B aa1b4cd98ebe47901c0959cf1d8eb2586a803d0453e2a8bdd5c63442b32886dbcb37650aa218c748fd45c9fe3a7fdf20569eae5b19716487b139caae1526da4c SHA512 e23fcaac239807daea20ddcf2cdd4fb858ba1aa970ce6248f70f0fba5bff7ebdb27247c0997ac0ff2791178f86ff9657e473d8f64b86c644763e5b3474edd158
+DIST itoa-0.4.8.crate 11926 BLAKE2B e5a648b490908d0ffa3a0832342ad11264eb4357939bb39aad014aed3938bb60e82703b7e31929a458525061e9bc40539d33753bdbd722a03b6804e57dd1f70c SHA512 6911d269ff3ed7350e4f0dcfc6e9e0d70e25833e1e7cfcc57d5b8aff1f47b8be4f2e9baf1b92e5517cff63492be489b6d29b48dd9bb642e428acaa431216b68e
+DIST kernel32-sys-0.2.2.crate 24537 BLAKE2B dfc4a1e31d3ec9e2ac62b890839919fb7fed1444070c1dcd75bb75acfb53556d6cf2eddf5a6639e7852a3df2a0cc715c5ce1d3fc898ef16a1687020d98f715bc SHA512 682bc7c629aefd035966a2873518fd60719121cca7d63d89d6c97ff5306f24d8b5055a3c91b4eedaec22b1d5dd3fb8b48ff7341a05bbd72d86e06c422dab473b
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST libc-0.2.102.crate 537138 BLAKE2B 2814792c4215555d5a33d4e3d21f2c78e1d9c87b3e1884d7fffa512aaed0737ed2329db6298fc074d477abfdc02f5bd30ec485f3fa7afe7d7a3e608453985c63 SHA512 cec681043b9c279e25ffbfdf2aeffe2a5fe057a8187fc2c986aca9a3fc900eac96ae3134632b124f1aaae4e5d2ecbc7122aeb40d94f83b5ec075769ede361643
+DIST log-0.4.14.crate 34582 BLAKE2B ddfba35947ae1f5905cd9ecb9eb862a78af6f00ee8b8fe6258b369b140928fe677a02b1b3ca5bdec36ff2b16abd85a9f49688fd5f3d1ba2b2905e7f96b8a84c1 SHA512 796100167663d85a7bc4244cd305e9b3f0a1b1520764b63464698eb136318d0928c40c16f5d19d9f602a5bf769851275bbd48d66b088b0c37be7a6fb62def7cc
+DIST memchr-2.4.1.crate 64977 BLAKE2B 31479718c118093b684bed946eae0706d77d9d275bd49f5aeff4de490f479abd60c7dc462150eafffc6d6fc1da0853123b78be038826b775d2a41a4c39d93ab5 SHA512 d8912e3902a2126f86159bdc998532a2890b882cbb7d59b5a470fffcad4c32281e045f2fff48a235aa4189f1928866bf3d33b699d50866ad6b6c272bba7adb11
+DIST mio-0.6.23.crate 103554 BLAKE2B 1286ea6deb7579964a5c15926509d438c5454d4f56e936753c76927826fbc5444dbe33b7465a15d0ae6c122bcc98899959391a5418bff31c176d51d7b2f33077 SHA512 ea95d15072fe36524a85b50108415a809d7ea3744deee45e4b6a1b763a11c88cda6dbabe4f8d01945a5edeb52296a74fcf457c85be3032c1311a35025860d05c
+DIST mio-uds-0.6.8.crate 11496 BLAKE2B e52d131f292c7c09fa116ec5c760d50e8389c27fd7b79a4418f0222ae124fba0e5943b5494866e9db75407ab9f6b1a9c7aa7fdf2c4d601e8c785dacd8166f6da SHA512 b6c752ae9f25c37fc7e23e06a8843089c5291d60e53a6e9093eed1d8baf64c9e0ff14bb2ea1c0c8815b00026b28fefab2aa34104bdbce7e99549786d0f507a73
+DIST miow-0.2.2.crate 22044 BLAKE2B bec3bbd899a080e5c97a8c1dd9dead16a57aa44cf2bcd97be03155c28345c45fb731650eabffd2fe18a633ff947e63561327cfc86560ee86c3fa71ad4d2a3b62 SHA512 e42012f67e1c5a475d1c9790bc731add53f7a3838d36f8a701f69974c3ff33d31364006220e69c8f37bae2eb31055ee704c42b64241d13be528c768ca5c3d6ba
+DIST net2-0.2.37.crate 21311 BLAKE2B 21cef5df92d5d51c8e23c57ad2225e3311c13083fb86830bcb313965eb5ad0170519bed9a47cefb2305d3614ce55e11896a06437cf9ca50c79b7843ea633e99f SHA512 9ae70c655468c3e35ce05988626e0398a3cdf7b7343c08aaecf1267bb958329e608b814cc7be252fe085de3cf6913a1c72aad206c677459469ba4886c20206ec
+DIST num-traits-0.2.14.crate 45476 BLAKE2B ae310d9d5640acc3e45e1e5d1d2f519539795922c0058ee940c94c94b6654b39358b7c18dd23a276f2c1b16a30dd4de4cbc8575bcda6a5c11e70665d670e6439 SHA512 c3028eca9f7b718de0db3a36cf3e462bdba43562d52c9b809ed4cc0aa6af403aea542d6d4da743cd1dd541397815a3c5a84cef4d6e40122994e4be6a62319b2e
+DIST once_cell-1.8.0.crate 28925 BLAKE2B 7681b1a7497b5711e663773c1a7e076f333c06c10d3f289079a781c36f050c1620cc279742ea8e5b15ec48f3d6038a6079bbda7fee3ae8e1128bd916d53ed43a SHA512 88e55c9433225ce85a08353168c87fca2237615482160a5c28f3ac17f06d48c63e0c21b5f7ef81f82ca133436e371802ea099453844f1c111003bcb6ba89e827
+DIST openssl-0.10.36.crate 206367 BLAKE2B d059480338da28c1e6707db85127bdd4721e931f74bf27d2c8f80315c43cf9c37a977740b9d799a03bb59a1fdf26fc1fd9ef11319863b63ac7b6ba3ddc2c1385 SHA512 bf215f7ccfe24b3f490d516541ac746785853dc61ab6cf023e303275578c206fcb14b6e5001f36de2f71b0a8c48ccb26f4f343c5b88ae38ad2cba12ccc941641
+DIST openssl-probe-0.1.4.crate 7066 BLAKE2B 656434ec1d34466e903e5c69289a277d14623aa7bd8a7c19bea974c7de57fcec9b2b4ed212f37d7f7b90fbf02a486a8ac7f7c318cfb3b3930e54e276103154b9 SHA512 c5d4ffcc6faf009b38dc715ec85fd75b3e3b0c0293041ea26071bb6d19d8d018a43ec166bf79ef1c7a126cf783bd4a7121d5dfcbed36db5ebf0fe4decb198f17
+DIST openssl-src-111.16.0+1.1.1l.crate 5095644 BLAKE2B 5c0f1e5348d283355a61d2479dbef138de71cbc459f406bb6765923fd15b7a47e529567e1f10fddf56f3c6d9d1dd9358b671adb465b4f9dad3b7382a6c4df1c6 SHA512 de5723f7745fc3d445856a7e8afa0e1053afeb63d11a13973c772ff94eec9d09a69a593d24d1de0cba289eccd14a079683af554ce5752ea32e7e76c40fe78cf2
+DIST openssl-sys-0.9.66.crate 54599 BLAKE2B 5c03c5e4a524a518885a68a7d7c9fefc0d6cb97e35368bfa49898cf5a97fdce0ce34047bc7e7ba5aff3430b51b3b546bac1bbdddb743bea1bab877df684fc1e4 SHA512 ab2d39a766df694f3985d67495d4e820bd196987571fbc229c003f441fe61bdc1aab9cd35a83ec3be9518d2b4e463f33f19bb109e9297a2d4114fe2d1d932a59
+DIST pin-project-1.0.8.crate 54991 BLAKE2B 27ee86530b313e3514950e5f072367875fff4961e0f3ff635acaa3be08e0cf1b60aa96ff782651e25d1aee9abb4351262fad02ce5f90972a5188ca1b8ba30fe8 SHA512 7a838ad361025b22cfd6ef0ae600b100e673b537d499ce8cde9728520eaec11a68edc8c65e3a1532ffe8cc1efad1d7aac7d8e9f82372cc5a18a3deaeea189dbe
+DIST pin-project-internal-1.0.8.crate 27941 BLAKE2B 74992114d7d582282a92334d2b88f6c50083dcefc1bd62f5cfc588d5255ecbbdd8a2764a4d877051af0258ff9ae37d503e021d27f2a35ca497bfc11a12317ae4 SHA512 9bd11fbb60e3cb99d81eee590b4672d2c2616825e5aa99e01c6b310e5c6651b9e7f6097db0975542746ddf4c455f090f450ec7a588dad4031bb5d09dd91d11cd
+DIST pin-project-lite-0.1.12.crate 16854 BLAKE2B 48ecd648fd7a7694a48144e9e3f05a3e2878e52a5e5ecf2c6cc2cdc556957282bbaa3bb04f6418cbcfb254cceab5a0bca92173cf293db5cfc9c9589ec1597543 SHA512 4285eb45548b1827b54890162c68698e50d3747eba7b4c1c75a8104124846bc745a40d9acce18115bd06993d7d8f11232168e5e6f4159d3d273ff800706e5bc4
+DIST pin-project-lite-0.2.7.crate 27212 BLAKE2B 71997c66fe24bbded0030acf9d460c8ecdd07f7a047007413ad5daee06ade30ce487e7f921d610f9e0bc7aa036391f6c595493d9b7d95c17e9195f5a2b23441a SHA512 c948201981269f6f54da069470c56c5b9c4c6f52e349dc7970ad828d412facfbb66a09745c0565b4320fbfd1aa7983f3664604f7ade37a30cf25ce253afe8749
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST pkg-config-0.3.19.crate 15451 BLAKE2B dc23b5ef12719b4b3d2fc5c93c087399ba954a5e127be91b26619466d5d7422e71684d02905304dca65273d69b66338d94c0642e3810a14df845ef507ddc0bfb SHA512 42bc13c4e39c8f71690db527d815884acdfd2ccf5fbfea700c6ed60257e852cdcb1c443e7774409e51da53612b0ff0aa165554b99fd0cba973f94a8df52982d9
+DIST ppv-lite86-0.2.10.crate 20915 BLAKE2B 83a075381c24b2b89f5266929f5672ce051c3781c1a199252738dadbf471618c8b87452ce84e1cd87a9eac11b44107002894f544091210cc7e77bf52c045288e SHA512 c9941052e504b9b310024064026e4b1d540dd877705ef450a833d9ff6dee70ba874cdad68c46381a71d5b54482cd80b3dbb8e0c225758fd339069031a55195f1
+DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
+DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
+DIST proc-macro2-1.0.29.crate 38772 BLAKE2B 742c2602afc4beddc96b688d105fd93b1dbdb3cfced724aaf542e97120d374d334e90cfbf02ab62741dd052a272dc583b7d2e1992da3d1b8ff260414c65ac89e SHA512 b3b3b7c6988afeb92209c7e0362f45f9c207611a74bb63bc7746b86fb9ab0d74fea9e7a2d9bc8ac943225ea439540726ffc13711dc5bcb056c1821fc99e8dc63
+DIST quote-1.0.9.crate 25042 BLAKE2B 26ef31e89fd2f0cc21ff65f8072f30c7977ac634d2536cf9845a0894d6659f62a96cd0a6ee48f7706036c2c1b898ef8c9167bd62714ad0c9cba4fb02f30922af SHA512 dd6cdaea183b85400531ef01e56657edbec0d8f7c27898c1e591b72dff755fa5875b33ca320bd65be0e9aecfc6a61ec119a4bd1291e9f2057fca642ab5b198c8
+DIST rand-0.8.4.crate 87406 BLAKE2B c09358416d2425a8243b623346fe71bf6f03fddab1a23fc752f4303ba7c241b3606629e4edf0ea720785bda0bca534acd675c2de079b78eac3df24a1ad6ba654 SHA512 77ae0e988e31e12f7d3f2c40814f930eecbc94c4aced827c337be78eeeabf39fde2dc5c4fda059afdc01285ff4afe30393c32694377de004feff16207606558e
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.3.crate 21938 BLAKE2B 7c73e2da6d423c68dbbca31f6528bdb3f42fa39b30d0951ca7058e05ce16ef09ef5e047697b33ec17720314f934512c0907aeb892df93d63abd8b63eda2b50a7 SHA512 0fc31f96ca8ebba8c179367de01458e909265e1d627ec0c5620be7c8e83d2f9570471d6ec2cb2bc4bc531505b02fc31f1165708cc1357906791c87123b06ee87
+DIST rand_hc-0.3.1.crate 11891 BLAKE2B b3aa810638390eea4245ebb711de88ccdc2a64350a5c6e14064fea7685d49746b4b77215dbb8374fa7a6cbc2cfd79fb553513d6e551acf64586d8303f7d4f3a0 SHA512 582bb44b81c27e698eb57c6f06444b8a7c9d3f7ee73f4e14be8004c4bfd3bbfd9795c69f7294b5e87107e86b90fa3e91ad080964474af81c92705d356e43fbb5
+DIST redox_syscall-0.2.10.crate 23582 BLAKE2B 7253dd96415e7b70df488c208d86c250c670b1245ac6573a59085faabbde9e33fabfacd233e7d737e365493db14008c180274b41ea0a4af5f6f98eec666a873f SHA512 ef012eb4bffe32119e50ecdbef4cc31f6e84a344e94f026484fe4e2c904f94053a8b6249fb6bd8ada31b3ecfbf0096085283bb68aeb62b1b01b57f35794aee92
+DIST remove_dir_all-0.5.3.crate 9184 BLAKE2B ab7ef94e0230ddc9b363f038254a180881bbc20eb04a254f97e6f71ed491c99ba1c88f5e85632d450243882a4a0df63f3b8b183bc1fbca9caf30ec23d577b1d7 SHA512 50417d6d8a33912193a1ed37eb72b47431b12ae65d2780cdb7080c3d141e63819da13751c3fb737685cea322f70b36d413389c3dc01aa12b4dce615aefed0e2c
+DIST rust-native-tls-255dd5493b446755a9e40be3a4638afedfe67b03.crate 36375 BLAKE2B da5f3fbaa20533aa71d601e615fbb1f84f042371dbeff262719626d33f836768016317330f5c8332023c93cf9dab6e4f3694b6440b3b2e83f1f5fce541e9fa01 SHA512 454e57651aec1af76eab6c80339233479c2c6b815a82ad76927ebe25060c9f23cb5239bda623a2594a0d7cb4b831e75909f36ae63b34ea8741102e84065b5c85
+DIST schannel-0.1.19.crate 42755 BLAKE2B 11503202bb6c8fdff3cc716558a5c00ca7497f7aaa4890d332084754e0d1e1013719d5bd744d8aa12b8b042401f4828fda8453c104d5feeb9b437d7cc51b5273 SHA512 319d9931cdeaa0f6b50c46e413fed2b6e97b28fe8c4825d4e5ed0fe22083e686e124117bfab7c89bcce815a31a3478f8c230cdedae6a852a31719a0df34645b0
+DIST security-framework-0.3.4.crate 48568 BLAKE2B 2502bbd48ad17114fba8cd88f9f8f2416856a7340e27c8271d70ecaeebe2b4f5dadc56e8222d1a5451bbd601581c7864211cce7987901a0c0ff805d8c983df5a SHA512 4c23e76834c0a2d013a2785030a8ce85658bbb144318eede6ea790029f8cc848045aa69f3ce8895eb2eb6708a50cf62a5dffb908d5fc5eee53bc203f9cf8ae46
+DIST security-framework-sys-0.3.3.crate 9554 BLAKE2B 851c1c7e7d972b9f74d7278fc501c3894ffa0fea31954fdd2ef5e070c28c080cce04d35acfbdec9871c4544b218ad420ebd42bf6f426142046d805ea99dadc27 SHA512 a78a9affbdff5c44e63e555970748724a4cf1fb1e47a6a5645294f70b2c0960d3ef93d3289c3695d5de31c8f7a9b093e3ffb801a1631b474b5ac68e0b68bfe22
+DIST signal-hook-registry-1.4.0.crate 17912 BLAKE2B c50ade90e580e5f009832d812299b33529e53f68e6f1b7f5f9b5ac9ee0de502825c7bbd66199a65d4494152809eaf3dcfb676152c5b4f66c7a38b33551fcdd30 SHA512 b564379e5df1061739734179a69897badf9e2e6b469e091954428b05c3c7143885396df4bd008d77e08dae53729d2267d50fc8563121b086e25d8a5adabf6d6d
+DIST simple_logger-1.13.0.crate 8051 BLAKE2B c2d3280901c17f79826e6a56bf5411b52c576c75a71fca7205d69d32bfd194152adbabe0bdd5467e33612ceb4bad8b87ce45fd2840375f373509d3609f54c020 SHA512 f6dbb74a5d25895189092e567784daca9e0b4cb48a527a400b4c2ccfeed7ffcdd3f00719e8d084f82390971567b4c280bfc3c47db2356331c0107fbaef941b8c
+DIST slab-0.4.4.crate 15725 BLAKE2B 54f3d5e4e76aee03d52f25e2927c03c10d89fb7ff62d83ba6f56003daf8a98e63ec220f564107f3282e96bdf3bd525b68e71511ba367db2550d3aed18b4bc59d SHA512 a8232c85d9693c2a417201768a5b2ecd82e3a721fee39ec80e44c769c66f8cb3ddf00a157f376ebe4c168082550ec48e63af23de2da4f30ed343b4e3bd13c3d1
+DIST socket2-0.3.19.crate 33782 BLAKE2B 1ab3c61a439c1594e19c4a14958d0a85b54666532d16eaa9a1e40e586b7707b1c7b5a751fb373f16bcc26510abc25e0321808e721c0b33b7b04416b9f6cbc5bb SHA512 113d902ca0b966bc0bcad71e3b7d715c79cd075d9dd7fc4140a042bac91b3ce692fb0f1fd0216fa3f6286920b4a92e1a4c342d7ae8d1d98ded36e7480ddafec9
+DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
+DIST structopt-0.3.23.crate 52029 BLAKE2B ad87f3d2da5a4a972b2ed0dbd49830038ab6b46243561cabcbc06013d7088e7a44acf1a29137af11a53ee8720aa8cd69cd7200a388b0ec626a0c513b6390ce2f SHA512 6f6cb5e2ecb7bc2e1e7c58d98e3e9f54dd4ff4698d22aa32e2fe7ab6c51a8e9e8c418260321a3f4aaae1808a68eebcc40f619de28433949aa846c27f06ff5cef
+DIST structopt-derive-0.4.16.crate 20996 BLAKE2B 3410095fd88bafba6d08d0aacdca295cf86f4d8f028103934c03cb16da334955c1334039d000ef7eed471eb8020046c56cafb00dbc7713ecc1f76585cdc6f22f SHA512 11c5fa7a0fdc35a02fba22c940260a4a5bb26ec431d92e032789731afd97576cfe63c988ca614747ac477433cad640c972b48f5c90cb9893be28ffc9774c247c
+DIST syn-1.0.76.crate 233723 BLAKE2B 99b781b6ffa926ca71d0a09ae81dacfc6ee713e15fd057232e527761b73f088c30967eb13d624bdf34a089c5a33fa28ecf6ca069e3dfd7061932643849243967 SHA512 0f32138d219ca74fcff1ee5ee5bb89f965a30b74c10a040bd8361332cb84900322194dd85ad7571c4bce72c1f66368546db5881165939800f2587b15ce07298a
+DIST tempfile-3.2.0.crate 25892 BLAKE2B ea6870c642c5712c7c96072a5d3dc04d75c19cf1413081e3bf53c1ae6c75e05ab537446071cadb5460b34f7fb7715a03005a1335a64139458db938c3415f7c0d SHA512 56d1c5af7cb6863f9eac990354126979534aae7bf298bc8b1c918c7317ce2ba31f53089aaa1ecf8baa4a39d4111d74f4450be82b509b3c2aa0428880029e663a
+DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
+DIST tokio-0.2.25.crate 413390 BLAKE2B 3fc36579030bac46a733bbb061088eee56e9a172241f74d744de972065507db14202a0533a5d231bbba495404c16b5d6bec0d11ebb11e258ff0273b47b2f7d90 SHA512 19b8d46a81230be0a06d6354c2775b20fe0c108b4c504f5fe798952bf84f8ecfd9fd149ba899ee67a1158e1b0ea9eab49f6249a655eb0ab1cf418c0097b30705
+DIST tokio-macros-0.2.6.crate 6460 BLAKE2B 239493963b5fb28eb9ea7dd568576db4d38c7e6b8ead4d072862891ca5aa096a8ae61481f3cc256d1bba2a2ae9a62660a8a0ac3a1b0408cf33f4b204a252d095 SHA512 1e3f7f42dcece16d8785e500816768ecdef944b0297bea9ca215c15aadf1dc89030061cd4ac01fc9d3c32ee83c6471dccbf7e99ff8f2385853e831e08954a51f
+DIST tokio-tls-0.3.1.crate 22517 BLAKE2B 05be1ca4abb345fc859677bb1b4e49064324ef7858c5bff7301b4a5110e4a6339857f5d85037bbd66b433a3c2439eb3c15edc63648fe04df2da9bfe1c93b8e08 SHA512 46ac00d839415a8dc9d9709967414e3812606a23c2c1e0e9dc9aa6aff70b24afb44e4c5a231d0d857ea8d06d07c254c97a459713122006cf1afbc6d4f7b7b6dd
+DIST tokio-util-0.3.1.crate 27233 BLAKE2B 96e43dd3f6f6209a6436e6ef3a40739f44507312b02a83f0316c7500dd6a59b5a71af005a98818d9b1db0e33aed4a9330e4cf955855925c8a428132762985db2 SHA512 301a5d9a8a9537653e17d3360dc27d41c95aa28bcda3e0815923dca0ac735071b01b9fc8c1d53e826e0cd1e6e5f98cc233f1e9dea906ba06c6b5192608ae7ae8
+DIST tower-service-0.3.1.crate 6299 BLAKE2B f56562faebe3a933f39f8e2093af65378bd307c59f9695408510ea9ca2230c68228c6726a0a2c7c42943002837dd9d86ce0a1d4b7849ba5c61df28df7632d909 SHA512 d23f9db2d6632f561970b55eaeaac22a20c8b9af18931cd564db193688eb2a2973127b440e175cfd7358f3d0ead53f7a759e34b7b86c293751079af9c2181ba7
+DIST tracing-0.1.28.crate 71369 BLAKE2B b583ef29cbd83e843794a3cf73d27999dcf085854dadff4539b08db98b401bcda67676ad0b3392045b5b1fcf85553090c138c3a475ccfefac2dac417e3e29836 SHA512 2dd9909d35f2147493e628b94bba6a1fc9a5b1557ff06d582174f71a36717393f4a6c19dbb9af5bfd5d64841d419a9db61a6fe3e81f64c0533a06379bdc931b3
+DIST tracing-core-0.1.20.crate 50446 BLAKE2B 7c665c7607d4c9f873194d0d8dd37ae84a7ac9ac424b85332669bbd4bac60274f27041199fb67fae6b8153ed09e04fd99e09e239de98846697a46a6c509fe0ec SHA512 bbf9c0802e04bf5e2fd192af7e00b2807319661212e88dae9ef4284886c34fc58ce6e9b17e77522e108b2c38f47357bed220e1832fcc6b464e0bec059b57b388
+DIST tracing-futures-0.2.5.crate 11637 BLAKE2B 2b23233705674cadf5dc8092d3990f375e780de2b9bdfcbfdd5f4bc9bd0f15a14c6bc8e36963bcd332e729b33b90ecd10b2250495e0657eaeb302e666313534e SHA512 8a437a029e18dcac3a3be7a3355a63e75432ff892316c9f2929c7557e3895b1bb5efb59a7588372bd9efc386b5cab54c2b382be99ef8fa643e66ae5656e506bb
+DIST try-lock-0.2.3.crate 4158 BLAKE2B d8bb2fd8ba10285871ac3dee069474d4225e312c0a13b6bc238604c5207fe33437541abfdb507a6b400fc3359b78d39a7e9a5bebca426692b5dab4622b09c192 SHA512 ebae7ba9227e6fc20499b48ab85169943765342d4790bb4a31ac33a2be0af9401e2854c8e00b9d3b7e225d16875c90700b1c3fa99af07833d3b7a91b7a414fc3
+DIST unbound-telemetry-0.1.0_pre20210920.tar.gz 53698 BLAKE2B 5bfeda0c74836c4ed9b9723d37e31ad9a9fd8a9a81a229bbee67f4d925e62e0f7d520f57c0d5712f285df5ad99e2d34125fe2ff446ef8eb3aa7216e7469989f2 SHA512 160f13e5ea8bb4750d18e3e22cff38a47d9f01397bcf9364da68ffed2f6f864679bd36b54d6264cbedcb31d25f9b52da9e9ca5195f6d1723aef9d767f5fe702a
+DIST unicode-segmentation-1.8.0.crate 94011 BLAKE2B 33440cedd5b51bd6075c9c75541bb8dcc16037b1c937ca72962f6c46be71a30850ab8e8a144d8b7548e5a91c78d551e7bbab5f26a713f1df0311d15f11299af9 SHA512 f0779ec42907b665df53f38ea370e661f10e7c72a75917f4cbd055868428c0eac1c7fc194d4bbf048e00f0f3d3e2b3602ae88d7820ad0c73e94a5228b61f6495
+DIST unicode-width-0.1.9.crate 16745 BLAKE2B 38d4b92e47a284d6881a8073089be59a73d82b91efe5522f55be977f95f479890b6c02cd519544729f1b1e62eb21bcfff8c5f5382917f953603b760e39cf1ea7 SHA512 0f5ec46c57e3b5e50cb8430c89db8d9c129e80ca11a9c398b5312bfe95001e19ca3efbfeb01c3ac09c4ce7e26c6ee1f352f7e114ecef78cefd68c54d2d50f5f4
+DIST unicode-xid-0.2.2.crate 14955 BLAKE2B 6c6da49ac08dbd8b3248272224d6bff96b9cd1f36029b1937a58a0b929c3a48326053305ed49e73edd70f572f5abbc4817cedc899c69e3457805ad056669f6af SHA512 92ffd0dd34e3ca235ecf110b38c447d3ec1faa23d76c112457f28d432f92fa6b5f428bc5e1bfd278f361f55426dd96e19ecb0d3eff6cf250892f069c52bd89a8
+DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172
+DIST vec_map-0.8.2.crate 14466 BLAKE2B 8f109fbff19604b82ea2aa61c952e2ce9b5597ccc8e1ef4e847648e2de08dece8c4debe92889edeccb8d393645fd0b62436b49d236ded7ad181c4a51239a9539 SHA512 4f1ef59bc2c437e79f1f84fe021bce5aa8ccd581f500f3d5776913d5f17d45b03ccee64f5bd03d47656318cfc9344a1f4311079d471fa409a8e4e94c143973f9
+DIST version_check-0.9.3.crate 12547 BLAKE2B 85761c300a8d755e0b376191ef0604728ae641261fdb10682a3134a828eadc4a33216426d286bcdbd8d0c5fcfe6ca8ba20ed078c4f53066b959739a0e73daec0 SHA512 4b3b428214a0322af536a18e6f050438398766af6589389f20a804121a6721962ba411e2dcfded60aaa74313128fb0e831bea31378e2695c29b29bdc24d7cbfd
+DIST want-0.3.0.crate 6550 BLAKE2B d97ac51dd5e49bec27cd196711110679013bb7aca520235db3f38c7d4399a2a17b9cf599cd0811137df957f2341e75442d48483dc7aed6910f0eed7a78ddad37 SHA512 7e7af8ddcc6faed3e3d18384a000339617187b74b0adf111a02bc15fdb152c88007844d6fe6f35a47a13f3384a19ee4723b884623de7d45c6619d76aa6699404
+DIST wasi-0.10.2+wasi-snapshot-preview1.crate 27505 BLAKE2B 4eb8644b945633d6e856ad80dd74990be19eb6af99823b147163384f61d471e2d9ec054d78a7064072344be53783e57073e8fffc6d5555c149b4834a9bf31dba SHA512 06977a294d76369a3867c45abdd8a87ea5c84e5a3681075ba0d14af1aee3114ff24495c7e7f7fe1e6e42230e65fba0e062898e69bc89e0209af62c2d14094ec7
+DIST winapi-0.2.8.crate 455145 BLAKE2B 50f3c2a0cf4eeedd6891b11392e520c1cca139a71f8f736eabaf43aa7e4b1b5d57697918978220459572d373940edf971eb8302f292cbff832283e905076319a SHA512 115e6f027cdd4a56f77ca24f4ab249d2a6cac1e1f955c826a9b6ee05db4861790a533f5e674aebbb540370fff52ed41618c2cd7c906e73200e92df213109cebe
+DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
+DIST winapi-build-0.1.1.crate 669 BLAKE2B 6c8d8e0f81574c086f06fb3f234b0e6759d293d1d254857c3d491e4d43279e5c2f57f2fcfdc9d5d7b083280f4cc2a75a6ee9bc1541ec6ce8f8d904ded0567faf SHA512 8b0a239e205a5368892f41c870a8a7ea16e3468c364b03382bef7fa3a2e7159b09c07661e95b1227578f6d72c14879daa4444b28c51ae20ef15d985d59ca5a77
+DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST ws2_32-sys-0.2.1.crate 4697 BLAKE2B 52a7a3f57bcd73156730ada4d78fe12a54a498c9064e0928e09de13a95bd9237f884538e5f9368b47a7ac3c425f0f798c26bad85f20bed4ea26c2fa16c779b97 SHA512 18356861fc595efe7d0180afb8ce7649da35a4f9ba456271d2068679ab258a861af32a2e016e241fbfbf5f6ef0eb33127b26eabfc11428af39506538faa4821f
diff --git a/app-metrics/unbound-telemetry/files/confd b/app-metrics/unbound-telemetry/files/confd
new file mode 100644
index 000000000000..f57920bf5bce
--- /dev/null
+++ b/app-metrics/unbound-telemetry/files/confd
@@ -0,0 +1,7 @@
+# /etc/conf.d/unbound-telemetry: Configuration file for unbound-telemetry daemon
+
+# the args to pass to the unbound-telemetry daemon (see unbound-telemetry --help)
+unbound_telemetry_args="tcp"
+
+# example for UNIX socket (unbound needs to be set up accordingly)
+#unbound_telemetry_args="uds --bind=127.0.0.1:9167 --control-interface=/run/unbound/remote-control"
diff --git a/app-metrics/unbound-telemetry/files/initd b/app-metrics/unbound-telemetry/files/initd
new file mode 100644
index 000000000000..e4ad1684f6d6
--- /dev/null
+++ b/app-metrics/unbound-telemetry/files/initd
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+# Copyright 2021 Sony Interactive Entertainment LLC
+# Distributed under the terms of the GNU General Public License v2
+
+name="unbound-telemetry daemon"
+description="Prometheus exporter for Unbound DNS resolver"
+command=/usr/bin/unbound-telemetry
+command_args="${unbound_telemetry_args}"
+command_user="unbound-telemetry:unbound-telemetry"
+
+supervisor=supervise-daemon
+output_logger="logger -p daemon.info -t ${RC_SVCNAME}.stdout --"
+error_logger="logger -p daemon.err -t ${RC_SVCNAME}.error --"
+
+depend() {
+ use unbound
+}
diff --git a/app-metrics/unbound-telemetry/metadata.xml b/app-metrics/unbound-telemetry/metadata.xml
new file mode 100644
index 000000000000..56e379f48d61
--- /dev/null
+++ b/app-metrics/unbound-telemetry/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/app-metrics/unbound-telemetry/unbound-telemetry-0.1.0_pre20210920-r1.ebuild b/app-metrics/unbound-telemetry/unbound-telemetry-0.1.0_pre20210920-r1.ebuild
new file mode 100644
index 000000000000..2c009a021830
--- /dev/null
+++ b/app-metrics/unbound-telemetry/unbound-telemetry-0.1.0_pre20210920-r1.ebuild
@@ -0,0 +1,159 @@
+# Copyright 2017-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+[[ ${PV} == *_pre???????? ]] && \
+ COMMIT="19e53b05828a43b7062b67a9cc6c84836ca26439"
+
+ CRATES="
+ ansi_term@0.11.0
+ approx@0.5.0
+ async-trait@0.1.51
+ atty@0.2.14
+ autocfg@1.0.1
+ bitflags@1.3.2
+ bytes@0.5.6
+ bytes@1.1.0
+ cc@1.0.70
+ cfg-if@0.1.10
+ cfg-if@1.0.0
+ claim@0.5.0
+ clap@2.33.3
+ core-foundation@0.6.4
+ core-foundation-sys@0.6.2
+ domain@0.6.1
+ dtoa@0.4.8
+ fnv@1.0.7
+ foreign-types@0.3.2
+ foreign-types-shared@0.1.1
+ fuchsia-zircon@0.3.3
+ fuchsia-zircon-sys@0.3.3
+ futures-channel@0.3.17
+ futures-core@0.3.17
+ futures-sink@0.3.17
+ futures-task@0.3.17
+ futures-util@0.3.17
+ getrandom@0.2.3
+ h2@0.2.7
+ hashbrown@0.11.2
+ heck@0.3.3
+ hermit-abi@0.1.19
+ http@0.2.4
+ http-body@0.3.1
+ httparse@1.5.1
+ httpdate@0.3.2
+ hyper@0.13.10
+ indexmap@1.7.0
+ iovec@0.1.4
+ itoa@0.4.8
+ kernel32-sys@0.2.2
+ lazy_static@1.4.0
+ libc@0.2.102
+ log@0.4.14
+ memchr@2.4.1
+ mio@0.6.23
+ mio-uds@0.6.8
+ miow@0.2.2
+ net2@0.2.37
+ num-traits@0.2.14
+ once_cell@1.8.0
+ openssl@0.10.36
+ openssl-probe@0.1.4
+ openssl-sys@0.9.66
+ openssl-src@111.16.0+1.1.1l
+ pin-project@1.0.8
+ pin-project-internal@1.0.8
+ pin-project-lite@0.1.12
+ pin-project-lite@0.2.7
+ pin-utils@0.1.0
+ pkg-config@0.3.19
+ ppv-lite86@0.2.10
+ proc-macro-error@1.0.4
+ proc-macro-error-attr@1.0.4
+ proc-macro2@1.0.29
+ quote@1.0.9
+ rand@0.8.4
+ rand_chacha@0.3.1
+ rand_core@0.6.3
+ rand_hc@0.3.1
+ redox_syscall@0.2.10
+ remove_dir_all@0.5.3
+ schannel@0.1.19
+ security-framework@0.3.4
+ security-framework-sys@0.3.3
+ signal-hook-registry@1.4.0
+ simple_logger@1.13.0
+ slab@0.4.4
+ socket2@0.3.19
+ strsim@0.8.0
+ structopt@0.3.23
+ structopt-derive@0.4.16
+ syn@1.0.76
+ tempfile@3.2.0
+ textwrap@0.11.0
+ tokio@0.2.25
+ tokio-macros@0.2.6
+ tokio-tls@0.3.1
+ tokio-util@0.3.1
+ tower-service@0.3.1
+ tracing@0.1.28
+ tracing-core@0.1.20
+ tracing-futures@0.2.5
+ try-lock@0.2.3
+ unicode-segmentation@1.8.0
+ unicode-width@0.1.9
+ unicode-xid@0.2.2
+ vcpkg@0.2.15
+ vec_map@0.8.2
+ version_check@0.9.3
+ want@0.3.0
+ wasi@0.10.2+wasi-snapshot-preview1
+ winapi@0.2.8
+ winapi@0.3.9
+ winapi-build@0.1.1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ ws2_32-sys@0.2.1
+"
+
+inherit cargo
+
+RUST_NATIVE_TLS_COMMIT="255dd5493b446755a9e40be3a4638afedfe67b03"
+DESCRIPTION="Prometheus exporter for Unbound DNS resolver"
+HOMEPAGE="https://github.com/svartalf/unbound-telemetry"
+SRC_URI="
+ https://github.com/svartalf/unbound-telemetry/archive/${COMMIT:-${PV}}.tar.gz -> ${P}.tar.gz
+ ${CARGO_CRATE_URIS}
+ https://github.com/Goirad/rust-native-tls/archive/${RUST_NATIVE_TLS_COMMIT}.tar.gz -> rust-native-tls-${RUST_NATIVE_TLS_COMMIT}.crate
+"
+S="${WORKDIR}/${PN}-${COMMIT:-${PV}}"
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unlicense"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ acct-group/unbound-telemetry
+ acct-user/unbound-telemetry
+"
+
+DOCS=(
+ README.md
+)
+
+src_prepare() {
+ # Ensure Cargo is satisfied with the manually downloaded rust-native-tls
+ # Upstream use a fork *and* a certain branch
+ sed -i -e '/pkcs8/d' Cargo.toml || die
+
+ default
+}
+
+src_install() {
+ cargo_src_install
+
+ dodoc "${DOCS[@]}"
+ newinitd "${FILESDIR}/initd" "${PN}"
+ newconfd "${FILESDIR}/confd" "${PN}"
+}