jiebi/CodeConvo huggingface dataset:
Code change:
Project description A program that allows you to set the terminal theme from the command line and scripts. ! Metadata homepage URL: source URL: license: MIT platforms: linux, macos

Related discussion:
text: <ins> { lib, stdenv, fetchFromGitHub, makeWrapper, coreutils, gawk }: stdenv.mkDerivation rec { pname = "theme-sh"; version = "1.1.5"; src = fetchFromGitHub { owner = "lemnos"; repo = "theme.sh"; rev = "v${version}"; sha256 = "sha256-zDw8WGBzO4/HRCgN7yoUxT49ibTz+QkRa5WpBQbl1nI="; }; nativeBuildInputs = [ makeWrapper ]; dontBuild = true; installPhase = '' runHook preInstall mkdir -p $out/bin install -Dm755 bin/theme.sh $out/bin wrapProgram $out/bin/theme.sh  --prefix PATH : ${lib.makeBinPath [ coreutils gawk ]} runHook postInstall ''; meta = with lib; { description = "A script which lets you set your $terminal theme"; homepage = "https://github.com/lemnos/theme.sh"; license = licenses.mit; platforms = platforms.all; maintainers = with maintainers; [ figsoda ]; mainProgram = "theme.sh"; }; } </ins>
Code change:
Project description A program that allows you to set the terminal theme from the command line and scripts. ! Metadata homepage URL: source URL: license: MIT platforms: linux, macos

Related discussion:
text: thefuck = python3Packages.callPackage ../tools/misc/thefuck { }; <ins> theme-sh = callPackage ../tools/misc/theme-sh { }; </ins> thicket = callPackage ../applications/version-management/git-and-tools/thicket { }; thiefmd = callPackage ../applications/editors/thiefmd { };
Code change:
There are in-the-wild tarballs, especially in NPM registry, whose directory entries has permissions instead of . GNU Tar is unable to unpack them, while some other unpackers (WinZip, 7-Zip, ...) are We may need to patch or have a fall back unpacker to handle gnutar failures. Error about sha256, but it fails earlier on unpack phase.
The error caused by , , , .. directories are created with permissions which prevents creating files inside. That is clearly a bug - it should set relaxed permission for unpacking time. But taking into account the age of that software it is unlikely to be fixed upstream, so a modern replacement or fallback would be desired.
Perhaps bsdtar is an option. It also supports additional archive formats.
replicated. this should be fixable by passing to ensure all files are marked as writable.
was merged, tracks when it hits channels. This issue can be closed.

Related discussion:
text: # disregard the error code from the xz invocation. Otherwise, # it can happen that tar exits earlier, causing xz to fail # from a SIGPIPE. <del> (XZ_OPT="--threads=$NIX_BUILD_CORES" xz -d < "$fn"; true) | tar xf - --warning=no-timestamp </del> <ins> (XZ_OPT="--threads=$NIX_BUILD_CORES" xz -d < "$fn"; true) | tar xf - --mode=+w --warning=no-timestamp </ins> ;; *.tar | *.tar.* | *.tgz | *.tbz2 | *.tbz) # GNU tar can automatically select the decompression method # (info "(tar) gzip"). <del> tar xf "$fn" --warning=no-timestamp </del> <ins> tar xf "$fn" --mode=+w --warning=no-timestamp </ins> ;; *) return 1
Code change:
It's all about client libs (mis)trusting the server, so no security problem for most setups, but still &ndash; we should fix them. I propose to wait for actual releases (assumed within days).
Staged.

Related discussion:
text: { stdenv, fetchurl, gmp }: stdenv.mkDerivation rec { <del> name = "ikarus-0.0.3"; </del> <ins> version = "0.0.3"; name = "ikarus-${version}"; </ins> src = fetchurl { <del> url = "http://ikarus-scheme.org/${name}.tar.gz"; </del> <ins> url = "http://launchpad.net/ikarus/0.0/${version}/+download/${name}.tar.gz"; </ins> sha256 = "0d4vqwqfnj39l0gar2di021kcf6bfpkc6g40yapkmxm6sxpdcvjv"; };
Code change:
Project description Whisper is a general-purpose speech recognition model. It is trained on a large dataset of diverse audio and is also a multi-task model that can perform multilingual speech recognition as well as speech translation and language identification. Metadata homepage URL: source URL: license: mit platforms: all
PTAL.

Related discussion:
text: <ins> { lib , fetchFromGitHub , buildPythonPackage # propagates , numpy , torch , tqdm , more-itertools , transformers , ffmpeg-python # tests , pytestCheckHook }: buildPythonPackage rec { pname = "whisper"; version = "unstable-2022-09-23"; format = "setuptools"; src = fetchFromGitHub { owner = "openai"; repo = pname; rev = "8cf36f3508c9acd341a45eb2364239a3d81458b9"; hash = "sha256-2RH8eM/SezqFJltelv5AjQEGpqXm980u57vrlkTEUvQ="; }; postPatch = '' # Rely on the ffmpeg path already patched into the ffmpeg-python library substituteInPlace whisper/audio.py  --replace 'run(cmd="ffmpeg",' 'run(' ''; propagatedBuildInputs = [ numpy torch tqdm more-itertools transformers ffmpeg-python ]; preCheck = '' export HOME=$TMPDIR ''; checkInputs = [ pytestCheckHook ]; disabledTests = [ # requires network access to download models "test_transcribe" ]; meta = with lib; { description = "General-purpose speech recognition model"; homepage = "https://github.com/openai/whisper"; license = licenses.mit; maintainers = with maintainers; [ hexa ]; }; } </ins>
Code change:
Project description Whisper is a general-purpose speech recognition model. It is trained on a large dataset of diverse audio and is also a multi-task model that can perform multilingual speech recognition as well as speech translation and language identification. Metadata homepage URL: source URL: license: mit platforms: all
PTAL.

Related discussion:
text: openai = with python3Packages; toPythonApplication openai; <ins> openai-whisper = with python3.pkgs; toPythonApplication openai-whisper; </ins> opengrok = callPackage ../development/tools/misc/opengrok { }; openocd = callPackage ../development/embedded/openocd { };
Code change:
Project description Whisper is a general-purpose speech recognition model. It is trained on a large dataset of diverse audio and is also a multi-task model that can perform multilingual speech recognition as well as speech translation and language identification. Metadata homepage URL: source URL: license: mit platforms: all
PTAL.

Related discussion:
text: open-meteo = callPackage ../development/python-modules/open-meteo { }; <ins> openai-whisper = callPackage ../development/python-modules/openai-whisper { }; </ins> openant = callPackage ../development/python-modules/openant { }; openapi-schema-validator = callPackage ../development/python-modules/openapi-schema-validator { };
Code change:
User creation is broken: Invidious creates misnamed material views in the database leading to a crash. More precisely, creating a first user works, but a crash happens when creating a second user: Steps to reproduce the behavior: in your configuration your invidious instance in your browser a first account , and create a second account --It crashes with the following error message No crash happen Two material views have been properly created, named and instead of a single one named . ! I opened an issue upstream: The maintainer suggested to try with a newer version of invidious.
It seems that this can be fixed by passing the to . Source:

Related discussion:
text: shardsFile = ./shards.nix; crystalBinaries.invidious = { src = "src/invidious.cr"; <del> options = [ "--release" "--progress" "--verbose" "--no-debug" "-Dskip_videojs_download" ]; </del> <ins> options = [ "--release" "--progress" "--verbose" "--no-debug" "-Dskip_videojs_download" "-Ddisable_quic" ]; </ins> }; postConfigure = ''
Code change:
Same on nixpkgs-unstable:
see
also see
I tried cherry-picking both PR's but still unable to build on . I'm on 5.19.16 kernel.
FYI, your kernel doesn't matter. The headers used here are a separate thing.

Related discussion:
text: <ins> diff --git a/vendor/adb/client/usb_linux.cpp b/vendor/adb/client/usb_linux.cpp index 25a50bd..0d09c47 100644 --- a/vendor/adb/client/usb_linux.cpp +++ b/vendor/adb/client/usb_linux.cpp @@ -59,8 +59,15 @@ using namespace std::literals; #define DBGX(x...) struct usb_handle { +    usb_handle() : urb_in(0), urb_out(0) { +      this->urb_in = new usbdevfs_urb; +      this->urb_out = new usbdevfs_urb; +    } + ~usb_handle() { if (fd != -1) unix_close(fd); +      delete urb_in; +      delete urb_out; } std::string path; @@ -72,8 +79,8 @@ struct usb_handle { unsigned zero_mask; unsigned writeable = 1; -    usbdevfs_urb urb_in; -    usbdevfs_urb urb_out; +    usbdevfs_urb *urb_in; +    usbdevfs_urb *urb_out; bool urb_in_busy = false; bool urb_out_busy = false; @@ -304,7 +311,7 @@ static int usb_bulk_write(usb_handle* h, const void* data, int len) { std::unique_lock<std::mutex> lock(h->mutex); D("++ usb_bulk_write ++"); -    usbdevfs_urb* urb = &h->urb_out; +    usbdevfs_urb* urb = h->urb_out; memset(urb, 0, sizeof(*urb)); urb->type = USBDEVFS_URB_TYPE_BULK; urb->endpoint = h->ep_out; @@ -343,7 +350,7 @@ static int usb_bulk_read(usb_handle* h, void* data, int len) { std::unique_lock<std::mutex> lock(h->mutex); D("++ usb_bulk_read ++"); -    usbdevfs_urb* urb = &h->urb_in; +    usbdevfs_urb* urb = h->urb_in; memset(urb, 0, sizeof(*urb)); urb->type = USBDEVFS_URB_TYPE_BULK; urb->endpoint = h->ep_in; @@ -388,7 +395,7 @@ static int usb_bulk_read(usb_handle* h, void* data, int len) { } D("[ urb @%p status = %d, actual = %d ]", out, out->status, out->actual_length); -        if (out == &h->urb_in) { +        if (out == h->urb_in) { D("[ reap urb - IN complete ]"); h->urb_in_busy = false; if (urb->status != 0) { @@ -397,7 +404,7 @@ static int usb_bulk_read(usb_handle* h, void* data, int len) { } return urb->actual_length; } -        if (out == &h->urb_out) { +        if (out == h->urb_out) { D("[ reap urb - OUT compelete ]"); h->urb_out_busy = false; h->cv.notify_all(); @@ -501,10 +508,10 @@ void usb_kick(usb_handle* h) { ** but this ensures that a reader blocked on REAPURB ** will get unblocked */ -            ioctl(h->fd, USBDEVFS_DISCARDURB, &h->urb_in); -            ioctl(h->fd, USBDEVFS_DISCARDURB, &h->urb_out); -            h->urb_in.status = -ENODEV; -            h->urb_out.status = -ENODEV; +            ioctl(h->fd, USBDEVFS_DISCARDURB, h->urb_in); +            ioctl(h->fd, USBDEVFS_DISCARDURB, h->urb_out); +            h->urb_in->status = -ENODEV; +            h->urb_out->status = -ENODEV; h->urb_in_busy = false; h->urb_out_busy = false; h->cv.notify_all(); </ins>
Code change:
Same on nixpkgs-unstable:
see
also see
I tried cherry-picking both PR's but still unable to build on . I'm on 5.19.16 kernel.
FYI, your kernel doesn't matter. The headers used here are a separate thing.

Related discussion:
text: revert = true; excludes = [ "vendor/fmtlib" ]; }) <ins> ./android-tools-kernel-headers-6.0.diff </ins> ]; nativeBuildInputs = [ cmake perl go ];
Code change:
The symlinking between the multiple outputs of seems to prevent it from installing. I was looking to install it to have the dig command available. - System: 17.03pre94050. (Gorilla) Nix version: nix-env (Nix) 1.11.4 Nixpkgs version: "17.03pre94050."
11.4 still doesn't contain :-( How could we have that as default in 16.09? I consider it quite an important feature for + multiple outputs. would you be against porting that PR to 1.11.5 and making that default in 16.09 and master?
+1 for a 1.11.5 Nix release in general :)
Since this seems to be an issue for multiple packages, I am raising the severity on here.
Looks like the same kind of issue as So +1 for Nix 1.11.5 on NixOS 16.09, if that's what it takes to fix this.
ping again about nix-1.11.5 (my comment above).

Related discussion:
text: chown ${bindUser} /var/run/named ''; <del> script = "${pkgs.bind.bin}/sbin/named -u ${bindUser} ${optionalString cfg.ipv4Only "-4"} -c ${cfg.configFile} -f"; </del> <ins> script = "${pkgs.bind.out}/sbin/named -u ${bindUser} ${optionalString cfg.ipv4Only "-4"} -c ${cfg.configFile} -f"; </ins> unitConfig.Documentation = "man:named(8)"; }; };
Code change:
The symlinking between the multiple outputs of seems to prevent it from installing. I was looking to install it to have the dig command available. - System: 17.03pre94050. (Gorilla) Nix version: nix-env (Nix) 1.11.4 Nixpkgs version: "17.03pre94050."
11.4 still doesn't contain :-( How could we have that as default in 16.09? I consider it quite an important feature for + multiple outputs. would you be against porting that PR to 1.11.5 and making that default in 16.09 and master?
+1 for a 1.11.5 Nix release in general :)
Since this seems to be an issue for multiple packages, I am raising the severity on here.
Looks like the same kind of issue as So +1 for Nix 1.11.5 on NixOS 16.09, if that's what it takes to fix this.
ping again about nix-1.11.5 (my comment above).

Related discussion:
text: sha256 = "11lxkb7d79c75scrs28q4xmr0ii2li69zj1c650al3qxir8yf754"; }; <del> outputs = [ "bin" "lib" "dev" "out" "man" "dnsutils" "host" ]; </del> <ins> outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ]; </ins> patches = [ ./dont-keep-configure-flags.patch ./remove-mkdir-var.patch ] ++ stdenv.lib.optional stdenv.isDarwin ./darwin-openssl-linking-fix.patch;
Code change:
The symlinking between the multiple outputs of seems to prevent it from installing. I was looking to install it to have the dig command available. - System: 17.03pre94050. (Gorilla) Nix version: nix-env (Nix) 1.11.4 Nixpkgs version: "17.03pre94050."
11.4 still doesn't contain :-( How could we have that as default in 16.09? I consider it quite an important feature for + multiple outputs. would you be against porting that PR to 1.11.5 and making that default in 16.09 and master?
+1 for a 1.11.5 Nix release in general :)
Since this seems to be an issue for multiple packages, I am raising the severity on here.
Looks like the same kind of issue as So +1 for Nix 1.11.5 on NixOS 16.09, if that's what it takes to fix this.
ping again about nix-1.11.5 (my comment above).

Related discussion:
text: moveToOutput bin/isc-config.sh $dev moveToOutput bin/host $host <del> ln -sf $host/bin/host $bin/bin </del> moveToOutput bin/dig $dnsutils moveToOutput bin/nslookup $dnsutils moveToOutput bin/nsupdate $dnsutils <del> ln -sf $dnsutils/bin/{dig,nslookup,nsupdate} $bin/bin ln -sf $host/bin/host $dnsutils/bin </del> for f in "$lib/lib/"*.la "$dev/bin/"{isc-config.sh,bind*-config}; do sed -i "$f" -e 's|-L${openssl.dev}|-L${openssl.out}|g'
Code change:
The symlinking between the multiple outputs of seems to prevent it from installing. I was looking to install it to have the dig command available. - System: 17.03pre94050. (Gorilla) Nix version: nix-env (Nix) 1.11.4 Nixpkgs version: "17.03pre94050."
11.4 still doesn't contain :-( How could we have that as default in 16.09? I consider it quite an important feature for + multiple outputs. would you be against porting that PR to 1.11.5 and making that default in 16.09 and master?
+1 for a 1.11.5 Nix release in general :)
Since this seems to be an issue for multiple packages, I am raising the severity on here.
Looks like the same kind of issue as So +1 for Nix 1.11.5 on NixOS 16.09, if that's what it takes to fix this.
ping again about nix-1.11.5 (my comment above).

Related discussion:
text: maintainers = with stdenv.lib.maintainers; [viric peti]; platforms = with stdenv.lib.platforms; unix; <ins> outputsToInstall = [ "out" "dnsutils" "host" ]; </ins> }; }
Code change:
Steps to reproduce the behavior: streamdeck-ui I'm unsure why this happens and how to fix it so I would need help on this Please run and paste the result. (unstable - )
Looks like broke with That PR is full of mines that make it challenging to bisect fully.

Related discussion:
text: <del> { lib, buildPythonPackage, fetchPypi </del> <ins> { lib , buildPythonPackage , fetchPypi </ins> , hypothesis , poetry , pydantic , pytest <ins> , pythonOlder </ins> }: buildPythonPackage rec {
Code change:
Steps to reproduce the behavior: streamdeck-ui I'm unsure why this happens and how to fix it so I would need help on this Please run and paste the result. (unstable - )
Looks like broke with That PR is full of mines that make it challenging to bisect fully.

Related discussion:
text: version = "1.1.4"; format = "pyproject"; <ins> disabled = pythonOlder "3.6"; </ins> src = fetchPypi { inherit pname version; <del> sha256 = "1c9jksza0gg2gva3liy0s8riv6imjavhnqw05m8l5660knq2yb2y"; </del> <ins> hash = "sha256-XiwvsJ3AmEJRLYBjC7eSNZodM9LARzrUfuI9oL6eMrE="; </ins> }; <ins> postPatch = '' # https://github.com/timothycrosley/hypothesis-auto/pull/20 substituteInPlace pyproject.toml  --replace 'pydantic = ">=0.32.2<2.0.0"' 'pydantic = ">=0.32.2, <2.0.0"'  --replace 'hypothesis = ">=4.36<6.0.0"' 'hypothesis = "*"' ''; </ins> nativeBuildInputs = [ poetry ];
Code change:
Steps to reproduce the behavior: streamdeck-ui I'm unsure why this happens and how to fix it so I would need help on this Please run and paste the result. (unstable - )
Looks like broke with That PR is full of mines that make it challenging to bisect fully.

Related discussion:
text: pytest ]; <del> pythonImportsCheck = [ "hypothesis_auto" ]; </del> <ins> pythonImportsCheck = [ "hypothesis_auto" ]; </ins> meta = with lib; { description = "Enables fully automatic tests for type annotated functions";
Code change:
The xen-bridge.service serves an invalid netmask over DHCP to VMs. Start with a NixOS host with Xen dom0 enabled using the following option in . By default, the VMs’ network controllers will be connected to a bridge set up by the xen-bridge.service. The network on is set to , but the VMs set up their networks as . The VMs get their networks configured using DHCP, through dnsmasq running on dom0. Looking at the DHCP exchange using reveals that the netmask sent to the clients (VMs) is instead of , as DHCP option 1 (shown below). The DHCP client on the VM side is likely ignoring the invalid netmask, and guessing a netmask instead. The problem can be fixed by removing the wrong netmask from the dnsmasq configuration file. Then, dnsmasq will infer the correct netmask by looking at how xenbr0 is configured. Will submit a PR. System: Nix version: Nixpkgs version:
The issue no longer appears
Dont know if related to this (not sure if it is a bug really) but if you set the mask for the aforementioned bridge, it set it incorrectly. I tried to set it as 24, get 255.0.0.0 as a result... Both 16.04 and this new 17.03 have this behaviour. I understand that this is not the best place to ask, but if what i am doing is producing the expected behaviour, I will apreciate any guidance on using it correctly.
Could you explain your issue in more detail, for example how to reproduce it? I am not sure how you are setting the net mask.
Hi, i am just using the configurations on section of configuration options. so: Setting to some valid ip adress works but Setting to anything other than the default gives a 8 bit mask. I must say that i used xen on Ubuntu, but I am very new to nixos, so can't say for sure that i'm not doing something else wrong.
Can't see what could be wrong. Anyway, this looks like a separate issue that should be reported. There might be something wrong with the scripts under in .
Opened at .

Related discussion:
text: domain-needed dhcp-hostsfile=/var/run/xen/dnsmasq.etherfile dhcp-authoritative <del> dhcp-range=$XEN_BRIDGE_IP_RANGE_START,$XEN_BRIDGE_IP_RANGE_END,$XEN_BRIDGE_NETWORK_ADDRESS </del> <ins> dhcp-range=$XEN_BRIDGE_IP_RANGE_START,$XEN_BRIDGE_IP_RANGE_END </ins> dhcp-no-override no-ping dhcp-leasefile=/var/run/xen/dnsmasq.leasefile
Code change:
<!-- Note that these are hard requirements --<!-- You can use the "Go to file" functionality on GitHub to find the package Then you can go to the history for this package Find the latest "packagename: oldversion -newversion" commit The "newversion" is the current version of the package --- : yes, <!-- Type the name of your package and try to find an open pull request for the package If you find an open pull request, you can review it! There's a high chance that you'll have the new version right away while helping the community! --- name: <!-- The current version can be found easily with the same process as above for checking the master branch If an open PR is present for the package, take this version as the current one and link to the PR --current version: 2.7.2 desired version: (cf. PyPI) <!-- Search your package here: If no maintainer is listed for your package, tag the person that last updated the package --maintainers: Please tag this issue in your PR.

Related discussion:
text: python3Packages.buildPythonApplication rec { pname = "scdl"; <del> version = "2.7.2"; </del> <ins> version = "2.7.3"; format = "setuptools"; </ins> src = python3Packages.fetchPypi { inherit pname version; <del> sha256 = "7d6212591a5bccf017424f732535475fb9ae3bab26a4fb5bc36064962d33f8e0"; </del> <ins> sha256 = "60284b7b058040d4847f2e4b0ab906b10e959d51f976a0188641e8e10685474f"; </ins> }; propagatedBuildInputs = with python3Packages; [
Code change:
When multiple ZFS filesystems are present and configured to import, each individual attempts to load the keys for ALL pools/datasets, instead of just its own. A clear and concise description of what the bug is. Steps to reproduce the behavior: encrypted zfs filesystems in your NixOS configuration. & Reboot All targets complete successfully The below snippet from the services's script. It's 'ing, and just looping over all pools/datasets. Instead, it should just specify the name directly in the command. (Generated in ) Please run and paste the result. system: host os: multi-user?: sandbox: version: nixpkgs:
Can you post the relevant Nix config you used? Do you have set to anything?
Yep, here's my zfs config. uses (unlocked at boot) is unencrypted and have on-disk
Ok, I think this is fundamentally the same issue as . Basically, when there are multiple pools and is a list, we accidentally run with no dataset argument in the import service for pools that have no datasets in the list. So those services end up iterating over all datasets on all pools instead of none.

Related discussion:
text: in map (x: "${mountPoint x}.mount") (getPoolFilesystems pool); <del> getKeyLocations = pool: if isBool cfgZfs.requestEncryptionCredentials then "${cfgZfs.package}/sbin/zfs list -rHo name,keylocation,keystatus ${pool}" else "${cfgZfs.package}/sbin/zfs list -Ho name,keylocation,keystatus ${toString (filter (x: datasetToPool x == pool) cfgZfs.requestEncryptionCredentials)}"; </del> <ins> getKeyLocations = pool: if isBool cfgZfs.requestEncryptionCredentials then { hasKeys = cfgZfs.requestEncryptionCredentials; command = "${cfgZfs.package}/sbin/zfs list -rHo name,keylocation,keystatus ${pool}"; } else let keys = filter (x: datasetToPool x == pool) cfgZfs.requestEncryptionCredentials; in { hasKeys = keys != []; command = "${cfgZfs.package}/sbin/zfs list -Ho name,keylocation,keystatus ${toString keys}"; }; </ins> createImportService = { pool, systemd, force, prefix ? "" }: nameValuePair "zfs-import-${pool}" {
Code change:
When multiple ZFS filesystems are present and configured to import, each individual attempts to load the keys for ALL pools/datasets, instead of just its own. A clear and concise description of what the bug is. Steps to reproduce the behavior: encrypted zfs filesystems in your NixOS configuration. & Reboot All targets complete successfully The below snippet from the services's script. It's 'ing, and just looping over all pools/datasets. Instead, it should just specify the name directly in the command. (Generated in ) Please run and paste the result. system: host os: multi-user?: sandbox: version: nixpkgs:
Can you post the relevant Nix config you used? Do you have set to anything?
Yep, here's my zfs config. uses (unlocked at boot) is unencrypted and have on-disk
Ok, I think this is fundamentally the same issue as . Basically, when there are multiple pools and is a list, we accidentally run with no dataset argument in the import service for pools that have no datasets in the list. So those services end up iterating over all datasets on all pools instead of none.

Related discussion:
text: RemainAfterExit = true; }; environment.ZFS_FORCE = optionalString force "-f"; <del> script = (importLib { </del> <ins> script = let keyLocations = getKeyLocations pool; in (importLib { </ins> # See comments at importLib definition. zpoolCmd = "${cfgZfs.package}/sbin/zpool"; awkCmd = "${pkgs.gawk}/bin/awk";