Compare commits
2 Commits
3396109e00
...
55112c96dc
Author | SHA1 | Date | |
---|---|---|---|
|
55112c96dc | ||
|
3fd6ab5675 |
@ -20,7 +20,7 @@ To configure this new tab page as website, you can install the firefox extension
|
||||
|
||||
## Config and Profiles
|
||||
|
||||
This tool works with profiles. The default profile is `startpage`. If you want to load another profile just write it as command line arg after the command. To write a config File you can create the files here:
|
||||
This tool works with profiles. The default profile is `default`. If you want to load another profile just write it as command line arg after the command. To write a config File you can create the files here:
|
||||
|
||||
- `{profile}.toml`
|
||||
- `.{profile}.toml`
|
||||
@ -43,8 +43,11 @@ air dev
|
||||
|
||||
## TODO
|
||||
|
||||
- implement fetching website logos, to run at the start of the program and serve it from the temp directory
|
||||
- implementing proper command line args
|
||||
- clear cache
|
||||
- implement fetching in intervals
|
||||
- host this website on a demo page
|
||||
- implement ctl
|
||||
- writing documentation
|
||||
- implement autocomplete with a nice go backend and fast communication. Since it all runs locally nobody should have privacy concerns NEEDS TO BE ABLE TO TOGGLED OFF FOR DEMO PAGE
|
||||
|
||||
WRITE DOCUMENTATION
|
||||
|
1
go.mod
1
go.mod
@ -5,7 +5,6 @@ go 1.24.2
|
||||
require github.com/labstack/echo/v4 v4.13.4
|
||||
|
||||
require (
|
||||
github.com/kirsle/configdir v0.0.0-20170128060238-e45d2f54772f // indirect
|
||||
github.com/labstack/gommon v0.4.2 // indirect
|
||||
github.com/mattn/go-colorable v0.1.14 // indirect
|
||||
github.com/mattn/go-isatty v0.0.20 // indirect
|
||||
|
@ -9,7 +9,6 @@ import (
|
||||
"slices"
|
||||
|
||||
"gitea.elara.ws/Hazel/transfem-startpage/internal/diyhrt"
|
||||
"github.com/kirsle/configdir"
|
||||
"github.com/pelletier/go-toml"
|
||||
)
|
||||
|
||||
@ -103,12 +102,14 @@ func (c *Config) LoadDiyHrt(listings []diyhrt.Listing) {
|
||||
func (rc *Config) ScanForConfigFile(profile string) error {
|
||||
profileFile := profile + ".toml"
|
||||
|
||||
configPath := configdir.LocalConfig("startpage")
|
||||
configFile := filepath.Join(configPath, profileFile)
|
||||
baseDir, cacheDirErr := os.UserConfigDir()
|
||||
if cacheDirErr == nil {
|
||||
configFile := filepath.Join(baseDir, "startpage", profileFile)
|
||||
|
||||
if err := rc.LoadConfigFile(configFile); !errors.Is(err, os.ErrNotExist) {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
if err := rc.LoadConfigFile(profileFile); !errors.Is(err, os.ErrNotExist) {
|
||||
return err
|
||||
@ -139,7 +140,7 @@ func (rc *Config) LoadConfigFile(file string) error {
|
||||
|
||||
func (c *Config) Init() error {
|
||||
fmt.Print("downloading website icons")
|
||||
for i, _ := range c.Template.Websites {
|
||||
for i := range c.Template.Websites {
|
||||
fmt.Print(".")
|
||||
c.Template.Websites[i].Cache()
|
||||
}
|
||||
|
6
main.go
6
main.go
@ -61,13 +61,11 @@ func getFileSystem() http.FileSystem {
|
||||
}
|
||||
|
||||
func main() {
|
||||
fmt.Println("running transfem startpage")
|
||||
|
||||
profile := "startpage"
|
||||
profile := "default"
|
||||
if len(os.Args) > 1 {
|
||||
profile = os.Args[1]
|
||||
}
|
||||
fmt.Println("loading profile " + profile + "...")
|
||||
fmt.Println("loading profile " + profile)
|
||||
|
||||
err := CurrentConfig.ScanForConfigFile(profile)
|
||||
if err != nil {
|
||||
|
@ -1 +1 @@
|
||||
exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1
|
||||
exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1
|
Loading…
x
Reference in New Issue
Block a user