mirror of
https://cgit.krebsco.de/krops
synced 2024-11-26 21:19:47 +01:00
update README.md
This commit is contained in:
parent
f30debc65c
commit
4e466eaf05
1 changed files with 21 additions and 28 deletions
49
README.md
49
README.md
|
@ -1,6 +1,6 @@
|
||||||
# kops (krebs ops)
|
# krops (krebs ops)
|
||||||
|
|
||||||
kops is a lightweigt toolkit to deploy nixos systems, remotely or locally.
|
krops is a lightweigt toolkit to deploy nixos systems, remotely or locally.
|
||||||
|
|
||||||
fancy features include:
|
fancy features include:
|
||||||
- store your secrets in passwordstore
|
- store your secrets in passwordstore
|
||||||
|
@ -10,47 +10,40 @@ fancy features include:
|
||||||
|
|
||||||
minimal example:
|
minimal example:
|
||||||
|
|
||||||
create a kops.nix somewhere
|
create a krops.nix somewhere
|
||||||
```
|
```
|
||||||
let
|
let
|
||||||
kops = (import <nixpkgs> {}).fetchgit {
|
#krops = ./.;
|
||||||
url = https://cgit.krebsco.de/kops/;
|
krops = (import <nixpkgs> {}).fetchgit {
|
||||||
|
url = https://cgit.krebsco.de/krops/;
|
||||||
rev = "3022582ade8049e6ccf18f358cedb996d6716945";
|
rev = "3022582ade8049e6ccf18f358cedb996d6716945";
|
||||||
sha256 = "0wg8d80sxa46z4i7ir79sci2hwmv3qskzqdgksi64p6vazy8vckb";
|
sha256 = "0k3zhv2830z4bljcdvf6ciwjihk2zzcn9y23p49c6sba5hbsd6jb";
|
||||||
};
|
};
|
||||||
|
|
||||||
lib = import "${kops}/lib";
|
lib = import "${krops}/lib";
|
||||||
pkgs = import "${kops}/pkgs" {};
|
pkgs = import "${krops}/pkgs" {};
|
||||||
|
|
||||||
source = lib.evalSource [{
|
source = lib.evalSource [{
|
||||||
nixpkgs.git = {
|
nixpkgs.git = {
|
||||||
ref = "4b4bbce199d3b3a8001ee93495604289b01aaad3";
|
ref = "4b4bbce199d3b3a8001ee93495604289b01aaad3";
|
||||||
url = https://github.com/NixOS/nixpkgs;
|
url = https://github.com/NixOS/nixpkgs;
|
||||||
};
|
|
||||||
nixos-config.file = pkgs.writeText "nixos-config" ''
|
|
||||||
{ config, pkgs, ... }:
|
|
||||||
{
|
|
||||||
imports =
|
|
||||||
[ # Include the results of the hardware scan.
|
|
||||||
./hardware-configuration.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
# Use the GRUB 2 boot loader.
|
};
|
||||||
boot.loader.grub.enable = true;
|
nixos-config.file = toString (pkgs.writeText "nixos-config" ''
|
||||||
boot.loader.grub.version = 2;
|
{ pkgs, ... }: {
|
||||||
# boot.loader.grub.efiSupport = true;
|
|
||||||
# boot.loader.grub.efiInstallAsRemovable = true;
|
fileSystems."/" = { device = "/dev/sda1"; };
|
||||||
# boot.loader.efi.efiSysMountPoint = "/boot/efi";
|
boot.loader.systemd-boot.enable = true;
|
||||||
# Define on which hard drive you want to install Grub.
|
services.openssh.enable = true;
|
||||||
boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only
|
environment.systemPackages = [ pkgs.git ];
|
||||||
}
|
}
|
||||||
'';
|
'');
|
||||||
}];
|
}];
|
||||||
in
|
in
|
||||||
pkgs.kops.writeDeploy "deploy" {
|
pkgs.krops.writeDeploy "deploy" {
|
||||||
source = source;
|
source = source;
|
||||||
target = "localhost";
|
target = "root@192.168.56.101";
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
and run `nix-build kops.nix`
|
and run `$(nix-build krops.nix)`. This results in a script which deploys the machine via ssh & rsync on the target machine.
|
||||||
|
|
Loading…
Reference in a new issue