https://github.com/snowfallorg/icehouse
Cold storage made easy.
https://github.com/snowfallorg/icehouse
Last synced: 9 months ago
JSON representation
Cold storage made easy.
- Host: GitHub
- URL: https://github.com/snowfallorg/icehouse
- Owner: snowfallorg
- License: other
- Created: 2023-01-17T15:48:57.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-05-25T22:21:57.000Z (about 2 years ago)
- Last Synced: 2025-04-16T15:15:11.075Z (about 1 year ago)
- Language: Shell
- Size: 26.4 KB
- Stars: 26
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Ice House
> Cold storage made easy.
> **Note**
>
> Ice House requires ZFS support to function properly.
## About
Ice House allows you to easily and quickly initialize drives for use as backup and to create incremental
snapshots that are stored on them. For usage information, see `icehouse --help`.
Typically, you will want to run `icehouse init --drive /dev/sdx --pool backup` to initialize a new ZFS
pool on a drive. This process includes LUKS encryption, requiring a password during configuration. Once
initialized, you can begin backing up any system that uses ZFS by running
`icehouse backup --drive /dev/sdx --pool backup`.
## Try Without Installing
You can try Ice House without committing to installing it on your system by running the following command.
```bash
nix run github:snowfallorg/icehouse#icehouse
```
## Install Ice House
### Nix Profile
You can install this package imperatively with the following command.
```bash
nix profile install github:snowfallorg/icehouse
```
## Nix Configuration
You can install this package by adding it as an input to your Nix flake.
```nix
{
description = "My system flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05";
# Snowfall Lib is not required, but will make configuration easier for you.
snowfall-lib = {
url = "github:snowfallorg/lib";
inputs.nixpkgs.follows = "nixpkgs";
};
icehouse = {
url = "github:snowfallorg/icehouse";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs:
inputs.snowfall-lib.mkFlake {
inherit inputs;
src = ./.;
overlays = with inputs; [
# Use the overlay provided by this flake.
icehouse.overlay
# There is also a named overlay, though the output is the same.
icehouse.overlays."package/icehouse"
];
};
}
```
If you've added the overlay from this flake, then in your system configuration you can add the `snowfallorg.icehouse` package.
```nix
{ pkgs }:
{
environment.systemPackages = with pkgs; [
snowfallorg.icehouse
];
}
```