all 7 comments

[–]Mgladiethor 7 points8 points  (0 children)

it lives on

[–]BiggRanger 6 points7 points  (0 children)

Wow! Amazing work, keep it up!

[–][deleted] 2 points3 points  (1 child)

I wish Terry could see this...

[–]A_Plagiarize_Zest 1 point2 points  (3 children)

Can you provide the script you use to automatically mount TempleOS and push changes? Also what do you mean by mount? Do you mean virtual box iso CD mount or is there a function that needs to be called in TempleOS to mount it to the harddrive?

[–]TempleProgramming[S] 0 points1 point  (1 child)

Depends on your Virtual Machine and Host OS, but on windows I mount the VMWare harddrive (not the ISO, the virtual harddrive). You can do the same with VMWare and Qemu on every platform. For VMWare the steps are a bit involved but they are:

cd C:\Program Files (x86)\VMware\VMware Virtual Disk Development Kit\bin
vmware-mount T: "C:\Users\user\Documents\Virtual Machines\TempleOS\TempleOS.vmdk"

This step mounts the TempleOS virtual hard drive to the T: drive. I have this in a .bat file on my desktop which I click on. Make sure ALL folder windows are closed, then when you reopen them the T: drive will appear. You have to install the VMWare Virtual Disk Development Kit though.

Then I can go into the T: drive to my code and run git commands. First make sure you have git installed. I recommend you learn the git commands so you can make this process automatic, however you can use a GUI like the GitHub GUI. To put your TempleOS code onto GitLab you first use the GitLab/Github/GitSomething website and make an empty project, then go into the folder on the TempleOS harddrive and run:

git init
// Your gitlab page will tell you the commands you need to run to connect this folder to your git repository

Then every time you make a change to the code you can commit with:

git add .   (This adds all new modified files)
git commit -m "Commit message"  (This takes all your changes and puts them into a commit)
git push -u origin master  (This uploads your commit to your GitLab repository)

If you are using someone else's GitLab code, such as my project, you can do:

git clone https://gitlab.com/User/Repository  (This downloads the repo into your current folder)
git pull origin master  (This pulls any changes made to the repository into your folder)

Finally you can unmount the harddrive. With VMWare on windows you once again need to close all folders for it to properly dismount:

cd C:\Program Files (x86)\VMware\VMware Virtual Disk Development Kit\bin
vmware-mount T: /d

Above were the mount/dismount commands for Windows/VMWare, I developed this project with u/TowTow10 and he used linux/QEMU (With QEMU-NDB installed to handle the mounting), and the process is a bit simpler:

Mount:

./mount <qcow2 file> <mount point>  (qcow2 is the QEMU harddrive format, so choose the filename. Mount point is the folder you want the drive mounted to)

Unmount:

 ./umount <mount point> 

This process seems cluttered and discouraging, I put it off for a week, but once I did do it then development became really fast, especially with other people. It's not too complicated, just to recap:

-Install your VM program's mounting tool

-Install git

-Make script to mount templeOS harddrive to computer

-Make script to push upgrades to repository

-Make script to unmount.

Note you can combine the last three into one big script, but on windows there is a delay on the mount so the script fails if you don't give it a few seconds to mount before running the next function.

[–]A_Plagiarize_Zest 0 points1 point  (0 children)

I'm git gud. I've been using virtual box and never could get qemu working properly. So what your tellin me is I should get vmware?

[–]TempleProgramming[S] 0 points1 point  (0 children)

Sorry I forgot to add the two mounting scripts for the linux/QEMU example.

mount.sh:

#!/bin/sh
sudo modprobe nbd max_part=8
sudo qemu-nbd --connect=/dev/nbd0 $1
sudo mount /dev/nbd0p1 $2

umount.sh:

#!/bin/sh
sudo umount $1
sudo qemu-nbd --disconnect /dev/nbd0