public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Conrad Kostecki" <conikost@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/ethflop/, net-misc/ethflop/files/
Date: Thu,  5 Dec 2019 23:32:54 +0000 (UTC)	[thread overview]
Message-ID: <1575588725.6df5d081084eee5a71f95ef97ca15d78e651cffc.conikost@gentoo> (raw)

commit:     6df5d081084eee5a71f95ef97ca15d78e651cffc
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 15 06:39:02 2019 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Thu Dec  5 23:32:05 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6df5d081

net-misc/ethflop: New package

ethflop is a DOS TSR that emulates a floppy disk drive.
The emulated (virtual) floppy disk is, in fact, stored on a Linux server as a
floppy image. All the communication between ethflop (the TSR)
and ethflopd (the Linux daemon) is exchanged over raw Ethernet. No need for
any network configuration - the DOS PC only needs to have some kind of
Ethernet adapter and a suitable packet driver. The Linux server and
the DOS PC must be connected do the common Ethernet segment (same LAN).

Closes: https://github.com/gentoo/gentoo/pull/13307
Package-Manager: Portage-2.3.80, Repoman-2.3.19
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 net-misc/ethflop/Manifest                          |  1 +
 net-misc/ethflop/ethflop-20191003.ebuild           | 46 ++++++++++++++++++++++
 .../ethflop/files/ethflop-20191003-makefile.patch  | 13 ++++++
 net-misc/ethflop/files/ethflopd.confd              |  8 ++++
 net-misc/ethflop/files/ethflopd.initd              | 11 ++++++
 net-misc/ethflop/files/ethflopd.service            | 10 +++++
 net-misc/ethflop/metadata.xml                      | 26 ++++++++++++
 7 files changed, 115 insertions(+)

diff --git a/net-misc/ethflop/Manifest b/net-misc/ethflop/Manifest
new file mode 100644
index 00000000000..c6da51da054
--- /dev/null
+++ b/net-misc/ethflop/Manifest
@@ -0,0 +1 @@
+DIST ethflop-20191003.zip 29858 BLAKE2B e5a4068d45c398d6c7bfd08299b57566c3d30bea4ef79692cae065adb61f3c41fd3ed568260e82e19d90e17c7b6d92c0698bb7f7c40edea9d44804a7a61e18ae SHA512 808e65d45e2ff74380bc2f1a31b7bb59fdca4acdf44eb7f60deef9aa0976462ddc64982e8a7b7c225d7f88e11a33dfcdf73fd7169f942018976d4d086e7ec477

diff --git a/net-misc/ethflop/ethflop-20191003.ebuild b/net-misc/ethflop/ethflop-20191003.ebuild
new file mode 100644
index 00000000000..f0b9e708f26
--- /dev/null
+++ b/net-misc/ethflop/ethflop-20191003.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd toolchain-funcs
+
+DESCRIPTION="A network-backed floppy emulator for DOS"
+HOMEPAGE="http://ethflop.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.zip"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="tsr"
+
+BDEPEND="
+	app-arch/unzip
+	tsr? ( dev-lang/nasm )
+"
+
+PATCHES=( "${FILESDIR}/${P}-makefile.patch" )
+
+S="${WORKDIR}"
+
+src_compile() {
+	tc-export CC
+	default
+
+	use tsr && emake tsr
+}
+
+src_install() {
+	dobin ethflopd
+
+	if use tsr; then
+		insinto /usr/share/ethflop
+		doins ethflop.com
+	fi
+
+	newinitd "${FILESDIR}"/ethflopd.initd ethflopd
+	newconfd "${FILESDIR}"/ethflopd.confd ethflopd
+	systemd_dounit "${FILESDIR}"/ethflopd.service
+
+	dodoc ethflop.txt
+}

diff --git a/net-misc/ethflop/files/ethflop-20191003-makefile.patch b/net-misc/ethflop/files/ethflop-20191003-makefile.patch
new file mode 100644
index 00000000000..7005dfdbb44
--- /dev/null
+++ b/net-misc/ethflop/files/ethflop-20191003-makefile.patch
@@ -0,0 +1,13 @@
+--- a/Makefile	2019-10-03 23:02:15.000000000 +0200
++++ b/Makefile	2019-10-15 08:31:49.541999473 +0200
+@@ -14,8 +14,8 @@
+ #CFLAGS = -O2 -Wall -std=gnu89 -pedantic -Wextra -Wformat-security -D_FORTIFY_SOURCE=1 -Weverything -Wno-padded
+ 
+ # production
+-CC = gcc
+-CFLAGS = -O2 -std=gnu89
++CC ?= gcc
++CFLAGS ?= -O2 -std=gnu89
+ 
+ all: ethflopd
+ 

diff --git a/net-misc/ethflop/files/ethflopd.confd b/net-misc/ethflop/files/ethflopd.confd
new file mode 100644
index 00000000000..a727dae4c72
--- /dev/null
+++ b/net-misc/ethflop/files/ethflopd.confd
@@ -0,0 +1,8 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Network interface, which should be used for serving floppy images
+INTERFACE="lo"
+
+# Storage directory, from where floppy images are being served
+STORAGEDIR="/tmp"

diff --git a/net-misc/ethflop/files/ethflopd.initd b/net-misc/ethflop/files/ethflopd.initd
new file mode 100644
index 00000000000..d00c63f980a
--- /dev/null
+++ b/net-misc/ethflop/files/ethflopd.initd
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+# Copyright 2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name="ethflopd daemon"
+command="/usr/bin/ethflopd"
+command_args="${INTERFACE} ${STORAGEDIR}"
+
+depend() {
+	need net
+}

diff --git a/net-misc/ethflop/files/ethflopd.service b/net-misc/ethflop/files/ethflopd.service
new file mode 100644
index 00000000000..2b6c31902ec
--- /dev/null
+++ b/net-misc/ethflop/files/ethflopd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=ethflopd daemon
+After=network-online.target
+
+[Service]
+EnvironmentFile=/etc/conf.d/ethflopd
+ExecStart=/usr/bin/ethflopd ${INTERFACE} ${STORAGEDIR}
+
+[Install]
+WantedBy=multi-user.target

diff --git a/net-misc/ethflop/metadata.xml b/net-misc/ethflop/metadata.xml
new file mode 100644
index 00000000000..90f4adc128f
--- /dev/null
+++ b/net-misc/ethflop/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>ck+gentoo@bl4ckb0x.de</email>
+		<name>Conrad Kostecki</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>proxy-maint@gentoo.org</email>
+		<name>Proxy Maintainers</name>
+	</maintainer>
+	<longdescription>
+		ethflop is a DOS TSR that emulates a floppy disk drive.
+		The emulated (virtual) floppy disk is, in fact, stored on a Linux server as a floppy image.
+		All the communication between ethflop (the TSR) and ethflopd (the Linux daemon) is exchanged over raw Ethernet.
+		No need for any network configuration - the DOS PC only needs to have some kind of Ethernet adapter
+		(physical or emulated, for example through PLIP) and a suitable packet driver.
+		The Linux server and the DOS PC must be connected to a common Ethernet segment (same LAN).
+	</longdescription>
+	<use>
+		<flag name="tsr">Build the TSR program for DOS, which acts as a client.</flag>
+	</use>
+	<upstream>
+		<remote-id type="sourceforge">ethflop</remote-id>
+	</upstream>
+</pkgmetadata>


             reply	other threads:[~2019-12-05 23:32 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-05 23:32 Conrad Kostecki [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-12-30  1:03 [gentoo-commits] repo/gentoo:master commit in: net-misc/ethflop/, net-misc/ethflop/files/ Conrad Kostecki
2025-02-09 10:09 Florian Schmaus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1575588725.6df5d081084eee5a71f95ef97ca15d78e651cffc.conikost@gentoo \
    --to=conikost@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox