aboutsummaryrefslogtreecommitdiff
path: root/flake.nix (follow)
Commit message (Collapse)AuthorAgeFilesLines
* [#210] Add activation script for darwin system and provide a usage exampleRoman Melnikov2023-05-111-0/+7
| | | | | | | | | | | | | Problem: It's possible to use 'deploy-rs' for deploying 'darwinSystem' configuration from 'nix-darwin' to a darwin system. However, there is no dedicated activatiot script for darwin and thus one has to come up with 'custom' activation script. Solution: 1) Add 'darwin' attribute to 'lib.activate' that provides a script that should be used to activate 'darwinSystem' config with 'deploy-rs'. 2) Add a new 'examples/darwin' example that provides simple flake for deploying configuration to a darwin target.
* Merge pull request #176 from Ma27/activate-bootAlexander Bantyev2022-12-291-11/+20
|\ | | | | Add new activation strategy `boot` as equivalent to `nixos-rebuild boot`
| * Add new activation strategy `boot` as equivalent to `nixos-rebuild boot`Maximilian Bosch2022-10-091-11/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can be useful when e.g. deploying a kernel update to a target host. You usually plan a reboot (or kexec) after that to activate the new kernel. However you don't want to wait for services to be restarted first since these will be "restarted" anyways on the reboot. In cases like GitLab or the Atlassian stack this actually makes a difference. This patch changes the following things: * If `--boot` is provided, `nix-env -p profile-to-activate --set` is called for each deployed profile to make sure that it is activated automatically after a reboot. * However, the actual activation (e.g. `switch-to-configuration switch`) is skipped. Instead: * For NixOS, `switch-to-configuration boot` is called to set the new profile as default in the bootloader. * For everything else, nothing else is done. The profile is already the new default (and thus picked up on the next boot).
* | More unique names for the checks generated by deploy-rsPhilipp Herzog2022-11-111-2/+2
|/ | | | Closes #162
* Fetch system from `stdenv.hostPlatform`Robert Helgesson2022-08-041-1/+1
| | | | | | | The top-level `system` attribute has been deprecated for quite a while. See https://github.com/NixOS/nixpkgs/commit/4246d6ce21d2d8d33e2d30f42b3d9d446c5dc143
* Replace runCommandNoCC by runCommandRobert Helgesson2022-08-041-2/+2
| | | | | | | The `runCommand` function has been using `stdenvNoCC` for quite a while and `runCommandNoCC` is correspondingly deprecated. See https://github.com/NixOS/nixpkgs/commit/9feb144c8cc4f4b71a9c23b2f7fd6b2ea55649e5
* Update flake to support nix 2.8Xavier Vello2022-05-141-3/+5
| | | | | | | | | nix 2.7 renamed defaultApp and defaultPackage. Both the old and new names are supported in 2.7, but 2.8 has removed support for the old names, breaking the nix run invocation. Old names are kept in this PR to keep compatibility with nix 2.6, but could be removed if support of this version is not needed anymore.
* Fix darwin buildAlexander Bantyev2021-09-281-4/+4
| | | | | | | Frameworks are libraries used at runtime, so should be in buildInputs and not nativeBuildInputs. Closes https://github.com/serokell/deploy-rs/issues/132
* add aarch64-darwin to built systemsPeter Woodman2021-09-271-1/+1
|
* flake: replace naersk with buildRustPackageBernardo Meurer2021-09-151-8/+8
|
* Add .envrc and fix devShell to work with more toolsnotgne22021-08-041-1/+11
|
* Merge pull request #97 from blaggacao/patch-1Alexander Bantyev2021-07-081-1/+1
|\ | | | | fix: add meta.description
| * fix: add meta.descriptionDavid Arnold2021-06-251-1/+1
| |
* | Add rustfmt and rust-analyzer to devShellAlexander Bantyev2021-06-251-1/+1
|/
* flake.nix: refactor as overlayAlexander Bantyev2021-06-221-40/+54
|
* flake.nix: clean up dry-activation logicAlexander Bantyev2021-05-201-7/+3
|
* Fix rollback to old profilesAlexander Bantyev2021-05-181-1/+1
| | | | | | In 5d5da48 (https://github.com/serokell/deploy-rs/pull/81), $DRY_ACTIVATE is used in a bash script with -u. When DRY_ACTIVATE is not set (which it is not for older profiles), the script fails. Fix this by setting a fallback.
* Add helper activation function for home-managernotgne22021-05-101-0/+2
|
* Apply notgne2 suggestions.Oleg Pykhalov2021-04-161-10/+6
|
* flake: Add optional dryActivate argument to activate.customOleg Pykhalov2021-04-071-33/+47
|
* Add dry activate argument.Oleg Pykhalov2021-04-071-1/+5
|
* Work around NixOS/nixpkgs#73404 by `cd`-ing into `/tmp` during NixOS activationnotgne22021-02-081-0/+3
|
* Add Nix-flake check for checking build and Rust testsnotgne22021-01-261-0/+4
|
* Run `set -euo pipefail` in generated activation scriptsnotgne22021-01-221-0/+2
|
* Check if systemd-boot is enabled before attempting to delete default entry linenotgne22021-01-081-1/+3
|
* Use boot path from configuration and ignore failures when updating loader confnotgne22021-01-061-1/+1
|
* Automatically filter out `default` line from loader.conf after NixOS activationnotgne22021-01-051-1/+6
|
* Build "activate" binary on all platformsAndreas Fuchs2020-12-151-2/+0
| | | | | | Now that activate uses a cross-platform fs notification library, we can build it on Darwin again (and build its deps separately, speeding up recompiles there).
* Add SPDX-FileCopyrightText to the three files that I changed substantiallyAndreas Fuchs2020-12-021-0/+1
|
* activate flake check: confirm that activate-rs exists in the profileAlexander Bantyev2020-12-021-1/+3
|
* Write an "activate-rs" script into the profile pathAndreas Fuchs2020-12-021-0/+9
| | | | | This should point to the correct path if the target platform differs fro the deploying platform.
* Fix running & building under macOS (Big Sur) (#9)Andreas Fuchs2020-11-241-4/+14
| | | | | | | | | | | | | | | | | * Add xcbuild as native build input 2 ways & pass --verbose to cargo build * Make "deploy" build on macOS * Bump the nixpkgs version to one that ships Rust 1.47, which can produce binaries under macOS 11 (Big Sur). * Use darwin-specific options that let Naersk build the "deploy" binary under macOS. (With a work-around for https://github.com/nmattia/naersk/issues/127, which prevents this from being much more straight-forward). Unfortunately, the "activate" binary can't be built under macOS due to the inotify dependency; that means the best we can do is to run the deploy under macOS, not deploy *to* macOS.
* Update `activate.nixos` to take a configuration, not a derivationnotgne22020-11-221-1/+1
|
* Scope activation commands, deprecate setActivateAlexander Bantyev2020-11-161-17/+24
|
* Add activation presets for NixOS and noop activationAlexander Bantyev2020-11-161-0/+4
|
* fixup! [OPS-1085] Add CIChristian Höppner2020-11-161-11/+3
|
* Format flake.nixnotgne22020-11-141-10/+11
|
* Remove deprecated `checkSchema`notgne22020-11-141-5/+1
|
* [OPS-1085] Add CIChristian Höppner2020-11-141-0/+12
|
* Greatly expand documentationnotgne22020-11-071-1/+1
|
* Show name of profiles missing activationnotgne22020-10-301-2/+8
|
* Add deprecation warning to checkSchemanotgne22020-10-291-2/+1
|
* Improve checks usage, add check for activation script existingnotgne22020-10-261-3/+21
|
* Move activate script location, use buildEnv for setActivatenotgne22020-10-111-2/+2
|
* Minor flake and documentation fixesnotgne22020-10-081-20/+30
|
* Add interface with json schema, fix flake-less issues, put setActivate and ↵notgne22020-10-051-1/+24
| | | | jsonSchema check in flake lib
* Add license information, reformat Nix files, clean upnotgne22020-09-291-2/+5
|
* use separate binary for activation, more cleanupnotgne22020-09-281-1/+1
|
* stuffnotgne22020-09-281-0/+22