diff --git a/docs/Community_IRC.md b/docs/Community_IRC.md
index 5858d58f..9eb49d2b 100644
--- a/docs/Community_IRC.md
+++ b/docs/Community_IRC.md
@@ -19,7 +19,7 @@ In order to enter main `#armbian` channels registration with Nickserv is mandato
### Discord
-Simply click here: [https://discord.gg/armbian](https://discord.gg/armbian)
+Simply click here: [https://discord.com/invite/armbian](https://discord.com/invite/armbian)
Channels starting with `#armbian-` are relayed between Discord and IRC so it does not matter if you join IRC or Discord as both receive your messages. Check `#welcome-and-rules` for more information.
### Matrix
diff --git a/docs/Development-Code_Review_Procedures_and_Guidelines.md b/docs/Development-Code_Review_Procedures_and_Guidelines.md
index 247d80d8..91fe4cd4 100644
--- a/docs/Development-Code_Review_Procedures_and_Guidelines.md
+++ b/docs/Development-Code_Review_Procedures_and_Guidelines.md
@@ -46,9 +46,9 @@
It has often been said that programming is part art, part science - that is because lots of times there is no single, simple solution to a problem. Or if there is, we might not know about it. There is also an infamous joke that if there are n developers in the room, then there are n+1 opinions on how things should be done. That being said, here are some guidelines that should prevent friction when submitting or reviewing code.
The most important thing
The code has to work.
Unless you open a PR (“pull request”) as a work in progress, the code should be built and tested on a device or emulator. Do not rely on CI test automation!
If you have touched the build files and changed build setup, it is useful to test the whole build from scratch (clean build) and all of the types and flavours. If you updated external libraries, test the pertaining features. If you changed the build version, make a build and test that the version is correct.
Having people review your code is one thing, but you should not expect them to also test the code for you when not explicitly asked for.
Context
One important thing that lots of guidelines forget to mention is the context of the pull request: Sometimes it is a big refactor, sometimes it is a new feature, sometimes it is a bugfix. Some of those might be more urgent than others, and sometimes you might be under pressure to ship ASAP so the code might not be perfect or there will not be any tests or code might not be extendable. That is ok.
Everyone
There is no perfect code: good enough is usually good enough. That being said, try to keep the number of WTFs per minute to a minimum.Accept that many programming decisions are opinions. Discuss trade-offs, which you prefer, and reach a resolution quickly.Ask for clarification. ("I didn't understand. Can you clarify?")Offer clarification, explain the decisions you made to reach a solution in question.
- Avoid using terms that could be seen as referring to personal traits. ("dumb", "stupid"). Assume everyone is intelligent and well-meaning.Be humble. ("I'm not sure - let's look it up.")Do not use hyperbole ("always", "never", "endlessly", "nothing"). Avoid sarcasm.Remember that you are both on the same side - the goal is to make the code better. Understand that sometimes your ideas will be overruled. Even if you do turn out to be right, do not take revenge or say, "I told you so".Talk synchronously (e.g. chat, screensharing, in person) if there are too many "I didn't understand" or "Alternative solution:" comments. Pull requests should not be the place for long discussions, architectural or otherwise. Put notes on what is missing or could be improved in the PR description or comments. You can also make a Jira ticket with discussions points and possible problems or things to do and discuss it offline.As a Code Submitter
PRs should be about one thing. If you do multiple things in one PR, it is hard to review. If you are fixing stuff as you go, you might want to make atomic commits and then cherry-pick those commits into separate branches, leaving the PR clean.Try to keep the PRs small. Having a PR description is useful. Additionally, you can also link to the Jira ticket. Ideally, the PR should be finished when submitted. If the PR is work in progress, add (WIP) or [WIP] to the title.You should have tests that at least cover the logic, and ideally also cover the input/output parameters and methods. (depends on context)Make sure to add a documentation PR when needed https://github.com/armbian/documentationAs a Reviewer
Reviewing code is part of a normal workday. You should check for open/updated PRs / Jira ticket as often as you can.Ask, do not tell. (“What do you think about trying…?” rather than “Don’t do…”)Offer ways to simplify or improve code.Code beautification and refactoring ought to be tasks in the next sprint, except for obvious and easy-to-fix things.Communicate which ideas you feel strongly about and those you do not. Explain your reasons why code should be changed. (Not in line with the style guide? A personal preference?)If you disagree strongly, consider giving it a few minutes before responding; think before you react.Offer alternative implementations, but assume the author already considered them. ("What do you think about using a custom validator here?")If discussions turn too theoretical or touch big architectural questions, move the discussion offline. In the meantime, let the author make the final decision on alternative implementations.Do not keep the code hostage. Keep in mind the context and the most important thing - does it work?Merging a merge request
Before making the decision to merge:
Set a milestone.Consider warnings and errors from Github CI bots, code quality bots, and other reports. Unless a strong case can be made for the violation, these should be resolved before merging. A comment must be posted if the PR is merged with any failed job.If the PR contains both quality and non-quality-related changes, the PR should be merged by the relevant maintainer or senior software engineer after the quality related changes are approved by more then one software engineer.
If a pull request is fundamentally ready, but needs only trivial fixes (such as typos), consider demonstrating a bias for action by making those changes directly without going back to the author. You can do this by using the suggest changes feature to apply your own suggestions to the pull request.
Note that:
merging is limited to Armbian Github Organization members, you can apply here to become one, if you have not already been invited.If the changes are not straightforward, please prefer allowing the author to make the change.Before applying suggestions, edit the pull request to make sure squash and merge is enabled
Authors are not authorized to merge their own pull requests and need to seek approval from another maintainer / developer to merge.
Armbian's Assistance
If you have questions about being a developer or want to learn more and deeper insights about the build framework, Armbian will try to guide you to the appropriate documentation or information in a best-effort fashion. If time allows, at our descrection, we will try our best to explain and teach you personally various aspects about our processes. If best effort guidance is not enough, contact us for professional assistance.
If you have any concerns please do not hesitate to reach out via forums, IRC or Discord. Armbian cares about the people who care about Armbian 
References / Sources:
+ Avoid using terms that could be seen as referring to personal traits. ("dumb", "stupid"). Assume everyone is intelligent and well-meaning.- Be humble. ("I'm not sure - let's look it up.")
- Do not use hyperbole ("always", "never", "endlessly", "nothing"). Avoid sarcasm.
- Remember that you are both on the same side - the goal is to make the code better. Understand that sometimes your ideas will be overruled. Even if you do turn out to be right, do not take revenge or say, "I told you so".
- Talk synchronously (e.g. chat, screensharing, in person) if there are too many "I didn't understand" or "Alternative solution:" comments. Pull requests should not be the place for long discussions, architectural or otherwise.
- Put notes on what is missing or could be improved in the PR description or comments. You can also make a Jira ticket with discussions points and possible problems or things to do and discuss it offline.
As a Code Submitter
- PRs should be about one thing. If you do multiple things in one PR, it is hard to review. If you are fixing stuff as you go, you might want to make atomic commits and then cherry-pick those commits into separate branches, leaving the PR clean.
- Try to keep the PRs small.
- Having a PR description is useful. Additionally, you can also link to the Jira ticket.
- Ideally, the PR should be finished when submitted. If the PR is work in progress, add (WIP) or [WIP] to the title.
- You should have tests that at least cover the logic, and ideally also cover the input/output parameters and methods. (depends on context)
- Make sure to add a documentation PR when needed https://github.com/armbian/documentation
As a Reviewer
- Reviewing code is part of a normal workday. You should check for open/updated PRs / Jira ticket as often as you can.
- Ask, do not tell. (“What do you think about trying…?” rather than “Don’t do…”)
- Offer ways to simplify or improve code.
- Code beautification and refactoring ought to be tasks in the next sprint, except for obvious and easy-to-fix things.
- Communicate which ideas you feel strongly about and those you do not. Explain your reasons why code should be changed. (Not in line with the style guide? A personal preference?)
- If you disagree strongly, consider giving it a few minutes before responding; think before you react.
- Offer alternative implementations, but assume the author already considered them. ("What do you think about using a custom validator here?")
- If discussions turn too theoretical or touch big architectural questions, move the discussion offline. In the meantime, let the author make the final decision on alternative implementations.
- Do not keep the code hostage. Keep in mind the context and the most important thing - does it work?
Merging a merge request
Before making the decision to merge:
- Set a milestone.
- Consider warnings and errors from Github CI bots, code quality bots, and other reports. Unless a strong case can be made for the violation, these should be resolved before merging. A comment must be posted if the PR is merged with any failed job.
- If the PR contains both quality and non-quality-related changes, the PR should be merged by the relevant maintainer or senior software engineer after the quality related changes are approved by more then one software engineer.
If a pull request is fundamentally ready, but needs only trivial fixes (such as typos), consider demonstrating a bias for action by making those changes directly without going back to the author. You can do this by using the suggest changes feature to apply your own suggestions to the pull request.
Note that:
- merging is limited to Armbian Github Organization members, you can apply here to become one, if you have not already been invited.
- If the changes are not straightforward, please prefer allowing the author to make the change.
- Before applying suggestions, edit the pull request to make sure squash and merge is enabled
Authors are not authorized to merge their own pull requests and need to seek approval from another maintainer / developer to merge.
Armbian's Assistance
If you have questions about being a developer or want to learn more and deeper insights about the build framework, Armbian will try to guide you to the appropriate documentation or information in a best-effort fashion. If time allows, at our descrection, we will try our best to explain and teach you personally various aspects about our processes. If best effort guidance is not enough, contact us for professional assistance.
If you have any concerns please do not hesitate to reach out via forums, IRC or Discord. Armbian cares about the people who care about Armbian 
References / Sources:
- https://github.com/thoughtbot/guides/tree/master/code-review
-- https://github.com/blog/1943-how-to-write-the-perfect-pull-request
+- https://github.com/blog/1943-how-to-write-the-perfect-pull-request
- https://blog.codinghorror.com/the-ten-commandments-of-egoless-programming/
- https://hackernoon.com/tagged/code-review
- https://hackernoon.com/the-art-of-pull-requests-6f0f099850f9
diff --git a/docs/Hardware_Freescale-imx6.md b/docs/Hardware_Freescale-imx6.md
index 39cc2865..566d18fb 100644
--- a/docs/Hardware_Freescale-imx6.md
+++ b/docs/Hardware_Freescale-imx6.md
@@ -4,7 +4,7 @@
System images with legacy kernel
- Kernel [3.14.x](https://github.com/linux4kix/linux-linaro-stable-mx6) with large hardware support, headers and some firmware included
-- [Docker ready](https://forum.armbian.com/topic/490-docker-on-armbian/) – [what is Docker](https://www.docker.com/why-docker)?
+- [Docker ready](https://forum.armbian.com/topic/490-docker-on-armbian/) – [what is Docker](https://www.docker.com/why-docker/)?
- PCI-E operational (Hummingboard Pro, Gate & Edge)
- mSATA / m2 operational (Hummingboard Pro & Edge)
- Enabled audio devices: HDMI, spdif, analogue
@@ -22,7 +22,7 @@ System images with legacy kernel
System images with mainline kernel
- [Mainline](https://www.kernel.org/) with large hardware support, headers and some firmware included
-- [Docker ready](/User-Guide_Advanced-Features/#how-to-run-docker) – [what is Docker](https://www.docker.com/why-docker)?
+- [Docker ready](/User-Guide_Advanced-Features/#how-to-run-docker) – [what is Docker](https://www.docker.com/why-docker/)?
- PCI-E operational (Hummingboard Pro, Gate & Edge)
- mSATA / m2 operational (Hummingboard Pro & Edge)
- Enabled audio devices
@@ -86,7 +86,7 @@ LVDS](https://github.com/notro/fbtft/wiki)
## Udoo Quad
- [Kernel 3.14.x](https://github.com/UDOOboard/linux_kernel) and [4.4.x](https://github.com/patrykk/linux-udoo) with some hardware support, headers and some firmware included
-- [Docker ready](https://forum.armbian.com/topic/490-docker-on-armbian/) – [what is Docker](https://www.docker.com/why-docker)?
+- [Docker ready](https://forum.armbian.com/topic/490-docker-on-armbian/) – [what is Docker](https://www.docker.com/why-docker/)?
- Wireless adapter with DHCP ready but disabled (/etc/network/interfaces, WPA2: normal connect, bonding / notebook or AP mode). It can handle between 40-70Mbit/s.
- SATA operational
- Enabled analogue (VT1613) and HDMI audio device
diff --git a/docs/Process_Contribute.md b/docs/Process_Contribute.md
index d8548967..d841dc72 100644
--- a/docs/Process_Contribute.md
+++ b/docs/Process_Contribute.md
@@ -6,7 +6,7 @@
1. Make one or more well commented and clean commits to the repository.
1. Perform a [pull request](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request) in Github's web interface.
-If it is a new feature request, do not start the coding first. Remember to [open an issue](https://guides.github.com/features/issues/) to discuss the new feature. If you want to [add code to someone else pull request](https://tighten.co/blog/adding-commits-to-a-pull-request/). Also check collection of [git tips](https://github.com/git-tips/tips) which will make your life easier.
+If it is a new feature request, do not start the coding first. Remember to [open an issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/about-issues) to discuss the new feature. If you want to [add code to someone else pull request](https://tighten.co/blog/adding-commits-to-a-pull-request/). Also check collection of [git tips](https://github.com/git-tips/tips) which will make your life easier.
If you are struggling, check [WEB](https://www.exchangecore.com/blog/contributing-concrete5-github) or [CLI](https://www.digitalocean.com/community/tutorials/how-to-create-a-pull-request-on-github) step-by-step guide on contributing.
diff --git a/docs/User-Guide_Advanced-Features.md b/docs/User-Guide_Advanced-Features.md
index c7ceb0ef..39d309cb 100644
--- a/docs/User-Guide_Advanced-Features.md
+++ b/docs/User-Guide_Advanced-Features.md
@@ -140,7 +140,7 @@ Required conditions:
- IR hardware
- loaded driver
-Get your [remote configuration](http://lirc.sourceforge.net/remotes/) (lircd.conf) or [learn](https://kodi.wiki/view/HOW-TO:Setup_Lirc#Learning_Commands).
+Get your [remote configuration](https://lirc.sourceforge.net/remotes/) (lircd.conf) or [learn](https://kodi.wiki/view/HOW-TO:Setup_Lirc#Learning_Commands).
- Note: As of 2020-11-25, the above (Kodi / learn) link is broken. However I am not sure what to replace it with. If you know (or find out) please [submit a PR](/Process_Contribute/). - TRS-80
diff --git a/docs/User-Guide_Armbian-Config.md b/docs/User-Guide_Armbian-Config.md
index 1718183e..69b16830 100644
--- a/docs/User-Guide_Armbian-Config.md
+++ b/docs/User-Guide_Armbian-Config.md
@@ -74,7 +74,7 @@ Software installation menu provides automated install of the following packages.
- [UrBackup](https://www.urbackup.org/) *(client/server backup system)*
- [Docker](https://www.docker.com) *(Docker CE engine)*
- [Mayan EDMS](https://www.mayan-edms.com/) *(Document management system within Docker)*
- - [MiniDLNA](http://minidlna.sourceforge.net/) *(media sharing)*
+ - [MiniDLNA](https://minidlna.sourceforge.net/) *(media sharing)*
- **M**onitor = simple CLI monitoring
- **D**iagnostics = create a summary of logs and upload them to paste.bin
- **T**oggle kernel headers, RDP service, Thunderbird and Libreoffice (desktop builds)
diff --git a/docs/User-Guide_Basic-Troubleshooting.md b/docs/User-Guide_Basic-Troubleshooting.md
index 93e4641b..7eb516b3 100644
--- a/docs/User-Guide_Basic-Troubleshooting.md
+++ b/docs/User-Guide_Basic-Troubleshooting.md
@@ -114,4 +114,4 @@ Some combination of boards/kernel versions does not support 4k resolution. This
## How to report bugs properly
-- Follow instructions on [https://armbian.com/bugs](https://armbian.com/bugs)
+- Follow instructions on [https://armbian.com/bugs/](https://armbian.com/bugs)
diff --git a/docs/User-Guide_Board-Support-Rules.md b/docs/User-Guide_Board-Support-Rules.md
index e715b94c..8529b0db 100644
--- a/docs/User-Guide_Board-Support-Rules.md
+++ b/docs/User-Guide_Board-Support-Rules.md
@@ -93,4 +93,4 @@ Additional Caveats:
## Gold and Platinum Support
-Gold and Platinum Support are intended to be business relationships with the Armbian project or team and are out of scope of this document. Please [connect with Armbian team](https://www.armbian.com/contact) for more information.
+Gold and Platinum Support are intended to be business relationships with the Armbian project or team and are out of scope of this document. Please [connect with Armbian team](https://www.armbian.com/contact/) for more information.
diff --git a/docs/User-Guide_Getting-Started.md b/docs/User-Guide_Getting-Started.md
index 6a57fdc7..9f9e47ae 100644
--- a/docs/User-Guide_Getting-Started.md
+++ b/docs/User-Guide_Getting-Started.md
@@ -91,7 +91,7 @@ while on Linux/macOS, in the directory in which you have downloaded the files ,y
**Important note:** Make sure you use a **good, reliable and fast** SD card. If you encounter boot or stability troubles in over 95 percent of the time it is either insufficient power supply or related to SD card (bad card, bad card reader, something went wrong when burning the image, card too slow to boot -- 'Class 10' highly recommended!). Armbian can simply not run on unreliable hardware so checking your SD card with either [F3](https://fight-flash-fraud.readthedocs.io/en/stable/) or [H2testw](https://www.heise.de/download/product/h2testw-50539) is mandatory if you run in problems. Since [counterfeit SD cards](https://www.happybison.com/reviews/how-to-check-and-spot-fake-micro-sd-card-8/) are still an issue checking with F3/H2testw directly after purchase is **highly recommended**.
-Write the xz compressed image with [USBImager](https://gitlab.com/bztsrc/usbimager) or [balenaEtcher](https://balena.io/etcher/) on all platforms since unlike other tools, either can validate burning results **saving you from corrupted SD card contents**.
+Write the xz compressed image with [USBImager](https://gitlab.com/bztsrc/usbimager) or [balenaEtcher](https://www.balena.io/etcher/) on all platforms since unlike other tools, either can validate burning results **saving you from corrupted SD card contents**.
Also important: Most SD cards are only optimised for sequential reads/writes as it is common with digital cameras. This is what the *speed class* is about. The SD Association defined [*Application Performance Class*](https://www.sdcard.org/developers/overview/application/index.html) as a standard for random IO performance.
diff --git a/docs/index.md b/docs/index.md
index ee8312ef..72fd388a 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -67,7 +67,7 @@ If you still cannot find what you need here visit the [_Armbian forum_](https://
Armbian will publish and distribute “stable” CLI images for maintained boards through its mirror network. *Supported/maintained* is not a guarantee. *Supported/maintained* has a named maintainer and implies a particular SBC is at a high level of software maturity. Due to the complexity and lack-of-openness in the ecosystem it is unlikely that all accelerated and specialized functionalities (like 3D, VE, I²C...) will be available.
-For more information is see the [Board Support Guide](User-Guide_Board-Support-Rules)
+For more information is see the [Board Support Guide](User-Guide_Board-Support-Rules/)
### Maintained boards
@@ -76,7 +76,7 @@ Check [download page](https://www.armbian.com/download/) for recently maintained
## How to report bugs
-Due to lack of manpower we unfortunately have to be very picky about bug reports. Make sure to follow the bug reporting form available [here](https://armbian.com/bugs) to learn how to collect necessary information and where to put your report depending on type of issue. Reports lacking fundamental diagnostics may be ignored.
+Due to lack of manpower we unfortunately have to be very picky about bug reports. Make sure to follow the bug reporting form available [here](https://armbian.com/bugs/) to learn how to collect necessary information and where to put your report depending on type of issue. Reports lacking fundamental diagnostics may be ignored.
# Get Involved! #