diff --git a/pkgs/development/tools/build-managers/go-mk/default.nix b/pkgs/development/tools/build-managers/go-mk/default.nix new file mode 100644 index 000000000000..f543d60da957 --- /dev/null +++ b/pkgs/development/tools/build-managers/go-mk/default.nix @@ -0,0 +1,31 @@ +{ lib +, buildGoPackage +, fetchFromGitHub +}: + +buildGoPackage rec { + pname = "go-mk"; + version = "0.pre+date=2015-03-24"; + + src = fetchFromGitHub { + owner = "dcjones"; + repo = "mk"; + rev = "73d1b31466c16d0a13a220e5fad7cd8ef6d984d1"; + hash = "sha256-fk2Qd3LDMx+RapKi1M9yCuxpS0IB6xlbEWW+H6t94AI="; + }; + + goPackagePath = "github.com/dcjones/mk"; + + meta = with lib; { + inherit (src.meta) homepage; + description = "A reboot of Plan9's mk, written in Go"; + longDescription = '' + Mk is a reboot of the Plan 9 mk command, which itself is a successor to + make. This tool is for anyone who loves make, but hates all its stupid + bullshit. + ''; + license = licenses.bsd2; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/tools/build-managers/mk/builder.sh b/pkgs/development/tools/build-managers/mk/builder.sh deleted file mode 100644 index 73678ae9f5cc..000000000000 --- a/pkgs/development/tools/build-managers/mk/builder.sh +++ /dev/null @@ -1,4 +0,0 @@ -source $stdenv/setup -installFlags="PREFIX=$out" -preInstall="mkdir -p $out/man/man1 $out/bin" -genericBuild diff --git a/pkgs/development/tools/build-managers/mk/default.nix b/pkgs/development/tools/build-managers/mk/default.nix deleted file mode 100644 index afc0b6f1ec01..000000000000 --- a/pkgs/development/tools/build-managers/mk/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{lib, stdenv, fetchurl}: - -stdenv.mkDerivation rec { - pname = "mk"; - version = "unstable-2006-01-31"; - src = fetchurl { - url = "http://tarballs.nixos.org/${pname}-20060131.tar.gz"; - sha256 = "0za8dp1211bdp4584xb59liqpww7w1ql0cmlv34p9y928nibcxsr"; - }; - builder = ./builder.sh; - - meta = { - platforms = lib.platforms.unix; - }; -} diff --git a/pkgs/os-specific/linux/msr/000-include-sysmacros.patch b/pkgs/os-specific/linux/msr/000-include-sysmacros.patch new file mode 100644 index 000000000000..5fa96cd14699 --- /dev/null +++ b/pkgs/os-specific/linux/msr/000-include-sysmacros.patch @@ -0,0 +1,11 @@ +diff -Naur msr-old/msr.c msr-20060208/msr.c +--- msr-old/msr.c 1969-12-31 21:00:01.000000000 -0300 ++++ msr-20060208/msr.c 2021-11-02 21:19:34.576722617 -0300 +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include + #include + #include + #include diff --git a/pkgs/os-specific/linux/msr/default.nix b/pkgs/os-specific/linux/msr/default.nix new file mode 100644 index 000000000000..0ffc46012096 --- /dev/null +++ b/pkgs/os-specific/linux/msr/default.nix @@ -0,0 +1,40 @@ +{ lib +, stdenv +, fetchzip +, installShellFiles +}: + +stdenv.mkDerivation rec { + pname = "msr"; + version = "20060208"; + + src = fetchzip { + name = "${pname}-${version}"; + url = "http://www.etallen.com/msr/${pname}-${version}.src.tar.gz"; + hash = "sha256-e01qYWbOALkXp5NpexuVodMxA3EBySejJ6ZBpZjyT+E="; + }; + + nativeBuildInputs = [ + installShellFiles + ]; + + patches = [ + ./000-include-sysmacros.patch + ]; + + installPhase = '' + runHook preInstall + mkdir -p $out/bin/ + cp msr $out/bin/ + installManPage msr.man + runHook postInstall + ''; + + meta = with lib; { + homepage = "http://www.etallen.com/msr.html"; + description = "Linux tool to display or modify x86 model-specific registers (MSRs)"; + license = licenses.bsd0; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = [ "i686-linux" "x86_64-linux" ]; + }; +} diff --git a/pkgs/tools/package-management/nix-bundle/default.nix b/pkgs/tools/package-management/nix-bundle/default.nix index 6eee4adf1d42..a32f788bf4dc 100644 --- a/pkgs/tools/package-management/nix-bundle/default.nix +++ b/pkgs/tools/package-management/nix-bundle/default.nix @@ -1,4 +1,13 @@ -{ stdenv, lib, fetchFromGitHub, nix, makeWrapper, coreutils, gnutar, gzip, bzip2 }: +{ lib +, stdenv +, fetchFromGitHub +, bzip2 +, coreutils +, gnutar +, gzip +, makeWrapper +, nix +}: stdenv.mkDerivation rec { pname = "nix-bundle"; @@ -13,25 +22,40 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper ]; - # coreutils, gnutar is actually needed by nix for bootstrap - buildInputs = [ nix coreutils gnutar gzip bzip2 ]; - - binPath = lib.makeBinPath [ nix coreutils gnutar gzip bzip2 ]; + # coreutils, gnutar are needed by nix for bootstrap + buildInputs = [ + bzip2 + coreutils + gnutar + gzip + nix + ]; makeFlags = [ "PREFIX=$(out)" ]; postInstall = '' mkdir -p $out/bin makeWrapper $out/share/nix-bundle/nix-bundle.sh $out/bin/nix-bundle \ - --prefix PATH : ${binPath} - cp $out/share/nix-bundle/nix-run.sh $out/bin/nix-run + --prefix PATH : ${lib.makeBinPath buildInputs} + ln -s $out/share/nix-bundle/nix-run.sh $out/bin/nix-run ''; meta = with lib; { + homepage = "https://github.com/matthewbauer/nix-bundle"; + description = "Create bundles from Nixpkgs attributes"; + longDescription = '' + nix-bundle is a way to package Nix attributes into single-file + executables. + + Benefits: + - Single-file output + - Can be run by non-root users + - No runtime + - Distro agnostic + - No installation + ''; + license = licenses.mit; maintainers = [ maintainers.matthewbauer ]; platforms = platforms.all; - description = "Create bundles from Nixpkgs attributes"; - license = licenses.mit; - homepage = "https://github.com/matthewbauer/nix-bundle"; }; } diff --git a/pkgs/tools/system/plan9port/default.nix b/pkgs/tools/system/plan9port/default.nix index a735e35624f7..7e4ce71ec547 100644 --- a/pkgs/tools/system/plan9port/default.nix +++ b/pkgs/tools/system/plan9port/default.nix @@ -1,23 +1,26 @@ -{ lib, stdenv, fetchFromGitHub, which +{ lib +, stdenv +, fetchFromGitHub , darwin ? null -, xorgproto ? null +, fontconfig ? null +, freetype ? null , libX11 , libXext ? null , libXt ? null -, fontconfig ? null -, freetype ? null , perl ? null # For building web manuals +, which +, xorgproto ? null }: stdenv.mkDerivation { pname = "plan9port"; - version = "2021-04-22"; + version = "0.pre+date=2021-10-19"; src = fetchFromGitHub { owner = "9fans"; repo = "plan9port"; - rev = "70cc6e5ba7798b315c3fb3aae19620a01604a459"; - hash = "sha256-HCn8R9YSocHrpw/xK5n8gsCLSAbAQgw0NtjO9vYIbKo="; + rev = "d0d440860f2000a1560abb3f593cdc325fcead4c"; + hash = "sha256-2aYXqPGwrReyFPrLDtEjgQd/RJjpOfI3ge/tDocYpRQ="; }; postPatch = '' @@ -44,10 +47,18 @@ stdenv.mkDerivation { buildInputs = [ perl ] ++ lib.optionals (!stdenv.isDarwin) [ - xorgproto libX11 libXext libXt fontconfig - freetype # fontsrv wants ft2build.h provides system fonts for acme and sam. + fontconfig + freetype # fontsrv wants ft2build.h provides system fonts for acme and sam + libX11 + libXext + libXt + xorgproto ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ - Carbon Cocoa IOKit Metal QuartzCore + Carbon + Cocoa + IOKit + Metal + QuartzCore ]); builder = ./builder.sh; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6131804f4fd9..722e956e8313 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1577,6 +1577,8 @@ with pkgs; cpuid = callPackage ../os-specific/linux/cpuid { }; + msr = callPackage ../os-specific/linux/msr { }; + ctrtool = callPackage ../tools/archivers/ctrtool { }; crowbar = callPackage ../tools/security/crowbar { }; @@ -2186,6 +2188,8 @@ with pkgs; bmake = callPackage ../development/tools/build-managers/bmake { }; + go-mk = callPackage ../development/tools/build-managers/go-mk { }; + boca = callPackage ../development/libraries/boca { }; bochs = callPackage ../applications/virtualization/bochs { @@ -14802,8 +14806,6 @@ with pkgs; minizinc = callPackage ../development/tools/minizinc { }; minizincide = qt514.callPackage ../development/tools/minizinc/ide.nix { }; - mk = callPackage ../development/tools/build-managers/mk { }; - mkcert = callPackage ../development/tools/misc/mkcert { }; mkdocs = callPackage ../development/tools/documentation/mkdocs { };