mirror of
https://github.com/stashapp/stash.git
synced 2025-12-06 08:26:00 +01:00
* Move main to cmd * Move api to internal * Move logger and manager to internal * Move shell hiding code to separate package * Decouple job from desktop and utils * Decouple session from config * Move static into internal * Decouple config from dlna * Move desktop to internal * Move dlna to internal * Decouple remaining packages from config * Move config into internal * Move jsonschema and paths to models * Make ffmpeg functions private * Move file utility methods into fsutil package * Move symwalk into fsutil * Move single-use util functions into client package * Move slice functions to separate packages * Add env var to suppress windowsgui arg * Move hash functions into separate package * Move identify to internal * Move autotag to internal * Touch UI when generating backend
36 lines
1.1 KiB
Go
36 lines
1.1 KiB
Go
package utils
|
|
|
|
import "runtime"
|
|
|
|
// valid UA from https://user-agents.net
|
|
const Safari = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Safari/605.1.15/iY0wnXbs-59"
|
|
const FirefoxWindows = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0"
|
|
const FirefoxLinux = "Mozilla/5.0 (X11; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0"
|
|
const FirefoxLinuxArm = "Mozilla/5.0 (X11; Linux armv7l; rv:86.0) Gecko/20100101 Firefox/86.0"
|
|
const FirefoxLinuxArm64 = "Mozilla/5.0 (X11; Linux aarch64; rv:86.0) Gecko/20100101 Firefox/86.0"
|
|
|
|
// getUserAgent returns a valid User Agent string that matches the running os/arch
|
|
func getUserAgent() string {
|
|
arch := runtime.GOARCH
|
|
os := runtime.GOOS
|
|
|
|
switch os {
|
|
case "darwin":
|
|
return Safari
|
|
case "windows":
|
|
return FirefoxWindows
|
|
case "linux":
|
|
switch arch {
|
|
case "arm":
|
|
return FirefoxLinuxArm
|
|
case "arm64":
|
|
return FirefoxLinuxArm64
|
|
case "amd64":
|
|
return FirefoxLinux
|
|
default:
|
|
return FirefoxLinux
|
|
}
|
|
default:
|
|
return FirefoxLinux
|
|
}
|
|
}
|