Commit Graph
100 Commits
Author SHA1 Message Date
Your Name 76e99647cd services.zfs.expandOnBoot: support expanding pools on boot
Either enumerating a list of pools to expand or expanding
all pools on boot.

(cherry picked from commit 4bb4bcc30c7f481581ef462ed7b1dcca71693717)
2021-09-13 17:42:07 +00:00
Graham Christensen 337eb213cf amazon images: extend the image-info.json to have a disks object
Having a disks object with a dictionary of all the disks and their
properties makes it easier to process multi-disk images.

Note the rename of `label` to `system_label` is because `$label`i
is something of a special token to jq.

(cherry picked from commit 71b3d18181974523ef7264106a4bf213a3103439)
2021-09-13 16:20:47 +00:00
Graham Christensen a989fd1885 NixOS/amazonImageZfs: init
Introduce an AWS EC2 AMI which supports aarch64 and x86_64 with a ZFS
root.

This uses `make-zfs-image` which implies two EBS volumes are needed
inside EC2, one for boot, one for root. It should not matter which
is identified `xvda` and which is `xvdb`, though I have always
uploaded `boot` as `xvda`.

(cherry picked from commit bd38b059eae05871579b2dfd51cd41d058b6a1ec)
2021-09-13 16:20:46 +00:00
Graham Christensen 5d0154f812 nixos/make-zfs-image: init
This is a private interface for internal NixOS  use. It is similar
to `make-disk-image` except it is much more opinionated about what
kind of disk image it'll make.

Specifically, it will always create *two* disks:

1. a `boot` disk formatted with FAT in a hybrid GPT mode.
2. a `root` disk which is completely owned by a single zpool.

The partitioning and FAT decisions should make the resulting images
bootable under EFI or BIOS, with systemd-boot or grub.

The root disk's zpools options are highly customizable, including
fully customizable datasets and their options.

Because the boot disk and partition are highly opinionated, it is
expected that the `boot` disk will be mounted at `/boot`. It is
always labeled ESP even on BIOS boot systems.

In order for the datasets to be mounted properly, the `datasets`
passed in to `make-zfs-image` are turned in to NixOS configuration
stored at /etc/nixos/configuration.nix inside the VM.
NOTE: The function accepts a system configuration in the `config`
argument. The *caller* must manually configure the system
in `config` to have each specified `dataset` be represented
by a corresponding `fileSystems` entry.

One way to test the resulting images is with qemu:

```sh
boot=$(find ./result/ -name '*.boot.*');
root=$(find ./result/ -name '*.root.*');

echo '`Ctrl-a h` to get help on the monitor';
echo '`Ctrl-a x` to exit';

qemu-kvm \
    -nographic \
    -cpu max \
    -m 16G \
    -drive file=$boot,snapshot=on,index=0,media=disk \
    -drive file=$root,snapshot=on,index=1,media=disk \
    -boot c \
    -net user \
    -net nic \
    -msg timestamp=on
```

(cherry picked from commit 076f6e2d948259e18ddac8e562c62b5b53de9fe6)
2021-09-13 16:20:46 +00:00
Graham Christensen 1a52f18432 Merge pull request #131287 from NixOS/backport-131266-to-release-21.05
[Backport release-21.05] webkitgtk: 2.32.1 -> 2.32.3
2021-07-23 19:29:06 -04:00
Graham Christensen b3a9a3e19f terraform-providers.hydra: 0.1.0 -> 0.1.1
(cherry picked from commit 0e91b031f6558a7e8623ccacedfedfa458531ed6)
2021-05-24 18:27:24 -07:00
Graham Christensen a4c431da35 Merge pull request #123531 from mweinelt/terminals
rxvt-unicode: 9.22 -> 9.26; rxvt, mrxvt, eterm: set knownVulerabilities
2021-05-18 15:29:33 -04:00
Graham Christensen c7e671b15c Merge pull request #123353 from DeterminateSystems/tf-provider-hydra
terraform-providers.hydra: init at 0.1.0
2021-05-17 07:38:49 -04:00
Graham Christensen 9b92a81723 Merge pull request #123229 from superherointj/nixpkgs-toplevel-allpackages-editorformat
top-level: refactor of all-packages to comply w/ editorconfig-checker
2021-05-16 07:52:10 -04:00
Graham Christensen bab18ef959 Merge pull request #122401 from samuela/upkeep-bot/vscodium-1.56.0-1620606156
vscodium: 1.55.2 -> 1.56.0
2021-05-10 13:18:13 -04:00
Graham Christensen 3419bf4db6 Merge pull request #121910 from samuela/upkeep-bot/vscode-1.56.0-1620303266
vscode: 1.55.2 -> 1.56.0
2021-05-10 13:17:46 -04:00
Graham Christensen 17af7a98d2 Merge pull request #121159 from ymatsiuk/fluxcd
fluxcd: 0.12.0 -> 0.13.2
2021-05-01 12:03:07 -04:00
Graham Christensen d01c15e4d4 Merge pull request #120662 from Hoverbear/neovim-add-mainprogram
neovim: set meta.mainProgram
2021-04-26 11:52:07 -04:00
Graham Christensen dd4c01b119 Merge pull request #120692 from Hoverbear/check-meta-support-mainProgram
stdenv: support mainProgram in meta
2021-04-26 09:42:14 -04:00
Graham Christensen 040523e378 Merge pull request #120679 from lukegb/big-parallel
treewide: require big-parallel on large, slow builds
2021-04-25 21:22:57 -04:00
Graham Christensen 230e5582b9 Merge pull request #120591 from risicle/ris-qemu-many-CVEs-2021-04
qemu: add patches for many CVEs
2021-04-25 10:23:46 -04:00
Graham Christensen bae96b50ab Merge pull request #104812 from mweinelt/babeld-unprivileged
babeld: run unprivileged
2021-04-24 20:45:38 -04:00
Graham Christensen d6ed686eb2 Add NixOS/Security as a reviewer for .github/workflows 2021-04-24 13:21:42 -04:00
Graham Christensen 9d95ba3dd6 actions: add some permission restrictions 2021-04-24 13:07:57 -04:00
Graham Christensen 8d0340aee5 Merge pull request #120009 from DeterminateSystems/scancode
python3.pkgs.scancode-toolkit: init at 21.3.31
2021-04-23 12:41:48 -04:00
Graham Christensen 5259a2e5da Merge pull request #119996 from DeterminateSystems/sasquatch
sasquatch: 4.3 -> 4.4
2021-04-23 11:41:23 -04:00
Graham Christensen 3ac9de55b0 Merge pull request #120304 from DeterminateSystems/yargen
yarGen: patch get_abs_path function, install strings.xml
2021-04-23 10:29:37 -04:00
Graham Christensen c86bd27503 Merge pull request #119664 from eyJhb/displaylink-5.4
displaylink: 5.3.1 -> 5.4.0 (+evdi)
2021-04-22 13:36:31 +00:00
Graham Christensen a59644aeb6 Merge pull request #119999 from DeterminateSystems/honeytrap
honeytrap: init at unstable-2020-12-10
2021-04-22 00:15:07 +00:00
Graham Christensen 20313e8b73 Merge pull request #119906 from DeterminateSystems/team/determinate.systems
Teams: create a Determinate Systems team
2021-04-19 18:38:08 -04:00
Graham Christensen 777286310b teams: add cole-h to the determinatesystems team 2021-04-19 18:03:11 -04:00
Graham Christensen 705227c558 teams: init determinatesystems 2021-04-19 18:03:08 -04:00
Graham Christensen ffd29c76f6 Merge pull request #117928 from ymatsiuk/fprintd-tod
nixos/fprintd: add TOD support
2021-04-15 11:51:09 -04:00
Graham Christensen d72a60a59f Merge pull request #115590 from grahamc/iscsi
NixOS: services.{openiscsi, target}, boot.iscsi-initiator: init
2021-04-13 13:19:34 -04:00
Graham Christensen a009dfc1af Merge pull request #118400 from mweinelt/revert-zigbee2mqtt
Revert "zigbee2mqtt: 1.16.2 -> 1.18.2"
2021-04-03 13:18:58 +00:00
Graham Christensen 83fccd0edb Merge pull request #104915 from grahamc/fprintd-libfprint-tod
{fprintd,libfprint}-tod: init, plus  libfprint-2-tod1-goodix: init at 0.0.6
2021-03-30 14:55:24 +00:00
Graham Christensen 65674c24f8 libfprint-2-tod1-goodix: init at 0.0.6 2021-03-30 14:36:25 +00:00
Graham Christensen b0a4d392b9 fprintd-tod: init from fprintd 2021-03-30 14:36:24 +00:00
Graham Christensen 76558714f3 libfprint-tod: init at 1.90.7+tod1 2021-03-30 14:36:19 +00:00
Graham Christensen 60dd94fb7e Merge pull request #117588 from mweinelt/openssl
openssl: 1.1.1j -> 1.1.1k
2021-03-25 10:16:50 -04:00
Graham Christensen 7eda163eac Merge pull request #115310 from mweinelt/grub2
grub: 2.0.4 -> 2.0.6-rc1
2021-03-22 22:34:14 -04:00
Graham Christensen 7b69e62cb0 Merge pull request #116000 from sternenseemann/mcfgthreads-fix-eval
mcfgthreads: fix syntax
2021-03-11 18:00:20 -05:00
Graham Christensen 94a291a5b7 multipath-tools: fix the service path to multipathd 2021-03-11 10:31:42 -05:00
Graham Christensen 0b52c40240 nixos/systemd: bring in modprobe@.service
It is broken: it looks for /sbin/modprobe, but it works anyway??
2021-03-09 12:38:54 -05:00
Graham Christensen e7d9750b5c systemd: correct path to modprobe@.service
The unit hard-codes a path to modprobe which is obviously invalid.
2021-03-09 12:38:54 -05:00
Graham Christensen c5ae852c37 Merge pull request #114874 from cole-h/ssm-agent
ssm-agent: 2.3.1319.0 -> 3.0.755.0
2021-03-06 20:22:48 -05:00
Graham Christensen 1b1bdeac67 Merge pull request #115024 from cole-h/hydra-dbi
nixos/hydra: append `application_name` to HYDRA_DBI
2021-03-04 10:06:43 -05:00
Graham ChristensenandCole Helbling 820cc72b52 ssm-agent: 2.3.1319.0 -> 3.0.755.0
Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com>
2021-03-02 10:51:12 -08:00
Graham Christensen 9a7fda31bb Merge pull request #113365 from rmcgibbo/ena
kernelPackages.ena: 2.3.0 -> 2.4.1
2021-02-23 11:08:34 -05:00
Graham Christensen 3ef281c3a2 Merge pull request #113176 from danieldk/cargoDepsName
buildRustPackage: add cargoDepsName attribute
2021-02-23 10:02:45 -05:00
Graham Christensen 744de41d10 Merge pull request #113702 from grahamc/perlpkgs
perlPackages.{gotofile,LongJump,Test2PluginMemUsage,Test2PluginUUID,Test2Harness}: init
2021-02-19 16:54:55 -05:00
Graham Christensen 6a53819136 perlPackages.Test2Harness: init at 1.000042 2021-02-19 11:23:45 -05:00
Graham Christensen 5e6c9ffac8 Merge pull request #113687 from grahamc/perlpkgs
perlPackages.{FunctionParameters,TieHashMethod,TestPostgreSQL}: init
2021-02-19 11:14:26 -05:00
Graham Christensen 5a6c62b211 perlPackages.Test2PluginUUID: init at 0.002001 2021-02-19 11:13:54 -05:00
Graham Christensen 974155138c perlPackages.Test2PluginMemUsage: init at 0.002003 2021-02-19 11:13:40 -05:00
Graham Christensen 55b70353ce perlPackages.LongJump: init at 0.000001 2021-02-19 11:12:42 -05:00
Graham Christensen 29fe085490 perlPackages.gotofile: init at 0.005 2021-02-19 11:12:18 -05:00
Graham Christensen 4f07645f6f perlPackages.TestPostgreSQL: init at 1.27 2021-02-19 09:30:20 -05:00
Graham Christensen 2058e64c9c perlPackages.TieHashMethod: init at 0.02 2021-02-19 09:30:20 -05:00
Graham Christensen d9736c984c perlPackages.FunctionParameters: init at 2.001003 2021-02-19 09:30:17 -05:00
Graham Christensen 86d5d9650d Merge pull request #111413 from dotlambda/vorta-0.7.2
vorta: 0.7.1 -> 0.7.2
2021-01-31 20:56:27 -05:00
Graham Christensen b1d651e989 Merge pull request #111494 from rien/master
rage: skip check if not x86
2021-01-31 20:52:14 -05:00
Graham Christensen 5b896d3797 Merge pull request #111513 from devzero/master
signal-cli: 0.6.12 -> 0.7.4
2021-01-31 20:38:57 -05:00
Graham Christensen 7092dd52f8 amazonImage: Upload disks as GP3 for cheaper & faster IO (#109027)
GP3 is always faster and cheaper than GP2, so sticking to GP2 is
leaving money on the table.

https://cloudwiry.com/ebs-gp3-vs-gp2-pricing-comparison/
2021-01-11 13:54:40 -05:00
Graham Christensen b63aa4ccb2 Deshaw: create team and reassign limeytexan's maintainership (#108678)
* team: add deshaw

* maintainership: reassign limeytexan's packages to the deshaw team
2021-01-07 10:44:08 -05:00
Graham Christensen 2bb0558d0a aws-nuke: init at 2.14.0 2021-01-04 14:43:00 -05:00
Graham Christensen 09b571cfe7 Merge pull request #107443 from nima2007/zchunk_work
zchunk: 1.1.6-> 1.1.8 & Add darwin support
2020-12-29 14:31:39 -05:00
Graham Christensen 14c2379fa7 Merge pull request #107052 from drewrisinger/dr-pr-vscode-arm
vscode, vscodium: 1.51.1 -> 1.52.1 & add aarch64-linux, armv7l-linux builds
2020-12-28 16:55:48 -05:00
Graham Christensen 9612cb9092 Merge pull request #84062 from abathur/fix/yadm_src_usage
yadm: install from build directory instead of $src
2020-12-15 10:39:20 -05:00
Graham Christensen 98830e4438 Merge pull request #105790 from grahamc/tf-packet
terraform-providers.packet: v2.9.0 -> v3.2.0
2020-12-03 08:28:53 -05:00
Graham Christensen 48413ef09d terraform-providers.packet: v2.9.0 -> v3.2.0 2020-12-03 08:10:56 -05:00
Graham Christensen f18e57f3bf Merge pull request #105452 from zimbatm/no-extend
tree-wide: do not use pkgs.extend in nixpkgs
2020-11-30 13:55:33 -05:00
Graham Christensen d9c3f13df3 Merge pull request #104776 from grahamc/utillinux
utillinux: rename to util-linux
2020-11-24 15:14:36 -05:00
Graham Christensen bc49a0815a utillinux: rename to util-linux 2020-11-24 12:42:06 -05:00
Graham Christensen 22965d84d5 sssd: fix build on glibc-2.32
For https://hydra.nixos.org/build/128488320 which errored with:

    src/responder/nss/nss_cmd.c:733:16: error: 'nss_setnetgrent' redeclared as different kind of symbol
      733 | static errno_t nss_setnetgrent(struct cli_ctx *cli_ctx,
          |                ^~~~~~~~~~~~~~~
    In file included from ./src/sss_client/sss_cli.h:28,
                     from ./src/db/sysdb.h:27,
                     from src/responder/nss/nss_cmd.c:26:
    /nix/store/a2n8nrsf215x01a7fv8l94crdjwf69pa-glibc-2.32-dev/include/nss.h:184:25: note: previous declaration of 'nss_setnetgrent' was here
      184 | typedef enum nss_status nss_setnetgrent (const char *, struct __netgrent *);
          |                         ^~~~~~~~~~~~~~~
    make[2]: *** [Makefile:17818: src/responder/nss/nss_cmd.o] Error 1
    make[2]: Leaving directory '/build/sssd-1.16.4'
    make[1]: *** [Makefile:33824: all-recursive] Error 1
    make[1]: Leaving directory '/build/sssd-1.16.4'
    make: *** [Makefile:10123: all] Error 2
2020-11-24 09:50:33 -05:00
Graham Christensen b8a78e5b2a Merge pull request #104702 from NixOS/revert-104484-danderson/influxdb2
Revert "influxdb2: init at v2.0.2"
2020-11-23 14:56:14 -05:00
Graham Christensen fbc4af5725 Revert "influxdb2: init at v2.0.2 (#104484)"
This reverts commit ecbe92e576.
2020-11-23 14:55:26 -05:00
Graham Christensen 1ee1134cb1 Merge pull request #104456 from endgame/refresh-instance-metadata-on-boot
Refresh instance metadata on boot
2020-11-22 08:23:14 -05:00
Graham Christensen 75d7828724 Merge pull request #98544 from Mic92/unfuck-update-user-group
nixos/update-user-groups: Fix encoding issues + atomic writes
2020-11-20 10:28:52 -05:00
Graham Christensen e52ecd43c5 Merge pull request #104335 from grahamc/amazon-image-fixup2
nixos: release-combined: only build the amazon image for x86_64,aarch…
2020-11-19 21:09:11 -05:00
Graham Christensen b339462460 nixos: release-combined: only build the amazon image for x86_64,aarch64-linux -- exclude i686 2020-11-19 19:34:23 -05:00
Graham Christensen 1115df837e Merge pull request #104322 from grahamc/amazon-image
nixos/release-small: add amazonImage
2020-11-19 18:45:07 -05:00
Graham Christensen 1ef139f3b0 nixos/release-small: add amazonImage
fixup breakage from #104193
2020-11-19 17:45:40 -05:00
Graham Christensen 7fa7bf2fda Merge pull request #104193 from grahamc/ec2-metadata-imdsv2
NixOS EC2 AMI: Support IMDSv2
2020-11-19 16:11:32 -05:00
Graham Christensen 0d87ce610e nixos: release: add amazonImage as a channel blocker 2020-11-19 13:56:55 -05:00
Graham Christensen f2cfecdec3 nixos ami: preflight the imds token
According to Freenode's ##AWS, the metadata server can sometimes
take a few moments to get its shoes on, and the very first boot
of a machine can see failed requests for a few moments.
2020-11-19 13:56:44 -05:00
Graham Christensen 83ea88e03f nixos: ec2 ami: support IMDSv2
AWS's metadata service has two versions. Version 1 allowed plain HTTP
requests to get metadata. However, this was frequently abused when a
user could trick an AWS-hosted server in to proxying requests to the
metadata service. Since the metadata service is frequently used to
generate AWS access keys, this is pretty gnarly. Version two is
identical except it requires the caller to request a token and provide
it on each request.

Today, starting a NixOS AMI in EC2 where the metadata service is
configured to only allow v2 requests fails: the user's SSH key is not
placed, and configuration provided by the user-data is not applied.
The server is useless. This patch addresses that.

Note the dependency on curl is not a joyful one, and it expand the
initrd by 30M. However, see the added comment for more information
about why this is needed. Note the idea of using `echo` and `nc` are
laughable. Don't do that.
2020-11-19 13:00:56 -05:00
Graham Christensen 21339b41bf nixos: openstack: have its own metadata fetcher expression
These two APIs have diverged over time and are no longer compatible.
2020-11-18 11:42:32 -05:00
Graham Christensen f9121be82e Merge pull request #103307 from grahamc/zfs-scripts
zfs: extend zpool scripts with :$PATH, remove sudo
2020-11-10 10:20:02 -05:00
Graham Christensen b3d4f5dada zfs: extend zpool scripts with :$PATH, remove sudo
sudo the package is not suid, so remove it from the PATH. Extend
PATH with $PATH to fetch sudo from the outer PATH. Move the generation
of `path` in to Nix, so the sed expression can use single quotes,
which prevents $PATH being interpolated at build-time.
2020-11-10 08:50:22 -05:00
Graham Christensen 43b99f23b3 Merge pull request #102532 from grahamc/nixUnstable-bump
nixUnstable: 3.0pre20201020_e0ca98c -> 2.4pre20201102_550e11f
2020-11-02 17:15:14 -05:00
Graham Christensen f4f9f307a4 nixUnstable: 3.0pre20201020_e0ca98c -> 2.4pre20201102_550e11f 2020-11-02 16:53:06 -05:00
Graham Christensen 75a2bc94fa Merge pull request #101192 from grahamc/nixpkgs-location-basic-auth
nginx: support basic auth in location blocks
2020-11-02 09:44:54 -05:00
Graham Christensen 3361a037b9 nginx: add a warning that nginx's basic auth isn't very good. 2020-11-02 08:16:01 -05:00
Graham Christensen a4b86b2bf5 nginx: test basic auth 2020-11-02 08:16:01 -05:00
Graham Christensen c7bf3828f0 nginx: add basic auth support for locations 2020-11-02 08:16:00 -05:00
Graham Christensen 33cf4f0e8e nginx: factor out the generation of basic auth generation 2020-11-02 08:16:00 -05:00
Graham Christensen 800ebd4561 Merge pull request #102201 from danderson/danderson/add-cli-to-path
nixos/tailscale: add tailscale to environment.systemPackages.
2020-10-30 21:22:16 -04:00
Graham Christensen 38a394bdee Merge pull request #102174 from grahamc/ami-root-use-gpt
AMI root partition table: use GPT to support >2T partitions
2020-10-30 16:14:37 -04:00
Graham Christensen 860a3a23c6 Merge pull request #102175 from grahamc/ami-random
amazon-image: random.trust_cpu=on to cut 10s from boot
2020-10-30 16:13:41 -04:00
Graham Christensen c06b97175b Merge pull request #102173 from grahamc/create-amis
create-amis.sh: fixup shellcheck issues, improve error logging, and add configurable service names
2020-10-30 16:13:18 -04:00
Graham Christensen 82578fc725 Merge pull request #102172 from grahamc/stage-1-datestamps
stage-1: add datestamps to logs
2020-10-30 16:13:02 -04:00
Graham Christensen b34cf366aa Merge pull request #102171 from grahamc/faster-ext-resize
stage-1: modprobe ext{2,3,4} before resizing (so resizing takes less than 45 minutes)
2020-10-30 16:12:50 -04:00
Graham Christensen d77ddf2a40 nixos.amazonAmi: use legacy+gpt disk images to support partitions >2T 2020-10-30 15:50:25 -04:00
Graham Christensen d78aa080f5 make-disk-image: support legacy+gpt 2020-10-30 15:50:24 -04:00