ed: a huge rewrite
- delete `edUnstable` - migrate to `pkgs/by-name` - strictDeps - testVersion - meta.mainProgram
This commit is contained in:
parent
bb53e43ec0
commit
79866be383
@ -1,14 +0,0 @@
|
||||
{ lib, pkgs }:
|
||||
|
||||
lib.makeScope pkgs.newScope (self:
|
||||
let
|
||||
inherit (self) callPackage;
|
||||
in {
|
||||
sources = import ./sources.nix {
|
||||
inherit lib;
|
||||
inherit (pkgs) fetchurl;
|
||||
};
|
||||
|
||||
ed = callPackage (self.sources.ed) { };
|
||||
edUnstable = callPackage (self.sources.edUnstable) { };
|
||||
})
|
@ -1,32 +0,0 @@
|
||||
{ pname
|
||||
, version
|
||||
, src
|
||||
, patches ? [ ]
|
||||
, meta
|
||||
}:
|
||||
|
||||
# Note: this package is used for bootstrapping fetchurl, and thus cannot use
|
||||
# fetchpatch! All mutable patches (generated by GitHub or cgit) that are needed
|
||||
# here should be included directly in Nixpkgs as files.
|
||||
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, lzip
|
||||
, runtimeShellPackage
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
inherit pname version src patches;
|
||||
|
||||
nativeBuildInputs = [ lzip ];
|
||||
buildInputs = [ runtimeShellPackage ];
|
||||
|
||||
configureFlags = [
|
||||
"CC=${stdenv.cc.targetPrefix}cc"
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
inherit meta;
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
{ lib
|
||||
, fetchurl
|
||||
}:
|
||||
|
||||
let
|
||||
meta = {
|
||||
description = "GNU implementation of the standard Unix editor";
|
||||
longDescription = ''
|
||||
GNU ed is a line-oriented text editor. It is used to create, display,
|
||||
modify and otherwise manipulate text files, both interactively and via
|
||||
shell scripts. A restricted version of ed, red, can only edit files in the
|
||||
current directory and cannot execute shell commands. Ed is the 'standard'
|
||||
text editor in the sense that it is the original editor for Unix, and thus
|
||||
widely available. For most purposes, however, it is superseded by
|
||||
full-screen editors such as GNU Emacs or GNU Moe.
|
||||
'';
|
||||
license = lib.licenses.gpl3Plus;
|
||||
homepage = "https://www.gnu.org/software/ed/";
|
||||
maintainers = with lib.maintainers; [ AndersonTorres ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
in
|
||||
{
|
||||
ed = let
|
||||
pname = "ed";
|
||||
version = "1.20.2";
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/ed/ed-${version}.tar.lz";
|
||||
hash = "sha256-Zf7HMY9IwsoX8zSsD0cD3v5iA3uxPMI5IN4He1+iRSM=";
|
||||
};
|
||||
in import ./generic.nix {
|
||||
inherit pname version src meta;
|
||||
};
|
||||
|
||||
edUnstable = let
|
||||
pname = "ed";
|
||||
version = "1.20-pre2";
|
||||
src = fetchurl {
|
||||
url = "http://download.savannah.gnu.org/releases/ed/ed-${version}.tar.lz";
|
||||
hash = "sha256-bHTDeMhVNNo3qqDNoBNaBA+DHDa4WJpfQNcTvAUPgsY=";
|
||||
};
|
||||
in import ./generic.nix {
|
||||
inherit pname version src meta;
|
||||
};
|
||||
}
|
60
pkgs/by-name/ed/ed/package.nix
Normal file
60
pkgs/by-name/ed/ed/package.nix
Normal file
@ -0,0 +1,60 @@
|
||||
{
|
||||
lib,
|
||||
fetchurl,
|
||||
lzip,
|
||||
runtimeShellPackage,
|
||||
stdenv,
|
||||
testers,
|
||||
}:
|
||||
|
||||
# Note: this package is used for bootstrapping fetchurl, and thus cannot use
|
||||
# fetchpatch! Any mutable patches (retrieved from GitHub, cgit or any other
|
||||
# place) that are needed here should be directly included together as regular
|
||||
# files.
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ed";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/ed/ed-${finalAttrs.version}.tar.lz";
|
||||
hash = "sha256-Zf7HMY9IwsoX8zSsD0cD3v5iA3uxPMI5IN4He1+iRSM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ lzip ];
|
||||
|
||||
buildInputs = [ runtimeShellPackage ];
|
||||
|
||||
configureFlags = [
|
||||
"CC=${stdenv.cc.targetPrefix}cc"
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
passthru = {
|
||||
tests.version = testers.testVersion {
|
||||
package = finalAttrs.finalPackage;
|
||||
command = "ed --version";
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://www.gnu.org/software/ed/";
|
||||
description = "GNU implementation of the standard Unix editor";
|
||||
longDescription = ''
|
||||
GNU ed is a line-oriented text editor. It is used to create, display,
|
||||
modify and otherwise manipulate text files, both interactively and via
|
||||
shell scripts. A restricted version of ed, red, can only edit files in the
|
||||
current directory and cannot execute shell commands. Ed is the 'standard'
|
||||
text editor in the sense that it is the original editor for Unix, and thus
|
||||
widely available. For most purposes, however, it is superseded by
|
||||
full-screen editors such as GNU Emacs or GNU Moe.
|
||||
'';
|
||||
license = lib.licenses.gpl3Plus;
|
||||
mainProgram = "ed";
|
||||
maintainers = with lib.maintainers; [ AndersonTorres ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
@ -30125,9 +30125,6 @@ with pkgs;
|
||||
|
||||
ecs-agent = callPackage ../applications/virtualization/ecs-agent { };
|
||||
|
||||
inherit (recurseIntoAttrs (callPackage ../applications/editors/ed { }))
|
||||
ed edUnstable;
|
||||
|
||||
edlin = callPackage ../applications/editors/edlin { };
|
||||
|
||||
oed = callPackage ../applications/editors/oed { };
|
||||
|
Loading…
Reference in New Issue
Block a user