carbon-config

config submodule of carbon-core-system
git clone https://ccx.te2000.cz/git/carbon-config
Log | Files | Refs

postinstall.fileset (4169B)


      1 
      2 /etc	+
      3 /etc/group	+
      4 ?	grep -qEe '^sshd:x:22:$' "$fname"
      5 !	if grep -qEe '^[^:]*:[^:]*:22:' "$fname"; then
      6 		sed -ire 's|^[^:]*:[^:]*:22:|sshd:x:22:|' "$fname"
      7 	else
      8 		printf '%s\n' 'sshd:x:22:' >> "$fname"
      9 	fi
     10 ?	grep -qEe '^dhcpcd:x:546:$' "$fname"
     11 !	if grep -qEe '^[^:]*:[^:]*:546:' "$fname"; then
     12 		sed -ire 's|^[^:]*:[^:]*:546:|dhcpcd:x:546:|' "$fname"
     13 	else
     14 		printf '%s\n' 'dhcpcd:x:546:' >> "$fname"
     15 	fi
     16 ?	grep -qEe '^ccx:x:1000:$' "$fname"
     17 !	if grep -qEe '^[^:]*:[^:]*:1000:' "$fname"; then
     18 		sed -ire 's|^[^:]*:[^:]*:1000:|ccx:x:1000:|' "$fname"
     19 	else
     20 		printf '%s\n' 'ccx:x:1000:' >> "$fname"
     21 	fi
     22 # Groups for /dev permissions (mdevd.conf): disk, input, uucp
     23 ?	grep -qEe '^disk:x:6:root,adm$' "$fname"
     24 !	if grep -qEe '^[^:]*:[^:]*:6:' "$fname"; then
     25 		sed -ire 's|^[^:]*:[^:]*:6:|disk:x:6:root,adm|' "$fname"
     26 	else
     27 		printf '%s\n' 'disk:x:6:root,adm' >> "$fname"
     28 	fi
     29 ?	grep -qEe '^input:x:966:xorg$' "$fname"
     30 !	if grep -qEe '^[^:]*:[^:]*:966:' "$fname"; then
     31 		sed -ire 's|^[^:]*:[^:]*:966:|input:x:966:xorg|' "$fname"
     32 	else
     33 		printf '%s\n' 'input:x:966:xorg' >> "$fname"
     34 	fi
     35 ?	grep -qEe '^uucp:x:14:ccx$' "$fname"
     36 !	if grep -qEe '^[^:]*:[^:]*:14:' "$fname"; then
     37 		sed -ire 's|^[^:]*:[^:]*:14:|uucp:x:14:ccx|' "$fname"
     38 	else
     39 		printf '%s\n' 'uucp:x:14:ccx' >> "$fname"
     40 	fi
     41 
     42 /etc/passwd	f	+
     43 ?i	grep -q '^root:.*:/bin/zsh$'
     44 !f	sed -Ee 's|^(root:.*:)[^:]*$|\1/bin/zsh|'
     45 
     46 /etc/passwd	f	+
     47 !f	awk 'BEGIN { FS=OFS=":"; seen=0; line="sshd:x:22:22:sshd:/dev/null:/sbin/nologin"; split(line, a) }
     48 	{ uids[$3] = $0 }
     49 	$1 == a[1] {
     50 		for(n in a) {
     51 			if(a[n] != $n) {
     52 				print "error: differing present and requested lines" >>"/dev/stderr"
     53 				print "requested: " line >>"/dev/stderr"
     54 				print "present:   " $0 >>"/dev/stderr"
     55 				exit 1
     56 			}
     57 		}
     58 		seen = 1
     59 	}
     60 	{ print $0 }
     61 	END {
     62 		if(seen == 0) {
     63 			if(a[3] in uids) {
     64 				print "error: user record with requested UID already present" >>"/dev/stderr"
     65 				print "requested: " line >>"/dev/stderr"
     66 				print "present:   " uids[a[3]] >>"/dev/stderr"
     67 				exit 1
     68 			}
     69 			print line
     70 		}
     71 	}'
     72 /etc/shadow	f	+
     73 !f	awk 'BEGIN { FS=OFS=":"; seen=0; line="sshd:!::0:::::"; split(line, a) }
     74 	$1 == a[1] {
     75 		for(n in a) {
     76 			if(a[n] != $n) {
     77 				print "error: differing present and requested lines" >>"/dev/stderr"
     78 				print "requested: " line >>"/dev/stderr"
     79 				print "present:   " $0 >>"/dev/stderr"
     80 				exit 1
     81 			}
     82 		}
     83 		seen = 1
     84 	}
     85 	{ print $0 }
     86 	END {
     87 		if(seen == 0) {
     88 			print line
     89 		}
     90 	}'
     91 
     92 /etc/passwd	f	+
     93 !f	awk 'BEGIN { FS=OFS=":"; seen=0; line="dhcpcd:x:546:546:sshd:/dev/null:/sbin/nologin"; split(line, a) }
     94 	{ uids[$3] = $0 }
     95 	$1 == a[1] {
     96 		for(n in a) {
     97 			if(a[n] != $n) {
     98 				print "error: differing present and requested lines" >>"/dev/stderr"
     99 				print "requested: " line >>"/dev/stderr"
    100 				print "present:   " $0 >>"/dev/stderr"
    101 				exit 1
    102 			}
    103 		}
    104 		seen = 1
    105 	}
    106 	{ print $0 }
    107 	END {
    108 		if(seen == 0) {
    109 			if(a[3] in uids) {
    110 				print "error: user record with requested UID already present" >>"/dev/stderr"
    111 				print "requested: " line >>"/dev/stderr"
    112 				print "present:   " uids[a[3]] >>"/dev/stderr"
    113 				exit 1
    114 			}
    115 			print line
    116 		}
    117 	}'
    118 /etc/shadow	f	+
    119 !f	awk 'BEGIN { FS=OFS=":"; seen=0; line="dhcpcd:!::0:::::"; split(line, a) }
    120 	$1 == a[1] {
    121 		for(n in a) {
    122 			if(a[n] != $n) {
    123 				print "error: differing present and requested lines" >>"/dev/stderr"
    124 				print "requested: " line >>"/dev/stderr"
    125 				print "present:   " $0 >>"/dev/stderr"
    126 				exit 1
    127 			}
    128 		}
    129 		seen = 1
    130 	}
    131 	{ print $0 }
    132 	END {
    133 		if(seen == 0) {
    134 			print line
    135 		}
    136 	}'
    137 
    138 /etc/passwd	f	+
    139 !f	awk 'BEGIN { FS=OFS=":"; seen=0; line="ccx:x:1000:1000:Jan Pobrislo:/home/ccx:/bin/zsh"; split(line, a) }
    140 	{ uids[$3] = $0 }
    141 	$1 == a[1] {
    142 		for(n in a) {
    143 			if(a[n] != $n) {
    144 				print "error: differing present and requested lines" >>"/dev/stderr"
    145 				print "requested: " line >>"/dev/stderr"
    146 				print "present:   " $0 >>"/dev/stderr"
    147 				exit 1
    148 			}
    149 		}
    150 		seen = 1
    151 	}
    152 	{ print $0 }
    153 	END {
    154 		if(seen == 0) {
    155 			if(a[3] in uids) {
    156 				print "error: user record with requested UID already present" >>"/dev/stderr"
    157 				print "requested: " line >>"/dev/stderr"
    158 				print "present:   " uids[a[3]] >>"/dev/stderr"
    159 				exit 1
    160 			}
    161 			print line
    162 		}
    163 	}'
    164