mirror of
				https://github.com/Phantop/dotfiles
				synced 2025-10-30 03:25:44 +00:00 
			
		
		
		
	add setup script testing workflow
This commit is contained in:
		
							parent
							
								
									c83c7a5c17
								
							
						
					
					
						commit
						2e2a397775
					
				
							
								
								
									
										33
									
								
								.github/workflows/setup.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								.github/workflows/setup.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,33 @@ | |||
| name: Test dotfiles run | ||||
| 
 | ||||
| on: | ||||
|   workflow_dispatch: # allow manual trigger | ||||
|   push: | ||||
|     branches: | ||||
|       - main | ||||
| 
 | ||||
| 
 | ||||
| jobs: | ||||
|   setup: # try setting up user with setup script | ||||
|     runs-on: ubuntu-latest | ||||
|     container: archlinux:latest | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Install git on container and add user | ||||
|         run: | | ||||
|           pacman -S --noconfirm git sudo | ||||
|           useradd -m glados | ||||
|           echo 'glados ALL=(ALL:ALL) NOPASSWD: ALL' > /etc/sudoers.d/glados | ||||
|       - name: Checkout repo | ||||
|         uses: actions/checkout@v4 | ||||
|       - name: Bump submodules | ||||
|         run: | | ||||
|           git config --global --add safe.directory /__w/aurbuild/aurbuild | ||||
|           cp -r /__w/dotfiles/dotfiles /home/glados/.dotfiles | ||||
|           sudo -u glados /home/glados/.dotfiles/bin/setup | ||||
|           mkdwarfs -i /home/glados -o /home.dwarfs | ||||
|       - name: Upload build artifact | ||||
|         uses: actions/upload-artifact@v4 | ||||
|         with: | ||||
|           name: home.dwarfs | ||||
|           path: /home.dwarfs | ||||
							
								
								
									
										38
									
								
								arch/dwarfs-universal
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								arch/dwarfs-universal
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,38 @@ | |||
| # Maintainer: phantop <phantop@tuta.io> | ||||
| pkgname=dwarfs-universal | ||||
| pkgver=0.10.1 | ||||
| pkgrel=1 | ||||
| pkgdesc='A fast high compression read-only file system (pre-compiled binaries)' | ||||
| url='https://github.com/mhx/dwarfs' | ||||
| source=("https://github.com/mhx/dwarfs/releases/download/v${pkgver}/dwarfs-${pkgver}-Linux-${CARCH}-clang.tar.xz" | ||||
|   "https://github.com/mhx/dwarfs/releases/download/v${pkgver}/dwarfs-universal-${pkgver}-Linux-${CARCH}-clang" | ||||
|   "https://github.com/mhx/dwarfs/raw/main/scripts/extract_blocks.py") | ||||
| arch=('x86_64' 'aarch64') | ||||
| license=('GPL3') | ||||
| depends=( 'fuse3' ) | ||||
| conflicts=('dwarfs') | ||||
| provides=('dwarfs') | ||||
| 
 | ||||
| package() { | ||||
|   install -Dm755 "${srcdir}/dwarfs-universal-${pkgver}-Linux-${CARCH}-clang" "${pkgdir}/usr/bin/dwarfsuniversal" | ||||
|   install -Dm755 "${srcdir}/extract_blocks.py" "${pkgdir}/usr/bin/dwarfsblocks" | ||||
|   ln -s dwarfsuniversal "${pkgdir}/usr/bin/dwarfsck" | ||||
|   ln -s dwarfsuniversal "${pkgdir}/usr/bin/dwarfsextract" | ||||
|   ln -s dwarfsuniversal "${pkgdir}/usr/bin/mkdwarfs" | ||||
|   ln -s dwarfsuniversal "${pkgdir}/usr/bin/dwarfs" | ||||
| 
 | ||||
|   # mount will just run dwarfsuniversal otherwise | ||||
|   printf '#!/bin/sh\ndwarfs "$@"' > "${pkgdir}/usr/bin/mount.dwarfs" | ||||
|   chmod 755 "${pkgdir}/usr/bin/mount.dwarfs" | ||||
| 
 | ||||
|   cd "${srcdir}/dwarfs-${pkgver}-Linux-${CARCH}-clang" | ||||
|   install -Dm644 share/man/man1/dwarfs.1 "$pkgdir/usr/share/man/man1/dwarfs.1" | ||||
|   install -Dm644 share/man/man1/dwarfsck.1 "$pkgdir/usr/share/man/man1/dwarfsck.1" | ||||
|   install -Dm644 share/man/man1/dwarfsextract.1 "$pkgdir/usr/share/man/man1/dwarfsextract.1" | ||||
|   install -Dm644 share/man/man1/mkdwarfs.1 "$pkgdir/usr/share/man/man1/mkdwarfs.1" | ||||
|   install -Dm644 share/man/man5/dwarfs-format.5 "$pkgdir/usr/share/man/man5/dwarfs-format.5" | ||||
| } | ||||
| # update by removing and running `makepkg -g >> PKGBUILD` | ||||
| sha256sums=('SKIP' | ||||
|             'SKIP' | ||||
|             'SKIP') | ||||
|  | @ -14,8 +14,10 @@ printf "[dkp-linux]\nServer = https://pkg.devkitpro.org/packages/linux/\$arch/\n | |||
| 
 | ||||
| echo permit :wheel | t /etc/doas.conf | ||||
| p -Syu | ||||
| xargs sudo pacman --noconfirm -S --needed < ~/.dotfiles/archpkgs | ||||
| xargs sudo pacman --noconfirm -S --needed < ~/.dotfiles/arch/packages | ||||
| yay -S pandoc-bin shellcheck-bin --noconfirm | ||||
| cp ~/.dotfiles/arch/packages/dwarfs-universal /tmp/PKGBUILD | ||||
| makepkg -sircD /tmp  | ||||
| chsh -s "$(grep -m1 bin/fish /etc/shells)" | ||||
| 
 | ||||
| echo kernel.core_pattern=/dev/null | t /etc/sysctl.d/50-coredump.conf | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue