blob: 8026c473d3a07a338a90cf087a3867e9409d5bae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
;;; PantherX System Configuration Module
;;; This module supports configuration modules for PantherX OS definitions
;;;
;;; Reza Alizadeh Majd <r.majd@pantherx.org>
;;; Franz Geffke <franz@pantherx.org>
;;;
(define-module (px services base)
#:use-module (gnu packages gnome)
#:use-module (gnu packages openbox)
#:use-module (gnu packages networking)
#:use-module (gnu packages security-token)
#:use-module (gnu packages xdisorg)
#:use-module (gnu services)
#:use-module (gnu services avahi)
#:use-module (gnu services base)
#:use-module (gnu services cups)
#:use-module (gnu services dbus)
#:use-module (gnu services desktop)
#:use-module (gnu services networking)
#:use-module (gnu services pm)
#:use-module (gnu services sddm)
#:use-module (gnu services sound)
#:use-module (gnu services ssh)
#:use-module (gnu services xorg)
#:use-module (px packages desktop)
#:use-module (px services desktop)
#:use-module (px services device)
#:use-module (px services security-token)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
#:export (%px-core-services
%px-desktop-core-services
%px-desktop-services
%px-desktop-ee-services
%px-server-services
%px-server-ee-services))
;;;
;;;
;;; CORE
;;; px-core-os services
;;;
(define %px-core-services
(append (list (service dhcp-client-service-type)
(service ntp-service-type)) %base-services))
;;;
;;;
;;; DESKTOP
;;; px-desktop-os services
;;;
(define %px-desktop-core-services
(append %desktop-services-assembly-plain))
(define %px-desktop-services
(append %desktop-services-assembly))
;;;
;;;
;;; ENTERPRISE
;;; px-desktop-ee-o services
;;;
(define %px-desktop-ee-services
;; TODO: Does not include default desktop
(append (list (service px-device-identity-service-type)
(service px-user-identity-service-type))
%desktop-services-assembly))
;;;
;;; SERVER
;;; px-server-os services
;;; px-server-ee-os services
;;;
(define %px-server-services
(append (list
;; OpenSSH is enabled by default but only with SSH key
(service openssh-service-type
(openssh-configuration (permit-root-login 'prohibit-password)))
;; Time service
(service ntp-service-type)
;; Firewall
(service nftables-service-type)
;; DHCP
(service dhcp-client-service-type)) %base-services))
(define %px-server-ee-services
(append (list (service px-device-identity-service-type)) %px-server-services))
|