Your one-stop-cake-shop for everything Freshly Baked has to offer

feat(copyparty): Add folder for kavita library

Co-Authored-By: Skyler Grey <sky@a.starrysy.fyi>

thecoded.prof c0d835e4 ae836a6b

verified
Changed files
+33 -2
packetmix
systems
+33 -2
packetmix/systems/teal/copyparty.nix
··· 114 ]; 115 }; 116 }; 117 }; 118 }; 119 ··· 175 if not headers["Content-Type"] then 176 return 177 end 178 - 179 ngx.req.read_body() 180 local body = ngx.req.get_body_data() 181 ··· 276 virtualHosts = [ "internal.files.freshly.space" ]; 277 }; 278 279 - clicks.storage.impermanence.persist.directories = [ "/var/lib/copyparty" ]; 280 }; 281 }
··· 114 ]; 115 }; 116 }; 117 + "/groups/library" = { 118 + path = "/var/lib/copyparty/data/groups/library"; 119 + 120 + access = { 121 + A = [ 122 + "coded" 123 + "minion" 124 + ]; 125 + }; 126 + }; 127 }; 128 }; 129 ··· 185 if not headers["Content-Type"] then 186 return 187 end 188 + 189 ngx.req.read_body() 190 local body = ngx.req.get_body_data() 191 ··· 286 virtualHosts = [ "internal.files.freshly.space" ]; 287 }; 288 289 + users.groups."copyparty+kavita".members = [ 290 + "copyparty" 291 + "kavita" 292 + ]; 293 + 294 + clicks.storage.impermanence.persist.directories = [ 295 + "/var/lib/copyparty" 296 + ( 297 + let 298 + mode = "0770"; 299 + user = "copyparty"; 300 + group = "copyparty+kavita"; 301 + in 302 + { 303 + directory = "/var/lib/copyparty/data/groups/library"; 304 + inherit mode user group; 305 + defaultPerms = { 306 + inherit mode user group; 307 + }; 308 + } 309 + ) 310 + ]; 311 }; 312 }