mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 06:21:11 +00:00 
			
		
		
		
	* If using a different $USER then rename git user * Chown based on $USER env * Target only one part of passwd * su-exec based on $USER not a hardcoded value
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			875 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			875 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| if [ "${USER}" != "git" ]; then
 | |
|     # rename user
 | |
|     sed -i -e "s/^git\:/${USER}\:/g" /etc/passwd
 | |
|     # switch sshd config to different user
 | |
|     sed -i -e "s/AllowUsers git/AllowUsers ${USER}/g" /etc/ssh/sshd_config
 | |
| fi
 | |
| 
 | |
| ## Change GID for USER?
 | |
| if [ -n "${USER_GID}" ] && [ "${USER_GID}" != "`id -g ${USER}`" ]; then
 | |
|     sed -i -e "s/^${USER}:\([^:]*\):[0-9]*/${USER}:\1:${USER_GID}/" /etc/group
 | |
|     sed -i -e "s/^${USER}:\([^:]*\):\([0-9]*\):[0-9]*/${USER}:\1:\2:${USER_GID}/" /etc/passwd
 | |
| fi
 | |
| 
 | |
| ## Change UID for USER?
 | |
| if [ -n "${USER_UID}" ] && [ "${USER_UID}" != "`id -u ${USER}`" ]; then
 | |
|     sed -i -e "s/^${USER}:\([^:]*\):[0-9]*:\([0-9]*\)/${USER}:\1:${USER_UID}:\2/" /etc/passwd
 | |
| fi
 | |
| 
 | |
| for FOLDER in /data/gitea/conf /data/gitea/log /data/git /data/ssh; do
 | |
|     mkdir -p ${FOLDER}
 | |
| done
 | |
| 
 | |
| if [ $# -gt 0 ]; then
 | |
|     exec "$@"
 | |
| else
 | |
|     exec /bin/s6-svscan /etc/s6
 | |
| fi
 |