style: format entire depot with nixpkgs-fmt
This CL can be used to compare the style of nixpkgs-fmt against other formatters (nixpkgs, alejandra). Change-Id: I87c6abff6bcb546b02ead15ad0405f81e01b6d9e Reviewed-on: https://cl.tvl.fyi/c/depot/+/4397 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: wpcarro <wpcarro@gmail.com> Reviewed-by: Profpatsch <mail@profpatsch.de> Reviewed-by: kanepyork <rikingcoding@gmail.com> Reviewed-by: tazjin <tazjin@tvl.su> Reviewed-by: cynthia <cynthia@tvl.fyi> Reviewed-by: edef <edef@edef.eu> Reviewed-by: eta <tvl@eta.st> Reviewed-by: grfn <grfn@gws.fyi>
This commit is contained in:
parent
2d10d60fac
commit
aa122cbae7
310 changed files with 7278 additions and 5490 deletions
|
|
@ -1,7 +1,7 @@
|
|||
{ depot, pkgs, lib, ... }:
|
||||
let
|
||||
bins = depot.nix.getBins pkgs.s6-portable-utils ["s6-mkdir" "s6-cat" "s6-ln" "s6-ls" "s6-touch" ]
|
||||
// depot.nix.getBins pkgs.coreutils ["printf" ];
|
||||
bins = depot.nix.getBins pkgs.s6-portable-utils [ "s6-mkdir" "s6-cat" "s6-ln" "s6-ls" "s6-touch" ]
|
||||
// depot.nix.getBins pkgs.coreutils [ "printf" ];
|
||||
|
||||
inherit (depot.nix.yants) defun struct restrict attrs list string drv any;
|
||||
|
||||
|
|
@ -11,56 +11,76 @@ let
|
|||
restrict
|
||||
"flake error"
|
||||
(s: lib.any (prefix: (builtins.substring 0 1 s) == prefix)
|
||||
[ "E" "W" ])
|
||||
[ "E" "W" ])
|
||||
string;
|
||||
Libraries = defun [ (attrs any) (list drv) ];
|
||||
|
||||
python3 = {
|
||||
name,
|
||||
libraries ? (_: []),
|
||||
flakeIgnore ? []
|
||||
}: pkgs.writers.writePython3 name {
|
||||
libraries = Libraries libraries pkgs.python3Packages;
|
||||
flakeIgnore =
|
||||
let ignoreTheseErrors = [
|
||||
# whitespace after {
|
||||
"E201"
|
||||
# whitespace before }
|
||||
"E202"
|
||||
# fuck 4-space indentation
|
||||
"E121" "E111"
|
||||
# who cares about blank lines …
|
||||
# … at end of files
|
||||
"W391"
|
||||
# … between functions
|
||||
"E302" "E305"
|
||||
];
|
||||
in list FlakeError (ignoreTheseErrors ++ flakeIgnore);
|
||||
};
|
||||
python3 =
|
||||
{ name
|
||||
, libraries ? (_: [ ])
|
||||
, flakeIgnore ? [ ]
|
||||
}: pkgs.writers.writePython3 name {
|
||||
libraries = Libraries libraries pkgs.python3Packages;
|
||||
flakeIgnore =
|
||||
let
|
||||
ignoreTheseErrors = [
|
||||
# whitespace after {
|
||||
"E201"
|
||||
# whitespace before }
|
||||
"E202"
|
||||
# fuck 4-space indentation
|
||||
"E121"
|
||||
"E111"
|
||||
# who cares about blank lines …
|
||||
# … at end of files
|
||||
"W391"
|
||||
# … between functions
|
||||
"E302"
|
||||
"E305"
|
||||
];
|
||||
in
|
||||
list FlakeError (ignoreTheseErrors ++ flakeIgnore);
|
||||
};
|
||||
|
||||
# TODO: add the same flake check as the pyhon3 writer
|
||||
python3Lib = { name, libraries ? (_: []) }: moduleString:
|
||||
let srcTree = depot.nix.runExecline.local name { stdin = moduleString; } [
|
||||
"importas" "out" "out"
|
||||
"if" [ bins.s6-mkdir "-p" "\${out}/${name}" ]
|
||||
"if" [
|
||||
"redirfd" "-w" "1" "\${out}/setup.py"
|
||||
bins.printf ''
|
||||
from distutils.core import setup
|
||||
python3Lib = { name, libraries ? (_: [ ]) }: moduleString:
|
||||
let
|
||||
srcTree = depot.nix.runExecline.local name { stdin = moduleString; } [
|
||||
"importas"
|
||||
"out"
|
||||
"out"
|
||||
"if"
|
||||
[ bins.s6-mkdir "-p" "\${out}/${name}" ]
|
||||
"if"
|
||||
[
|
||||
"redirfd"
|
||||
"-w"
|
||||
"1"
|
||||
"\${out}/setup.py"
|
||||
bins.printf
|
||||
''
|
||||
from distutils.core import setup
|
||||
|
||||
setup(
|
||||
name='%s',
|
||||
packages=['%s']
|
||||
)
|
||||
'' name name
|
||||
]
|
||||
"if" [
|
||||
# redirect stdin to the init py
|
||||
"redirfd" "-w" "1" "\${out}/${name}/__init__.py"
|
||||
bins.s6-cat
|
||||
]
|
||||
];
|
||||
in pkgs.python3Packages.buildPythonPackage {
|
||||
setup(
|
||||
name='%s',
|
||||
packages=['%s']
|
||||
)
|
||||
''
|
||||
name
|
||||
name
|
||||
]
|
||||
"if"
|
||||
[
|
||||
# redirect stdin to the init py
|
||||
"redirfd"
|
||||
"-w"
|
||||
"1"
|
||||
"\${out}/${name}/__init__.py"
|
||||
bins.s6-cat
|
||||
]
|
||||
];
|
||||
in
|
||||
pkgs.python3Packages.buildPythonPackage {
|
||||
inherit name;
|
||||
src = srcTree;
|
||||
propagatedBuildInputs = libraries pkgs.python3Packages;
|
||||
|
|
@ -68,7 +88,8 @@ let
|
|||
};
|
||||
|
||||
|
||||
in {
|
||||
in
|
||||
{
|
||||
inherit
|
||||
python3
|
||||
python3Lib
|
||||
|
|
|
|||
|
|
@ -10,38 +10,46 @@ let
|
|||
coreutils
|
||||
;
|
||||
|
||||
run = drv: depot.nix.runExecline.local "run-${drv.name}" {} [
|
||||
"if" [ drv ]
|
||||
"importas" "out" "out"
|
||||
"${coreutils}/bin/touch" "$out"
|
||||
run = drv: depot.nix.runExecline.local "run-${drv.name}" { } [
|
||||
"if"
|
||||
[ drv ]
|
||||
"importas"
|
||||
"out"
|
||||
"out"
|
||||
"${coreutils}/bin/touch"
|
||||
"$out"
|
||||
];
|
||||
|
||||
pythonTransitiveLib = python3Lib {
|
||||
name = "transitive";
|
||||
} ''
|
||||
pythonTransitiveLib = python3Lib
|
||||
{
|
||||
name = "transitive";
|
||||
} ''
|
||||
def transitive(s):
|
||||
return s + " 1 2 3"
|
||||
'';
|
||||
|
||||
pythonTestLib = python3Lib {
|
||||
name = "test_lib";
|
||||
libraries = _: [ pythonTransitiveLib ];
|
||||
} ''
|
||||
pythonTestLib = python3Lib
|
||||
{
|
||||
name = "test_lib";
|
||||
libraries = _: [ pythonTransitiveLib ];
|
||||
} ''
|
||||
import transitive
|
||||
def test():
|
||||
return transitive.transitive("test")
|
||||
'';
|
||||
|
||||
pythonWithLib = run (python3 {
|
||||
name = "python-with-lib";
|
||||
libraries = _: [ pythonTestLib ];
|
||||
} ''
|
||||
pythonWithLib = run (python3
|
||||
{
|
||||
name = "python-with-lib";
|
||||
libraries = _: [ pythonTestLib ];
|
||||
} ''
|
||||
import test_lib
|
||||
|
||||
assert(test_lib.test() == "test 1 2 3")
|
||||
'');
|
||||
|
||||
in depot.nix.readTree.drvTargets {
|
||||
in
|
||||
depot.nix.readTree.drvTargets {
|
||||
inherit
|
||||
pythonWithLib
|
||||
;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue