nixpkgs/pkgs/tools/networking/s4cmd/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

36 lines
1 KiB
Nix

{ lib, stdenv, python3Packages }:
python3Packages.buildPythonApplication rec {
pname = "s4cmd";
version = "2.1.0";
src = python3Packages.fetchPypi {
inherit pname version;
sha256 = "0d4mx98i3qhvlmr9x898mjvf827smzx6x5ji6daiwgjdlxc60mj2";
};
propagatedBuildInputs = with python3Packages; [ boto3 pytz ];
# The upstream package tries to install some bash shell completion scripts in /etc.
# Setuptools is bugged and doesn't handle --prefix properly: https://github.com/pypa/setuptools/issues/130
patchPhase = ''
sed -i '/ data_files=/d' setup.py
sed -i 's|os.chmod("/etc.*|pass|' setup.py
'';
# Replace upstream's s4cmd wrapper script with the built-in Nix wrapper
postInstall = ''
ln -fs $out/bin/s4cmd.py $out/bin/s4cmd
'';
# Test suite requires an S3 bucket
doCheck = false;
meta = with lib; {
homepage = "https://github.com/bloomreach/s4cmd";
description = "Super S3 command line tool";
license = licenses.asl20;
maintainers = [ maintainers.bhipple ];
};
}