-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.go
49 lines (38 loc) · 938 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//go:generate go-winres make
//go:generate goreleaser --clean --snapshot
//go:generate go run mac-bundle/main.go
package main
import (
"flag"
"fmt"
"os"
tea "github.com/charmbracelet/bubbletea"
"github.com/vaaski/go-yt-dlp/src"
)
// todo record ascii cinema for readme
func main() {
// f, err := tea.LogToFile("debug.log", "debug")
// if err != nil {
// fmt.Println("fatal:", err)
// os.Exit(1)
// }
// defer f.Close()
updateFlag := flag.Bool("U", false, "Run auto-update.")
wtFlag := flag.Bool("wt", false, "Do not try to open in Windows Terminal. Meant for internal use.")
flag.Parse()
if *updateFlag {
src.AutoUpdate()
os.Exit(0)
}
if !*wtFlag {
src.OpenInWindowsTerminal()
}
src.InstallYTDLP()
src.InstallFFMPEG()
src.SetTermTitle("go-yt-dlp")
_, teaErr := tea.NewProgram(src.InitialModel()).Run()
if teaErr != nil {
fmt.Printf("Could not start program :(\n%v\n", teaErr)
os.Exit(1)
}
}