aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMunyoki Kilyungi2025-04-22 20:35:56 +0300
committerMunyoki Kilyungi2025-04-22 20:38:21 +0300
commite65e743a2a736da920d008807f60985ec6081054 (patch)
tree07cb9f1a09fab8bc963d229c907af8c13f655029
parent1699ce574f65dc8260505f768b33f973d996e5fd (diff)
downloadgn-machines-e65e743a2a736da920d008807f60985ec6081054.tar.gz
Set correct file and dir permissions for gn conf files.
-rw-r--r--genenetwork-local-container.scm40
1 files changed, 18 insertions, 22 deletions
diff --git a/genenetwork-local-container.scm b/genenetwork-local-container.scm
index 5d13f6c..85e8c08 100644
--- a/genenetwork-local-container.scm
+++ b/genenetwork-local-container.scm
@@ -190,42 +190,38 @@ server described by CONFIG, a <genenetwork-configuration> object."
(define (genenetwork-activation config)
(match-record config <genenetwork-configuration>
- (gn2-secrets gn3-secrets auth-db-path gn-auth-secrets)
+ (gn2-secrets gn3-secrets auth-db-path gn-auth-secrets gn-doc-git-checkout)
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
-
;; Set ownership of files.
(for-each (lambda (file)
+ (when (eq? (stat:type (stat file)) 'directory)
+ (chmod file #o755))
(chown file
(passwd:uid (getpw "genenetwork"))
(passwd:gid (getpw "genenetwork"))))
- (cons* #$gn3-secrets
- (append (list "/etc/genenetwork/conf/gn-auth"
- "/etc/genenetwork/conf/gn-auth/secrets.py"
- "/etc/genenetwork/conf/gn2"
- "/etc/genenetwork/conf/gn3"
- "/var/lib/gn-docs"
- #$(dirname auth-db-path))
- (find-files "/etc/genenetwork/conf/gn-auth"
- #:directories? #t)
- (find-files "/etc/genenetwork/conf/gn2"
- #:directories? #t)
- (find-files "/etc/genenetwork/conf/gn3"
- #:directories? #t)
- (find-files "/var/lib/gn-docs"
- #:directories? #t)
- (find-files #$(dirname auth-db-path)
- #:directories? #t))))
+ (cons* "/etc/genenetwork/conf"
+ (append
+ (find-files #$(dirname gn-auth-secrets)
+ #:directories? #t)
+ (find-files #$(dirname gn2-secrets)
+ #:directories? #t)
+ (find-files #$(dirname gn3-secrets)
+ #:directories? #t)
+ (find-files #$(dirname auth-db-path)
+ #:directories? #t)
+ (find-files #$(dirname gn-doc-git-checkout)
+ #:directories? #t))))
;; Prevent other users from reading secret files.
(for-each (lambda (file)
(chmod file #o600))
(append
- (find-files "/etc/genenetwork/conf/gn-auth/secrets.py"
+ (find-files #$gn-auth-secrets
#:directories? #f)
- (find-files "/etc/genenetwork/conf/gn2/secrets.py"
+ (find-files #$gn2-secrets
#:directories? #f)
- (find-files "/etc/genenetwork/conf/gn3/secrets.py"
+ (find-files #$gn3-secrets
#:directories? #f)))))))
(define (gn-guile-gexp gn-guile-port)