mirror of
https://codeberg.org/scip/kageviewer.git
synced 2025-12-16 20:20:58 +01:00
move to codeberg (#2)
This commit is contained in:
65
.goreleaser.yaml
Normal file
65
.goreleaser.yaml
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
# vim: set ts=2 sw=2 tw=0 fo=cnqoj
|
||||||
|
|
||||||
|
version: 2
|
||||||
|
|
||||||
|
before:
|
||||||
|
hooks:
|
||||||
|
- go mod tidy
|
||||||
|
|
||||||
|
gitea_urls:
|
||||||
|
api: https://codeberg.org/api/v1
|
||||||
|
download: https://codeberg.org
|
||||||
|
|
||||||
|
builds:
|
||||||
|
- env:
|
||||||
|
- CGO_ENABLED=0
|
||||||
|
goos:
|
||||||
|
- linux
|
||||||
|
- freebsd
|
||||||
|
|
||||||
|
archives:
|
||||||
|
- formats: [tar.gz]
|
||||||
|
# this name template makes the OS and Arch compatible with the results of `uname`.
|
||||||
|
name_template: >-
|
||||||
|
{{ .ProjectName }}_
|
||||||
|
{{- title .Os }}_
|
||||||
|
{{- if eq .Arch "amd64" }}x86_64
|
||||||
|
{{- else if eq .Arch "386" }}i386
|
||||||
|
{{- else }}{{ .Arch }}{{ end }}
|
||||||
|
{{- if .Arm }}v{{ .Arm }}{{ end }}_{{ .Tag }}
|
||||||
|
# use zip for windows archives
|
||||||
|
format_overrides:
|
||||||
|
- goos: windows
|
||||||
|
formats: [zip]
|
||||||
|
- goos: linux
|
||||||
|
formats: [tar.gz,binary]
|
||||||
|
files:
|
||||||
|
- src: "*.md"
|
||||||
|
strip_parent: true
|
||||||
|
- src: Makefile.dist
|
||||||
|
dst: Makefile
|
||||||
|
wrap_in_directory: true
|
||||||
|
|
||||||
|
changelog:
|
||||||
|
sort: asc
|
||||||
|
filters:
|
||||||
|
exclude:
|
||||||
|
- "^docs:"
|
||||||
|
- "^test:"
|
||||||
|
groups:
|
||||||
|
- title: Improved
|
||||||
|
regexp: '^.*?(feat|add|new)(\([[:word:]]+\))??!?:.+$'
|
||||||
|
order: 0
|
||||||
|
- title: Fixed
|
||||||
|
regexp: '^.*?(bug|fix)(\([[:word:]]+\))??!?:.+$'
|
||||||
|
order: 1
|
||||||
|
- title: Changed
|
||||||
|
order: 999
|
||||||
|
|
||||||
|
release:
|
||||||
|
header: "# Release Notes"
|
||||||
|
footer: >-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Full Changelog: [{{ .PreviousTag }}...{{ .Tag }}](https://codeberg.org/scip/kageviewer/compare/{{ .PreviousTag }}...{{ .Tag }})
|
||||||
31
.woodpecker/build.yaml
Normal file
31
.woodpecker/build.yaml
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
matrix:
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
goversion:
|
||||||
|
- 1.24
|
||||||
|
|
||||||
|
labels:
|
||||||
|
platform: ${platform}
|
||||||
|
|
||||||
|
steps:
|
||||||
|
build:
|
||||||
|
when:
|
||||||
|
event: [push]
|
||||||
|
image: golang:${goversion}
|
||||||
|
commands:
|
||||||
|
- apt-get update
|
||||||
|
- apt-get install -y libasound2-dev libgl1-mesa-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev libxxf86vm-dev
|
||||||
|
- go get
|
||||||
|
- go build
|
||||||
|
|
||||||
|
linter:
|
||||||
|
when:
|
||||||
|
event: [push]
|
||||||
|
image: golang:${goversion}
|
||||||
|
commands:
|
||||||
|
- apt-get update
|
||||||
|
- apt-get install -y libasound2-dev libgl1-mesa-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev libxxf86vm-dev
|
||||||
|
- curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/HEAD/install.sh | sh -s -- -b $(go env GOPATH)/bin v2.5.0
|
||||||
|
- golangci-lint --version
|
||||||
|
- golangci-lint run ./...
|
||||||
|
depends_on: [build]
|
||||||
15
.woodpecker/release.yaml
Normal file
15
.woodpecker/release.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
# build release
|
||||||
|
|
||||||
|
labels:
|
||||||
|
platform: linux/amd64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
goreleaser:
|
||||||
|
image: goreleaser/goreleaser
|
||||||
|
when:
|
||||||
|
event: [tag]
|
||||||
|
environment:
|
||||||
|
GITEA_TOKEN:
|
||||||
|
from_secret: DEPLOY_TOKEN
|
||||||
|
commands:
|
||||||
|
- goreleaser release --clean --verbose
|
||||||
18
Makefile.dist
Normal file
18
Makefile.dist
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# -*-make-*-
|
||||||
|
|
||||||
|
.PHONY: install all
|
||||||
|
|
||||||
|
tool = rpn
|
||||||
|
PREFIX = /usr/local
|
||||||
|
UID = root
|
||||||
|
GID = 0
|
||||||
|
|
||||||
|
all:
|
||||||
|
@echo "Type 'sudo make install' to install the tool."
|
||||||
|
@echo "To change prefix, type 'sudo make install PREFIX=/opt'"
|
||||||
|
|
||||||
|
install:
|
||||||
|
install -d -o $(UID) -g $(GID) $(PREFIX)/bin
|
||||||
|
install -d -o $(UID) -g $(GID) $(PREFIX)/share/doc
|
||||||
|
install -o $(UID) -g $(GID) -m 555 $(tool) $(PREFIX)/sbin/
|
||||||
|
install -o $(UID) -g $(GID) -m 444 *.md $(PREFIX)/share/doc/
|
||||||
13
README.md
13
README.md
@@ -1,9 +1,10 @@
|
|||||||
# kageviewer - Viewer for shaders written in Kage, similar to glslviewer
|
# kageviewer - Viewer for shaders written in Kage, similar to glslviewer
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
[](https://github.com/tlinden/kageviewer/blob/master/LICENSE)
|
[](https://codeberg.org/scip/kageviewer/raw/branch/main/LICENSE)
|
||||||
[](https://goreportcard.com/report/github.com/tlinden/kageviewer)
|
[](https://goreportcard.com/report/codeberg.org/scip/kageviewer)
|
||||||
|
[](https://ci.codeberg.org/repos/15617)
|
||||||
|
|
||||||
This little tool can be used to test shaders written in
|
This little tool can be used to test shaders written in
|
||||||
[Kage](https://ebitengine.org/en/documents/shader.html), a shader meta
|
[Kage](https://ebitengine.org/en/documents/shader.html), a shader meta
|
||||||
@@ -15,7 +16,7 @@ will be printed to STDOUT. The same applies for images.
|
|||||||
|
|
||||||
## Screenshot
|
## Screenshot
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
@@ -25,7 +26,7 @@ pre built binaries are provided.
|
|||||||
### Installation with go
|
### Installation with go
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
go install github.com/tlinden/kageviewer@latest
|
go install codeberg.org/scip/kageviewer@latest
|
||||||
```
|
```
|
||||||
|
|
||||||
### Installation from source
|
### Installation from source
|
||||||
@@ -128,7 +129,7 @@ Possible parameters equal the long command line options.
|
|||||||
|
|
||||||
# Report bugs
|
# Report bugs
|
||||||
|
|
||||||
[Please open an issue](https://github.com/TLINDEN/kageviewer/issues). Thanks!
|
[Please open an issue](https://codeberg.org/scip/kageviewer/issues). Thanks!
|
||||||
|
|
||||||
# License
|
# License
|
||||||
|
|
||||||
|
|||||||
22
config.go
22
config.go
@@ -18,6 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
@@ -52,8 +53,7 @@ Options:
|
|||||||
--map-slider <name> Map Slider uniform to <name>
|
--map-slider <name> Map Slider uniform to <name>
|
||||||
--map-mouse <name> Map Mouse uniform to <name>
|
--map-mouse <name> Map Mouse uniform to <name>
|
||||||
-d --debug Show debugging output
|
-d --debug Show debugging output
|
||||||
-v --version Show program version
|
-v --version Show program version`
|
||||||
`
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
@@ -81,7 +81,7 @@ func InitConfig() (*Config, error) {
|
|||||||
// setup custom usage
|
// setup custom usage
|
||||||
flagset := flag.NewFlagSet("config", flag.ContinueOnError)
|
flagset := flag.NewFlagSet("config", flag.ContinueOnError)
|
||||||
flagset.Usage = func() {
|
flagset.Usage = func() {
|
||||||
fmt.Println(Usage)
|
_, _ = fmt.Println(Usage)
|
||||||
os.Exit(0)
|
os.Exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -165,13 +165,13 @@ func SanitiyCheck(conf *Config) error {
|
|||||||
|
|
||||||
geo := strings.Split(conf.Geo, "x")
|
geo := strings.Split(conf.Geo, "x")
|
||||||
if len(geo) != 2 {
|
if len(geo) != 2 {
|
||||||
return fmt.Errorf(geoerr)
|
return errors.New(geoerr)
|
||||||
}
|
}
|
||||||
|
|
||||||
w, errw := strconv.Atoi(geo[0])
|
w, errw := strconv.Atoi(geo[0])
|
||||||
h, errh := strconv.Atoi(geo[1])
|
h, errh := strconv.Atoi(geo[1])
|
||||||
if errw != nil || errh != nil {
|
if errw != nil || errh != nil {
|
||||||
return fmt.Errorf(geoerr)
|
return errors.New(geoerr)
|
||||||
}
|
}
|
||||||
|
|
||||||
conf.Width = w
|
conf.Width = w
|
||||||
@@ -181,13 +181,13 @@ func SanitiyCheck(conf *Config) error {
|
|||||||
|
|
||||||
pos := strings.Split(conf.Posision, "x")
|
pos := strings.Split(conf.Posision, "x")
|
||||||
if len(geo) != 2 {
|
if len(geo) != 2 {
|
||||||
return fmt.Errorf(poserr)
|
return errors.New(poserr)
|
||||||
}
|
}
|
||||||
|
|
||||||
x, errx := strconv.Atoi(pos[0])
|
x, errx := strconv.Atoi(pos[0])
|
||||||
y, erry := strconv.Atoi(pos[1])
|
y, erry := strconv.Atoi(pos[1])
|
||||||
if errx != nil || erry != nil {
|
if errx != nil || erry != nil {
|
||||||
return fmt.Errorf(poserr)
|
return errors.New(poserr)
|
||||||
}
|
}
|
||||||
|
|
||||||
conf.X = x
|
conf.X = x
|
||||||
@@ -195,11 +195,3 @@ func SanitiyCheck(conf *Config) error {
|
|||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func fileExists(filename string) bool {
|
|
||||||
info, err := os.Stat(filename)
|
|
||||||
if os.IsNotExist(err) {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
return !info.IsDir()
|
|
||||||
}
|
|
||||||
|
|||||||
6
game.go
6
game.go
@@ -46,7 +46,9 @@ func LoadImage(name string) (*ebiten.Image, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
defer fd.Close()
|
defer func() {
|
||||||
|
_ = fd.Close()
|
||||||
|
}()
|
||||||
|
|
||||||
img, _, err := image.Decode(fd)
|
img, _, err := image.Decode(fd)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -89,7 +91,7 @@ func (game *Game) Init() error {
|
|||||||
game.Shader = shader
|
game.Shader = shader
|
||||||
|
|
||||||
// user can customize TPS
|
// user can customize TPS
|
||||||
ebiten.SetMaxTPS(game.Conf.TPS)
|
ebiten.SetTPS(game.Conf.TPS)
|
||||||
|
|
||||||
// setup shader bounds, by default we use window size
|
// setup shader bounds, by default we use window size
|
||||||
game.ShaderBounds = image.Rect(0, 0, game.Conf.Width, game.Conf.Height)
|
game.ShaderBounds = image.Rect(0, 0, game.Conf.Width, game.Conf.Height)
|
||||||
|
|||||||
2
go.mod
2
go.mod
@@ -1,4 +1,4 @@
|
|||||||
module github.com/tlinden/kageviewer
|
module codeberg.org/scip/kageviewer
|
||||||
|
|
||||||
go 1.22
|
go 1.22
|
||||||
|
|
||||||
|
|||||||
2
main.go
2
main.go
@@ -64,7 +64,7 @@ func main() {
|
|||||||
|
|
||||||
ebiten.SetWindowSize(game.Conf.Width, game.Conf.Height)
|
ebiten.SetWindowSize(game.Conf.Width, game.Conf.Height)
|
||||||
ebiten.SetWindowTitle("Kage shader viewer")
|
ebiten.SetWindowTitle("Kage shader viewer")
|
||||||
ebiten.SetWindowResizable(true)
|
ebiten.SetWindowResizingMode(ebiten.WindowResizingModeEnabled)
|
||||||
|
|
||||||
if err := ebiten.RunGame(game); err != nil {
|
if err := ebiten.RunGame(game); err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
|
|||||||
Reference in New Issue
Block a user