Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

PPC64LE and S390X support

Open
#2 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
42/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
go
Domain
build-system, cli

Research direction

Start with the Makefile build section and reproduce the AIX ppc64 build using the reported command. Inspect the listed vendor files and their terminal-input paths to identify the AIX failures; done means the PPC64LE, S390X, and AIX targets build successfully, with the requested non-interactive AIX behavior.

Written by the indexing model from the issue text.

Description

enhancement

@beardedprincess

BUSINESS PROBLEM

Extra platform support for VSSH-CLI. Customer has Linux and AIX on S390x

PROPOSED SOLUTION

We have a solution for Linux on PPC64LE and S390X, we have already tested this and it produced a working binary:
Test on RHEL8 on PPC64LE and S390x:
In Makefile, in the build section, add lines for the additional targets:
env GOOS=linux CGO_ENABLED=0 GOARCH=s390x go build -ldflags '$(GO_LDFLAGS)' -o bin/linux_s390x/vssh ./cmd
env GOOS=linux CGO_ENABLED=0 GOARCH=ppc64le go build -ldflags '$(GO_LDFLAGS)' -o bin/linux_ppc64le/vssh ./cmd

For the AIX port, there's a commented line for AIX already, however the build fails with these errors:
vssh-cli-source> gmake build
! gofmt -l . | grep -v ^vendor/ | grep .
go get ./...
env GOOS=aix CGO_ENABLED=0 GOARCH=ppc64 go build -ldflags '-X "github.com/venafi/vssh-cli/cmd/common.VersionString=1.0.2025041518" -X "github.com/venafi/vssh-cli/cmd/common.VersionBuildTimeStamp=20250415.184158" -s -w' -o bin/aix_ppc64/vssh ./cmd

github.com/inconshreveable/go-update/internal/osext

vendor/github.com/inconshreveable/go-update/internal/osext/osext.go:14:12: undefined: executable

github.com/denisbrodbeck/machineid

vendor/github.com/denisbrodbeck/machineid/id.go:29:13: undefined: machineID

github.com/AlecAivazis/survey/v2/terminal

vendor/github.com/AlecAivazis/survey/v2/terminal/runereader_posix.go:48:43: undefined: syscall.SYS_IOCTL
vendor/github.com/AlecAivazis/survey/v2/terminal/runereader_posix.go:48:81: undefined: ioctlReadTermios
vendor/github.com/AlecAivazis/survey/v2/terminal/runereader_posix.go:60:43: undefined: syscall.SYS_IOCTL
vendor/github.com/AlecAivazis/survey/v2/terminal/runereader_posix.go:60:81: undefined: ioctlWriteTermios
vendor/github.com/AlecAivazis/survey/v2/terminal/runereader_posix.go:68:43: undefined: syscall.SYS_IOCTL
vendor/github.com/AlecAivazis/survey/v2/terminal/runereader_posix.go:68:81: undefined: ioctlWriteTermios

These appear to be in the code for handling terminal input. For our use case, we can provide all necessary input to the tool on the command line, we do not need interactive input. We would be perfectly happy if this code was just bypassed on AIX.

CURRENT ALTERNATIVES

Current alternatives is running vssh commands on supported platforms and then manually transferring the results to unsupported platforms.

To that end, we have build the Linux on PPC64LE and S390x successfully and have those binaries and they work. All we need is AIX. Provided the makefile updates above for your benefit. Go appears to be able to cross-compile just fine.

VENAFI EXPERIENCE

Several years, and we use it daily.

Dominant language
No language data
Stars
4
Forks
3
Avg merge
1m
Merged PRs (30d)
1

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Venafi/vssh-cli

All issues in Venafi/vssh-cli

Similar issues

More Build System issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.