summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-misc/beep')
-rw-r--r--app-misc/beep/Manifest3
-rw-r--r--app-misc/beep/beep-1.3-r3.ebuild37
-rw-r--r--app-misc/beep/beep-1.4.12.ebuild46
-rw-r--r--app-misc/beep/beep-1.4.9-r1.ebuild57
-rw-r--r--app-misc/beep/files/beep-1.3-CVE-2018-0492.patch106
-rw-r--r--app-misc/beep/files/beep-1.3-Makefile.patch26
-rw-r--r--app-misc/beep/metadata.xml13
7 files changed, 113 insertions, 175 deletions
diff --git a/app-misc/beep/Manifest b/app-misc/beep/Manifest
index 39eda21e98a6..a8a624692527 100644
--- a/app-misc/beep/Manifest
+++ b/app-misc/beep/Manifest
@@ -1 +1,2 @@
-DIST beep-1.3.tar.gz 19344 BLAKE2B 4f9cf12f6983eeb53502fd85e5e1d428e1c1af481f8f424f6ae18cbe104462e8fdcc96670a72daa8a8a0d1430d00824d8795b4db53437e7bb7320cddfd84cfd3 SHA512 3f71146202208fa0c0cda360d125dd972ea003cf8cd62da21d67eb544c92f7b82640e7ce7c3835cbc65c75909a882edfa54dbd8d8b748d6f243711ea331477fd
+DIST beep-1.4.12.tar.gz 89172 BLAKE2B 06f21cf3c40389acca50e6e420af4e738b7484e096bb689345fedb37684b15733dbb38e8a5d0d360f23e020cebe9ba321984ee43f41b0ad980648414ddbb9375 SHA512 18fed77bc4820ecc84ac12e903d516d5228fa2038df1788cc68db76e40b3c47a271911cc45bc48ce94e3f215803c5c05cb6c08ebb47ae6d7fcf1e0bc1ac169cd
+DIST beep-1.4.9.tar.gz 83154 BLAKE2B 073169ccb4919c17c0291951834fea682c87021f18562629013293432292750f6d6b3235e8882fa9cf26c9e055e1283cfa629c2e88e0f87a301b238c38380498 SHA512 46e6066cb4d9ad4a0c55a03bf5a2163426648ce3831fe1f7bafa2f02d0e407b50c52e58cc2b123c346df96e92b73d2458b473c3fb001d9a0d1470b7cf38cc35b
diff --git a/app-misc/beep/beep-1.3-r3.ebuild b/app-misc/beep/beep-1.3-r3.ebuild
deleted file mode 100644
index a6c0024d4f55..000000000000
--- a/app-misc/beep/beep-1.3-r3.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit toolchain-funcs
-
-DESCRIPTION="The advanced PC speaker beeper"
-HOMEPAGE="http://www.johnath.com/beep"
-SRC_URI="http://www.johnath.com/beep/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ppc ppc64 sparc x86"
-IUSE="suid"
-
-PATCHES=(
- "${FILESDIR}/${P}-Makefile.patch"
- "${FILESDIR}/${P}-CVE-2018-0492.patch"
-)
-
-pkg_setup() {
- tc-export CC
-}
-
-src_install() {
- dobin beep
- if use suid; then
- fowners :audio /usr/bin/beep
- fperms 4710 /usr/bin/beep
- else
- fperms 0711 /usr/bin/beep
- fi
- unpack "./${PN}.1.gz"
- doman "${PN}.1"
- einstalldocs
-}
diff --git a/app-misc/beep/beep-1.4.12.ebuild b/app-misc/beep/beep-1.4.12.ebuild
new file mode 100644
index 000000000000..433fcc5ff5b7
--- /dev/null
+++ b/app-misc/beep/beep-1.4.12.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fcaps toolchain-funcs
+
+DESCRIPTION="Advanced PC speaker beeper"
+HOMEPAGE="https://github.com/spkr-beep/beep"
+SRC_URI="https://github.com/spkr-beep/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ppc ppc64 sparc x86"
+
+# Tests require a speaker
+RESTRICT="test"
+
+src_prepare() {
+ default
+
+ cat <<-EOF > local.mk || die
+ CC=$(tc-getCC)
+ CFLAGS=${CFLAGS}
+ CPPFLAGS=${CPPFLAGS}
+ LDFLAGS=${LDFLAGS}
+ EOF
+
+ sed -i \
+ -e "s#-D_FORTIFY_SOURCE=2##g;" \
+ -e '/\-Werror)/d' \
+ GNUmakefile || die
+}
+
+src_install() {
+ dobin beep
+ doman "${PN}.1"
+
+ fperms 0711 /usr/bin/beep
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ fcaps cap_dac_override,cap_sys_tty_config "${EROOT}/usr/bin/beep"
+}
diff --git a/app-misc/beep/beep-1.4.9-r1.ebuild b/app-misc/beep/beep-1.4.9-r1.ebuild
new file mode 100644
index 000000000000..e566132534ce
--- /dev/null
+++ b/app-misc/beep/beep-1.4.9-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit fcaps toolchain-funcs
+
+DESCRIPTION="Advanced PC speaker beeper"
+HOMEPAGE="https://github.com/spkr-beep"
+SRC_URI="https://github.com/spkr-beep/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ppc ppc64 sparc x86"
+
+# Tests require a speaker
+RESTRICT="test"
+
+src_prepare() {
+ default
+
+ sed -i -e "s#-D_FORTIFY_SOURCE=2##g;" GNUmakefile || die
+}
+
+src_compile() {
+ emake \
+ COMPILERS=gcc \
+ COMPILER_gcc="$(tc-getCC)" \
+ LINKER_gcc="$(tc-getCC)" \
+ CFLAGS_gcc="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CPPFLAGS_gcc="" \
+ all
+}
+
+src_test() {
+ emake \
+ COMPILERS=gcc \
+ COMPILER_gcc="$(tc-getCC)" \
+ LINKER_gcc="$(tc-getCC)" \
+ CFLAGS_gcc="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ check
+}
+
+src_install() {
+ dobin beep
+ doman "${PN}.1"
+
+ fperms 0711 /usr/bin/beep
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ fcaps cap_dac_override,cap_sys_tty_config "${EROOT}/usr/bin/beep"
+}
diff --git a/app-misc/beep/files/beep-1.3-CVE-2018-0492.patch b/app-misc/beep/files/beep-1.3-CVE-2018-0492.patch
deleted file mode 100644
index f4894b51fc81..000000000000
--- a/app-misc/beep/files/beep-1.3-CVE-2018-0492.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-diff --git a/beep.c b/beep.c
-index 7da2e70..4323d31 100644
---- beep.c
-+++ beep.c
-@@ -109,6 +109,7 @@ void do_beep(int freq) {
- /* BEEP_TYPE_EVDEV */
- struct input_event e;
-
-+ memset(&e, 0, sizeof(e));
- e.type = EV_SND;
- e.code = SND_TONE;
- e.value = freq;
-@@ -124,10 +125,6 @@ void do_beep(int freq) {
- /* If we get interrupted, it would be nice to not leave the speaker beeping in
- perpetuity. */
- void handle_signal(int signum) {
--
-- if(console_device)
-- free(console_device);
--
- switch(signum) {
- case SIGINT:
- case SIGTERM:
-@@ -257,7 +254,7 @@ void parse_command_line(int argc, char **argv, beep_parms_t *result) {
- result->verbose = 1;
- break;
- case 'e' : /* also --device */
-- console_device = strdup(optarg);
-+ console_device = optarg;
- break;
- case 'h' : /* notice that this is also --help */
- default :
-@@ -276,26 +273,6 @@ void play_beep(beep_parms_t parms) {
- "%d delay after) @ %.2f Hz\n",
- parms.reps, parms.length, parms.delay, parms.end_delay, parms.freq);
-
-- /* try to snag the console */
-- if(console_device)
-- console_fd = open(console_device, O_WRONLY);
-- else
-- if((console_fd = open("/dev/tty0", O_WRONLY)) == -1)
-- console_fd = open("/dev/vc/0", O_WRONLY);
--
-- if(console_fd == -1) {
-- fprintf(stderr, "Could not open %s for writing\n",
-- console_device != NULL ? console_device : "/dev/tty0 or /dev/vc/0");
-- printf("\a"); /* Output the only beep we can, in an effort to fall back on usefulness */
-- perror("open");
-- exit(1);
-- }
--
-- if (ioctl(console_fd, EVIOCGSND(0)) != -1)
-- console_type = BEEP_TYPE_EVDEV;
-- else
-- console_type = BEEP_TYPE_CONSOLE;
--
- /* Beep */
- for (i = 0; i < parms.reps; i++) { /* start beep */
- do_beep(parms.freq);
-@@ -305,8 +282,6 @@ void play_beep(beep_parms_t parms) {
- if(parms.end_delay || (i+1 < parms.reps))
- usleep(1000*parms.delay); /* wait... */
- } /* repeat. */
--
-- close(console_fd);
- }
-
-
-@@ -328,6 +303,26 @@ int main(int argc, char **argv) {
- signal(SIGTERM, handle_signal);
- parse_command_line(argc, argv, parms);
-
-+ /* try to snag the console */
-+ if(console_device)
-+ console_fd = open(console_device, O_WRONLY);
-+ else
-+ if((console_fd = open("/dev/tty0", O_WRONLY)) == -1)
-+ console_fd = open("/dev/vc/0", O_WRONLY);
-+
-+ if(console_fd == -1) {
-+ fprintf(stderr, "Could not open %s for writing\n",
-+ console_device != NULL ? console_device : "/dev/tty0 or /dev/vc/0");
-+ printf("\a"); /* Output the only beep we can, in an effort to fall back on usefulness */
-+ perror("open");
-+ exit(1);
-+ }
-+
-+ if (ioctl(console_fd, EVIOCGSND(0)) != -1)
-+ console_type = BEEP_TYPE_EVDEV;
-+ else
-+ console_type = BEEP_TYPE_CONSOLE;
-+
- /* this outermost while loop handles the possibility that -n/--new has been
- used, i.e. that we have multiple beeps specified. Each iteration will
- play, then free() one parms instance. */
-@@ -365,8 +360,8 @@ int main(int argc, char **argv) {
- parms = next;
- }
-
-- if(console_device)
-- free(console_device);
-+ close(console_fd);
-+ console_fd = -1;
-
- return EXIT_SUCCESS;
- }
diff --git a/app-misc/beep/files/beep-1.3-Makefile.patch b/app-misc/beep/files/beep-1.3-Makefile.patch
deleted file mode 100644
index f4b891e8b824..000000000000
--- a/app-misc/beep/files/beep-1.3-Makefile.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/Makefile 2002-03-29 09:37:22.000000000 -0800
-+++ b/Makefile 2009-03-27 22:19:18.000000000 -0700
-@@ -1,17 +1,18 @@
--CC=gcc
--FLAGS=-Wall
-+CC ?= gcc
-+LDFLAGS ?=
-+CFLAGS ?= -Wall
- EXEC_NAME=beep
- INSTALL_DIR=/usr/bin
- MAN_FILE=beep.1.gz
--MAN_DIR=/usr/man/man1
-+MAN_DIR=/usr/share/man/man1
-
- default : beep
-
- clean :
-- rm ${EXEC_NAME}
-+ rm -f ${EXEC_NAME}
-
- beep : beep.c
-- ${CC} ${FLAGS} -o ${EXEC_NAME} beep.c
-+ ${CC} ${CFLAGS} ${LDFLAGS} -o ${EXEC_NAME} beep.c
-
- install :
- cp ${EXEC_NAME} ${INSTALL_DIR}
diff --git a/app-misc/beep/metadata.xml b/app-misc/beep/metadata.xml
index 3e927f8d7480..59fb8cd72e42 100644
--- a/app-misc/beep/metadata.xml
+++ b/app-misc/beep/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>shell-tools@gentoo.org</email>
- <name>Gentoo Shell Tools Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>shell-tools@gentoo.org</email>
+ <name>Gentoo Shell Tools Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">spkr-beep/beep</remote-id>
+ </upstream>
</pkgmetadata>