diff --git a/README.md b/README.md
index d294f6f1e..313b1e18b 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,11 @@
- 
+ 
Servers •
Build •
Docker •
Structure •
Snapshot
- [Українська] | [česky] | [中文] | | [Magyar] | [Español] | [فارسی] | [Français] | [Deutsch] | [Polski] | [Indonesian] | [Suomi] | [മലയാളം] | [日本語] | [Nederlands] | [Italiano] | [Русский] | [Português (Brasil)] | [Esperanto] | [한국어] | [العربي] | [Tiếng Việt]
+ [Українська] | [česky] | [中文] | | [Magyar] | [Español] | [فارسی] | [Français] | [Deutsch] | [Polski] | [Indonesian] | [Suomi] | [മലയാളം] | [日本語] | [Nederlands] | [Italiano] | [Русский] | [Português (Brasil)] | [Esperanto] | [한국어] | [العربي] | [Tiếng Việt] | [Dansk]
We need your help to translate this README, RustDesk UI and Doc to your native language
diff --git a/docs/README-DA.md b/docs/README-DA.md
new file mode 100644
index 000000000..6887aefa0
--- /dev/null
+++ b/docs/README-DA.md
@@ -0,0 +1,187 @@
+
+ 
+ Servere •
+ Byg •
+ Docker •
+ Filstruktur •
+ Skærmbilleder
+ [English] | [Українська] | [česky] | [中文] | [Magyar] | [Español] | [فارسی] | [Français] | [Deutsch] | [Polski] | [Indonesian] | [Suomi] | [മലയാളം] | [日本語] | [Nederlands] | [Italiano] | [Русский] | [Português (Brasil)] | [Esperanto] | [한국어] | [العربي] | [Tiếng Việt]
+ Vi har brug for din hjælp til at oversætte denne README, RustDesk UI og Dokument til dit modersmål
+
+
+Chat med os: [Discord](https://discord.gg/nDceKgxnkV) | [Twitter](https://twitter.com/rustdesk) | [Reddit](https://www.reddit.com/r/rustdesk)
+
+[](https://ko-fi.com/I2I04VU09)
+
+Endnu en fjernskrivebordssoftware, skrevet i Rust. Fungerer ud af æsken, ingen konfiguration påkrævet. Du har fuld kontrol over dine data uden bekymringer om sikkerhed. Du kan bruge vores rendezvous/relay-server, [opsætte din egen](https://rustdesk.com/server), eller [skrive din egen rendezvous/relay-server](https://github.com/rustdesk/rustdesk- server-demo).
+
+RustDesk hilser bidrag fra alle velkommen. Se [`docs/CONTRIBUTING.md`](docs/CONTRIBUTING.md) for at få hjælp til at komme i gang.
+
+[**PROGRAM DOWNLOAD**](https://github.com/rustdesk/rustdesk/releases)
+
+## Gratis offentlige servere
+
+Nedenfor er de servere, du bruger gratis, det kan ændre sig med tiden. Hvis du ikke er tæt på en af disse, kan dit netværk være langsomt.
+
+| Beliggenhed | Udbyder | Specifikation |
+| ---------- | ------------- | ------------------ |
+| Seoul | AWS lightsail | 1 vCPU / 0,5 GB RAM |
+| Singapore | Vultr | 1 vCPU / 1 GB RAM |
+| Tyskland | Hetzner | 2 vCPU / 4 GB RAM |
+| Tyskland | Codext | 4 vCPU / 8 GB RAM |
+
+## Afhængigheder
+
+Desktopversioner bruger [sciter](https://sciter.com/) eller Flutter til GUI, denne vejledning er kun for Sciter.
+
+Hent venligst sciter dynamic library selv.
+
+[Windows](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.win/x64/sciter.dll) |
+[Linux](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so) |
+[MacOS](https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.osx/libsciter.dylib)
+
+## Rå trin til at bygge
+
+- Forbered din Rust-udviklings-env og C++ build-env
+
+- Installer [vcpkg](https://github.com/microsoft/vcpkg), og indstil env-variabelen "VCPKG_ROOT" korrekt
+
+ - Windows: vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static
+ - Linux/MacOS: vcpkg install libvpx libyuv opus
+
+- kør `cargo run`
+
+## [Byg](https://rustdesk.com/docs/en/dev/build/)
+
+## Sådan bygger du på Linux
+
+### Ubuntu 18 (Debian 10)
+
+```sh
+sudo apt install -y g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake
+```
+
+### Fedora 28 (CentOS 8)
+
+```sh
+sudo yum -y install gcc-c++ git curl wget nasm yasm gcc gtk3-devel clang libxcb-devel libxdo-devel libXfixes-devel pulseaudio-libs-devel cmake alsa-lib-devel
+```
+
+### Arch (Manjaro)
+
+```sh
+sudo pacman -Syu --needed unzip git cmake gcc curl wget yasm nasm zip make pkg-config clang gtk3 xdotool libxcb libxfixes alsa-lib pipewire
+```
+
+### vcpkg installation
+
+```sh
+git clone https://github.com/microsoft/vcpkg
+cd vcpkg
+git checkout 2021.12.01
+cd ..
+vcpkg/bootstrap-vcpkg.sh
+export VCPKG_ROOT=$HOME/vcpkg
+vcpkg/vcpkg install libvpx libyuv opus
+```
+
+### libvpx rettelse (For Fedora)
+
+```sh
+cd vcpkg/buildtrees/libvpx/src
+cd *
+./configure
+sed -i 's/CFLAGS+=-I/CFLAGS+=-fPIC -I/g' Makefile
+sed -i 's/CXXFLAGS+=-I/CXXFLAGS+=-fPIC -I/g' Makefile
+make
+cp libvpx.a $HOME/vcpkg/installed/x64-linux/lib/
+cd
+```
+
+### Byg
+
+```sh
+curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
+source $HOME/.cargo/env
+git clone https://github.com/rustdesk/rustdesk
+cd rustdesk
+mkdir -p target/debug
+wget https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so
+mv libsciter-gtk.so target/debug
+cargo run
+```
+
+### Skift Wayland til X11 (Xorg)
+
+RustDesk understøtter ikke Wayland. Tjek [dette](https://docs.fedoraproject.org/en-US/quick-docs/configuring-xorg-as-default-gnome-session/) for at konfigurere Xorg som standard GNOME-session.
+
+## Wayland-support
+
+Wayland ser ikke ud til at levere nogen API til at sende tastetryk til andre vinduer. Derfor bruger rustdesk et API fra et lavere niveau, nemlig `/dev/uinput`-enheden (Linux-kerneniveau).
+
+Når wayland er den kontrollerede side, skal du starte på følgende måde:
+```bash
+# Start uinput service
+$ sudo rustdesk --service
+$ rustdesk
+```
+**Bemærk**: Wayland-skærmoptagelse bruger forskellige grænseflader. RustDesk understøtter i øjeblikket kun org.freedesktop.portal.ScreenCast.
+```bash
+$ dbus-send --session --print-reply \
+ --dest=org.freedesktop.portal.Desktop \
+ /org/freedesktop/portal/desktop \
+ org.freedesktop.DBus.Properties.Get \
+ string:org.freedesktop.portal.ScreenCast string:version
+# Not support
+Error org.freedesktop.DBus.Error.InvalidArgs: No such interface “org.freedesktop.portal.ScreenCast”
+# Support
+method return time=1662544486.931020 sender=:1.54 -> destination=:1.139 serial=257 reply_serial=2
+ variant uint32 4
+```
+## Sådan bygger du med Docker
+
+```sh
+git clone https://github.com/rustdesk/rustdesk
+cd rustdesk
+docker build -t "rustdesk-builder" .
+```
+
+Kør derefter følgende kommando, hver gang du skal bygge applikationen:
+```sh
+docker run --rm -it -v $PWD:/home/user/rustdesk -v rustdesk-git-cache:/home/user/.cargo/git -v rustdesk-registry-cache:/home/user/.cargo/registry -e PUID="$(id -u)" -e PGID="$(id -g)" rustdesk-builder
+```
+
+Bemærk, at den første bygning kan tage længere tid, før afhængigheder cachelagres, efterfølgende bygninger vil være hurtigere. Derudover, hvis du har brug for at angive forskellige argumenter til bygge-kommandoen, kan du gøre det i slutningen af kommandoen i ``-positionen. For eksempel, hvis du ville bygge en optimeret udgivelsesversion, ville du køre kommandoen ovenfor efterfulgt af `--release`. Den resulterende eksekverbare vil være tilgængelig i målmappen på dit system og kan køres med:
+
+```sh
+target/debug/rustdesk
+```
+
+Eller, hvis du kører en udgivelses eksekverbar:
+
+```sh
+target/release/rustdesk
+```
+
+Sørg for, at du kører disse kommandoer fra roden af RustDesk-lageret, ellers kan applikationen muligvis ikke finde de nødvendige ressourcer. Bemærk også, at andre cargo underkommandoer såsom 'install' eller 'run' i øjeblikket ikke understøttes via denne metode, da de ville installere eller køre programmet inde i containeren i stedet for værten.
+
+## Filstruktur
+
+- **[libs/hbb_common](https://github.com/rustdesk/rustdesk/tree/master/libs/hbb_common)**: video codec, config, tcp/udp wrapper, protobuf, fs funktioner til filoverførsel og nogle andre hjælpefunktioner
+- **[libs/scrap](https://github.com/rustdesk/rustdesk/tree/master/libs/scrap)**: Skærmbillede
+- **[libs/enigo](https://github.com/rustdesk/rustdesk/tree/master/libs/enigo)**: platform specifik tastatur/mus kontrol
+- **[src/ui](https://github.com/rustdesk/rustdesk/tree/master/src/ui)**: GUI
+- **[src/server](https://github.com/rustdesk/rustdesk/tree/master/src/server)**: lyd/udklipsholder/input/videotjenester og netværksforbindelser
+- **[src/client.rs](https://github.com/rustdesk/rustdesk/tree/master/src/client.rs)**: starte en peer-forbindelse
+- **[src/rendezvous_mediator.rs](https://github.com/rustdesk/rustdesk/tree/master/src/rendezvous_mediator.rs)**: Kommuniker med [rustdesk-server](https://github.com/rustdesk/rustdesk-server), vent på direkte fjernforbindelse (TCP-hulning) eller relæforbindelse
+- **[src/platform](https://github.com/rustdesk/rustdesk/tree/master/src/platform)**: Javascript til Flutter webklient
+
+## Skærmbilleder
+
+
+
+
+
+
+
+
diff --git a/src/lang/da.rs b/src/lang/da.rs
index 073fda6a4..c5dc87d49 100644
--- a/src/lang/da.rs
+++ b/src/lang/da.rs
@@ -287,26 +287,26 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Turned off", "Slukket"),
("In privacy mode", "I databeskyttelsestilstand"),
("Out privacy mode", "Databeskyttelsestilstand fra"),
- ("Language", ""),
- ("Keep RustDesk background service", ""),
- ("Ignore Battery Optimizations", ""),
+ ("Language", "Sprog"),
+ ("Keep RustDesk background service", "Behold RustDesk baggrundstjeneste"),
+ ("Ignore Battery Optimizations", "Ignorer betteri optimeringer"),
("android_open_battery_optimizations_tip", ""),
- ("Connection not allowed", ""),
- ("Legacy mode", ""),
+ ("Connection not allowed", "Forbindelse ikke tilladt"),
+ ("Legacy mode", "Bagudkompatibilitetstilstand"),
("Map mode", ""),
("Translate mode", ""),
- ("Use temporary password", ""),
- ("Use permanent password", ""),
- ("Use both passwords", ""),
- ("Set permanent password", ""),
- ("Set temporary password length", ""),
- ("Enable Remote Restart", ""),
- ("Allow remote restart", ""),
- ("Restart Remote Device", ""),
- ("Are you sure you want to restart", ""),
- ("Restarting Remote Device", ""),
+ ("Use temporary password", "Brug midlertidig adgangskode"),
+ ("Use permanent password", "Brug permanent adgangskode"),
+ ("Use both passwords", "Bug begge adgangskoder"),
+ ("Set permanent password", "Sæt permanent adgangskode"),
+ ("Set temporary password length", "Sæt midlertidig adgangskode"),
+ ("Enable Remote Restart", "Aktiver fjerngenstart"),
+ ("Allow remote restart", "Tillad fjerngenstart"),
+ ("Restart Remote Device", "Genstart fjernenhed"),
+ ("Are you sure you want to restart", "Er du sikker på at du vil genstarte"),
+ ("Restarting Remote Device", "Genstarter fjernenhed"),
("remote_restarting_tip", ""),
- ("Copied", ""),
+ ("Copied", "Kopierét"),
("Exit Fullscreen", "Afslut fuldskærm"),
("Fullscreen", "Fuld skærm"),
("Mobile Actions", "Mobile handlinger"),
@@ -322,50 +322,50 @@ pub static ref T: std::collections::HashMap<&'static str, &'static str> =
("Relay Connection", "Relæforbindelse"),
("Secure Connection", "Sikker forbindelse"),
("Insecure Connection", "Usikker forbindelse"),
- ("Scale original", "Skala original"),
- ("Scale adaptive", "Skala adaptiv"),
- ("General", ""),
- ("Security", ""),
- ("Account", ""),
- ("Theme", ""),
- ("Dark Theme", ""),
- ("Dark", ""),
- ("Light", ""),
- ("Follow System", ""),
- ("Enable hardware codec", ""),
- ("Unlock Security Settings", ""),
- ("Enable Audio", ""),
- ("Temporary Password Length", ""),
- ("Unlock Network Settings", ""),
- ("Server", ""),
- ("Direct IP Access", ""),
- ("Proxy", ""),
- ("Port", ""),
- ("Apply", ""),
- ("Disconnect all devices?", ""),
- ("Clear", ""),
- ("Audio Input Device", ""),
- ("Deny remote access", ""),
- ("Use IP Whitelisting", ""),
- ("Network", ""),
- ("Enable RDP", ""),
+ ("Scale original", "Skaler original"),
+ ("Scale adaptive", "Skaler adaptiv"),
+ ("General", "Generelt"),
+ ("Security", "Sikkerhed"),
+ ("Account", "Konto"),
+ ("Theme", "Thema"),
+ ("Dark Theme", "Mørk Tema"),
+ ("Dark", "Mørk"),
+ ("Light", "Lys"),
+ ("Follow System", "Følg System"),
+ ("Enable hardware codec", "Aktiver hardware-codec"),
+ ("Unlock Security Settings", "Lås op for sikkerhedsinstillinger"),
+ ("Enable Audio", "Aktiver Lyd"),
+ ("Temporary Password Length", "Midlertidig Adgangskode Længde"),
+ ("Unlock Network Settings", "Lås op for Netværksinstillinger"),
+ ("Server", "Server"),
+ ("Direct IP Access", "Direkte IP Adgang"),
+ ("Proxy", "Proxy"),
+ ("Port", "Port"),
+ ("Apply", "Anvend"),
+ ("Disconnect all devices?", "Afbryd alle enheder?"),
+ ("Clear", "Nulstil"),
+ ("Audio Input Device", "Lydindgangsenhed"),
+ ("Deny remote access", "Afvis fjeradgang"),
+ ("Use IP Whitelisting", "Brug IP Whitelisting"),
+ ("Network", "Netværk"),
+ ("Enable RDP", "Aktiver RDP"),
("Pin menubar", "Fastgør menulinjen"),
("Unpin menubar", "Frigør menulinjen"),
- ("Recording", ""),
- ("Directory", ""),
- ("Automatically record incoming sessions", ""),
- ("Change", ""),
- ("Start session recording", ""),
- ("Stop session recording", ""),
- ("Enable Recording Session", ""),
- ("Allow recording session", ""),
- ("Enable LAN Discovery", ""),
- ("Deny LAN Discovery", ""),
- ("Write a message", ""),
+ ("Recording", "Optager"),
+ ("Directory", "Mappe"),
+ ("Automatically record incoming sessions", "Optag automatisk indgående sessioner"),
+ ("Change", "Ændre"),
+ ("Start session recording", "Start sessionsoptagelse"),
+ ("Stop session recording", "Stop sessionsoptagelse"),
+ ("Enable Recording Session", "Aktiver optagelsessession"),
+ ("Allow recording session", "Tillad optagelsessession"),
+ ("Enable LAN Discovery", "Aktiver LAN Discovery"),
+ ("Deny LAN Discovery", "Afvis LAN Discovery"),
+ ("Write a message", "Skriv en besked"),
("Prompt", ""),
("elevation_prompt", ""),
("uac_warning", ""),
("elevated_foreground_window_warning", ""),
- ("Disconnected", ""),
+ ("Disconnected", "Afbrudt"),
].iter().cloned().collect();
}