services: Add bitmask-service-type.

* gnu/services/vpn.scm (bitmask-service-type): New variable.
* doc/guix.texi: Document it.

Co-authored-by: jgart <jgart@dismail.de>
This commit is contained in:
Raghav Gururajan 2021-07-03 01:04:09 -04:00
parent b30651aeca
commit 02562e2f1e
No known key found for this signature in database
GPG Key ID: 5F5816647F8BE551
2 changed files with 28 additions and 0 deletions

@ -26772,6 +26772,15 @@ Defaults to @samp{()}.
The @code{(gnu services vpn)} module provides services related to The @code{(gnu services vpn)} module provides services related to
@dfn{virtual private networks} (VPNs). @dfn{virtual private networks} (VPNs).
@subsubheading Bitmask
@defvr {Scheme Variable} bitmask-service-type
A service type for the @uref{https://bitmask.net, Bitmask} VPN client. It makes
the client available in the system and loads its polkit policy. Please note that
the client expects an active polkit-agent, which is either run by your
desktop-environment or should be run manually.
@end defvr
@subsubheading OpenVPN @subsubheading OpenVPN
It provides a @emph{client} service for your machine to connect to a It provides a @emph{client} service for your machine to connect to a

@ -6,6 +6,8 @@
;;; Copyright © 2021 Solene Rapenne <solene@perso.pw> ;;; Copyright © 2021 Solene Rapenne <solene@perso.pw>
;;; Copyright © 2021 Domagoj Stolfa <ds815@gmx.com> ;;; Copyright © 2021 Domagoj Stolfa <ds815@gmx.com>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -25,6 +27,7 @@
(define-module (gnu services vpn) (define-module (gnu services vpn)
#:use-module (gnu services) #:use-module (gnu services)
#:use-module (gnu services configuration) #:use-module (gnu services configuration)
#:use-module (gnu services dbus)
#:use-module (gnu services shepherd) #:use-module (gnu services shepherd)
#:use-module (gnu system shadow) #:use-module (gnu system shadow)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
@ -69,6 +72,22 @@
wireguard-service-type)) wireguard-service-type))
;;;
;;; Bitmask.
;;;
(define-public bitmask-service-type
(service-type
(name 'bitmask)
(description "Setup the @uref{https://bitmask.net, Bitmask} VPN application.")
(default-value bitmask)
(extensions
(list
;; Add bitmask to the system profile.
(service-extension profile-service-type list)
;; Configure polkit policy of bitmask.
(service-extension polkit-service-type list)))))
;;; ;;;
;;; OpenVPN. ;;; OpenVPN.
;;; ;;;