Skip to content

Commit 986aefd

Browse files
author
Daimaou92
committed
Will be creating releases with ISO that works for my VMWare Fusion henceforth. Changes will be made to the script to support installation with the ISO in the latest release
1 parent 9179cd4 commit 986aefd

File tree

2 files changed

+37
-87
lines changed

2 files changed

+37
-87
lines changed

Makefile

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
ADDR ?= unset
22
APORT ?= 22
33
ARCHUSER ?= daimaou92
4+
ARCHUSERPASS ?= root
45
ARCHHOSTNAME ?= archmachine
56
ARCHREGION ?= Asia
67
ARCHCITY ?= Kolkata
@@ -51,18 +52,18 @@ vm/install:
5152
arch-chroot /mnt sh -c 'locale-gen'; \
5253
arch-chroot /mnt sh -c 'echo \"LANG=en_US.UTF-8\" > /etc/locale.conf'; \
5354
arch-chroot /mnt sh -c 'echo \"$(ARCHHOSTNAME)\" > /etc/hostname'; \
54-
arch-chroot /mnt sh -c 'systemctl enable systemd-networkd.service'; \
55-
arch-chroot /mnt sh -c 'systemctl enable systemd-resolved.service'; \
5655
arch-chroot /mnt sh -c 'bash /netmake.sh && rm /netmake.sh'; \
57-
arch-chroot /mnt sh -c 'systemctl enable sshd.service'; \
5856
arch-chroot /mnt sh -c 'useradd -m -G wheel -s /bin/zsh $(ARCHUSER)'; \
59-
arch-chroot /mnt sh -c 'echo -e \"root\nroot\" | passwd $(ARCHUSER)'; \
57+
arch-chroot /mnt sh -c 'echo -e \"$(ARCHUSERPASS)\n$(ARCHUSERPASS)\" | passwd $(ARCHUSER)'; \
6058
arch-chroot /mnt sh -c 'echo -e \"$(ARCHUSER) ALL=(ALL) NOPASSWD: ALL\" > /etc/sudoers.d/100-$(ARCHUSER)'; \
6159
arch-chroot /mnt sh -c 'mkinitcpio -P'; \
6260
arch-chroot /mnt sh -c 'echo -e \"root\nroot\" | passwd'; \
6361
arch-chroot /mnt sh -c 'bootctl install'; \
6462
mkdir -p /mnt/boot/loader; \
6563
cp -r /tmp/before/systemdbootloaders/* /mnt/boot/loader/; \
64+
systemctl enable systemd-networkd.service --root=/mnt; \
65+
systemctl enable systemd-resolved.service --root=/mnt; \
66+
systemctl enable sshd.service --root=/mnt; \
6667
umount -R /mnt; \
6768
reboot; \
6869
"

README.md

Lines changed: 32 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
# Updates
2-
1. [VMWare Fusion 13](https://www.vmware.com/in/products/fusion.html) is out 🚀🚀🚀
3-
2. The scripts - henceforth - will be tested with the official archboot releases for
4-
aarch64 only. As of the time of editing this file the version tested is:
5-
[archboot-2023.01.22-21.50-aarch64.iso](https://pkgbuild.com/~tpowa/archboot/iso/aarch64/latest/archboot-2023.01.22-21.50-aarch64.iso).
6-
I have not tested this set of scripts with the `-latest` or the `-local` flavours.
2+
1. [VMWare Fusion Tech Preview 2023](https://blogs.vmware.com/teamfusion/2023/07/vmware-fusion-2023-tech-preview.html) is out.
3+
2. Will henceforth be adding the latest ISO I can find on the Internet that works with these scripts in a
4+
[Release](https://github.com/daimaou92/install-arch-vmwarefusion-techpreview/releases).
5+
Please keep an eye out for that.
76

87
# What it is
98

@@ -15,7 +14,7 @@ A semi-automated way of setting up ArchLinux in [VMware Fusion for Apple Silicon
1514

1615
2. Setup a new "Custom Virtual Machine" in VMware.
1716

18-
1. Choose "Other Linux 5.x kernel 64-bit Arm"
17+
1. Choose "Other Linux 6.x kernel 64-bit Arm"
1918
2. Create a disk with at least 16 GiB of space because my script defaults of 8GiB of swap and 512 MiB for ESP. Both of these are configurable if you so choose.
2019
3. Setup the processor count and RAM size - I personally set it to 4cores and 8GiB respectively.
2120
4. Make sure to check `Use full resolution for Retina display` in `Display`
@@ -30,28 +29,23 @@ A semi-automated way of setting up ArchLinux in [VMware Fusion for Apple Silicon
3029

3130
3. Start the VM
3231

33-
4. Since we're using an ISO built by the `archboot` project - at boot it'll try to
34-
guide you through the install process. This is a very very intuitive and easy process
35-
and if you happen to prefer that please go ahead and use it. For those that would
36-
rather follow the steps below - just `Cancel` out of it.
37-
38-
5. Set a root password in the VM:
32+
4. Set a root password in the VM:
3933

4034
```Bash
4135
echo -e "root\nroot" | passwd
4236
```
4337

4438
This will, of course, set the password to `root`.
4539

46-
6. Get the ip address of the VM:
40+
5. Get the ip address of the VM:
4741

4842
```Bash
4943
ip addr
5044
```
5145

52-
7. Now open a terminal window in you `Mac host` and clone this repo
53-
8. `cd` into the repo directory
54-
9. Run:
46+
6. Now open a terminal window in you `Mac host` and clone this repo
47+
7. `cd` into the repo directory
48+
8. Run:
5549

5650
```Bash
5751
ADDR="<ip address from step 5>" \
@@ -61,43 +55,37 @@ make vm/install
6155
```
6256

6357
All configurable options are right on top of the `Makefile`. Configure as needed.
64-
If you are using SATA as the Bus type for `Hard Disk` make sure to add
58+
**If you are using SATA as the Bus type for `Hard Disk` make sure to add**
6559

6660
```Bash
6761
ABLOCKDEVICE="sda" PARTITIONPREFIX=""
6862
```
6963

7064
to the above command.
7165

72-
10. This will install Archlinux and create provided user with password = `root`.
66+
9. This will install Archlinux and create provided user with password = `root`.
7367
The VM will be restarted and you should be able to login with your user.
7468
The default shell for the user will be set to `zsh`.
7569
I typically take a **VM Snapshot** at this stage.
7670

77-
11. The linux kernel included, as of now, is not built with support for
78-
the vmware graphics driver. Consequently you'll be stuck to a basic resolution
79-
of 1024x768. We'll need to build our own kernel with support for said driver.
71+
10. [ArchLinuxARM packages](https://archlinuxarm.org/packages)
72+
doesn't have open-vm-tools yet so we'll have to build it ourselves.
8073

81-
12. From the newly started VM fetch your current ip `ip addr`
74+
11. From the newly started VM fetch your current ip `ip addr`
8275

83-
13. From the terminal in you **Mac Host** - and inside this repo directory run:
76+
12. From the terminal in you **Mac Host** - and inside this repo directory run:
8477

8578
```Bash
8679
ADDR="<ip address from step 11>" \
8780
ARCHUSER="preferred username (default:daimaou92)" \
88-
make vm/after
81+
make vm/openvmtools
8982
```
83+
This step downloads the latest commit from the default branch of [open-vm-tools](https://github.com/vmware/open-vm-tools),
84+
builds for aarch64 and installs it.
85+
So shared clipboard directories should start working as soon as
86+
you install your DE or setup your WM. Your system will be restarted at the end of this.
9087

91-
This will take quite a bit of time - compiling the linux kernel.
92-
Takes about 20 minutes with 4 cores given to the VM in my M1 Pro 14". It
93-
installs the latest kernel version (5.19.9 at the time of this update) by default.
94-
You could change this and pin it to a fixed kernel inside `after/kernelvmwgfx/build.sh`.
95-
96-
14. This step also downloads the latest commit from open-vm-tools, builds for aarch64
97-
and installs it. So shared clipboard directories should start working as soon as
98-
you install your DE or setup your WM. Your system gets restarted at the end of this.
99-
100-
15. After logging in verify the service status of the following:
88+
13. After logging in verify the service status of the following:
10189

10290
```Bash
10391
sudo systemctl status vmtoolsd.service
@@ -114,7 +102,7 @@ ls /etc/xdg/autostart/vmware-user.desktop
114102

115103
This needs to be autostarted at login and is required for clipboard sharing and shared folder mounting.
116104

117-
16. Change the user password:
105+
14. Change the user password:
118106

119107
```Bash
120108
passwd
@@ -126,7 +114,7 @@ and the root password:
126114
sudo passwd
127115
```
128116

129-
17. If everything has gone as per documentation so far - you can stop reading
117+
15. If everything has gone as per documentation so far - you can stop reading
130118
further and set up your home environment the way you prefer.
131119

132120
### Quick setup with i3, alacritty and xorg (optional):
@@ -171,59 +159,20 @@ arrow keys and hit `Enter`.
171159

172160
Hit `$mod+Enter`. This should open up `alacritty`.
173161

174-
```Bash
175-
xrandr
176-
```
177-
178-
You should see some text like this:
179-
180-
```Bash
181-
1024x768 60.00*+ 60.00
182-
3840x2400 59.97
183-
3840x2160 59.97
184-
2880x1800 59.95
185-
2560x1600 59.99
186-
2560x1440 59.95
187-
1920x1440 60.00
188-
1856x1392 60.00
189-
1792x1344 60.00
190-
1920x1200 59.88
191-
1920x1080 59.96
192-
1600x1200 60.00
193-
1680x1050 59.95
194-
1400x1050 59.98
195-
1280x1024 60.02
196-
1440x900 59.89
197-
1280x960 60.00
198-
1360x768 60.02
199-
1280x800 59.81
200-
1152x864 75.00
201-
1280x768 59.87
202-
1280x720 59.86
203-
800x600 60.32
204-
640x480 59.94
205-
```
206-
207-
Pick a resolution of choice and set it using xrandr.
208-
209-
```Bash
210-
xrandr -s 3840x2400
211-
```
212-
213-
Set this in i3 to have correct resolution post log in:
214-
215-
```Bash
216-
echo "exec --no-startup-id xrandr -s 3840x2400" >> ~/.config/i3/config
217-
```
218-
219-
There's also DPI - specially if you're on a smaller screen. I set mine
162+
Let's set a usable DPI - specially if you're on a smaller screen. I set mine
220163
using `~/.Xresources`
221164

222165
```Bash
223-
echo "Xft.dpi: 170" >> ~/.Xresources
166+
echo "Xft.dpi: 220" >> ~/.Xresources
224167
sed -i \
225168
's@exec i3.*@xrdb -merge ~/.Xresources\
226169
exec i3@' ~/.xinitrc
227170
```
228171

172+
Now exit i3 - `<mod> + Shift + e`
173+
174+
Kill the shell - `Ctrl + d`
175+
176+
And relogin
177+
229178
## Done. Enjoy

0 commit comments

Comments
 (0)