From 8daa0742b7268a94dac4076311cfe4e0323cbe60 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Fri, 11 Oct 2024 04:19:59 +0000 Subject: feat(yae): add init sub-command --- .gitignore | 4 ++-- README.md | 1 + yae.go | 15 +++++++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 6758bf2..ee13815 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -wiene +yae .pre-commit-config.yaml result -wiene.json +yae.json diff --git a/README.md b/README.md index dfb9ba7..56c9655 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ AUTHOR: Fuwn COMMANDS: + init Initialise a new Yae environment add Add a source drop Drop a source update Update one or all sources diff --git a/yae.go b/yae.go index baf1a9a..5c6cd79 100644 --- a/yae.go +++ b/yae.go @@ -25,6 +25,10 @@ func main() { }, }, Before: func(c *cli.Context) error { + if args := c.Args(); args.Len() == 1 && args.Get(0) == "init" { + return nil + } + return sources.Load(c.String("sources")) }, Flags: []cli.Flag{ @@ -42,6 +46,17 @@ func main() { }, Suggest: true, Commands: []*cli.Command{ + { + Name: "init", + Usage: "Initialise a new Yae environment", + Action: func(c *cli.Context) error { + if _, err := os.Stat(c.String("sources")); err == nil { + return fmt.Errorf("sources file already exists") + } + + return sources.Save(c.String("sources")) + }, + }, { Name: "add", Args: true, -- cgit v1.2.3