Create chatdir/chatdir-inotify modules and eggs

This commit is contained in:
Jaidyn Ann 2023-05-21 17:07:02 -05:00
parent f8f45345e8
commit 2a682d2908
4 changed files with 37 additions and 3 deletions

8
chatdir-inotify.egg Normal file
View File

@ -0,0 +1,8 @@
;; -*- Scheme -*-
((synopsis "A simple Chatdir input-loop.")
(author "Jaidyn Ann")
(category net)
(license "GPLv3")
(dependencies srfi-1 inotify)
(components
(extension chatdir-inotify (source "inotify.scm"))))

8
chatdir.egg Normal file
View File

@ -0,0 +1,8 @@
;; -*- Scheme -*-
((synopsis "Interface with Chatdir directories")
(author "Jaidyn Ann")
(category net)
(license "GPLv3")
(dependencies srfi-1 srfi-13 srfi-19 xattr)
(components
(extension chatdir)))

View File

@ -14,9 +14,21 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>. ;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;; ;;
(module chatdir
(channels channel-add! channel-cleanup!
channel-metadata-set! channel-metadata-get channel-metadata-get* channel-metadata
user-add! user-file-set! user-file-get
user-enable-state! user-disable-state! user-toggle-states!
channel-users channel-user-add! channel-user-file-set! channel-user-file-get
channel-user-disable-state! channel-user-enable-state! channel-user-toggle-states!
channel-message-add! channel-messages
channel-messages-by-xattr channel-messages-by-sender
channel-messages-by-date channel-messages-by-date* channel-messages-by-date-range
)
(import scheme (import scheme
(chicken file) (chicken file posix) (chicken pathname) (chicken io) (chicken file) (chicken file posix) (chicken pathname) (chicken port)
(chicken random) (chicken string) (chicken io) (chicken random) (chicken string)
srfi-1 srfi-13 srfi-19 srfi-1 srfi-13 srfi-19
(prefix xattr xattr:)) (prefix xattr xattr:))
@ -382,3 +394,4 @@
(lambda (in-port) (lambda (in-port)
(read-string #f in-port)))) (read-string #f in-port))))
) ;; chatdir module

View File

@ -15,8 +15,12 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>. ;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;; ;;
(module chatdir-inotify
(input-loop input-loop-init)
(import scheme (import scheme
(chicken file) (chicken io) (chicken pathname) (chicken base) (chicken condition) (chicken file) (chicken io)
(chicken pathname)
srfi-1 srfi-1
(prefix inotify inotify:)) (prefix inotify inotify:))
@ -172,3 +176,4 @@
;; 🎵 Symbolic links cannot have extended attributes, and that is a war-crime. 🎶 ;; 🎵 Symbolic links cannot have extended attributes, and that is a war-crime. 🎶
;; 🎵 Directories cannot have extended attributes, and that is a war-crime. 🎶 ;; 🎵 Directories cannot have extended attributes, and that is a war-crime. 🎶
) ;; chatdir-inotify module