Skip to content

Instantly share code, notes, and snippets.

@J-Swift
Created March 1, 2023 20:19
Show Gist options
  • Save J-Swift/a4dad59843f1a1f512a72308031b5a44 to your computer and use it in GitHub Desktop.
Save J-Swift/a4dad59843f1a1f512a72308031b5a44 to your computer and use it in GitHub Desktop.

Revisions

  1. J-Swift created this gist Mar 1, 2023.
    37 changes: 37 additions & 0 deletions provision.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,37 @@
    #!/usr/bin/env bash

    set -euo pipefail

    readonly flake_name='u3macbook'

    readonly real_script_dir=$( dirname $(readlink $HOME/.config/nixpkgs/flake.nix) )

    header() {
    local -r msg="${1:-}"
    echo '--------------------------------------------------------------------------------'
    echo "> ${msg}"
    echo '--------------------------------------------------------------------------------'
    }

    footer() {
    echo
    }

    main() {
    header 'brew upgrade'
    brew upgrade
    footer

    header 'home-manager switch'
    nix flake update "${real_script_dir}"
    home-manager switch --flake path:$real_script_dir#$flake_name
    footer

    header 'home-manager expire-generations "-30 days"'
    home-manager expire-generations '-30 days'
    footer

    echo '> Done.'
    }

    main