@@ -19,7 +19,7 @@ package configs
1919
2020import (
2121 "fmt"
22- "os/user "
22+ "os"
2323 "runtime"
2424
2525 "github.com/arduino/go-paths-helper"
@@ -28,65 +28,44 @@ import (
2828
2929// getDefaultConfigFilePath returns the default path for arduino-cli.yaml
3030func getDefaultConfigFilePath () * paths.Path {
31- usr , err := user . Current ()
31+ arduinoDataDir , err := getDefaultArduinoDataDir ()
3232 if err != nil {
33- panic (fmt . Errorf ( "retrieving user home dir: %s" , err ) )
33+ panic (err )
3434 }
35- arduinoDataDir := paths .New (usr .HomeDir )
36-
37- switch runtime .GOOS {
38- case "linux" :
39- arduinoDataDir = arduinoDataDir .Join (".arduino15" )
40- case "darwin" :
41- arduinoDataDir = arduinoDataDir .Join ("Library" , "arduino15" )
42- case "windows" :
43- localAppDataPath , err := win32 .GetLocalAppDataFolder ()
44- if err != nil {
45- panic (err )
46- }
47- arduinoDataDir = paths .New (localAppDataPath ).Join ("Arduino15" )
48- default :
49- panic (fmt .Errorf ("unsupported OS: %s" , runtime .GOOS ))
50- }
51-
5235 return arduinoDataDir .Join ("arduino-cli.yaml" )
5336}
5437
5538func getDefaultArduinoDataDir () (* paths.Path , error ) {
56- usr , err := user . Current ()
39+ userHomeDir , err := os . UserHomeDir ()
5740 if err != nil {
58- return nil , fmt . Errorf ( "retrieving user home dir: %s" , err )
41+ return nil , err
5942 }
60- arduinoDataDir := paths .New (usr .HomeDir )
61-
6243 switch runtime .GOOS {
6344 case "linux" :
64- arduinoDataDir = arduinoDataDir . Join (".arduino15" )
45+ return paths . New ( userHomeDir ). Join (".arduino15" ), nil
6546 case "darwin" :
66- arduinoDataDir = arduinoDataDir . Join ("Library" , "arduino15" )
47+ return paths . New ( userHomeDir ). Join ("Library" , "arduino15" ), nil
6748 case "windows" :
6849 localAppDataPath , err := win32 .GetLocalAppDataFolder ()
6950 if err != nil {
7051 return nil , fmt .Errorf ("getting LocalAppData path: %s" , err )
7152 }
72- arduinoDataDir = paths .New (localAppDataPath ).Join ("Arduino15" )
53+ return paths .New (localAppDataPath ).Join ("Arduino15" ), nil
7354 default :
7455 return nil , fmt .Errorf ("unsupported OS: %s" , runtime .GOOS )
7556 }
76- return arduinoDataDir , nil
7757}
7858
7959func getDefaultSketchbookDir () (* paths.Path , error ) {
80- usr , err := user . Current ()
60+ userHomeDir , err := os . UserHomeDir ()
8161 if err != nil {
82- return nil , fmt . Errorf ( "retrieving home dir: %s" , err )
62+ return nil , err
8363 }
84-
8564 switch runtime .GOOS {
8665 case "linux" :
87- return paths .New (usr . HomeDir ).Join ("Arduino" ), nil
66+ return paths .New (userHomeDir ).Join ("Arduino" ), nil
8867 case "darwin" :
89- return paths .New (usr . HomeDir ).Join ("Documents" , "Arduino" ), nil
68+ return paths .New (userHomeDir ).Join ("Documents" , "Arduino" ), nil
9069 case "windows" :
9170 documentsPath , err := win32 .GetDocumentsFolder ()
9271 if err != nil {
0 commit comments