diff --git a/.gitea/workflows/pull-request-ci.yaml b/.gitea/workflows/pull-request-ci.yaml index 08cacd7..c8e7dc2 100644 --- a/.gitea/workflows/pull-request-ci.yaml +++ b/.gitea/workflows/pull-request-ci.yaml @@ -90,8 +90,10 @@ jobs: - name: Build for linux run: | - fyne package --appBuild=${BUILD} --exe bin/swiped-mod-switcher-${VERSION}.${BUILD}-${GOOS}-${GOARCH}${EXE} main.go + fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64 main.go + mv *.tar.xz bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64.tar.xz env: + VERSION: ${{github.ref_name}} BUILD: ${{github.run_number}} GOOS: linux GOARCH: amd64 @@ -101,12 +103,13 @@ jobs: - name: Build for windows run: | - fyne package --appBuild=${BUILD} --exe bin/swiped-mod-switcher-${VERSION}.${BUILD}-${GOOS}-${GOARCH}${EXE} main.go + fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-windows-amd64.exe main.go env: + VERSION: ${{github.ref_name}} BUILD: ${{github.run_number}} GOOS: windows GOARCH: amd64 - EXE: .exe + EXE: ".exe" CGO_ENABLED: 1 CC: x86_64-w64-mingw32-gcc diff --git a/.gitea/workflows/push-ci.yaml b/.gitea/workflows/push-ci.yaml index eb4442f..6d71745 100644 --- a/.gitea/workflows/push-ci.yaml +++ b/.gitea/workflows/push-ci.yaml @@ -6,7 +6,7 @@ on: jobs: lint: name: Lint - env: + env: RUNNER_TOOL_CACHE: /toolcache runs-on: ubuntu-latest steps: @@ -89,15 +89,30 @@ jobs: run: | go mod tidy - - name: Build + - name: Build for linux run: | - GOOS=linux GOARCH=amd64 CGO_ENABLED=1 CC=gcc fyne package -os=linux -appBuild=${BUILD} -exe bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64 main.go - cp *.tar.xz bin/ - GOOS=windows GOARCH=amd64 CGO_ENABLED=1 CC=x86_64-w64-mingw32-gcc fyne package -os=windows -appBuild=${BUILD} -exe bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-windows-amd64.exe main.go - ls + fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64 main.go + mv *.tar.xz bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64.tar.xz env: VERSION: ${{github.ref_name}} BUILD: ${{github.run_number}} + GOOS: linux + GOARCH: amd64 + EXE: "" + CGO_ENABLED: 1 + CC: gcc + + - name: Build for windows + run: | + fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-windows-amd64.exe main.go + env: + VERSION: ${{github.ref_name}} + BUILD: ${{github.run_number}} + GOOS: windows + GOARCH: amd64 + EXE: ".exe" + CGO_ENABLED: 1 + CC: x86_64-w64-mingw32-gcc - name: Upload artifact uses: actions/upload-artifact@v3 diff --git a/.gitea/workflows/tag-release.yaml b/.gitea/workflows/tag-release.yaml index 76a993c..038e2bc 100644 --- a/.gitea/workflows/tag-release.yaml +++ b/.gitea/workflows/tag-release.yaml @@ -88,6 +88,7 @@ jobs: - name: Build for linux run: | fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64 main.go + mv *.tar.xz bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-linux-amd64.tar.xz env: VERSION: ${{github.ref_name}} BUILD: ${{github.run_number}} @@ -97,7 +98,6 @@ jobs: CGO_ENABLED: 1 CC: gcc - - name: Build for windows run: | fyne package --os ${{GOOS}} --release --appVersion=${VERSION#v} --appBuild=${BUILD} --exe bin/sw1ped-mod-switcher-${VERSION#v}.${BUILD}-windows-amd64.exe main.go @@ -110,7 +110,6 @@ jobs: CGO_ENABLED: 1 CC: x86_64-w64-mingw32-gcc - - name: Release binaries uses: https://gitea.com/actions/release-action@main with: diff --git a/main.go b/main.go index fae2555..343ee9d 100644 --- a/main.go +++ b/main.go @@ -63,10 +63,12 @@ var cfg *Config func main() { if !admin.Admin() { + fmt.Println("not running as administrator relaunching") if err := admin.RunSelfElevated(); err != nil { panic(err) } os.Exit(0) + return // just incase } cfg = loadConfig() @@ -138,9 +140,13 @@ func fillGrid(grid *fyne.Container, parent fyne.Window) { grid.Hide() defer grid.Show() grid.RemoveAll() - for _, profile := range profiles { - profilename := filepath.Base(profile) - grid.Add(widget.NewButton(profilename, makeIFunc(profile, archive, parent))) + if admin.Admin() { + for _, profile := range profiles { + profilename := filepath.Base(profile) + grid.Add(widget.NewButton(profilename, makeIFunc(profile, archive, parent))) + } + } else { + grid.Add(widget.NewLabel("not running as administrator")) } }