From cdfc069c4181e83b62b411ecfcdcc936f65ea87e Mon Sep 17 00:00:00 2001 From: B Stack Date: Tue, 29 Sep 2020 18:59:51 -0400 Subject: write nice readme --- README.md | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index fabb969..547db00 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,22 @@ -# Overview -Myautomount was translated to shell almost line-for-line from Go source at [https://github.com/project-trident/trident-utilities/blame/master/src-go/automount/main.go](https://github.com/project-trident/trident-utilities/blame/master/src-go/automount/main.go) but then it diverged. +# README for myautomount +## Overview +Myautomount is a solution for desktop users who want to have easy access to removable media, without dbus. Dependencies include autofs, python3, and gtk3. This package provides a system tray icon that displays the available removable media that can be mounted with autofs. -# TODO -write makefile -write better readme -write man pages +Myautomount is my response to the Go tool by Project Trident, [trident-automount][1]. I translated the Go tool almost line-for-line into shell, and then modified it slightly. -# TESTING AND BUILDING +## Design and architecture +A shell script, myautomountd, wraps around `udevadm monitor` to watch for block devices that are added and removed. Upon finding a new block device, the daemon will generate pseudo-xdg [desktop files][2] in a particular directory which defaults to `/run/user/${UID}/media`. +The tray icon uses a python implementation of [inotify][3] to watch that directory, and generate menus for the left- and right-click actions. + +## Testing and building myautomount +Build dependencies include txt2man, and my txtman-wrapper from [bgscripts-core][4]. Use environment variable `MYA_PREFIX` for testing. export MYA_PREFIX=~/dev/myautomount/src sudo DEBUG=1 MYA_PREFIX=~/dev/myautomount/src sh -x usr/libexec/myautomount/myautomount-initialize.sh + +# References +[1]: https://github.com/project-trident/trident-utilities/blame/master/src-go/automount/main.go +[2]: https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html +[3]: https://github.com/seb-m/pyinotify +[4]: https://gitlab.com/bgstack15/bgscripts/-/blob/master/src/usr/bin/txt2man-wrapper -- cgit