Compare commits
30 Commits
5da6636dd7
...
v1.0.2
| Author | SHA1 | Date | |
|---|---|---|---|
| d252e8e8d9 | |||
| 9e493e68d8 | |||
| b898338b2d | |||
| ba986af8a8 | |||
| c1885f174a | |||
| 0650dabb15 | |||
| 42af2d6d25 | |||
| 2dbc72bd39 | |||
| d46a142312 | |||
| caa699c651 | |||
| c5f77582c0 | |||
| 06503ce518 | |||
| f1603dc6fa | |||
| f8932166bb | |||
| ffd41348a0 | |||
| 12a9c101f2 | |||
| ff6381575e | |||
| acb4401e37 | |||
| 76d8c1744a | |||
| b2bef77f09 | |||
| 4cbb0666cb | |||
| 83cb34001f | |||
| 1f09482950 | |||
| 1af4d225b5 | |||
| 7863c53280 | |||
| 35d888ec62 | |||
| 15e317b6fe | |||
| 07f11c7d22 | |||
| 7c28081b65 | |||
| d9a75a5e21 |
@@ -5,8 +5,6 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
lint:
|
lint:
|
||||||
name: Lint
|
name: Lint
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -19,18 +17,21 @@ jobs:
|
|||||||
check-latest: true
|
check-latest: true
|
||||||
cache: true
|
cache: true
|
||||||
|
|
||||||
|
- name: Setup OS dependencies
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y gcc-mingw-w64 gcc libgl1-mesa-dev xorg-dev
|
||||||
|
|
||||||
- name: Install go dependencies
|
- name: Install go dependencies
|
||||||
run: go mod tidy
|
run: go mod tidy
|
||||||
|
|
||||||
- name: Lint
|
- name: Lint
|
||||||
uses: golangci/golangci-lint-action@v3
|
uses: golangci/golangci-lint-action@v8
|
||||||
with:
|
with:
|
||||||
version: latest
|
version: v2.13.2
|
||||||
|
|
||||||
test:
|
test:
|
||||||
name: Test
|
name: Test
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -61,8 +62,6 @@ jobs:
|
|||||||
|
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -90,7 +89,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Build for linux
|
- name: Build for linux
|
||||||
run: |
|
run: |
|
||||||
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}
|
fyne build --os=${GOOS} --metadata BuildVersion=${VERSION} --metadata BuildNumber=${BUILD} -o bin/swiped-mod-switcher-${VERSION}-${BUILD}-${GOOS}-${GOARCH}
|
||||||
env:
|
env:
|
||||||
VERSION: ${{github.ref_name}}
|
VERSION: ${{github.ref_name}}
|
||||||
BUILD: ${{github.run_number}}
|
BUILD: ${{github.run_number}}
|
||||||
@@ -102,7 +101,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Build for windows
|
- name: Build for windows
|
||||||
run: |
|
run: |
|
||||||
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}.exe
|
fyne build --os=${GOOS} --metadata BuildVersion=${VERSION} --metadata BuildNumber=${BUILD} -o bin/swiped-mod-switcher-${VERSION}-${BUILD}-${GOOS}-${GOARCH}.exe
|
||||||
env:
|
env:
|
||||||
VERSION: ${{github.ref_name}}
|
VERSION: ${{github.ref_name}}
|
||||||
BUILD: ${{github.run_number}}
|
BUILD: ${{github.run_number}}
|
||||||
@@ -115,5 +114,5 @@ jobs:
|
|||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: swiped-mod-switcher-${{github.ref_name}}
|
name: swiped-mod-switcher-${{github.ref_name}}-${{github.run_number}}
|
||||||
path: bin/
|
path: bin/
|
||||||
@@ -6,13 +6,14 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
lint:
|
lint:
|
||||||
name: Lint
|
name: Lint
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: test log
|
||||||
|
run: env | sort
|
||||||
|
|
||||||
- name: Setup go
|
- name: Setup go
|
||||||
uses: actions/setup-go@v5
|
uses: actions/setup-go@v5
|
||||||
with:
|
with:
|
||||||
@@ -20,18 +21,21 @@ jobs:
|
|||||||
check-latest: true
|
check-latest: true
|
||||||
cache: true
|
cache: true
|
||||||
|
|
||||||
|
- name: Setup OS dependencies
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y gcc-mingw-w64 gcc libgl1-mesa-dev xorg-dev
|
||||||
|
|
||||||
- name: Install go dependencies
|
- name: Install go dependencies
|
||||||
run: go mod tidy
|
run: go mod tidy
|
||||||
|
|
||||||
- name: Lint
|
- name: Lint
|
||||||
uses: golangci/golangci-lint-action@v3
|
uses: golangci/golangci-lint-action@v8
|
||||||
with:
|
with:
|
||||||
version: latest
|
version: v2.13.2
|
||||||
|
|
||||||
test:
|
test:
|
||||||
name: Test
|
name: Test
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -62,8 +66,6 @@ jobs:
|
|||||||
|
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -91,11 +93,11 @@ jobs:
|
|||||||
|
|
||||||
- name: Build for linux
|
- name: Build for linux
|
||||||
run: |
|
run: |
|
||||||
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}
|
fyne build --os=${GOOS} --metadata BuildVersion=${VERSION} --metadata BuildNumber=${BUILD} -o bin/swiped-mod-switcher-${VERSION}-${BUILD}-${GOOS}-${GOARCH}
|
||||||
ls bin
|
ls bin
|
||||||
env:
|
env:
|
||||||
VERSION: ${github.ref_name}
|
VERSION: ${{github.ref_name}}
|
||||||
BUILD: ${github.run_number}
|
BUILD: ${{github.run_number}}
|
||||||
GOOS: linux
|
GOOS: linux
|
||||||
GOARCH: amd64
|
GOARCH: amd64
|
||||||
CGO_ENABLED: 1
|
CGO_ENABLED: 1
|
||||||
@@ -103,11 +105,11 @@ jobs:
|
|||||||
|
|
||||||
- name: Build for windows
|
- name: Build for windows
|
||||||
run: |
|
run: |
|
||||||
fyne build --os=${GOOS} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}.exe
|
fyne build --os=${GOOS} --metadata BuildVersion=${VERSION} --metadata BuildNumber=${BUILD} -o bin/swiped-mod-switcher-${VERSION}-${BUILD}-${GOOS}-${GOARCH}.exe
|
||||||
ls bin
|
ls bin
|
||||||
env:
|
env:
|
||||||
VERSION: ${github.ref_name}
|
VERSION: ${{github.ref_name}}
|
||||||
BUILD: ${github.run_number}
|
BUILD: ${{github.run_number}}
|
||||||
GOOS: windows
|
GOOS: windows
|
||||||
GOARCH: amd64
|
GOARCH: amd64
|
||||||
CGO_ENABLED: 1
|
CGO_ENABLED: 1
|
||||||
@@ -116,5 +118,5 @@ jobs:
|
|||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: swiped-mod-switcher-${github.ref_name}
|
name: swiped-mod-switcher-${{github.ref_name}}-${{github.run_number}}
|
||||||
path: bin/
|
path: bin/
|
||||||
@@ -7,8 +7,6 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
lint:
|
lint:
|
||||||
name: Lint
|
name: Lint
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -21,6 +19,11 @@ jobs:
|
|||||||
check-latest: true
|
check-latest: true
|
||||||
cache: true
|
cache: true
|
||||||
|
|
||||||
|
- name: Setup OS dependencies
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y gcc-mingw-w64 gcc libgl1-mesa-dev xorg-dev
|
||||||
|
|
||||||
- name: Install go dependencies
|
- name: Install go dependencies
|
||||||
run: go mod tidy
|
run: go mod tidy
|
||||||
|
|
||||||
@@ -31,8 +34,6 @@ jobs:
|
|||||||
|
|
||||||
test:
|
test:
|
||||||
name: Test
|
name: Test
|
||||||
env:
|
|
||||||
RUNNER_TOOL_CACHE: /toolcache
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -87,7 +88,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Build for linux
|
- name: Build for linux
|
||||||
run: |
|
run: |
|
||||||
fyne build --os=${GOOS} --metadata Version=${VERSION} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}
|
fyne build --release --os=${GOOS} --metadata BuildVersion=${VERSION} --metadata BuildNumber=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}-${BUILD}-${GOOS}-${GOARCH}
|
||||||
env:
|
env:
|
||||||
VERSION: ${{github.ref_name}}
|
VERSION: ${{github.ref_name}}
|
||||||
BUILD: ${{github.run_number}}
|
BUILD: ${{github.run_number}}
|
||||||
@@ -99,7 +100,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Build for windows
|
- name: Build for windows
|
||||||
run: |
|
run: |
|
||||||
fyne build --os=${GOOS} --metadata Version=${VERSION} --metadata Build=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}.${BUILD}-${GOOS}-${GOARCH}.exe
|
fyne build --release --os=${GOOS} --metadata BuildVersion=${VERSION} --metadata BuildNumber=${BUILD} -o bin/swiped-mod-switcher-${VERSION#v}-${BUILD}-${GOOS}-${GOARCH}.exe
|
||||||
env:
|
env:
|
||||||
VERSION: ${{github.ref_name}}
|
VERSION: ${{github.ref_name}}
|
||||||
BUILD: ${{github.run_number}}
|
BUILD: ${{github.run_number}}
|
||||||
@@ -109,6 +110,12 @@ jobs:
|
|||||||
CGO_ENABLED: 1
|
CGO_ENABLED: 1
|
||||||
CC: x86_64-w64-mingw32-gcc
|
CC: x86_64-w64-mingw32-gcc
|
||||||
|
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: swiped-mod-switcher-${{github.ref_name}}-${{github.run_number}}
|
||||||
|
path: bin/
|
||||||
|
|
||||||
- name: Release binaries
|
- name: Release binaries
|
||||||
uses: https://gitea.com/actions/release-action@main
|
uses: https://gitea.com/actions/release-action@main
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -0,0 +1,44 @@
|
|||||||
|
# Contributing
|
||||||
|
|
||||||
|
## Propose changes
|
||||||
|
|
||||||
|
Open a pull request against `develop`. Keep the default branch for releases and
|
||||||
|
stable tips; land work on `develop` first.
|
||||||
|
|
||||||
|
Point at an existing issue when one fits. Prefer a short issue that states the
|
||||||
|
symptom or request before a large PR.
|
||||||
|
|
||||||
|
## Commits
|
||||||
|
|
||||||
|
Subject form:
|
||||||
|
|
||||||
|
```
|
||||||
|
area: Imperative summary
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Area** is a real package, directory, or subsystem token (`ci:`, `docs:`,
|
||||||
|
Go package name). Not a lone filename.
|
||||||
|
- **Imperative** mood: Fix, Add, Remove — not "Fixed" or "This patch…".
|
||||||
|
- No trailing period. Aim ≤ ~70–75 characters for the whole subject.
|
||||||
|
- Not conventional-commits (`feat:` / `fix:` / `chore:` as types).
|
||||||
|
|
||||||
|
Body explains **why**. Establish the problem, then say what you are doing.
|
||||||
|
One logical change per commit; split fix and cleanup.
|
||||||
|
|
||||||
|
## Pull requests
|
||||||
|
|
||||||
|
Title matches the primary commit subject.
|
||||||
|
|
||||||
|
- **What** changed
|
||||||
|
- **Why** (problem and impact)
|
||||||
|
- **Test** (concrete steps; "CI green" alone is weak)
|
||||||
|
|
||||||
|
## Issues and closing
|
||||||
|
|
||||||
|
Cite leftover issues by **full URL**. Gitea closes issues when `#N` appears in
|
||||||
|
merge text, so do not put `#N` in the merge message unless that issue is actually
|
||||||
|
done. Use `Fixes #N` / `Closes #N` only when the leftover work is finished.
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
License TBD by owner.
|
||||||
@@ -2,5 +2,3 @@
|
|||||||
Icon = "icon.png"
|
Icon = "icon.png"
|
||||||
Name = "Swiped Mod Switcher"
|
Name = "Swiped Mod Switcher"
|
||||||
ID = "com.s1d3sw1ped.swipedmodswitcher"
|
ID = "com.s1d3sw1ped.swipedmodswitcher"
|
||||||
Version = "0.0.0"
|
|
||||||
Build = 2
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# Swiped Mod Switcher
|
# Swiped Mod Switcher
|
||||||
A simple but effective mod switcher for simple game such as Sims and Cyberpunk 2077.
|
A simple but effective mod switcher for simple game such as Sims.
|
||||||
|
|
||||||
it works by switching out a games mod folder with one of the ones made by you and placed under the profiles directory.
|
it works by switching out a games mod folder with one of the ones made by you and placed under the profiles directory.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module s1d3sw1ped/swipedmodswitcher
|
module s1d3sw1ped/swipedmodswitcher
|
||||||
|
|
||||||
go 1.22
|
go 1.27.0
|
||||||
|
|
||||||
require (
|
require (
|
||||||
fyne.io/fyne/v2 v2.3.5
|
fyne.io/fyne/v2 v2.3.5
|
||||||
|
|||||||
@@ -4,9 +4,9 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
"runtime/debug"
|
||||||
"s1d3sw1ped/swipedmodswitcher/admin"
|
"s1d3sw1ped/swipedmodswitcher/admin"
|
||||||
"slices"
|
"slices"
|
||||||
"strconv"
|
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"fyne.io/fyne/v2"
|
"fyne.io/fyne/v2"
|
||||||
@@ -18,8 +18,6 @@ import (
|
|||||||
"gopkg.in/yaml.v3"
|
"gopkg.in/yaml.v3"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Version = ""
|
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
ModProfilesDirectory string `yaml:"mod_profiles_dir"`
|
ModProfilesDirectory string `yaml:"mod_profiles_dir"`
|
||||||
GameModsDirectory string `yaml:"game_mods_dir"`
|
GameModsDirectory string `yaml:"game_mods_dir"`
|
||||||
@@ -74,7 +72,31 @@ func main() {
|
|||||||
cfg = loadConfig()
|
cfg = loadConfig()
|
||||||
|
|
||||||
ap := app.New()
|
ap := app.New()
|
||||||
wp := ap.NewWindow(ap.Metadata().Name + " v" + ap.Metadata().Version + "." + strconv.Itoa(ap.Metadata().Build))
|
|
||||||
|
commithash := func() string {
|
||||||
|
if info, ok := debug.ReadBuildInfo(); ok {
|
||||||
|
for _, setting := range info.Settings {
|
||||||
|
if setting.Key == "vcs.revision" {
|
||||||
|
return setting.Value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}()
|
||||||
|
|
||||||
|
buildversion := ap.Metadata().Custom["BuildVersion"]
|
||||||
|
if buildversion == "" {
|
||||||
|
buildversion = ""
|
||||||
|
}
|
||||||
|
|
||||||
|
buildnumber := ap.Metadata().Custom["BuildNumber"]
|
||||||
|
if buildnumber == "" {
|
||||||
|
buildnumber = "commit " + commithash
|
||||||
|
} else {
|
||||||
|
buildnumber = "build " + buildnumber
|
||||||
|
}
|
||||||
|
|
||||||
|
wp := ap.NewWindow(ap.Metadata().Name + " " + buildversion + " " + buildnumber)
|
||||||
wp.Resize(fyne.NewSize(600, 1))
|
wp.Resize(fyne.NewSize(600, 1))
|
||||||
wp.CenterOnScreen()
|
wp.CenterOnScreen()
|
||||||
|
|
||||||
@@ -189,6 +211,6 @@ func makeIFunc(profile, archive string, parent fyne.Window) func() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
dialog.NewInformation("Success", fmt.Sprintf("filinked files from %s to %s", filepath.Base(profile), archive), parent).Show()
|
dialog.NewInformation("Success", fmt.Sprintf("linked files from %s to %s", filepath.Base(profile), archive), parent).Show()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user