NixOps repo for mcwhirter.io
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.6KB

  1. # NixOps configuration for the hosts utilising IOHK resources
  2. { config, pkgs, lib, ... }:
  3. {
  4. nix = {
  5. package = pkgs.nixFlakes;
  6. binaryCaches = [
  7. "https://cache.nixos.org"
  8. "https://hydra.iohk.io"
  9. "https://iohk.cachix.org"
  10. "https://mantis-ops.cachix.org"
  11. "s3://iohk-vit-bitte/infra/binary-cache/?region=eu-central-1"
  12. ];
  13. binaryCachePublicKeys = [
  14. "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
  15. "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
  16. "iohk.cachix.org-1:DpRUyj7h7V830dp/i6Nti+NEO2/nhblbov/8MW7Rqoo="
  17. "mantis-ops.cachix.org-1:SornDcX8/9rFrpTjU+mAAb26sF8mUpnxgXNjmKGcglQ="
  18. "vit-testnet-0:0lvkEoYh+XrBh7pr4bXjsUisUkUxsyLvvWBIJwym/RM="
  19. ];
  20. extraOptions = ''
  21. #repeat = 1 # Ensure reproducibility of builds
  22. experimental-features = nix-command flakes ca-references
  23. '';
  24. };
  25. # Set the system-wide environment
  26. environment = {
  27. systemPackages = with pkgs; [
  28. awscli # Unified tool to manage your AWS services
  29. buildkite-agent # Buildkite for IOHK
  30. #crystal # A compiled language with Ruby like syntax and type inference
  31. docker # Pack, ship and run any application as a lightweight container
  32. docker-compose # Multi-container orchestration for Docker
  33. freerdp # A Remote Desktop Protocol Client, xfreerdp
  34. gist # Upload code to https://gist.github.com (or github enterprise)
  35. gnupg # GNU Privacy Guard, a GPL OpenPGP implementation
  36. go-jira # Simple command line client for Atlassian's Jira service written in Go
  37. #icr # Interactive console for the Crystal programming languag
  38. jq # A lightweight and flexible command-line JSON processor
  39. keybase-gui # The Keybase official client
  40. s3fs # Mount an S3 bucket as filesystem through FUSE
  41. scry # Code analysis server for the Crystal programming language
  42. shards # Dependency manager for the Crystal language
  43. slack-dark # Slack desktop client
  44. magic-wormhole # Securely transfer data between computers
  45. ];
  46. variables = {
  47. NIX_SKIP_KEYBASE_CHECKS = "1"; # As per IOHK Keybase reqs
  48. };
  49. };
  50. virtualisation.docker.enable = true;
  51. services = {
  52. keybase.enable = true;
  53. #postgresql = {
  54. # enable = true; # Ensure postgresql is enabled
  55. # package = pkgs.postgresql_10; # Set the required version, if needed
  56. };
  57. users.groups.docker.members = [
  58. "craige"
  59. ];
  60. }