1
0
Fork 0
Main/Operating System/Implementation Plan.md

14 lines
1 KiB
Markdown
Raw Normal View History

# Implementation plan for ActivityOS
## Start by forking [GNOME Shell](https://en.wikipedia.org/wiki/GNOME_Shell)
It already has the Activities button so it makes a perfect candidate for a fork.
GNOME Files (also known as Nautilus) needs to have an ability to add Linux VFS directories as Libraries which would be then be stored in a virtual tag-based file system on a higher level of abstraction. Then libraries can be properly tagged by the user or GNOME itself in case of mechanical tags which can be inferred from the file itself (think [MediaInfo](https://en.wikipedia.org/wiki/MediaInfo)).
Once tagged libraries are implemented, it's all about adding a proper UI to create and manage activities.
### Lazy tags
Some automatic tags are too expensive to compute every time the file is changed. Hence, it makes sense to store a flag on file modification that tag value has to be freshly computed next time it is queried. Then there can be a command similar to [`sync`](https://linux.die.net/man/8/sync) to force recomputation of all lazy tags.