aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/tips-and-tricks.md
diff options
context:
space:
mode:
authorBastien Wirtz <bastien.wirtz@gmail.com>2021-09-25 12:12:22 +0200
committerBastien Wirtz <bastien.wirtz@gmail.com>2021-09-25 12:18:13 +0200
commit1d3287dcca801a000dbdb40ef20fd26a97ebb2e3 (patch)
tree1d686bb1ddc88becccd25a4e7f1f34453561b711 /docs/tips-and-tricks.md
parent6173d7df609bc3ab071d5d9e34ce1eb1cb05d99e (diff)
downloadhomer-1d3287dcca801a000dbdb40ef20fd26a97ebb2e3.tar.gz
homer-1d3287dcca801a000dbdb40ef20fd26a97ebb2e3.tar.zst
homer-1d3287dcca801a000dbdb40ef20fd26a97ebb2e3.zip
Apply linters
Diffstat (limited to 'docs/tips-and-tricks.md')
-rw-r--r--docs/tips-and-tricks.md18
1 files changed, 13 insertions, 5 deletions
diff --git a/docs/tips-and-tricks.md b/docs/tips-and-tricks.md
index 94167fb..17bba9a 100644
--- a/docs/tips-and-tricks.md
+++ b/docs/tips-and-tricks.md
@@ -3,6 +3,7 @@
3Here is a collection of neat tips and tricks that Homer users have come up with! 3Here is a collection of neat tips and tricks that Homer users have come up with!
4 4
5## Use Homer as a custom "new tab" page 5## Use Homer as a custom "new tab" page
6
6#### `by @vosdev` 7#### `by @vosdev`
7 8
8These extensions for [Firefox](https://addons.mozilla.org/firefox/addon/custom-new-tab-page) and [Chrome & Friends](https://chrome.google.com/webstore/detail/new-tab-changer/occbjkhimchkolibngmcefpjlbknggfh) allow you to have your homer dashboard in your new tab page, while leaving focus on the address bar meaning you can still type right away if you want to search or go to a page that is not on your homer dash. 9These extensions for [Firefox](https://addons.mozilla.org/firefox/addon/custom-new-tab-page) and [Chrome & Friends](https://chrome.google.com/webstore/detail/new-tab-changer/occbjkhimchkolibngmcefpjlbknggfh) allow you to have your homer dashboard in your new tab page, while leaving focus on the address bar meaning you can still type right away if you want to search or go to a page that is not on your homer dash.
@@ -22,11 +23,12 @@ The Firefox extension loads Homer in an iframe on your new tab page, meaning you
22``` 23```
23 24
24## YAML Anchors 25## YAML Anchors
26
25#### `by @JamiePhonic` 27#### `by @JamiePhonic`
26 28
27Since Homer is configured using YAML, it supports all of YAML's helpful features, such as anchoring! 29Since Homer is configured using YAML, it supports all of YAML's helpful features, such as anchoring!
28 30
29For example, you can define tags and tag styles for each "item" in a service. 31For example, you can define tags and tag styles for each "item" in a service.
30Using Anchoring, you can define all your tags and their styles once like this: (for example) 32Using Anchoring, you can define all your tags and their styles once like this: (for example)
31 33
32```yaml 34```yaml
@@ -70,6 +72,7 @@ The end result is that if you want to update the name or style of any particular
70Great if you have a lot of services or a lot of tags! 72Great if you have a lot of services or a lot of tags!
71 73
72## Remotely edit your config with Code Server 74## Remotely edit your config with Code Server
75
73#### `by @JamiePhonic` 76#### `by @JamiePhonic`
74 77
75Homer doesn't yet provide a way to edit your configuration from inside Homer itself, but that doesn't mean it can't be done! 78Homer doesn't yet provide a way to edit your configuration from inside Homer itself, but that doesn't mean it can't be done!
@@ -78,14 +81,17 @@ You can setup and use [Code-Server](https://github.com/cdr/code-server) to edit
78 81
79If you're running Homer in docker, you can setup a Code-Server container and pass your homer config directory into it. 82If you're running Homer in docker, you can setup a Code-Server container and pass your homer config directory into it.
80Simply pass your homer config directory as an extra -v parameter to your code-server container: 83Simply pass your homer config directory as an extra -v parameter to your code-server container:
81``` 84
85```sh
82-v '/your/local/homer/config-dir/':'/config/homer':'rw' 86-v '/your/local/homer/config-dir/':'/config/homer':'rw'
83``` 87```
88
84This will map your homer config directory (For example, /docker/appdata/homer/) into code-server's `/config/` directory, in a sub folder called `homer` 89This will map your homer config directory (For example, /docker/appdata/homer/) into code-server's `/config/` directory, in a sub folder called `homer`
85 90
86As a bonus, Code-Server puts the "current folder" as a parameter in the URL bar, so you could add a `links:` entry in Homer that points to your code-server instance with the directory pre-filled for essentially 1 click editing! 91As a bonus, Code-Server puts the "current folder" as a parameter in the URL bar, so you could add a `links:` entry in Homer that points to your code-server instance with the directory pre-filled for essentially 1 click editing!
87 92
88For example: 93For example:
94
89```yml 95```yml
90links: 96links:
91 - name: Edit config 97 - name: Edit config
@@ -93,9 +99,11 @@ links:
93 url: https://vscode.example.net/?folder=/config/homer 99 url: https://vscode.example.net/?folder=/config/homer
94 target: "_blank" # optional html tag target attribute 100 target: "_blank" # optional html tag target attribute
95``` 101```
102
96where the path after `?folder=` is the path to the folder where you mounted your homer config INSIDE the Code-Server container. 103where the path after `?folder=` is the path to the folder where you mounted your homer config INSIDE the Code-Server container.
97 104
98### Example Code-Server docker create command 105### Example Code-Server docker create command
106
99```sh 107```sh
100docker create \ 108docker create \
101 --name=code-server \ 109 --name=code-server \
@@ -111,13 +119,13 @@ docker create \
111 linuxserver/code-server 119 linuxserver/code-server
112``` 120```
113 121
114
115## Get the news headlines in Homer 122## Get the news headlines in Homer
116 123
117### Mapping Fields 124### Mapping Fields
125
118Most times, the url you're getting headlines from follows a different schema than the one expected by Homer. 126Most times, the url you're getting headlines from follows a different schema than the one expected by Homer.
119 127
120For example, if you would like to show jokes from ChuckNorris.io, you'll find that the url https://api.chucknorris.io/jokes/random is giving you info like this: 128For example, if you would like to show jokes from ChuckNorris.io, you'll find that the url <https://api.chucknorris.io/jokes/random> is giving you info like this:
121 129
122```json 130```json
123{ 131{
@@ -179,6 +187,6 @@ If the URL you specified returns a JSON object that defines a `title` and `conte
179 187
180So, using [Node-Red](https://nodered.org/docs/getting-started/) and a quick flow, you can process an RSS feed to replace the message with a news item! 188So, using [Node-Red](https://nodered.org/docs/getting-started/) and a quick flow, you can process an RSS feed to replace the message with a news item!
181 189
182To get started, simply import [this flow](https://flows.nodered.org/flow/4b6406c9a684c26ace0430dd1826e95d) into your Node-Red instance and change the RSS feed in the "Get News RSS Feed" node to one of your choosing! 190To get started, simply import [this flow](https://flows.nodered.org/flow/4b6406c9a684c26ace0430dd1826e95d) into your Node-Red instance and change the RSS feed in the "Get News RSS Feed" node to one of your choosing!
183 191
184So far, the flow has been tested with BBC News and Sky News, however it should be easy to modify the flow to work with other RSS feeds if they don't work out of the box! 192So far, the flow has been tested with BBC News and Sky News, however it should be easy to modify the flow to work with other RSS feeds if they don't work out of the box!