Commit graph

12379 commits

Author SHA1 Message Date
Eelco Dolstra
90b3b31dc2
Bump version 2020-04-10 15:05:30 +02:00
Greg Price
f5941e14e0
installer: Fix terminal colors.
The install-multi-user script uses blue, green, and red colors, as
well as bold and underline, to add helpful formatting that helps
structure its rather voluminous output.

Unfortunately, the terminal escape sequences it uses are not quite
well-formed.  The relevant information is all there, just obscured
by some extra noise, a leading parameter `38`.  Empirically, the
result is:

 * On macOS, in both Terminal.app and iTerm2, the spurious `38` is
   ignored, the rest of the escape sequence is applied, and the colors
   show up as intended.

 * On Linux, in at least gnome-terminal and xterm, the spurious `38`
   and the next parameter after it are ignored, and what's left is
   applied.  So in the sequence `38;4;32`, the 4 (underline) is
   ignored but the 32 (green) takes effect; in a more typical sequence
   like `38;34`, the 34 (blue) is ignored and nothing happens.

These codes are all unchanged since this script's origins as a
Darwin-only script -- so the fact that they work fine in common macOS
terminals goes some way to explain how the bug arose.

Happily, we can make the colors work as intended by just deleting the
extra `38;`.  Tested in all four terminals mentioned above; the new
codes work correctly on all of them, and on the two macOS terminals
they work exactly the same as before.

---

In a bit more technical detail -- perhaps more than anyone, me
included, ever wanted to know, but now that I've gone and learned it
I'll write it down anyway :) -- here's what's happening in these codes:

An ECMA-48 "control sequence" begins with `\033[` aka "CSI", contains
any number of parameters as semicolon-separated decimal numbers (plus
sometimes other wrinkles), and ends with a byte from 0x40..0x7e.  In
our case, with `m` aka "SGR", "Select Graphic Rendition".

An SGR control sequence `\033[...m` sets colors, fonts, text styles,
etc.  In particular a parameter `31` means red, `32` green, `34` blue,
`4` underline, and `0` means reset to normal.  Those are all we use.

There is also a `38`.  This is used for setting colors too... but it
needs arguments.  `38;5;nn` is color nn from a 256-color palette, and
`38;2;rr;gg;bb` has the given RGB values.

There is no meaning defined for `38;1` or `38;34` etc.  On seeing a
parameter `38` followed by an unrecognized argument for it, apparently
some implementations (as seen on macOS) discard only the `38` and
others (as seen on Linux) discard the argument too before resuming.

(cherry picked from commit 7313aa267b5be1e5264e4577e7bc3daec2fef282)
2020-04-10 10:49:33 +02:00
Tobias Möst
a25214a2bc
Fix PR_SET_PDEATHSIG results in Broken pipe (#2395)
The ssh client is lazily started by the first worker thread, that
requires a ssh connection. To avoid the ssh client to be killed, when
the worker process is stopped, do not set PR_SET_PDEATHSIG.

(cherry picked from commit 3e347220c82d1537723f49aa03a93a6f9d294417)
2020-04-10 10:45:45 +02:00
Eelco Dolstra
6d01e9a623
Simplify
(cherry picked from commit d1b238ec3cd74d652af46f577f992c9a44ac8e32)
2020-04-10 10:45:40 +02:00
Profpatsch
7afd8321ed
libstore/ssh: Improve error message on failing execvp
If the `throw` is reached, this means that execvp into `ssh` wasn’t
successful. We can hint at a usual problem, which is a missing `ssh`
executable.

Test with:

```
env PATH= ./result/bin/nix-copy-closure --builders '' unusedhost
```

and the bash version with

```
env PATH= ./result/bin/nix-copy-closure --builders '' localhost
```

(cherry picked from commit 38b29fb72ca4a07afbec1fd5067f59ca7d7f0fab)
2020-04-10 10:45:34 +02:00
mlatus
2007b4a89b fix placeholder not substituted in passAsFile
(cherry picked from commit 12556e570924315eb25ad6057b6c2c5162955e4f)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-04-10 10:39:35 +02:00
Daiderd Jordan
eba0892d08 libexpr: show expression in assertion errors
Includes the expression of the condition in the assertion message if
the assertion failed, making assertions much easier to debug. eg.

    error: assertion (withPython -> (python2Packages != null)) failed at pkgs/tools/security/nmap/default.nix:11:1

(cherry picked from commit 307bcb9a8e7a16bfc451e055a620b766df9d3f7d)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-04-10 10:39:35 +02:00
Cole Helbling
7fee49ef37 Don't retry on "unsupported protocol" error
When encountering an unsupported protocol, there's no need to retry.
Chances are, it won't suddenly be supported between retry attempts;
error instead. Otherwise, you see something like the following:

    $ nix-env -i -f git://git@github.com/foo/bar
    warning: unable to download 'git://git@github.com/foo/bar': Unsupported protocol (1); retrying in 335 ms
    warning: unable to download 'git://git@github.com/foo/bar': Unsupported protocol (1); retrying in 604 ms
    warning: unable to download 'git://git@github.com/foo/bar': Unsupported protocol (1); retrying in 1340 ms
    warning: unable to download 'git://git@github.com/foo/bar': Unsupported protocol (1); retrying in 2685 ms

With this change, you now see:

    $ nix-env -i -f git://git@github.com/foo/bar
    error: unable to download 'git://git@github.com/foo/bar': Unsupported protocol (1)

(cherry picked from commit c976cb0b8ab5d0f2c4ab8c9826fc7db56e2f1b3e)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-04-10 10:39:35 +02:00
Eelco Dolstra
e914cfb06f Downloader: Only write data to the sink on a 200 response
Hopefully fixes #3278.

(cherry picked from commit 1ab8d6ac1861e9405ae34af3deb681020c03e82d)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-04-10 10:39:35 +02:00
tiagofreire-pt
3a6d89aff2
Adding new supported devices (#325) 2020-04-10 09:23:37 +02:00
majuss
a6827caaf7
Removed PyCRC as dependency; implemented CRC16 directly (#327)
* Removed PyCRC as dependency; implemented CRC16 directly

* replace crc16 with integrated function

* Added self to calculate crc
2020-04-10 09:23:15 +02:00
Griffin Smith
100b962b72 emoji fonts 2020-04-08 23:24:31 -04:00
Griffin Smith
c4650be8f0 global gitignoress 2020-04-08 23:24:23 -04:00
Griffin Smith
3bad122d10 more git aliases, plus alias sorting 2020-04-08 23:24:11 -04:00
Griffin Smith
05dfaed88f many more packages 2020-04-08 23:24:01 -04:00
Griffin Smith
bf92d3b740 simplify rofi script 2020-04-08 23:23:49 -04:00
Griffin Smith
fae347ee0f packages for org-mode latex export 2020-04-08 23:23:40 -04:00
Abseil Team
1112609635 Export of internal Abseil changes
--
c162645dba4de6f5f1c8b6e8a29a8da9f9e0aa52 by Derek Mauro <dmauro@google.com>:

Update linux_clang-latest container to one based on Ubuntu 18.04, which has libstdc++-8.

PiperOrigin-RevId: 305287658
GitOrigin-RevId: c162645dba4de6f5f1c8b6e8a29a8da9f9e0aa52
Change-Id: I3f31daf0d8c445008c78f0e10ae6af753cea756b
2020-04-07 21:50:15 -04:00
Abseil Team
73ea9a9572 Export of internal Abseil changes
--
87cdfd6aa40941e116cd79ef70f9a7a8271db163 by Abseil Team <absl-team@google.com>:

Fix a typo in random.h API documentation.

PiperOrigin-RevId: 305176308

--
8a38e1df49a18a954daca3ce617fd69045ff4c19 by Derek Mauro <dmauro@google.com>:

Import GitHub #647: Allow external add_subdirectory for using GoogleTest

PiperOrigin-RevId: 305156797

--
b1a2441536d4964fbe4e2329e74c322e6c41a4e6 by Gennadiy Rozental <rogeeff@google.com>:

temporary roll back.

PiperOrigin-RevId: 305149619

--
c78767577264348d2f881893f9407aadfe73ab75 by CJ Johnson <johnsoncj@google.com>:

Rollback update to linux_clang-latest container while investigating
a compiler bug.

PiperOrigin-RevId: 304897689

--
3c6fd38f53d2e982569fdba4043f75271c7b5de4 by Derek Mauro <dmauro@google.com>:

Update linux_clang-latest container to one based on Ubuntu 18.04,
which has libstdc++-8.

PiperOrigin-RevId: 304885120
GitOrigin-RevId: 87cdfd6aa40941e116cd79ef70f9a7a8271db163
Change-Id: Iefa6efee93907ec0eecb8add804c5cc2f052b64d
2020-04-07 00:10:49 -04:00
Adrian Imboden
c01b9916e7
Add option to use an externally provided GoogleTest target (for usage of abseil as add_subdirectory target) (#647) 2020-04-06 20:50:57 -04:00
Vincent Ambo
afc729c419 feat(tools/emacs): Install polymode & protobuf-mode
... how did I not have protobuf-mode installed? What?
2020-04-06 23:19:52 +01:00
Griffin Smith
a566e0208f Swap caps+escape and alt+super
only on chupacabra laptop keyboard
2020-04-05 15:26:16 -04:00
csabavirag
2bc7b06c69
Adding support for LB1 (RGB Light Bulb - 0x60e8) (#332) 2020-04-05 19:14:47 +02:00
Felipe Martins Diel
26a4565e58
Add support for RM4 0x62bc (#331)
* Add support for RM4 0x62bc

* Fix device name
2020-04-05 19:14:09 +02:00
Vincent Ambo
e3864f3b85 feat(tools/emacs): Title the TVL window correctly 2020-04-04 22:27:06 +01:00
Abseil Team
d43b7997c0 Export of internal Abseil changes
--
7a9e8d95f795be037aa2dce4e44809ad0166aaec by Samuel Benzaquen <sbenza@google.com>:

Make end() iterator be nullptr.
This makes the creation of and comparison with end() smaller and faster. `find()!=end()` becomes leaner.

PiperOrigin-RevId: 304681605

--
8f3024979446b391b79b1b60ada7d00a504d6aa6 by Derek Mauro <dmauro@google.com>:

Fix Bazel's distdir detection and prefer double brackets (bash recommendation)

PiperOrigin-RevId: 304615725

--
f1d709cb4b2b3743d548b814dd19602fb057a5e6 by Abseil Team <absl-team@google.com>:

Internal change

PiperOrigin-RevId: 304570545

--
2bbfa5bda52057e1938a96c286ad33ff64e535e0 by Gennadiy Rozental <rogeeff@google.com>:

Implement general storage case as aligned buffer.

Aside from eliminating dynamic memory allocation for flag storage, we also saving 11 bytes per int flag, 15 bytes per double and string flag.

PiperOrigin-RevId: 304511965

--
9e1aed2a95d7d060f8b906fe8c67fc3ba537b521 by Derek Mauro <dmauro@google.com>:

Use reserve to make a bad_alloc less likely in endian_test

This happened once and shouldn't have happened, so it was probably
just a flake, but might as well make this change.

PiperOrigin-RevId: 304505572

--
c2faf22ba2d4d66753390e6959494214895581f0 by Gennadiy Rozental <rogeeff@google.com>:

Use anonymous bit fields to enforce separation between const and mutable bit fields.

We also move init_control field (which is now safe) to save 8 bytes per flag (based on size_tester output)

PiperOrigin-RevId: 304505215

--
7ec51250a84bb03e826b3caad64431e91748186a by Krzysztof Kosiński <krzysio@google.com>:

Change the buffer size in AppendNumberUnit to constexpr.

PiperOrigin-RevId: 304492779

--
a6c8db1be4f421ea7b7c02f7a01b4f48bad61883 by Gennadiy Rozental <rogeeff@google.com>:

Add test cases for two word storage.

Some additional tests were added for other storage kinds as well. These came about after I started to look into a coverage output and noticed that some cases (like reading flag values via reflection) were not covered by this test at all. It does not make sense to just add tests for two word values, so I've covered other storage kinds as well.

PiperOrigin-RevId: 304432511

--
2644ecc32e1215cd6451efcb2f1054fd77e7c812 by Abseil Team <absl-team@google.com>:

Internal change

PiperOrigin-RevId: 304254681

--
4949a6b20c2bb4b9b2c811f439ccb893abc08df5 by Abseil Team <absl-team@google.com>:

Internal change

PiperOrigin-RevId: 304250274
GitOrigin-RevId: 7a9e8d95f795be037aa2dce4e44809ad0166aaec
Change-Id: I01623de87355bec5cf87cc5932a1ca44cade9aae
2020-04-04 17:08:50 -04:00
Vincent Ambo
e90e3153f8 chore(ops/nixos/camden): Enable HSTS headers on *.tazj.in 2020-04-04 21:49:03 +01:00
Vincent Ambo
f9063bc75d chore(third_party): Bump telega version 2020-04-04 21:34:05 +01:00
Vincent Ambo
e9aa5ae463 fix(tools/emacs): Include date in scrot screenshot names 2020-04-04 20:05:32 +01:00
Griffin Smith
07d4cf66eb lots of vimrc cleanup 2020-04-04 11:45:57 -04:00
Griffin Smith
fe0347d1a3 ncg alias 2020-04-04 11:45:46 -04:00
Griffin Smith
a8e42d6e6d binding for peek 2020-04-04 11:45:37 -04:00
Griffin Smith
4da947bf91 lots of extra packages 2020-04-04 11:38:27 -04:00
Griffin Smith
4399b2ac44 rofi-pass config 2020-04-04 11:38:03 -04:00
Vincent Ambo
f43294cd90 chore(ops/nixos/camden): Use upstream tailscale module 2020-04-04 13:17:18 +01:00
Vincent Ambo
de81e087d4 chore(ops/nixos/nugget): Use upstream tailscale module 2020-04-04 13:16:39 +01:00
Vincent Ambo
0f3d11f541 chore(third_party): Remove Tailscale derivation
This is now part of nixpkgs itself.
2020-04-04 13:02:57 +01:00
Vincent Ambo
a0cb4703e8 chore(third_party/default): Bump NixOS channel to nixos-20.03 2020-04-04 13:01:42 +01:00
Vincent Ambo
24151f06dd chore(fun/tvl): Increase framerate to 60fps & limit queue size
The queue size setting will drop frames if the encoding starts to lag
behind, which should prevent delay from being introduced on the
serving side.

Maybe.
2020-04-04 02:54:49 +01:00
Vincent Ambo
9caf09a244 feat(ops/nixos/camden): Enable RTMP support in nginx
This makes it possible to live-stream various things at rtmp://tazj.in/tvl
2020-04-04 01:39:37 +00:00
Vincent Ambo
c3de37f54d fix(ops/nixos/nugget): Point camden host at new internal IP
This changed due to the router replacement.
2020-04-04 02:36:20 +01:00
Vincent Ambo
a89d22eb75 chore(ops/nixos/nugget): Install ffmpeg (including libnpp support) 2020-04-04 02:36:20 +01:00
Vincent Ambo
d2d7385833 feat(ops/nixos/nugget): Add module for v4l2loopback support
This kernel module creates a fake video input device to which I can
stream various things, such as screen grabs or qyliss' video stream
for TVL.
2020-04-04 02:36:20 +01:00
Vincent Ambo
0473307f87 feat(third_party/ffmpeg): Add "libnpp" support to ffmpeg
Builds ffmpeg with CUDA Toolkit as a dependency, which includes a
library called "libnpp" that provides something related to hardware
accelerated video stream resizing.

v0v
2020-04-04 02:36:20 +01:00
Vincent Ambo
bcfa11599d feat(fun/tvl): Implement hardware-accelerated stream rescaling
By randomly copy & pasting options that are impenetrable to mere
mortals from NVIDIA's developer blog and a bunch of gists scattered
throughout the internet, Andi and I managed to "get this to work".

The idea is that the x11grab stream should be resized into 720p (which
is the maximum supported by Google Meet), but with hardware
acceleration.
2020-04-04 02:36:20 +01:00
Vincent Ambo
f8703d12da feat(fun/tvl): Initial working ffmpeg -> nginx stream command 2020-04-04 02:36:20 +01:00
Vincent Ambo
9b606e2c4e feat(ops/nixos/nugget): Install clang & friends system-wide 2020-04-04 02:36:20 +01:00
Vincent Ambo
a7342448bb chore(third_party): Remove ormolu 2020-04-02 22:04:39 +01:00
Vincent Ambo
f99fc009fc fix(tools/emacs): Fix notmuch-show-open-or-close-subthread
Accidentally dropped a key parameter, also restored interactive
functionality via prefix arguments..
2020-04-02 21:59:18 +01:00
Griffin Smith
74ad2caf32 git merge conflictstyle diff3
why is this not the default
2020-04-02 11:57:18 -04:00