Added theme and base config for desk

This commit is contained in:
shibco 2022-11-05 16:23:12 +01:00
commit e4328ac41f
Signed by: shibco
GPG Key ID: E37E5312F6E490E7
3 changed files with 292 additions and 0 deletions

62
config/docker-compose.yml Normal file
View File

@ -0,0 +1,62 @@
version: "3"
networks:
nginx_net:
external:
name: nginx_net
desk_net:
external:
name: desk_net
services:
nextcloud:
image: ghcr.io/linuxserver/nextcloud
container_name: desk
environment:
- PUID=${USER_PUID}
- PGID=${USER_PGID}
- TZ=${USER_TZ}
volumes:
- ./nextcloud_data/config:/config
- ./nextcloud_data/data:/data
# - ./solvable_files.sh:/solvable_files.sh
restart: unless-stopped
networks:
- desk_net
mariadb:
image: ghcr.io/linuxserver/mariadb
container_name: desk-db
environment:
- PUID=${USER_PUID}
- PGID=${USER_PGID}
- MYSQL_ROOT_PASSWORD=#{MYSQL_ROOT_PASSWORD}
- TZ=${USER_TZ}
- MYSQL_DATABASE=#{MYSQL_DATABASE}
- MYSQL_USER=#{MYSQL_USER}
- MYSQL_PASSWORD=#{MYSQL_PASSWORD}
volumes:
- ./mariadb_data/config:/config
- ./mariadb_data/backup:/backup
restart: unless-stopped
networks:
- desk_net
onlyoffice:
container_name: onlyoffice
image: onlyoffice/documentserver:latest
stdin_open: true
ports:
- 85:80
environment:
- PUID=${USER_PUID}
- PGID=${USER_PGID}
- JWT_ENABLED=true
- JWT_SECRET=${JWT_SECRET}
cap_add:
- MKNOD
networks:
- desk_net
restart: always
volumes:
- ./onlyoffice_data/fonts:/usr/share/fonts

2
theme/README.md Normal file
View File

@ -0,0 +1,2 @@
# Underscore Desk theme
Useage: install theming in Nextcloud and insert custom theming. Requires Nextcloud 25 or higher.

228
theme/src/custom.css Normal file
View File

@ -0,0 +1,228 @@
/* karla-regular - latin-ext_latin */
@font-face {
font-family: 'Karla';
font-style: normal;
font-weight: normal;
src: url('/fonts/karla-v23-latin-ext_latin-regular.eot'); /* IE9 Compat Modes */
src: local(''),
url('/fonts/karla-v23-latin-ext_latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('/fonts/karla-v23-latin-ext_latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-regular.woff') format('woff'), /* Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
url('/fonts/karla-v23-latin-ext_latin-regular.svg#Karla') format('svg'); /* Legacy iOS */
}
/* karla-700 - latin-ext_latin */
@font-face {
font-family: 'Karla';
font-style: normal;
font-weight: bold;
src: url('/fonts/karla-v23-latin-ext_latin-700.eot'); /* IE9 Compat Modes */
src: local(''),
url('/fonts/karla-v23-latin-ext_latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('/fonts/karla-v23-latin-ext_latin-700.woff2') format('woff2'), /* Super Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-700.woff') format('woff'), /* Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
url('/fonts/karla-v23-latin-ext_latin-700.svg#Karla') format('svg'); /* Legacy iOS */
}
/* karla-italic - latin-ext_latin */
@font-face {
font-family: 'Karla';
font-style: italic;
font-weight: normal;
src: url('/fonts/karla-v23-latin-ext_latin-italic.eot'); /* IE9 Compat Modes */
src: local(''),
url('/fonts/karla-v23-latin-ext_latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('/fonts/karla-v23-latin-ext_latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-italic.woff') format('woff'), /* Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
url('/fonts/karla-v23-latin-ext_latin-italic.svg#Karla') format('svg'); /* Legacy iOS */
}
/* karla-700italic - latin-ext_latin */
@font-face {
font-family: 'Karla';
font-style: italic;
font-weight: bold;
src: url('/fonts/karla-v23-latin-ext_latin-700italic.eot'); /* IE9 Compat Modes */
src: local(''),
url('/fonts/karla-v23-latin-ext_latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('/fonts/karla-v23-latin-ext_latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-700italic.woff') format('woff'), /* Modern Browsers */
url('/fonts/karla-v23-latin-ext_latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
url('/fonts/karla-v23-latin-ext_latin-700italic.svg#Karla') format('svg'); /* Legacy iOS */
}
.theme--dark, .theme--light, [data-theme-dark], [data-theme-light], [data-theme-default] {
--font-face: 'Karla';
}
:root {
--body-container-margin: calc(var(--default-grid-baseline) * 1.5);
--body-container-radius: calc(var(--default-clickable-area) / 4 + var(--default-grid-baseline) * 2 - 2px);
}
.theme--dark, .theme--light, [data-theme-dark], [data-theme-light], [data-theme-default], :root {
--color-main-background: #233B4A;
--color-main-background-not-plain: #0082c9;
--color-main-background-rgb: 35,59,74;
--color-main-background-translucent: rgba(var(--color-main-background-rgb), .97);
--color-main-background-blur: rgba(var(--color-main-background-rgb), .9);
--filter-background-blur: blur(25px);
--gradient-main-background: var(--color-main-background) 0%, var(--color-main-background-translucent) 85%, transparent 100%;
--color-background-hover: #1D2D37;
--color-background-dark: #1D2D37;
--color-background-darker: #3b3b3b;
--color-placeholder-light: #313131;
--color-placeholder-dark: #4a4a4a;
--color-main-text: #DBDBDB;
--color-text-maxcontrast: #DBDBDB;
--color-text-maxcontrast-default: #DBDBDB;
--color-text-maxcontrast-background-blur: #919191;
--color-text-light: #DBDBDB;
--color-text-lighter: #DBDBDB;
--color-scrollbar: #3C5565;
--color-error: #e9322d;
--color-error-rgb: 233,50,45;
--color-error-hover: #ed5a56;
--color-warning: #eca700;
--color-warning-rgb: 236,167,0;
--color-warning-hover: #efb832;
--color-success: #46ba61;
--color-success-rgb: 70,186,97;
--color-success-hover: #6ac780;
--color-loading-light: #777;
--color-loading-dark: #CCC;
--color-box-shadow-rgb: 0,0,0;
--color-box-shadow: #000000;
--color-border: #3C5565;
--color-border-dark: #3C5565;
--default-font-size: 15px;
--animation-quick: 100ms;
--animation-slow: 300ms;
--border-radius: 2px;
--border-radius-large: 8px;
--border-radius-pill: 72px;
--default-clickable-area: 44px;
--default-line-height: 24px;
--default-grid-baseline: 4px;
--header-height: 50px;
--navigation-width: 300px;
--sidebar-min-width: 300px;
--sidebar-max-width: 500px;
--list-min-width: 200px;
--list-max-width: 300px;
--header-menu-item-height: 44px;
--header-menu-profile-item-height: 66px;
--breakpoint-mobile: 1024px;
--primary-invert-if-bright: invert(100%);
--background-invert-if-dark: invert(100%);
--background-invert-if-bright: invert(100%);
--color-primary: #FEB9B3;
--color-primary-default: #1D3949;
--color-primary-text: #233B4A;
--color-primary-hover: #04537f;
--color-primary-light: #141e24;
--color-primary-light-text: #99c0d6;
--color-primary-light-hover: #1d272d;
--color-primary-text-dark: #ededed;
--color-primary-element: #03A59E;
--color-primary-element-text: #ffffff;
--color-primary-element-hover: #04537f;
--color-primary-element-light: #141e24;
--color-primary-element-light-text: #99c0d6;
--color-primary-element-light-hover: #1d272d;
--color-primary-element-text-dark: #141e24;
--gradient-primary-background: linear-gradient(40deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);
}
.header-menu.notifications-button > a > span > svg,
.header-menu.unified-search > a > span > svg {
--color-primary-text: #233B4A;
}
#body-login .login-box > div > div {
display: none;
}
#header, #header .app-menu-entry, #header #header-left, #header .header-right {
--primary-invert-if-bright: invert(100%);
}
#body-login .guest-box {
background-color: rgba(248, 240, 239, 0.75) !important;
box-shadow: none !important;
border: 1px solid #6385ac;
}
#body-login #alternative-logins:before {
content: "Welcome to Underscore Desk";
margin: 0 auto;
left: 0;
right: 0;
top: 0;
height: 32px;
color: #1D3949;
overflow: visible;
font-size: 18px;
font-weight: bold;
}
.app-menu-main .app-menu-entry .app-menu-entry--label[data-v-df2c884a],
.app-menu-main .app-menu-entry a[data-v-df2c884a] {
color: var(--color-main-background) !important;
}
#body-login #alternative-logins .button-vue:first-child {
background-color: #1D3949;
color: #C6B2A7 !important;
}
#body-login #alternative-logins .button-vue:first-child:after {
content: "Not an Underscore member? Continue as a guest…";
position: absolute;
margin: 0 auto;
left: 0;
right: 0;
top: 7rem;
height: 24px;
color: #1D3949;
overflow: visible;
font-size: 13px;
}
.app-menu-main:hover img[data-v-df2c884a], .app-menu-main:focus-within img[data-v-df2c884a], .app-menu-main .app-menu-entry:hover img[data-v-df2c884a], .app-menu-main .app-menu-entry:focus img[data-v-df2c884a] {
margin-top: 0px !important;
}
.app-menu-main:hover .app-menu-entry--label[data-v-df2c884a], .app-menu-main:focus-within .app-menu-entry--label[data-v-df2c884a], .app-menu-main .app-menu-entry:hover .app-menu-entry--label[data-v-df2c884a], .app-menu-main .app-menu-entry:focus .app-menu-entry--label[data-v-df2c884a] {
opacity: 0 !important;
bottom: 0;
}
/* Collectives */
.text-menubar, .editor__content, .page-title {
max-width: none !important;
}
.text-menubar .text-menubar__entries {
margin-left: 0 !important;
}
.user-bubble__content {
margin-right: 2px !important;
top: 2px !important;
position: relative !important;
}
.app-content-list-item.toplevel {
margin: 0 !important;
border-radius: 0 !important;
font-size: 1em !important;
}
.app-content-list-item .app-content-list-item-icon .item-icon-emoji.landing-page {
margin: 0 !important;
}
.app-content-list .app-content-list-item .app-content-list-item-icon {
font-size: 1.25em !important;
}