aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--README.md29
-rw-r--r--docker-compose.yml14
-rw-r--r--docs/configuration.md5
-rw-r--r--docs/tips-and-tricks.md4
-rw-r--r--src/App.vue14
-rw-r--r--src/components/Navbar.vue3
6 files changed, 64 insertions, 5 deletions
diff --git a/README.md b/README.md
index 33a15b1..b965f9b 100644
--- a/README.md
+++ b/README.md
@@ -70,12 +70,41 @@ See [documentation](docs/configuration.md) for information about the configurati
70 70
71### Using docker 71### Using docker
72 72
73To launch container :
74
73```sh 75```sh
74docker run -p 8080:8080 -v /your/local/assets/:/www/assets b4bz/homer:latest 76docker run -p 8080:8080 -v /your/local/assets/:/www/assets b4bz/homer:latest
75``` 77```
76 78
77Default assets will be automatically installed in the `/www/assets` directory. Use `UID` and/or `GID` env var to change the assets owner (`docker run -e "UID=1000" -e "GID=1000" [...]`). 79Default assets will be automatically installed in the `/www/assets` directory. Use `UID` and/or `GID` env var to change the assets owner (`docker run -e "UID=1000" -e "GID=1000" [...]`).
78 80
81### Using docker-compose
82
83The `docker-compose.yml` file must be edited to match your needs.
84Set the port and volume (equivalent to -p and -v arguments) :
85
86```yaml
87volumes:
88 - /your/local/assets/:/www/assets
89ports:
90 - 8080:8080
91```
92
93To launch container :
94
95```sh
96cd /path/to/docker-compose.yml
97docker-compose up -d
98```
99
100Default assets will be automatically installed in the `/www/assets` directory. Use `UID` and/or `GID` env var to change the assets owner, also in `docker-compose.yml` :
101
102```yaml
103environment:
104- UID=1000
105- GID=1000
106```
107
79### Using the release tarball (prebuilt, ready to use) 108### Using the release tarball (prebuilt, ready to use)
80 109
81Download and extract the latest the latest release (`homer.zip`) from the [release page](https://github.com/bastienwirtz/homer/releases), rename the `assets/config.yml.dist` file to `assets/config.yml`, and put it behind a webserver. 110Download and extract the latest the latest release (`homer.zip`) from the [release page](https://github.com/bastienwirtz/homer/releases), rename the `assets/config.yml.dist` file to `assets/config.yml`, and put it behind a webserver.
diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 0000000..85e9156
--- /dev/null
+++ b/docker-compose.yml
@@ -0,0 +1,14 @@
1---
2version: "2"
3services:
4 homer:
5 image: b4bz/homer
6 container_name: homer
7 volumes:
8 - /your/local/assets/:/www/assets
9 ports:
10 - 8080:8080
11 #environment:
12 # - UID=1000
13 # - GID=1000
14 restart: unless-stopped
diff --git a/docs/configuration.md b/docs/configuration.md
index 9790751..a8c0619 100644
--- a/docs/configuration.md
+++ b/docs/configuration.md
@@ -26,6 +26,11 @@ connectivityCheck: true # whether you want to display a message when the apps ar
26# Optional theming 26# Optional theming
27theme: default # 'default' or one of the theme available in 'src/assets/themes'. 27theme: default # 'default' or one of the theme available in 'src/assets/themes'.
28 28
29# Optional custom stylesheet
30# Will load custom CSS files. Especially useful for custom icon sets.
31# stylesheet:
32# - "assets/custom.css"
33
29# Here is the exaustive list of customization parameters 34# Here is the exaustive list of customization parameters
30# However all value are optional and will fallback to default if not set. 35# However all value are optional and will fallback to default if not set.
31# if you want to change only some of the colors, feel free to remove all unused key. 36# if you want to change only some of the colors, feel free to remove all unused key.
diff --git a/docs/tips-and-tricks.md b/docs/tips-and-tricks.md
index fda670d..175c271 100644
--- a/docs/tips-and-tricks.md
+++ b/docs/tips-and-tricks.md
@@ -5,9 +5,9 @@ Here is a collection of neat tips and tricks that Homer users have come up with!
5## Use Homer as a custom "new tab" page 5## Use Homer as a custom "new tab" page
6#### `by @vosdev` 6#### `by @vosdev`
7 7
8This [extension](https://addons.mozilla.org/firefox/addon/custom-new-tab-page) allows 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. 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.
9 9
10The extension loads Homer in an iframe on your new tab page, meaning you have to add `target: '_top'` to each of your items. 10The firefox extension loads Homer in an iframe on your new tab page, meaning you have to add `target: '_top'` to each of your items.
11 11
12```yaml 12```yaml
13- name: "Reddit" 13- name: "Reddit"
diff --git a/src/App.vue b/src/App.vue
index d7054a7..03760fd 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -14,7 +14,7 @@
14 <div v-cloak class="container"> 14 <div v-cloak class="container">
15 <div class="logo"> 15 <div class="logo">
16 <img v-if="config.logo" :src="config.logo" alt="dashboard logo" /> 16 <img v-if="config.logo" :src="config.logo" alt="dashboard logo" />
17 <i v-if="config.icon" :class="['fa-fw', config.icon]"></i> 17 <i v-if="config.icon" :class="config.icon"></i>
18 </div> 18 </div>
19 <div class="dashboard-title"> 19 <div class="dashboard-title">
20 <span class="headline">{{ config.subtitle }}</span> 20 <span class="headline">{{ config.subtitle }}</span>
@@ -160,6 +160,13 @@ export default {
160 this.config = merge(defaults, config); 160 this.config = merge(defaults, config);
161 this.services = this.config.services; 161 this.services = this.config.services;
162 document.title = `${this.config.title} | ${this.config.subtitle}`; 162 document.title = `${this.config.title} | ${this.config.subtitle}`;
163 if (this.config.stylesheet) {
164 let stylesheet = '';
165 for (const file of this.config.stylesheet) {
166 stylesheet += `@import "${file}";`;
167 }
168 this.createStylesheet(stylesheet);
169 }
163 }, 170 },
164 methods: { 171 methods: {
165 getConfig: function (path = "assets/config.yml") { 172 getConfig: function (path = "assets/config.yml") {
@@ -235,6 +242,11 @@ export default {
235 }, 242 },
236 }; 243 };
237 }, 244 },
245 createStylesheet: function(css) {
246 let style = document.createElement('style');
247 style.appendChild(document.createTextNode(css));
248 document.head.appendChild(style);
249 },
238 }, 250 },
239}; 251};
240</script> 252</script>
diff --git a/src/components/Navbar.vue b/src/components/Navbar.vue
index c688a3a..ae84166 100644
--- a/src/components/Navbar.vue
+++ b/src/components/Navbar.vue
@@ -28,8 +28,7 @@
28 > 28 >
29 <i 29 <i
30 v-if="link.icon" 30 v-if="link.icon"
31 style="margin-right: 6px;" 31 :class="['fa-fw', link.icon, { 'mr-2': link.name }]"
32 :class="['fa-fw', link.icon]"
33 ></i> 32 ></i>
34 {{ link.name }} 33 {{ link.name }}
35 </a> 34 </a>