terminal user interface to jujutsu. Focused on speed and clarity
9
fork

Configure Feed

Select the types of activity you want to include in your feed.

build nix 120

+46 -90
+46 -90
.github/workflows/build-nix.yml
··· 3 3 on: 4 4 push: 5 5 branches: 6 - - master 6 + - master 7 7 tags: 8 - - '**' 8 + - "**" 9 9 pull_request: 10 10 workflow_dispatch: 11 11 ··· 16 16 strategy: 17 17 fail-fast: false 18 18 runs-on: ubuntu-latest 19 - timeout-minutes: 20 19 + timeout-minutes: 60 20 20 21 21 steps: 22 - - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b 22 + - &checkout 23 + uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b 23 24 with: 24 25 fetch-depth: 0 25 - # - uses: DeterminateSystems/nix-installer-action@main 26 - # # - uses: DeterminateSystems/magic-nix-cache-action@main 27 - # # with: 28 - # # use-flakehub: false 29 - 30 - - uses: nixbuild/nix-quick-install-action@v30 26 + 27 + - &nix_install 28 + uses: nixbuild/nix-quick-install-action@v30 31 29 with: 32 30 nix_conf: | 33 31 keep-env-derivations = true 34 32 keep-outputs = true 35 33 36 - - name: Restore and save Nix store 34 + - &nix_cache 35 + name: Restore and save Nix store 37 36 uses: nix-community/cache-nix-action@v6 38 37 with: 39 38 # restore and save a cache using this key ··· 56 55 # except any version with the key that is the same as the `primary-key` 57 56 purge-primary-key: never 58 57 - run: nix build .#static 59 - # - name: Create tar.gz 60 - # run: tar -czvf jj_tui_linux-x86_64.tar.gz -C result/bin jj_tui 61 58 - name: Archive production artifacts 62 59 uses: actions/upload-artifact@v4 63 60 with: 64 61 name: jj_tui_linux 65 62 path: result/bin/jj_tui 66 63 64 + linux-aarch64: 65 + strategy: 66 + fail-fast: false 67 + runs-on: ubuntu-24.04-arm 68 + timeout-minutes: 120 69 + steps: 70 + - *checkout 71 + - *nix_install 72 + - *nix_cache 73 + - run: nix build .#static 74 + - name: Archive production artifacts 75 + uses: actions/upload-artifact@v4 76 + with: 77 + name: jj_tui_linux-aarch64 78 + path: result/bin/jj_tui 67 79 macos: 68 80 strategy: 69 81 fail-fast: false 70 82 runs-on: macos-latest 71 - timeout-minutes: 60 83 + timeout-minutes: 120 72 84 73 85 steps: 74 - - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b 75 - with: 76 - fetch-depth: 0 77 - - uses: nixbuild/nix-quick-install-action@v30 78 - with: 79 - nix_conf: | 80 - keep-env-derivations = true 81 - keep-outputs = true 82 - 83 - - name: Restore and save Nix store 84 - uses: nix-community/cache-nix-action@v6 85 - with: 86 - # restore and save a cache using this key 87 - primary-key: nix-${{ runner.os }}-${{ hashFiles('**/*.nix', '**/flake.lock') }} 88 - # if there's no cache hit, restore a cache by this prefix 89 - restore-prefixes-first-match: nix-${{ runner.os }}- 90 - # collect garbage until the Nix store size (in bytes) is at most this number 91 - # before trying to save a new cache 92 - # 1G = 1073741824 93 - gc-max-store-size-linux: 1G 94 - # do purge caches 95 - purge: true 96 - # purge all versions of the cache 97 - purge-prefixes: nix-${{ runner.os }}- 98 - # created more than this number of seconds ago 99 - purge-created: 0 100 - # or, last accessed more than this number of seconds ago 101 - # relative to the start of the `Post Restore and save Nix store` phase 102 - purge-last-accessed: 0 103 - # except any version with the key that is the same as the `primary-key` 104 - purge-primary-key: never 105 - - run: nix build 86 + - *checkout 87 + - *nix_install 88 + - *nix_cache 89 + - run: nix build 106 90 - name: Archive production artifacts 107 91 uses: actions/upload-artifact@v4 108 92 with: ··· 113 97 strategy: 114 98 fail-fast: false 115 99 runs-on: macos-15-intel 116 - timeout-minutes: 60 100 + timeout-minutes: 120 117 101 118 102 steps: 119 - - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b 120 - with: 121 - fetch-depth: 0 122 - - uses: nixbuild/nix-quick-install-action@v30 123 - with: 124 - nix_conf: | 125 - keep-env-derivations = true 126 - keep-outputs = true 127 - 128 - - name: Restore and save Nix store 129 - uses: nix-community/cache-nix-action@v6 130 - with: 131 - # restore and save a cache using this key 132 - primary-key: nix-${{ runner.os }}-${{ hashFiles('**/*.nix', '**/flake.lock') }} 133 - # if there's no cache hit, restore a cache by this prefix 134 - restore-prefixes-first-match: nix-${{ runner.os }}- 135 - # collect garbage until the Nix store size (in bytes) is at most this number 136 - # before trying to save a new cache 137 - # 1G = 1073741824 138 - gc-max-store-size-linux: 1G 139 - # do purge caches 140 - purge: true 141 - # purge all versions of the cache 142 - purge-prefixes: nix-${{ runner.os }}- 143 - # created more than this number of seconds ago 144 - purge-created: 0 145 - # or, last accessed more than this number of seconds ago 146 - # relative to the start of the `Post Restore and save Nix store` phase 147 - purge-last-accessed: 0 148 - # except any version with the key that is the same as the `primary-key` 149 - purge-primary-key: never 103 + - *checkout 104 + - *nix_install 105 + - *nix_cache 150 106 - run: nix build 151 107 - name: Create tar.gz 152 108 uses: actions/upload-artifact@v4 ··· 159 115 contents: write 160 116 discussions: write 161 117 runs-on: ubuntu-latest 162 - needs: [macos, linux, macos-x86] 163 - # needs: [linux] 118 + needs: [macos, linux, macos-x86, linux-aarch64] 164 119 name: release if tag 165 120 steps: 166 - - name: Download artifacts 167 - uses: actions/download-artifact@v4.1.7 168 - - name: Release 169 - uses: softprops/action-gh-release@v2 170 - if: startsWith(github.ref, 'refs/tags/') 171 - with: 172 - files: | 173 - jj_tui_linux/jj_tui 174 - jj_tui_macos/jj_tui 175 - jj_tui_macos-x86/jj_tui 121 + - name: Download artifacts 122 + uses: actions/download-artifact@v4.1.7 123 + - name: Release 124 + uses: softprops/action-gh-release@v2 125 + if: startsWith(github.ref, 'refs/tags/') 126 + with: 127 + files: | 128 + jj_tui_linux/jj_tui 129 + jj_tui_linux-aarch64/jj_tui 130 + jj_tui_macos/jj_tui 131 + jj_tui_macos-x86/jj_tui