Initial Commit
This commit is contained in:
12
content/getting-started/_index.md
Normal file
12
content/getting-started/_index.md
Normal file
@@ -0,0 +1,12 @@
|
||||
+++
|
||||
chapter = true
|
||||
pre = "<b>I. </b>"
|
||||
title = "Getting Started"
|
||||
weight = 1
|
||||
+++
|
||||
|
||||
### Chapter I
|
||||
|
||||
# Getting Started
|
||||
|
||||
This chapter is about `itd`, its purpose, and what it does. It also includes a note about my age and ability to respond.
|
||||
37
content/getting-started/features.md
Normal file
37
content/getting-started/features.md
Normal file
@@ -0,0 +1,37 @@
|
||||
+++
|
||||
title = "Features"
|
||||
date = 2021-10-23T23:04:51-07:00
|
||||
draft = true
|
||||
weight = 2
|
||||
+++
|
||||
|
||||
The list of features is mentioned [here](https://gitea.arsenm.dev/Arsen6331/itd#features) in the readme. This page will describe how certain features work and how new ones are added.
|
||||
|
||||
### Notification Relay
|
||||
|
||||
The notification relay works by listening for method calls on the `org.freedesktop.Notifications` DBus interface. Any such method call represents a notification being sent. ITD reads the data from the method call and creates a notification suitable for ANS (Alert Notification Service) which is used by InfniTime to display notifications. This means DBus must be installed and running for ITD to relay notifications.
|
||||
|
||||
### Transliteration
|
||||
|
||||
Transliteration for ITD is implemented in a custom `translit` package. It consists of a `Transliterator` interface which looks like this:
|
||||
|
||||
```go
|
||||
type Transliterator interface {
|
||||
Transliterate(string) string
|
||||
Init()
|
||||
}
|
||||
```
|
||||
|
||||
Anything that satisfies that interface can be added to the `Transliterators` map and then used in ITD's config in the `notifs.translit.use` array.
|
||||
|
||||
### Music Control
|
||||
|
||||
Music control is implemented using `playerctl` which uses the MPRIS DBus interface. This means it will work with any music player which supports MPRIS. `playerctl` must be installed for ITD to do music control.
|
||||
|
||||
### Control Socket
|
||||
|
||||
ITD exposes a UNIX socket at `/tmp/itd/socket` by default. This socket can be used to control the daemon. It is how `itctl` and `itgui` work. This can be used in any language which supports UNIX sockets which is nearly all of them. Even bash can be used with `netcat`.
|
||||
|
||||
### New Features
|
||||
|
||||
New features are added whenever I find out they exist from InfiniTime's repo or developers. This means ITD's master branch may contain features not yet released in InfiniTime.
|
||||
15
content/getting-started/note.md
Normal file
15
content/getting-started/note.md
Normal file
@@ -0,0 +1,15 @@
|
||||
+++
|
||||
title = "Note"
|
||||
date = 2021-10-23T22:55:22-07:00
|
||||
draft = true
|
||||
weight = 3
|
||||
+++
|
||||
|
||||
This is a note for anyone using or planning to contribute to ITD. I am {{<raw>}}<span id="age">Loading...</span>{{</raw>}} years old and, at times, may be busy with school and unable to answer questions and/or work on the project for a while. If you do not get an answer quickly, I am probably busy. However, I sometimes answer questions, comment on issues, or push code while in school. That means there may be pauses where I cannot answer questions or comment on issues because I am moving between classes or busy doing an assignment. Please do not bombard me with messages if this occurs, I will answer as soon as I can.
|
||||
|
||||
{{<raw>}}
|
||||
<script>
|
||||
birthday = new Date("April 24, 2005")
|
||||
document.getElementById("age").innerHTML = (new Date).getFullYear() - birthday.getFullYear()
|
||||
</script>
|
||||
{{</raw>}}
|
||||
10
content/getting-started/purpose.md
Normal file
10
content/getting-started/purpose.md
Normal file
@@ -0,0 +1,10 @@
|
||||
+++
|
||||
title = "Purpose"
|
||||
date = 2021-10-23T22:34:32-07:00
|
||||
draft = true
|
||||
weight = 1
|
||||
+++
|
||||
|
||||
ITD was created because I could not find a good InfiniTime companion for Linux. There is [Siglo](https://github.com/alexr4535/siglo) which cannot do much beyond syncing time and updating the watch and is not very reliable. There is [Amazfish](https://github.com/piggz/harbour-amazfish) which works, but at least for me, is a bit clunky and unreliable.
|
||||
|
||||
I wanted something that was easy enough to use that I could just run it and forget about it, and had any feature I may want to use. Also, I needed it to work on Linux because I only own Linux devices, including my phone, which is a PinePhone. This leads to the next requirement. I needed it to be easily cross-compiled so that I could use it on all my computers as well as aarch64 devices such as my PinePhone and Raspberry Pi 4s. All of these reasons contributed to me deciding to make ITD and they are what I try to emphasize.
|
||||
Reference in New Issue
Block a user