Compare commits

...

10 commits

Author SHA1 Message Date
afac7e637b
use nix.settings 2024-08-09 14:03:04 -05:00
d93ac9ba6a
use zig-overlay instead of zig2nix 2024-08-09 13:56:36 -05:00
a494d362ed
remove colon 2024-08-09 13:16:15 -05:00
e6e0d1d8b7
don't waste time on old builds 2024-08-09 13:16:15 -05:00
a8ad42cb21
try not to delete git-core data 2024-08-09 13:16:15 -05:00
ef83435bed flake.lock: Update
Flake lock file updates:

• Updated input 'hyprland':
    'git+https://github.com/hyprwm/Hyprland/?ref=refs/heads/main&rev=4b4971c06fb02df00a2bd20b6b47b5d0e7d799a7' (2024-08-08)
  → 'git+https://github.com/hyprwm/Hyprland/?ref=refs/heads/main&rev=8b37e81374928856d8fd859b95a62c8bf4211901' (2024-08-09)
• Updated input 'lix':
    'e03cd8b3a6.tar.gz?narHash=sha256-WRt4kYvg6cpnatF5zUCIUeurU67M7b4dk3oYdZ0cu9M%3D' (2024-08-08)
  → '346e340cbf.tar.gz?narHash=sha256-XbtSx3sxE6rf/D31fBX9d28CuXnokkbHW6tzOEMVfxw%3D' (2024-08-09)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/f5129fb42b9c262318130a97b47516946da3e7d7' (2024-08-07)
  → 'github:nixos/nixpkgs/13fe00cb6c75461901f072ae62b5805baef9f8b2' (2024-08-08)
• Updated input 'nixpkgs-wayland':
    'github:nix-community/nixpkgs-wayland/b412353cee03010813974408d5ae63f7422b176d' (2024-08-08)
  → 'github:nix-community/nixpkgs-wayland/f9b6659b7a856ad5c470ce224a0d69696c6f8c73' (2024-08-09)
• Updated input 'pixi':
    'github:daylinmorgan/pixi-flake/7a3e2a90d0f35170c1a95cc194a3ba81acd5b63d' (2024-08-07)
  → 'github:daylinmorgan/pixi-flake/df14d187eb1cb453f0d6b83c9cdf8441017b9c20' (2024-08-09)
• Updated input 'pixi/pixi-source':
    'github:prefix-dev/pixi/608a65d977b9d87bae71c747f77989ad01c76ada' (2024-08-07)
  → 'github:prefix-dev/pixi/55741aede8e87f176fd6d99eb26bfd3d026c2b7e' (2024-08-09)
• Updated input 'zig2nix':
    'github:Cloudef/zig2nix/7320da37a4d45afb0aa94d22861a0fe07152c038' (2024-08-08)
  → 'github:Cloudef/zig2nix/8d9b9e0134659665937b60ece972cc8108960e3c' (2024-08-09)
2024-08-09 17:52:21 +00:00
b8dc12e3ce
improve oizys ci output 2024-08-09 12:41:18 -05:00
65664246a5
formatting 2024-08-09 11:57:06 -05:00
df15bc9621
more silly refactors 2024-08-09 11:57:03 -05:00
8c1f72b605
will be better once nixd has support 2024-08-09 10:42:36 -05:00
11 changed files with 131 additions and 135 deletions

View file

@ -41,11 +41,13 @@ runs:
$(non_manifest_packages) # > /dev/null $(non_manifest_packages) # > /dev/null
fi fi
sudo rm -rf /opt & GLOBIGNORE="/usr/share/git-core/**/*"
sudo rm -rf "$AGENT_TOOLSDIRECTORY" & sudo rm -rf \
/var/lib/docker/ \
"$AGENT_TOOLSDIRECTORY" \
/opt \
/usr/{local,share} &
sudo rm -rf /var/lib/docker &
sudo rm -rf /usr/{local,share} &
{ {
sudo swapoff -a sudo swapoff -a
sudo rm -f /mnt/swapfile sudo rm -f /mnt/swapfile

View file

@ -8,6 +8,10 @@ on:
permissions: permissions:
contents: write contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs: jobs:
build-minimal: build-minimal:
runs-on: ubuntu-latest runs-on: ubuntu-latest

View file

@ -215,11 +215,11 @@
"systems": "systems_6" "systems": "systems_6"
}, },
"locked": { "locked": {
"lastModified": 1710146030, "lastModified": 1705309234,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -246,24 +246,6 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_7": {
"inputs": {
"systems": "systems_8"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flakey-profile": { "flakey-profile": {
"locked": { "locked": {
"lastModified": 1712898590, "lastModified": 1712898590,
@ -341,11 +323,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1723143710, "lastModified": 1723224800,
"narHash": "sha256-qbjodK+UgnQ2YdtKmuI1XEG84SZlid39rQo6Ap9NTqI=", "narHash": "sha256-2b+cECwR+3FL/ikuZnXE94H8bXdlnYUbhmi1KNpD/tc=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "4b4971c06fb02df00a2bd20b6b47b5d0e7d799a7", "rev": "8b37e81374928856d8fd859b95a62c8bf4211901",
"revCount": 5071, "revCount": 5073,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/hyprwm/Hyprland/" "url": "https://github.com/hyprwm/Hyprland/"
@ -534,11 +516,11 @@
"lix": { "lix": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1723140921, "lastModified": 1723213513,
"narHash": "sha256-WRt4kYvg6cpnatF5zUCIUeurU67M7b4dk3oYdZ0cu9M=", "narHash": "sha256-XbtSx3sxE6rf/D31fBX9d28CuXnokkbHW6tzOEMVfxw=",
"rev": "e03cd8b3a6f70c60f359fd683c2b25f8eba4da0d", "rev": "346e340cbfe450df3709cf5d51e26ba247a2c1ad",
"type": "tarball", "type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/e03cd8b3a6f70c60f359fd683c2b25f8eba4da0d.tar.gz" "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/346e340cbfe450df3709cf5d51e26ba247a2c1ad.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@ -715,11 +697,11 @@
"nixpkgs": "nixpkgs_6" "nixpkgs": "nixpkgs_6"
}, },
"locked": { "locked": {
"lastModified": 1723137378, "lastModified": 1723206805,
"narHash": "sha256-+MkYW9iZwi0D0hLeS5S1Ov3VNJ3twdTlHW7dRKeiCBY=", "narHash": "sha256-C75q+dsWnjObUKukRsFj2VKNRtULvZw/XszfGu97PyY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs-wayland", "repo": "nixpkgs-wayland",
"rev": "b412353cee03010813974408d5ae63f7422b176d", "rev": "f9b6659b7a856ad5c470ce224a0d69696c6f8c73",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -762,11 +744,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1723019560, "lastModified": 1723151389,
"narHash": "sha256-O/kxmybNecC3Efr6ITOdtCzFv90/B2Iiedavj5aRWt0=", "narHash": "sha256-9AVY0ReCmSGXHrlx78+1RrqcDgVSRhHUKDVV1LLBy28=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "f5129fb42b9c262318130a97b47516946da3e7d7", "rev": "13fe00cb6c75461901f072ae62b5805baef9f8b2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -816,11 +798,11 @@
"pixi-source": "pixi-source" "pixi-source": "pixi-source"
}, },
"locked": { "locked": {
"lastModified": 1723049033, "lastModified": 1723219928,
"narHash": "sha256-JMVvLQX+oJ5Gfck419poXJCIKOxWsZGRC23ize6hT6Y=", "narHash": "sha256-QtO96opBSkBNNOdyWhBVIu447rkUqOZAwrYoOy/Jczw=",
"owner": "daylinmorgan", "owner": "daylinmorgan",
"repo": "pixi-flake", "repo": "pixi-flake",
"rev": "7a3e2a90d0f35170c1a95cc194a3ba81acd5b63d", "rev": "df14d187eb1cb453f0d6b83c9cdf8441017b9c20",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -832,16 +814,16 @@
"pixi-source": { "pixi-source": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1723023748, "lastModified": 1723208538,
"narHash": "sha256-m1qlDxZBEDUMNV+gRX2bbEdvBRp4lJv7C2ZZlEUA5Dg=", "narHash": "sha256-37zVmPKAWCw58xA5lUb+WVAW8rRwPF7DZVXUZ8bwP5E=",
"owner": "prefix-dev", "owner": "prefix-dev",
"repo": "pixi", "repo": "pixi",
"rev": "608a65d977b9d87bae71c747f77989ad01c76ada", "rev": "55741aede8e87f176fd6d99eb26bfd3d026c2b7e",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "prefix-dev", "owner": "prefix-dev",
"ref": "v0.27.0", "ref": "v0.27.1",
"repo": "pixi", "repo": "pixi",
"type": "github" "type": "github"
} }
@ -886,7 +868,7 @@
"roc": "roc", "roc": "roc",
"stable": "stable", "stable": "stable",
"tsm": "tsm", "tsm": "tsm",
"zig2nix": "zig2nix", "zig-overlay": "zig-overlay",
"zls": "zls" "zls": "zls"
} }
}, },
@ -1036,21 +1018,6 @@
"type": "github" "type": "github"
} }
}, },
"systems_8": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"treefmt-nix": { "treefmt-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -1128,44 +1095,22 @@
"zig-overlay": { "zig-overlay": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_4", "flake-compat": "flake-compat_4",
"flake-utils": "flake-utils_7",
"nixpkgs": [
"zls",
"nixpkgs"
]
},
"locked": {
"lastModified": 1722600600,
"narHash": "sha256-bRpvmyAvt4OFbQJlmAURyW1To8nlRjNcQJdbOyI1MLE=",
"owner": "mitchellh",
"repo": "zig-overlay",
"rev": "4c95bb8378ca31cc06eba0a9ee0c04851221c193",
"type": "github"
},
"original": {
"owner": "mitchellh",
"repo": "zig-overlay",
"type": "github"
}
},
"zig2nix": {
"inputs": {
"flake-utils": "flake-utils_5", "flake-utils": "flake-utils_5",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1723080195, "lastModified": 1723205416,
"narHash": "sha256-0g2ljOHZZtEZZG9GKusKiNx1+VKm+MEKzCOL2KdkLRg=", "narHash": "sha256-VF5o0Ogk2PyQSs22aQijjqIC0U3Z4mzjTcrsnhSfQ9U=",
"owner": "Cloudef", "owner": "mitchellh",
"repo": "zig2nix", "repo": "zig-overlay",
"rev": "7320da37a4d45afb0aa94d22861a0fe07152c038", "rev": "f4d2e3b5855a66a763e49d8030edbb6b852c4b1a",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "Cloudef", "owner": "mitchellh",
"repo": "zig2nix", "repo": "zig-overlay",
"type": "github" "type": "github"
} }
}, },
@ -1177,7 +1122,9 @@
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"zig-overlay": "zig-overlay" "zig-overlay": [
"zig-overlay"
]
}, },
"locked": { "locked": {
"lastModified": 1722987529, "lastModified": 1722987529,

View file

@ -21,7 +21,7 @@
hyprland.url = "git+https://github.com/hyprwm/Hyprland/?submodules=1"; hyprland.url = "git+https://github.com/hyprwm/Hyprland/?submodules=1";
hyprland-contrib.url = "github:hyprwm/contrib"; hyprland-contrib.url = "github:hyprwm/contrib";
roc.url = "github:roc-lang/roc"; roc.url = "github:roc-lang/roc";
zig2nix.url = "github:Cloudef/zig2nix"; zig-overlay.url = "github:mitchellh/zig-overlay";
zls.url = "github:zigtools/zls"; zls.url = "github:zigtools/zls";
pixi.url = "github:daylinmorgan/pixi-flake"; pixi.url = "github:daylinmorgan/pixi-flake";
@ -36,7 +36,8 @@
roc.inputs.nixpkgs.follows = "nixpkgs"; roc.inputs.nixpkgs.follows = "nixpkgs";
tsm.inputs.nixpkgs.follows = "nixpkgs"; tsm.inputs.nixpkgs.follows = "nixpkgs";
zls.inputs.nixpkgs.follows = "nixpkgs"; zls.inputs.nixpkgs.follows = "nixpkgs";
zig2nix.inputs.nixpkgs.follows = "nixpkgs"; zls.inputs.zig-overlay.follows = "zig-overlay";
zig-overlay.inputs.nixpkgs.follows = "nixpkgs";
}; };
nixConfig = { nixConfig = {

View file

@ -2,10 +2,10 @@
inputs, inputs,
system, system,
lib, lib,
self,
}: }:
let let
inherit (builtins) map; inherit (lib) flakeFromSystem attrValues;
inherit (lib) flakeFromSystem;
flake = flakeFromSystem system; flake = flakeFromSystem system;
pkgs = import inputs.nixpkgs { pkgs = import inputs.nixpkgs {
@ -16,35 +16,33 @@ let
(flake.overlay "nixpkgs-wayland") (flake.overlay "nixpkgs-wayland")
]; ];
}; };
myPackages = map [
"tsm"
"hyprman"
"zls"
] flake.pkg;
hyprPackages = with (flake.pkgs "hyprland"); [ hyprPackages = with (flake.pkgs "hyprland"); [
default default
xdg-desktop-portal-hyprland xdg-desktop-portal-hyprland
]; ];
# TODO: start using pipes once support lands in nixd
# selfPackages = self.packages.${pkgs.system} |> attrValues;
selfPackages = (attrValues self.packages.${pkgs.system});
in in
{ {
makePackages = makePackages =
pkgs.runCommandLocal "build-third-party" pkgs.runCommandLocal "build-third-party"
{ {
src = ./.;
nativeBuildInputs = nativeBuildInputs =
# packages from overlays
(with pkgs; [ (with pkgs; [
pixi
swww swww
nixVersions.stable # nixVersions.git
]) ])
++ [ ++ [
(flake.pkgs "roc").full (flake.pkgs "roc").full
(flake.pkgs "zig2nix").zig.master.bin (flake.pkgs "zig-overlay").master
(flake.pkg "zls")
] ]
++ myPackages ++ hyprPackages
++ hyprPackages; ++ selfPackages;
} }
'' ''
mkdir "$out" mkdir "$out"

View file

@ -3,22 +3,40 @@ let
lib = nixpkgs.lib.extend (import ./extended.nix inputs); lib = nixpkgs.lib.extend (import ./extended.nix inputs);
inherit (builtins) mapAttrs readDir listToAttrs; inherit (builtins) mapAttrs readDir listToAttrs;
inherit (lib) genAttrs; inherit (lib) genAttrs pkgFromSystem pkgsFromSystem;
inherit (import ./find-modules.nix { inherit lib; }) findModulesList; inherit (import ./find-modules.nix { inherit lib; }) findModulesList;
inherit (import ./generators.nix { inherit lib self inputs; }) mkIso mkSystem; inherit (import ./generators.nix { inherit lib self inputs; }) mkIso mkSystem;
#supportedSystems = ["x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin"]; #supportedSystems = ["x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin"];
supportedSystems = [ "x86_64-linux" ]; supportedSystems = [ "x86_64-linux" ];
forAllSystems = f: genAttrs supportedSystems (system: f (import nixpkgs { inherit system; })); forAllSystems = f: genAttrs supportedSystems (system: f (import nixpkgs { inherit system; }));
inheritFlakePkgs =
pkgs: flakes:
listToAttrs (
map (name: {
inherit name;
value = pkgFromSystem pkgs.system name;
}) flakes
);
oizysFlake = { oizysFlake = {
nixosModules = listToAttrs (findModulesList ../modules); nixosModules = listToAttrs (findModulesList ../modules);
nixosConfigurations = mapAttrs (name: _: mkSystem name) (readDir ../hosts); nixosConfigurations = mapAttrs (name: _: mkSystem name) (readDir ../hosts);
packages = forAllSystems (pkgs: rec { packages = forAllSystems (
pkgs:
rec {
default = oizys-cli;
oizys-cli = pkgs.callPackage ../pkgs/oizys { };
iso = mkIso.config.system.build.isoImage; iso = mkIso.config.system.build.isoImage;
oizys-go = pkgs.callPackage ../pkgs/oizys { }; roc = (pkgsFromSystem pkgs.system "roc").full;
default = oizys-go; }
}); // (inheritFlakePkgs pkgs [
"pixi"
"f1multiviewer"
"tsm"
])
);
devShells = forAllSystems (pkgs: { devShells = forAllSystems (pkgs: {
default = pkgs.mkShell { default = pkgs.mkShell {
packages = with pkgs; [ packages = with pkgs; [
@ -30,7 +48,7 @@ let
checks = forAllSystems ( checks = forAllSystems (
pkgs: pkgs:
import ./checks.nix { import ./checks.nix {
inherit inputs lib; inherit inputs lib self;
system = pkgs.system; system = pkgs.system;
} }
); );

View file

@ -9,9 +9,5 @@ let
cfg = config.oizys.languages; cfg = config.oizys.languages;
in in
{ {
config = mkIfIn "nushell" cfg { config = mkIfIn "nushell" cfg { environment.systemPackages = with pkgs; [ nushell ]; };
environment.systemPackages = with pkgs; [
nushell
];
};
} }

View file

@ -7,14 +7,12 @@
let let
inherit (lib) mkIfIn; inherit (lib) mkIfIn;
cfg = config.oizys.languages; cfg = config.oizys.languages;
zig = (flake.pkgs "zig2nix").zig.master.bin;
zls = (flake.pkg "zls").overrideAttrs { nativeBuildInputs = [ zig ]; };
in in
{ {
config = mkIfIn "zig" cfg { config = mkIfIn "zig" cfg {
environment.systemPackages = [ environment.systemPackages = [
zig (flake.pkgs "zig-overlay").master
zls (flake.pkg "zls")
]; ];
}; };
} }

View file

@ -3,7 +3,7 @@
pkgs, pkgs,
lib, lib,
enabled, enabled,
flake, self,
... ...
}: }:
let let
@ -15,10 +15,10 @@ in
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
# nix.package = pkgs.nixVersions.latest; # nix.package = pkgs.nixVersions.latest;
nix = { nix = {
extraOptions = '' settings = {
experimental-features = nix-command flakes experimental-features = [ "nix-command" "flakes" "pipe-operator"];
use-xdg-base-directories = true use-xdg-base-directories = true;
''; };
optimise.automatic = true; optimise.automatic = true;
gc = { gc = {
@ -42,7 +42,7 @@ in
pkgs.nixfmt-rfc-style pkgs.nixfmt-rfc-style
pkgs.nix-output-monitor pkgs.nix-output-monitor
(flake.pkg "self") self.packages.${pkgs.system}.default
]; ];
programs.nix-index-database.comma = enabled; programs.nix-index-database.comma = enabled;

View file

@ -24,5 +24,7 @@ buildGoModule {
installShellCompletion --cmd oizys \ installShellCompletion --cmd oizys \
--zsh <(OIZYS_SKIP_CHECK=true $out/bin/oizys completion zsh) --zsh <(OIZYS_SKIP_CHECK=true $out/bin/oizys completion zsh)
''; '';
meta = {
description = "nix begat oizys";
};
} }

View file

@ -56,7 +56,10 @@ func New() *Oizys {
o.flake = oizysDir o.flake = oizysDir
} }
o.githubSummary = os.Getenv("GITHUB_STEP_SUMMARY") o.githubSummary = os.Getenv("GITHUB_STEP_SUMMARY")
o.inCI = o.githubSummary != "" if o.githubSummary != "" {
o.inCI = true
log.Debug("running oizys in CI mode")
}
o.githubToken = os.Getenv("GITHUB_TOKEN") o.githubToken = os.Getenv("GITHUB_TOKEN")
o.repo = git.NewRepo(o.flake) o.repo = git.NewRepo(o.flake)
return o return o
@ -244,6 +247,35 @@ func NixosRebuild(subcmd string, rest ...string) {
e.ExitWithCommand(cmd) e.ExitWithCommand(cmd)
} }
func splitDrv(drv string) (string, string) {
s := strings.SplitN(drv, "-", 2)
ss := strings.Split(s[0], "/")
hash := ss[len(ss)-1]
drvName := strings.Replace(s[1], ".drv^*", "", 1)
return drvName, hash
}
func writeDervationsToStepSummary(drvs []string) {
tableRows := make([]string, len(drvs))
for i, drv := range drvs {
name, hash := splitDrv(drv)
tableRows[i] = fmt.Sprintf(
"| %s | %s |",
name, hash,
)
}
o.writeToGithubStepSummary(
fmt.Sprintf(`# Building Derivations
| derivation | hash |
|---|---|
%s
`,
strings.Join(tableRows, "\n"),
),
)
}
func NixBuild(minimal bool, rest ...string) { func NixBuild(minimal bool, rest ...string) {
cmd := exec.Command("nix", "build") cmd := exec.Command("nix", "build")
if o.resetCache { if o.resetCache {
@ -257,9 +289,7 @@ func NixBuild(minimal bool, rest ...string) {
os.Exit(0) os.Exit(0)
} }
if o.inCI { if o.inCI {
o.writeToGithubStepSummary("# Building Derivations:\n") writeDervationsToStepSummary(drvs)
// TODO: write as a markdown table with hash + name (without .drv)
o.writeToGithubStepSummary(strings.Join(drvs, "\n"))
} }
cmd.Args = append(cmd.Args, append(drvs, "--no-link")...) cmd.Args = append(cmd.Args, append(drvs, "--no-link")...)
} }