public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Marc Schiffbauer" <marc@schiffbauer.net>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] dev/mschiff:master commit in: app-misc/eatmydata/, app-misc/eatmydata/files/
Date: Wed, 29 Feb 2012 12:24:49 +0000 (UTC)	[thread overview]
Message-ID: <1330518270.b5af286fbf9407d4af1723ab588db8b2b5e0fe1e.mschiff@gentoo> (raw)

commit:     b5af286fbf9407d4af1723ab588db8b2b5e0fe1e
Author:     Marc Schiffbauer <mschiff <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 29 12:24:30 2012 +0000
Commit:     Marc Schiffbauer <marc <AT> schiffbauer <DOT> net>
CommitDate: Wed Feb 29 12:24:30 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=dev/mschiff.git;a=commit;h=b5af286f

Add ebuild eatmydata

(Portage version: 2.2.0_alpha88/git/Linux x86_64, signed Manifest commit with key 0x35A64134)

---
 app-misc/eatmydata/Manifest             |   15 +++++
 app-misc/eatmydata/eatmydata-28.ebuild  |   32 ++++++++++
 app-misc/eatmydata/files/eatmydata      |   98 +++++++++++++++++++++++++++++++
 app-misc/eatmydata/files/eatmydata.1.gz |  Bin 0 -> 1093 bytes
 app-misc/eatmydata/metadata.xml         |    8 +++
 5 files changed, 153 insertions(+), 0 deletions(-)

diff --git a/app-misc/eatmydata/Manifest b/app-misc/eatmydata/Manifest
new file mode 100644
index 0000000..36e89e2
--- /dev/null
+++ b/app-misc/eatmydata/Manifest
@@ -0,0 +1,15 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+AUX eatmydata 2511 RMD160 115382fc06a10b6b033035469b35e257eb3bf472 SHA1 24f05a08d75661b2d3ff83a09c8bb4ba5939ede9 SHA256 5df9a7145a22cfcfc0a11b04b93dac441bae1a2e6431d3bf11da7ae845969268
+AUX eatmydata.1.gz 1093 RMD160 40c0fb1b326e05b352f23033fa35640fb7db41b4 SHA1 2a2e0d2992ce49ba4f20d7a49e61f1f5e754ee89 SHA256 fdd8720f95266b73052779818145d2e6fbc504670d5c39a091a48754d497b9ba
+DIST libeatmydata-28.tar.gz 382069 RMD160 b8b8fc9a02413b8fd907569f93b0015ecc086a0c SHA1 bd8a26b5e8dc9647ddf70989652e2da55a18b752 SHA256 3b768351a1aff21a1201bcbd25635a0f4fbbfc2d4e7e55842403601fdb1859c3
+EBUILD eatmydata-28.ebuild 792 RMD160 7fc0de271d70341373a2fe90ac7df63a1fe09b1e SHA1 d2a93fd43032f417ad298cd1823b92d122897a2d SHA256 99fb883c6005421e1795844c57c3dcc133f532cac3850f9a8d265a8ad9398494
+MISC metadata.xml 236 RMD160 5c57b0291e26469fb522c377d9b6373830889ebb SHA1 4da113512bdf7f06bde8a17a9332c28da0ecf1b6 SHA256 f55443c9b3d97fcc9437b9aeba1b3beae39e38599620bd520d0693bb8948b531
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.18 (GNU/Linux)
+
+iD8DBQFPThj+KWxsyjWmQTQRAgtcAKCejXQYDMh/o7SDr8y8xKjPdX0+lACcCtzh
+r7fiL17pplMofI6MbxX4fgs=
+=WN/u
+-----END PGP SIGNATURE-----

diff --git a/app-misc/eatmydata/eatmydata-28.ebuild b/app-misc/eatmydata/eatmydata-28.ebuild
new file mode 100644
index 0000000..7a0a4b7
--- /dev/null
+++ b/app-misc/eatmydata/eatmydata-28.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="4"
+
+DESCRIPTION="Tool with LD_PRELOAD library that disables all forms of writing data safely to disk"
+HOMEPAGE="https://launchpad.net/libeatmydata"
+SRC_URI="http://launchpad.net/lib${PN}/trunk/release-${PV}/+download/lib${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+MY_S="${WORKDIR}/lib${P}"
+S="${WORKDIR}/lib${P}"
+
+src_install () {
+	default
+	exeinto /usr/bin && doexe ${FILESDIR}/eatmydata
+	doman ${FILESDIR}/eatmydata.1.gz
+	find ${D} -name "*.la" -delete
+}
+
+pkg_postinst() {
+	ewarn "This program is called *eatmydata* on purpose."
+	ewarn "Use it on your own risk and only if you know what you are doing."
+}

diff --git a/app-misc/eatmydata/files/eatmydata b/app-misc/eatmydata/files/eatmydata
new file mode 100755
index 0000000..0a72fa7
--- /dev/null
+++ b/app-misc/eatmydata/files/eatmydata
@@ -0,0 +1,98 @@
+#!/bin/sh
+
+# Copyright ©: 2010, Modestas Vainius <modax@debian.org>
+#
+# Copyright ©: 2011, Marc Schiffbauer <mschiff@gentoo.org>
+# (merged shell lib into this file + some small mods for gentoo)
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+
+libeatmydata="/usr/lib/libeatmydata.so"
+name="eatmydata"
+
+eatmydata_error()
+{
+    echo "$name error: $1" >&2
+    exit 1
+}
+
+eatmydata_exec()
+{
+    local cmd
+    cmd="$1"
+    if [ "${cmd#*/*}" = "${cmd}" ]; then
+        # $cmd does not contain '/'. Look in $PATH avoiding loops with self.
+        local self save_ifs path exe ok
+
+        self="`readlink -f "$0"`"
+        save_ifs="$IFS"
+        IFS=":"
+        ok=""
+        for path in $PATH; do
+            exe="${path}/$cmd"
+            # Avoid loops with self
+            if [ -x "$exe" ] && [ "`readlink -f "$exe"`" != "$self" ]; then
+                ok="yes"
+                break
+            fi
+        done
+        IFS="$save_ifs"
+        if [ -n "$ok" ]; then
+            cmd="$exe"
+        else
+            eatmydata_error "unable to find '$cmd' in PATH"
+        fi
+    fi
+
+    # Preload libeatmydata
+    if [ -n "$LD_PRELOAD" ]; then
+        export LD_PRELOAD="$libeatmydata $LD_PRELOAD"
+    else
+        export LD_PRELOAD="$libeatmydata"
+    fi
+    # Execute requested command
+    shift
+    exec "$cmd" "$@"
+}
+
+# Verify environment
+if [ ! -f "$libeatmydata" ]; then
+    eatmydata_error "could not find $name library $libeatmydata"
+fi
+
+usage()
+{
+    echo "usage: $0 [--] command [ command arguments ... ]" >&2
+    exit 2
+}
+
+# Detect operation mode. If this script is run via symlink, look for basename
+# in the PATH and execute it.
+if [ -L "$0" ]; then
+    # Symlink mode. Get command to execute from the basename of $0.
+    cmd="`basename "$0"`"
+    set -- "$cmd" "$@"
+else
+    # Normal mode
+    if [ "$1" = "--" ]; then
+        shift
+    fi
+
+    if [ "$#" -eq 0 ]; then
+        usage
+    fi
+fi
+
+eatmydata_exec "$@"

diff --git a/app-misc/eatmydata/files/eatmydata.1.gz b/app-misc/eatmydata/files/eatmydata.1.gz
new file mode 100644
index 0000000..cbf6e9e
Binary files /dev/null and b/app-misc/eatmydata/files/eatmydata.1.gz differ

diff --git a/app-misc/eatmydata/metadata.xml b/app-misc/eatmydata/metadata.xml
new file mode 100644
index 0000000..ea7bd02
--- /dev/null
+++ b/app-misc/eatmydata/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer>
+		<email>mschiff@gentoo.org</email>
+		<name>Marc Schiffbauer</name>
+	</maintainer>
+</pkgmetadata>



             reply	other threads:[~2012-02-29 12:24 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-29 12:24 Marc Schiffbauer [this message]
  -- strict thread matches above, loose matches on Subject: below --
2014-12-30 15:13 [gentoo-commits] dev/mschiff:master commit in: app-misc/eatmydata/, app-misc/eatmydata/files/ Marc Schiffbauer

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=1330518270.b5af286fbf9407d4af1723ab588db8b2b5e0fe1e.mschiff@gentoo \
    --to=marc@schiffbauer.net \
    --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