Skip to content

Add setup-i686-gcc action - #66

Merged
tarcieri merged 1 commit into
masterfrom
setup-i686-gcc
Aug 4, 2026
Merged

Add setup-i686-gcc action#66
tarcieri merged 1 commit into
masterfrom
setup-i686-gcc

Conversation

@tarcieri

@tarcieri tarcieri commented Aug 4, 2026

Copy link
Copy Markdown
Member

Our main use case for the apt-install action (#60) is installing the packages we need to make i686-unknown-linux-gnu Rust programs build and run on 64-bit runners.

The main thing it was trying to do was avoid apt-get update via caching as updating the index was adding some 7s to each build, unfortunately that didn't work out (#65).

Another thing we can do is avoid installing the whole of gcc-multilib and disable the needsrestart hooks since we don't care about those. Instead it installs libc6-dev-i386 and lib32gcc-13-dev which seem to be sufficient: see RustCrypto/crypto-bigint#1331.

This adds an action we can use everywhere we're doing setup for i686-unknown-linux-gnu builds which gives us one place to do these specific kinds of optimizations that don't need to apply to apt-get as a whole like apt-install was trying to do.

Our main use case for the `apt-install` action (#60) is installing the
packages we need to make `i686-unknown-linux-gnu` Rust programs build
and run on 64-bit runners.

The main thing it was trying to do was avoid `apt-get update` via
caching as updating the index was adding some 7s to each build,
unfortunately that didn't work out (#65).

Another thing we can do is avoid installing the whole of `gcc-multilib`
and disable the `needsrestart` hooks since we don't care about those.
Instead it installs `libc6-dev-i386` and `lib32gcc-13-dev` which seem
to be sufficient: see RustCrypto/crypto-bigint#1331.

This adds an action we can use everywhere we're doing setup for
`i686-unknown-linux-gnu` builds which gives us one place to do these
specific kinds of optimizations that don't need to apply to `apt-get` as
a whole like `apt-install` was trying to do.
@tarcieri

tarcieri commented Aug 4, 2026

Copy link
Copy Markdown
Member Author

Merging so I can test it out

@tarcieri
tarcieri merged commit 0c1851b into master Aug 4, 2026
1 check passed
@tarcieri
tarcieri deleted the setup-i686-gcc branch August 4, 2026 20:02
Comment thread setup-i686-gcc/action.yml
env:
DEBIAN_FRONTEND: noninteractive
NEEDRESTART_SUSPEND: 1
run: sudo apt-get update && apt-get install -y ${{ inputs.packages }}

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Blah, forgot to add the specific packages 🤦

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant