X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=cmd%2Fsafcm%2Fconfig%2Ffiles.go;h=88b1410749e5611462db5c0873a280ec32666d13;hb=a975ad977fa48ac38a1955041cc559e77aa4d968;hp=7ffa8b201cfeb5548cb0d2356f19677931218542;hpb=afb7e8e2c886c9907f9aee8f9c32baabcbbcf997;p=safcm%2Fsafcm.git diff --git a/cmd/safcm/config/files.go b/cmd/safcm/config/files.go index 7ffa8b2..88b1410 100644 --- a/cmd/safcm/config/files.go +++ b/cmd/safcm/config/files.go @@ -1,19 +1,7 @@ // Config: load files/ directory tree -// Copyright (C) 2021 Simon Ruderich -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . +// SPDX-License-Identifier: GPL-3.0-or-later +// Copyright (C) 2021-2024 Simon Ruderich package config @@ -40,6 +28,9 @@ confusion files must be manually chmodded 0644/0755 and directories 0755 or via "safcm fixperms". ` + // No permission checks on windows which doesn't track them. + windows := runtime.GOOS == "windows" + files := make(map[string]*safcm.File) err := filepath.WalkDir(basePath, func(path string, d fs.DirEntry, err error) error { @@ -60,6 +51,11 @@ via "safcm fixperms". // permissions they could assume that these permissions are // respected. This is not the case. if typ == 0 /* regular file */ { + if windows { + perm = 0644 + // 0755 must be set via permissions.yaml if + // windows is used + } if perm != 0644 && perm != 0755 { return fmt.Errorf( "%q: invalid permissions %#o%s", @@ -70,6 +66,9 @@ via "safcm fixperms". return err } } else if typ == fs.ModeDir { + if windows { + perm = 0755 + } if perm != 0755 { return fmt.Errorf( "%q: invalid permissions %#o%s",