Installer Okular som standard PDF-program


Source: Download script

Last Updated: 11. September 2025 by Agnete Moos (agms@sonderborg.dk)

Parameters:

Navn Type Standardværdi Påkrævet
Click to see the source code
#!/usr/bin/env bash

ENABLE=$1

set -x

if get_os2borgerpc_config os2_product | grep --quiet kiosk; then
  echo "Dette script er ikke designet til at blive anvendt på en kiosk-maskine."
  exit 1
fi

export DEBIAN_FRONTEND=noninteractive
GLOBAL_MIME_FILE="/usr/share/applications/defaults.list"
OKULAR_CONFIG_1="/home/.skjult/.config/okularpartrc"
OKULAR_CONFIG_2="/home/.skjult/.local/share/kxmlgui5/okular/part.rc"

cleanup_mime_file() {
	MIME_FILE=$1

	sed --in-place "\@application/pdf@d" "$MIME_FILE"
	sed --in-place "\@application/x-bzpdf@d" "$MIME_FILE"
	sed --in-place "\@application/x-gzpdf@d" "$MIME_FILE"
	sed --in-place "\@application/x-xzpdf@d" "$MIME_FILE"
}

make_okular_default() {

	cleanup_mime_file $GLOBAL_MIME_FILE

  cat <<- EOF >> $GLOBAL_MIME_FILE
		application/pdf=okularApplication_kimgio.desktop;
		application/x-bzpdf=okularApplication_kimgio.desktop;
		application/x-gzpdf=okularApplication_kimgio.desktop;
		application/x-xzpdf=okularApplication_kimgio.desktop;
	EOF
}

apt-get update --assume-yes

# Clean up from earlier versions of this script
PREVIOUS_MIME_FILE="/home/.skjult/.config/mimeapps.list"
[ -f $PREVIOUS_MIME_FILE ] && cleanup_mime_file $PREVIOUS_MIME_FILE

if [ "$ENABLE" = "True" ]; then

	apt-get remove --assume-yes evince # Unfortunately removing this alone does not mean Okular becomes default. Instead LibreOffice Draw becomes default.
	apt-get install --assume-yes okular

	make_okular_default

	cat <<- EOF > $OKULAR_CONFIG_1

	[General]
	ttsEngine=flite

	[Reviews]
	AnnotationTools=1,2,3,4,5,6,7,8,9,

	EOF

	mkdir --parents "$(dirname $OKULAR_CONFIG_2)"

	cat <<- EOF > $OKULAR_CONFIG_2

	
	
	 
	  
	   &File
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	  
	  
	   &Edit
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	  
	  
	   &View
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	    &Orientation
	    
	    
	    
	   
	   
	   
	   
	   
	  
	  
	   &Go
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	  
	  
	   &Bookmarks
	   
	   
	   
	   
	   
	   
	  
	  
	   &Tools
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	   
	  
	  
	   &Settings
	   
	   
	   
	   
	  
	  
	   &Help
	   
	  
	 
	 
	  Main Toolbar
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	 
	 
	  
	 
	
	EOF
else
	apt-get remove --assume-yes okular
	apt-get install --assume-yes evince # Hopefully this means evince is automatically set as the default reader for its types, so we don't have to handle that manually
	rm --force $OKULAR_CONFIG_1 $OKULAR_CONFIG_2
fi

Beskrivelse

Okular kan både bruges til at læse og redigere PDF’er.

Ubuntus standard PDF-læser hedder Dokumentfremviser, som også kaldes “Evince”. Okular har den fordel over Evince, at den kan redigere PDF’er, hvilket vil sige den kan bruges til at udfylde formularer, der ikke har deciderede inputfelter. Vi har selv oplevet tilfælde af formular-PDF’er, at de ikke havde inputfelter, og derfor blev dette script udviklet. Hvis I oplever PDF’er til udfyldning fra det offentlige, som ikke har inputfelter, vil vi også foreslå at indmelde fejlen til den rette instans, så PDF’en kan rettes.

Hvis scriptet køres med udeladt “hak” ved parametret, skiftes der tilbage til Evince.

Dette script er blevet testet og virker på Ubuntu 22.04.