Miscellaneous setup

From Smith family
Server setup
← Previous Next →
Ghost VNC

A couple of minor little things, more as personal taste than as functional changes.

Noisy boot

This is for the server machine. If I'm booting the server when it's attached to a monitor, it means there's something wrong with it. In that case, I want to see everything that's happening in the boot process.

These instructions are for Grub-legacy.

  • Edit /boot/grub/menu.lst
## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
## defoptions=quiet splash
# defoptions=
  • Regenerate the Grub menu
root@server:~# update-grub

Clean up Apt cache

Apt keeps copies of all the files it downloads. This can take up lots of disk space. aptitude autoclean discards the package files for obsolete package versions. Doing this weekly via a cron job stops the cache getting too big.

Create /etc/cron.weekly/aptitude-autoclean:

#! /bin/sh

# aptitude-autoclean      Cron script to clear apt cache of unneeded files.

aptitude autoclean

Then make the file executable:

root@server:~# chmod a+x /etc/cron.weekly/aptitude-autoclean

Remove old kernels

Old kernels hang around and clog up the /boot partition. Once you're sure the current kernel works fine, you can remove old kernels with this command:

root@server:~# dpkg -l linux-* | awk '/^ii/{ print $2}' | grep -v -e `uname -r | cut -f1,2 -d"-"` | grep -v -e 'libc' | grep -e [0-9] | xargs aptitude remove

Install additional packages

This is mainly for the desktop machine: a few additional packages to install.

Normal packages

This is starting from a basic Kubuntu installation.

First, install some general catch-all metapackages:

 root@desktop:~# aptitude install kde-full ubuntu-desktop

Then install

 root@desktop:~# aptitude install kubuntu-restricted-extras ubuntu-restricted-extras
for MP3 and other playback: it should install a number of other things for you. Agree to removing libavcodec53 and libavutil51 and ensure that libavcodec-extra-53 and libavutil-extra-51 are installed. (The -extra packages supercede the original ones.)

For DVD playback, install dvdcss:

root@desktop:~# aptitude install libdvdread4
root@desktop:~# /usr/share/doc/libdvdread4/install-css.sh

Install MS Core fonts:

root@desktop:~# apt install ttf-mscorefonts-installer
and follow the instructions on screen.

Then install all the packages in the additional packages list. Download the file as packages-to-install.list then install the packages with the command:

root@desktop:~# aptitude install $(< packages-to-install.list )

(Generate the package list with

user@desktop:~$ comm -23 <(aptitude search '~i !~M' -F '%p' | sed "s/ *$//" | sort -u) <(gzip -dc /var/log/installer/initial-status.gz | sed -n 's/^Package: //p' | sort -u) > manually-installed-packages.txt

)

Note that many of them may already be installed from previous steps.

Snap packages

The command

user@desktop:~$ snap list

will list all the installed snap packages. So far, I have discord, postman and slack installed.

Downloads

Install these from normal downloads:

VUE and Google Earth must be installed as a normal user. If you want them available to all users, you'll need to jiggle things around. Before installation, create a directory (somewhere like /opt) and make it world-writable. Then install the software into that directory as a normal user. VUE reports an error after installation, but it can be safely ignored.

Acrobat Reader isn't in the official 13.10 repo, so you have to install it by hand. In addition, it only comes as a 32-bit binary, it it needs additional libraries.

  • Download the .deb file: [1]
  • Install some additional packages
root@desktop:~$ aptitude install libxml2:i386 lib32stdc++6 libgtk2.0-0:i386
  • Install the deb:
root@desktop:~$ dpkg -i --force-architecture AdbeRdr9.5.5-1_i386linux_enu.deb && apt-get -f install

Firefox extensions

Add these Firefox extensions

  • Greasemonkey
  • Greasefire
  • NoScript
  • TabMixPlus
  • AdBlocke Plus
  • Better YouTube
  • Echofon

(More details at the Kubuntu Guide.)

Programming languages

Python and Jupyter

As a user, install miniforge and follow the instructions.

Then install Jupyter, Pandas, and SKLearn.

user@desktop:~$ mamba install python jupyter jupyterlab pandas scikit-learn jupyter_contrib_nbextensions seaborn

Continue to use mamba to install additional packages as needed.

Update Jupyter server's default IP, so that it notices the other Jupyter instances running in a container.

  • Create a default config file, <code(base)
user@desktop:~$ jupyter notebook --generate-config
Writing default config to: /home/user/.jupyter/jupyter_notebook_config.py
  • Edit that file to have the line
c.ServerApp.ip = '0.0.0.0'

Haskell

As a user, install GHCup and follow the instructions.

Ruby

I don't need cutting-edge versions or multiple versions, so the standard package is fine.

root@desktop:~# apt install ruby-full

Install extra system monitoring tools

  • Install htop:
root@server:~# aptitude install htop
root@server:~# htop
  • Install glances (requires Python2):
root@server:~# aptitude install python-dev
root@server:~# pip install Glances PySensors
root@server:~# glances

KMail server account

KMail doesn't seem to pick up the local machine name when sending mail. It seems to give the local host name as desktop.localnet rather than desktop.domain.tld. Therefore, when setting up the SMTP sending in KMail, set the local hostname in the 'Send custom hostname' field in the 'Advanced' tab of the SMTP transport settings dialog.

Emacs configuration

I like using Emacs, and here are a couple of simple tweaks to include in the ~/.emacs configuration file:

;; .emacs 

;;; uncomment this line to disable loading of "default.el" at startup
;; (setq inhibit-default-init t) 

;; turn on font-lock mode
(when (fboundp 'global-font-lock-mode)
  (global-font-lock-mode t))

;; enable visual feedback on selections
(setq transient-mark-mode t)

;; default to better frame titles
(setq frame-title-format
      (concat  "%b - emacs@" system-name))

;; don't display the splash screen
(setq inhibit-startup-message t)

;; Enable SLIME
(setq inferior-lisp-program "/usr/bin/sbcl")
(add-to-list 'load-path "/usr/share/emacs/site-lisp/slime")
(require 'slime)
(slime-setup)

To run SLIME, type M-x slime in Emacs.

Password-less SSH logins

Let's say you want account user@desktop.domain.tld to be able to log into account someone@server.domain.tld without a password. Let's also assume that you can already SSH into someone@server.domain.tld with a password.

  • Log into user@desktop.domain.tld
  • Generate the keycode pair for this user:
user@desktop:~$ ssh-keygen -t rsa
Accept the default location for the file (~/.ssh/) and just press <Enter> when asked for a passphrase.

This has generated a private key (~/.ssh/id_rsa) and a public key (~/.ssh/id_rsa.pub). If you tell SSH on the server machine about the public key, the server machine will trust logins from that machine. This is done on a per-user basis.

To allow a user here to log in as a someone over there, do this as the user here:

user@here:~$ ssh-copy-id someone@there

user@here should now be able to start SSH sessions as someone@there without giving someone's password:

user@desktop:~S ssh someone@there
<login banner snipped>
someone@there:~S

Read detailed instructions and some clear instructions.

Install Virtualbox

Install the packages:

root@desktop:~# aptitude install virtualbox virtualbox-guest-additions-iso
  • Note to self: Make sure the virtual machines get installed somewhere on /opt

Enable the Compose key

The KDE Keyboard settings allow you to define the Compose key directly.

Additional Compose sequences

Now you can create the file ~/.XCompose to include additional compose key sequences (a sample is below).

Basic Greek letters in .XCompose from Shobute; all the compose sequences you could think of at Kragen's xcompose repo.

(Note that I've gone against tradition and use g g as the prefix for Greek, rather than *: that's because the asterisk is used for some over-rings on letters.)

include "%L" 

# EMOTICONS
<Multi_key> <o> <underscore> <o>               : "ಠ_ಠ" # LOOK OF DISAPPROVAL
<Multi_key> <colon> <D>                        : "😃"   # :D
<Multi_key> <semicolon> <parenright>           : "😉"   # ;)
<Multi_key> <colon> <p>                        : "😛"   # :p
<Multi_key> <semicolon> <p>                    : "😜"   # ;p
<Multi_key> <colon> <bar>                      : "😐"   # :| 
<Multi_key> <colon> <apostrophe> <parenright>  : "😢"   # :'(  
 
# PUNCTUATION
<Multi_key> <bracketright> <apostrophe> : "’"   U2019    # RIGHT SINGLE QUOTATION MARK
<Multi_key> <bracketleft> <apostrophe>  : "‘"   U2018    # LEFT SINGLE QUOTATION MARK
<Multi_key> <bracketright> <quotedbl>   : "”"   U201d    # RIGHT DOUBLE QUOTATION MARK
<Multi_key> <bracketleft> <quotedbl>    : "“"   U201c    # LEFT DOUBLE QUOTATION MARK
<Multi_key> <space> <t>                 : " "   U2009    # THIN SPACE
<Multi_key> <space> <m>                 : " "   U2003    # EM SPACE 
 
# Custom additions: Typography
# <Multi_key> <period> <period>		: "…"	U2026		# HORIZONTAL ELLIPSIS
<Multi_key> <backslash> <space>		: "␣"	U2423		# OPEN BOX 
 
# GREEK
<Multi_key> <g> <g> <A>    : "Α"   U0391    # GREEK CAPITAL LETTER ALPHA
<Multi_key> <g> <g> <a>    : "α"   U03B1    # GREEK SMALL LETTER ALPHA
<Multi_key> <g> <g> <B>    : "Β"   U0392    # GREEK CAPITAL LETTER BETA
<Multi_key> <g> <g> <b>    : "β"   U03B2    # GREEK SMALL LETTER BETA
<Multi_key> <g> <g> <D>    : "Δ"   U0394    # GREEK CAPITAL LETTER DELTA
<Multi_key> <g> <g> <d>    : "δ"   U03B4    # GREEK SMALL LETTER DELTA
<Multi_key> <g> <g> <E>    : "Ε"   U0395    # GREEK CAPITAL LETTER EPSILON
<Multi_key> <g> <g> <e>    : "ε"   U03B5    # GREEK SMALL LETTER EPSILON
<Multi_key> <g> <g> <F>    : "Φ"   U03A6    # GREEK CAPITAL LETTER PHI
<Multi_key> <g> <g> <f>    : "φ"   U03C6    # GREEK SMALL LETTER PHI
<Multi_key> <g> <g> <G>    : "Γ"   U0393    # GREEK CAPITAL LETTER GAMMA
<Multi_key> <g> <g> <g>    : "γ"   U03B3    # GREEK SMALL LETTER GAMMA
<Multi_key> <g> <g> <H>    : "Η"   U0397    # GREEK CAPITAL LETTER ETA
<Multi_key> <g> <g> <h>    : "η"   U03B7    # GREEK SMALL LETTER ETA
<Multi_key> <g> <g> <I>    : "Ι"   U0399    # GREEK CAPITAL LETTER IOTA
<Multi_key> <g> <g> <i>    : "ι"   U03B9    # GREEK SMALL LETTER IOTA
<Multi_key> <g> <g> <J>    : "Θ"   U0398    # GREEK CAPITAL LETTER THETA
<Multi_key> <g> <g> <j>    : "θ"   U03B8    # GREEK SMALL LETTER THETA
<Multi_key> <g> <g> <K>    : "Κ"   U039A    # GREEK CAPITAL LETTER KAPPA
<Multi_key> <g> <g> <k>    : "κ"   U03BA    # GREEK SMALL LETTER KAPPA
<Multi_key> <g> <g> <L>    : "Λ"   U039B    # GREEK CAPITAL LETTER LAMDA
<Multi_key> <g> <g> <l>    : "λ"   U03BB    # GREEK SMALL LETTER LAMDA
<Multi_key> <g> <g> <M>    : "Μ"   U039C    # GREEK CAPITAL LETTER MU
<Multi_key> <g> <g> <m>    : "μ"   U03BC    # GREEK SMALL LETTER MU
<Multi_key> <g> <g> <N>    : "Ν"   U039D    # GREEK CAPITAL LETTER NU
<Multi_key> <g> <g> <n>    : "ν"   U03BD    # GREEK SMALL LETTER NU
<Multi_key> <g> <g> <O>    : "Ο"   U039F    # GREEK CAPITAL LETTER OMICRON
<Multi_key> <g> <g> <o>    : "ο"   U03BF    # GREEK SMALL LETTER OMICRON
<Multi_key> <g> <g> <P>    : "Π"   U03A0    # GREEK CAPITAL LETTER PI
<Multi_key> <g> <g> <p>    : "π"   U03C0    # GREEK SMALL LETTER PI
<Multi_key> <g> <g> <Q>    : "Χ"   U03A7    # GREEK CAPITAL LETTER CHI
<Multi_key> <g> <g> <q>    : "χ"   U03C7    # GREEK SMALL LETTER CHI
<Multi_key> <g> <g> <R>    : "Ρ"   U03A1    # GREEK CAPITAL LETTER RHO
<Multi_key> <g> <g> <r>    : "ρ"   U03C1    # GREEK SMALL LETTER RHO
<Multi_key> <g> <g> <S>    : "Σ"   U03A3    # GREEK CAPITAL LETTER SIGMA
<Multi_key> <g> <g> <s>    : "σ"   U03C3    # GREEK SMALL LETTER SIGMA
<Multi_key> <g> <g> <T>    : "Τ"   U03A4    # GREEK CAPITAL LETTER TAU
<Multi_key> <g> <g> <t>    : "τ"   U03C4    # GREEK SMALL LETTER TAU
<Multi_key> <g> <g> <U>    : "Υ"   U03A5    # GREEK CAPITAL LETTER UPSILON
<Multi_key> <g> <g> <u>    : "υ"   U03C5    # GREEK SMALL LETTER UPSILON
<Multi_key> <g> <g> <W>    : "Ω"   U03A9    # GREEK CAPITAL LETTER OMEGA
<Multi_key> <g> <g> <w>    : "ω"   U03C9    # GREEK SMALL LETTER OMEGA
<Multi_key> <g> <g> <X>    : "Ξ"   U039E    # GREEK CAPITAL LETTER XI
<Multi_key> <g> <g> <x>    : "ξ"   U03BE    # GREEK SMALL LETTER XI
<Multi_key> <g> <g> <Y>    : "Ψ"   U03A8    # GREEK CAPITAL LETTER PSI
<Multi_key> <g> <g> <y>    : "ψ"   U03C8    # GREEK SMALL LETTER PSI
<Multi_key> <g> <g> <Z>    : "Ζ"   U0396    # GREEK CAPITAL LETTER ZETA
<Multi_key> <g> <g> <z>    : "ζ"   U03B6    # GREEK SMALL LETTER ZETA 

# Some archaic Greek.  
# "period" will indicate a sort of variant of some kind; g g is still the "greek" marker
<Multi_key> <g> <g> <period> <p>	: "ϖ"	U03D6		# GREEK PI SYMBOL
# Reserving .f in case we want PHI SYMBOL.  Digamma was "w" sound anyway.
<Multi_key> <g> <g> <period> <w>	: "ϝ"	U03DD		# GREEK SMALL LETTER DIGAMMA
<Multi_key> <g> <g> <period> <W>	: "Ϝ"	U03DC		# GREEK CAPITAL LETTER DIGAMMA
<Multi_key> <g> <g> <Q>	: "Ϟ"	U03DE	# GREEK LETTER QOPPA
<Multi_key> <g> <g> <q>	: "ϟ"	U03DF	# GREEK SMALL LETTER QOPPA
<Multi_key> <g> <g> <period> <Q>	: "Ϙ"	U03D8	# GREEK LETTER ARCHAIC QOPPA
<Multi_key> <g> <g> <period> <q>	: "ϙ"	U03D9	# GREEK SMALL LETTER ARCHAIC QOPPA
<Multi_key> <g> <g> <ampersand>	: "ϗ"	U03D7	# GREEK KAI SYMBOL
<Multi_key> <g> <g> <period> <Z>	: "Ϡ"	U03E0	# GREEK LETTER SAMPI
<Multi_key> <g> <g> <period> <z>	: "ϡ"	U03E1	# GREEK SMALL LETTER SAMPI
<Multi_key> <g> <g> <period> <period> <Z> : "Ͳ"  U0372  # GREEK CAPITAL LETTER ARCHAIC SAMPI
<Multi_key> <g> <g> <period> <period> <z> : "ͳ"  U0373  # GREEK SMALL LETTER ARCHAIC SAMPI
<Multi_key> <g> <g> <period> <S>    : "Ϛ"	U03DA	# GREEK LETTER STIGMA
<Multi_key> <g> <g> <period> <s>    : "ϛ"	U03DB	# GREEK SMALL LETTER STIGMA
<Multi_key> <g> <g> <apostrophe>    : "ʹ"	U02B9	# MODIFIER LETTER PRIME, canonically equivalent to U0374 GREEK NUMERAL SIGN
 
# While we're at it...
<Multi_key> <g> <g> <period> <apostrophe>	: "′"	U2032	# PRIME
<Multi_key> <g> <g> <period> <quotedbl>      : "″"	U2033	# DOUBLE PRIME
<Multi_key> <g> <g> <comma>	       : "͵"	U0375	# GREEK LOWER NUMERAL SIGN (for thousands)
<Multi_key> <g> <g> <period> <b>    : "ϐ"	U03D0	# GREEK BETA SYMBOL
<Multi_key> <g> <g> <period> <j>    : "ϑ"	U03D1	# GREEK THETA SYMBOL
<Multi_key> <g> <g> <period> <Y>    : "ϒ"	U03D2	# GREEK UPSILON WITH HOOK SYMBOL
<Multi_key> <g> <g> <period> <f>    : "ϕ"	U03D5	# GREEK PHI SYMBOL
<Multi_key> <g> <g> <period> <k>    : "ϰ"	U03F0	# GREEK KAPPA SYMBOL
<Multi_key> <g> <g> <period> <r>    : "ϱ"	U03F1	# GREEK RHO SYMBOL
<Multi_key> <g> <g> <period> <U>    : "ϴ"	U03F4	# GREEK CAPITAL THETA SYMBOL
<Multi_key> <g> <g> <period> <e>    : "ϵ"	U03F5	# GREEK LUNATE EPSILON SYMBOL
 
<Multi_key> <g> <g> <period> <question>	 : "ϻ"	  U03FB	      # GREEK SMALL LETTER SAN
<Multi_key> <g> <g> <period> <slash>	 : "Ϻ"	  U03FA	      # GREEK CAPITAL LETTER SAN

Install and configure Sublime Text

root@desktop:~# dpkg -i sublime-text_build-3059_amd64.deb
  • When using KDE, update ~/.local/share/applications/mimeapps.list to include the line:
inode/directory=kde4-dolphin.desktop;
(This prevents Sublime Text from starting Nautilus when browsing files, and bringing most of Gnome with it.)
(Package suggestions from Daniel Bader.)
  • Enable the theme and colour scheme by opening the user preferences Preferences | Settings - User and adding these lines to Packages/User/Preferences.sublime-settings:
{
    "color_scheme": "Packages/Tomorrow Color Schemes/Tomorrow-Night-Eighties.tmTheme",
    "font_face": "Source Code Pro",
    "font_size": 10,
    "ignored_packages":
    [
        "Markdown",
        "Vintage"
    ],
    "soda_classic_tabs": true,
    "theme": "Soda Dark 3.sublime-theme"
}
This also changes the default font. (Leave unchanged any other lines in that file.)
  • Open a Markdown file, select Preferences | Settings - More | Syntax specific - User, and add these lines to Packages/User/Markdown.sublime-settings
{
    "color_scheme": "Packages/MarkdownEditing/MarkdownEditor-Dark.tmTheme"
}
To make the Python linter use Python 3 by default, insert the "@python": 3 line into Preferences | Package Settings | SublimeLinter | Settings - User (Packages/User/SublimeLinter.sublime-settings):
{
    "user": {
        "linters": {
            "pylint": {
            	"@python": 3 // Insert this line
            }
        }
    }
}
  • Open a Python file, select Preferences | Settings - More | Syntax specific - User, and add these lines to Packages/User/Python.sublime-settings
{
    "rulers": [80]
}

Enable KSysGuard on the server

KSysGuard is a nice graphic system performance monitor.

  • On the server, install ksysguardd, a lightweight monitor server that doesn't require all of KDE.
root@server:~# aptitude install ksysguardd
  • Create a user for ksysguard to run under:
root@server:~# groupadd ksysguard
root@server:~# useradd -s /usr/bin/ksysguardd -g ksysguard ksysguard
root@server:~# mkdir -p /home/ksysguard/.ssh
root@server:~# chown -R ksysguard:ksysguard /home/ksysguard
(the useradd line means that the ksysguard user will run the ksysguardd monitor as a login shell rather than Bash.
  • Copy across the user's ssh public key to allow passwordless logins
user@desktop:~# scp ~/.ssh/id_rsa.pub user@desktop:ksysguard_key

root@server:~# mv /home/user/ksysguard_key /home/ksysguard/.ssh/authorized_keys
root@server:~# chown ksysguard:ksysguard /home/ksysguard/.ssh/authorized_keys
  • Add ksysguard to the list of users that can connect via ssh. Add ksysguard to the end of the AllowUsers line in /etc/ssh/sshd_config.
  • Test it works by logging into the ksysguard user
user@desktop:~$ ssh ksysguard@ogedei
ksysguardd 4
(c) 1999, 2000, 2001, 2002 Chris Schlaeger <cs@kde.org>
(c) 2001 Tobias Koenig <tokoe@kde.org>
(c) 2006-2008 Greg Martyn <greg.martyn@gmail.com>
This program is part of the KDE Project and licensed under
the GNU GPL version 2. See http://www.kde.org for details.
ksysguardd> 
the commands monitors and quit should be helpful.
  • In the ksysguard graphical client, select File | Monitor Remote Machine and give the details of the server. You should now be able to add monitors for the server.

Instructions taken from NRS Central.

Enable Calibre server

Calibre is an ebook management system. It also supports the OPDS protocol for sharing ebooks across a network.

Get it working

  • Open the firewall to port 8080 on the local network
root@desktop:~# ufw allow from 192.168.1.0/24 to any port 8080
  • Start the server:
user@desktop:~$ calibre-server ~/Documents/calibre-library/
  • Test that you can see the library with a browser pointed to localhost:8080 and that OPDS-aware apps (such as FBReader on Android) can see the library.
  • Kill that server instance

Create systemd job

Create the file /lib/systemd/system/calibre-server.service (from version 3.0 onwards)

[Unit]
Description=Calibre ebook content service

[Service]
ExecStart=/usr/bin/calibre-server --port 8080 /home/user/path/to/calibre-library 

[Install]
WantedBy=multi-user.target

(The more correct way to do this is to create the file /etc/sysconfig/calibre-server that contains the environment variables (such as path to the library and port to serve the library on, and include that environment with EnvironmentFile=etc/sysconfig/calibre-server . But it's hardly worth it in this case.)

Reload the Systemd configuration and start the server:

root@desktop:~# systemctl enable calibre-server.service
root@desktop:~# systemctl daemon-reload
root@desktop:~# systemctl restart calibre-server.service
root@desktop:~# systemctl status calibre-server
  • Check again that the Calibre server is running.

Change tooltip colours

I use KDE as an environemnt, with a "dark text on light background" theme. The default Ubuntu theme has tooltips of "light text on dark background." Some non-KDE apps pick up the "light text" part of tooltips, but use the "light background" setting from KDE. This makes tooltips in several apps (GIMP and Inkscape, among others) unusable.

Fix this by editing ~/.gtkrc-2.0 to include, at the end:

style "gnome-color-chooser-tooltips"
{
    bg[NORMAL] = "#FFFFAF"
    fg[NORMAL] = "#000000"
}
widget "gtk-tooltip*" style "gnome-color-chooser-tooltips"

Edit /usr/share/themes/Ambiance/gtkrc-3.0/gtk.css so that the tooltip colours are:

tooltip_bg_color #FFFFAF;
tooltip_fg_color #000000;

Edit /usr/share/themes/Ambiance/gtkrc-3.0/settings.ini so that the gtk-color-scheme colours are:

tooltip_bg_color:#FFFFAF
tooltip_fg_color:#000000
(you may have to dig through that setting

(Instructions from I Will Folo.)

Media server

Install MiniDLNA for uPNP/DLNA serving of media across the network. (Instructions to follow.)

  • Install MiniDLNA:
root@desktop:~# aptitude install minidlna
  • Edit the config file at /etc/minidlna.conf to have the settings:
#network_interface=eth0         # Self-discovers if commented (good with NetworkManager)
media_dir=A,/home/user/Music    # Use A, P, and V to restrict media 'type' in directory
media_dir=PV,/home/user/Pictures
friendly_name=Desktp            # Optional
presentation_url=http://desktop.domain.tld/
db_dir=/var/cache/minidlna      # Needs to be un-commented
log_dir=/var/log                # Needs to be un-commented
inotify=yes                     # 'no' for less resources, restart required for new media
  • Open the firewall to allow DLNA
root@desktop:~# ufw allow in proto tcp from 192.168.1.0/24 to any port 8200
root@desktop:~# ufw allow in proto udp from 192.168.1.0/24 to any port 1900
  • Restart everything
root@desktop:~# systemctl force-reload minidlna.service 
root@desktop:~# systemctl restart minidlna.service 
root@desktop:~# ufw reload
  • Check it's working. Visit http://localhost:8200 on the desktop and http://desktop.domain.tld:8200 from another machine.
  • And finally, check that the minidlna user can read all the media files!