It has sleep tracking with snore and cough tracking
It has sleep tracking with snore and cough tracking
I’ve definitely moved back to desktops. Still have my laptops but I use them in limited cases.
Isn’t that the plot to Mirror’s Edge?
What languages are you wanting to use, the combination between toolkit and language can make a big difference to your experience.
There are a lot of interesting options out there that aren’t top of people’s minds too. For instance Lazarus, and Flutter. Both can do cross platform.
It’s probably great for bulk as it gives you something close to what you would expect. I imagine it would be different for things that are specific to the lore, world, etc.
Could mean that there is a lot more detail in games, and a lot might even be unintentional.
Is it Space Odyssey?
The fact that is is from LA Times shows that it’s still significant though
Sounds like a regulatory solution is needed. The intersection where domestic policy impacts international.
This.
Thanks to Meta BTRFS is apparently got/getting it to a certain extent too: https://youtu.be/6YIc2fVLVPU?si=ngiHWS0fw2zIHf2M
Back before the media decided it wasn’t a competitor but rather a potential profit source. I do think the government does need to have it’s own alternatives (obviously not identical more on this one day) for other reasons, such as for it’s own media releases, but more internationally coordinated appropriate & considered legislation is probably better.
I asked chatgpt to write a go program for this, this looks roughly correct (I have used both libraries before) obviously this won’t be enough for your particular use case. I imagine you can integrate an RSS feed to your site, however if you’re using something like hugo perhaps output it as a csv.
Super low effort but a good start I think:
package main
import (
"fmt"
"log"
"os"
"strings"
"time"
git "github.com/go-git/go-git/v5"
rss "github.com/jteeuwen/go-pkg-rss"
)
const (
timeout = 5 // timeout in seconds for the RSS feed generation
)
// Repository represents a git repository with its URL
type Repository struct {
URL string
}
// Repositories is the list of git repositories
var Repositories = []Repository{
{URL: "https://github.com/owner/repo1"},
{URL: "https://github.com/owner/repo2"},
// Add more repositories here
}
// FetchLatestTag fetches the latest tag from a git repository
func FetchLatestTag(repoURL string) (string, string, error) {
// Clone the repository to a temporary directory
dir, err := os.MkdirTemp("", "repo")
if err != nil {
return "", "", err
}
defer os.RemoveAll(dir)
_, err = git.PlainClone(dir, true, &git.CloneOptions{
URL: repoURL,
Progress: os.Stdout,
})
if err != nil {
return "", "", err
}
repo, err := git.PlainOpen(dir)
if err != nil {
return "", "", err
}
tags, err := repo.Tags()
if err != nil {
return "", "", err
}
var latestTag string
var latestCommitTime time.Time
err = tags.ForEach(func(ref *plumbing.Reference) error {
tag := ref.Name().Short()
commit, err := repo.CommitObject(ref.Hash())
if err != nil {
return err
}
if commit.Committer.When.After(latestCommitTime) {
latestCommitTime = commit.Committer.When
latestTag = tag
}
return nil
})
if err != nil {
return "", "", err
}
return latestTag, latestCommitTime.Format(time.RFC1123Z), nil
}
// GenerateRSS generates an RSS feed from the latest tags of the repositories
func GenerateRSS() string {
feed := rss.Feed{
Title: "Latest Tags from Git Repositories",
Link: &rss.Link{Href: "http://example.com/"},
Description: "This feed provides the latest tags from a list of git repositories.",
Created: time.Now(),
}
for _, repo := range Repositories {
tag, date, err := FetchLatestTag(repo.URL)
if err != nil {
log.Printf("Error fetching latest tag for repository %s: %v", repo.URL, err)
continue
}
feed.Items = append(feed.Items, &rss.Item{
Title: fmt.Sprintf("Latest tag for %s: %s", repo.URL, tag),
Link: &rss.Link{Href: repo.URL},
Description: fmt.Sprintf("The latest tag for repository %s is %s, created on %s.", repo.URL, tag, date),
Created: time.Now(),
})
}
var rssFeed strings.Builder
rssFeed.WriteString(xml.Header)
if err := feed.Write(&rssFeed); err != nil {
log.Fatalf("Error generating RSS feed: %v", err)
}
return rssFeed.String()
}
func main() {
rssFeed := GenerateRSS()
fmt.Println(rssFeed)
}
I like the idea and have been meaning to build / find something like this however this does a little too much and in not quite the way I want. But it’s cool for those who need this exact implementation.
I’ve only recently moved back but I was using it before the KDE4 release and you could do it with 3.x. Shame
Using Gentoo might work if you enable the KDE overlay: https://wiki.gentoo.org/wiki/KDE/Ebuild_repository
Gentoo supports slots; which allows for concurrent installations of things like desktop environments. Not sure if it’s configured that way right now though.
If you use BTRFS you could install gentoo on a subvolume and boot into it when needed too.
That can happen if you make a major change such as major update to the binaries (ie a software update) while the screen is locked. Or because the screen “saver” / “locker” crashed.
That’s a … really well defined threat…
Gentoo, after a 15 year break where I used Ubuntu / Arch. Might try NixOS or something similar.
KDE for desktop env.
Played 4 first, if you do that you really notice the retrocons etc. I figure in order probably works best.
Thanks. I didn’t know, it is also on my list.
RoG adds a lot of content which makes the early game a bit easier, and opens up a lot of possibilities later.
The other expansions are only worth it once you have “completed” RoG.