blob: 51d582be0fb23338b93cfea6ba77057260f377a5 (
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
|
#path_string: string & =~ "^/"
#file_string: #path_string & =~ "[^/]$"
#octal_string: string & =~ "^[0-7]{3,4}$"
#HjemFile: {
type!: string
source?: #path_string
target!: #path_string
clobber?: bool
permissions?: #octal_string
uid?: int & >=0
gid?: int & >=0
deactivate?: bool
} & ({
type: "copy"
target!: #file_string
source!: #file_string
...
} | {
type: "symlink"
source!: _
...
} | {
type: "delete" | "directory" | "modify"
...
})
{
version: 1
files: [...#HjemFile]
}
|