Skip to content
This repository has been archived by the owner on May 6, 2023. It is now read-only.

FreeDOS #366

Open
7 of 60 tasks
mcandre opened this issue Aug 10, 2019 · 1 comment
Open
7 of 60 tasks

FreeDOS #366

mcandre opened this issue Aug 10, 2019 · 1 comment

Comments

@mcandre
Copy link
Owner

mcandre commented Aug 10, 2019

TODO

https://www.laurentiupancescu.com/blog/5913767b/

https://techtooltip.wordpress.com/2008/09/12/using-host-serial-port-from-guest-in-virtual-box/

https://gist.github.com/garyachy/c1ee689c73bde019a44078edc5b8ed02

https://gist.github.com/brandonsoto/48d582b90b1293025ab1fcd69f730cfa

Optional

  • Write a crude rsync-like daemon and client useable from an rmenu context, using only libc and CLI tools common to both FreeDOS and macOS.
  • Write a crude command executor y file transfer daemon and client, using POST calls to differentiate between requests to run commands vs. transfer files, using only libc and CLI tools common to both FreeDOS and macOS.
  • Lookup how to configure new port-forwarding configurations for a fresh Vagrant instance.
  • Lookup how to configure new port-forwarding configurations for a running Vagrant instance.
  • Provide a Vagrant implementation for on-demand rsync host daemon file transfer.
  • Provide a Vagrant implementation for on-demand FTP host server file transfer.
  • Provide a Vagrant implementation for on-demand netcat host server file transfer.
  • Provide a Packer implementation for on-demand rsync host daemon file transfer.
  • Provide a Packer implementation for on-demand FTP host server file transfer.
  • Provide a Packer implementation for on-demand netcat host server file transfer.
@mcandre
Copy link
Owner Author

mcandre commented Aug 11, 2019

https://www.freedos.org/

Package manager: fdimples

Work in progress feature branch:

https://github.com/mcandre/packer-templates/tree/issue-366

Tasks:

  • Fix networking (Use fdimples to install fdnet and mTCP, then reboot. Do NOT manually configure MTCPCFG, nor set any tcp.cfg contents, nor override the VirtualBox NIC hardware.)
  • Install /dev/random shim:
C:\MTCP\htget -o noise063a2.zip http://www.rahul.net/dkaufman/noise063a2.zip
unzip noise063a2.zip
echo device=c:\noise\noise386.sys >>c:\FDCONFIG.SYS
reboot
  • Examine fdimples' unzip for any flags for forcing extraction to occur in a specific subdirectory (-d <dir>)
  • Research environment variables for forcing move to skip confirmation, similar to copy environment variables.

Nope, move is stupid. An explicit /y flag is not required when executed from a BAT script, where damage is far more likely to occur, yet /y is required when executing interactively in a plain COMSPEC shell.

Unlike copy, move does not have an environment variable for skipping confirmation prompts.

https://www.computerhope.com/movehlp.htm

  • Spin up test FTP server on host https://gist.github.com/mcandre/30720862d2c62e2d648162a394ee0d7f
  • Evaluate strategies for multiline DOS echo commands. (Big nope, gotta use one echo per line.) https://stackoverflow.com/a/7992971/350106
  • Figure out how to automate the TWO stupid FTPSrv diskette swap prompts and launch errors (Configure ftpsrv_exclude_drives AB in the MTCP.CFG file, and do so carefully, with no trailing whitespace!)
  • Fix PATH erasure (Perform all PATH modifications after post-install reboot for FDNet, mTCP).
  • Obtain external media (htget -o <local-path> <HTTP URL>)
  • Evaluate FTP client as HTTP media downloader (Not capable of managing HTTP requests, unlike ftp applications from other operating systems).

Major strategies:

  • Port sshd, and prefably rsync daemon as well, to MS-DOS (good luck!)
  • Try Windows-style syntax for launching concurrent applications from BAT files (no start entry for executables; call is synchronous; start behavior for BAT files is to edit them; unable to pipe FTPSrv to rmenu, nor vice-versa).
  • Try launching FTPSrv from RMENU session (FTP connection never succeeds).
  • Launch FTP server from host, use telnet to execute commands on guest, use guest FTP client to sync data back and forth.
  • Launch CMS HTTP server from host, use telnet to execute commands on guest, use guest HTTP client to sync data back and forth.
  • Configure Packer to port-forward 23 (telnet) to the host, similar to ssh_host_port_min with 22 (ssh).
  • Provide an ssh server shim, so that vagrant ssh [-e <command>] and config.vm.provision "shell"... are able to work.
  • Evaluate SMB support in FreeDOS (no net command).
  • Provide an rsync server shim, so that vagrant rsync and vagrant rsync-back are able to work.
  • Provide an scp shim, so that config.vm.provision "file"... is able to work.
    Evaluate file mirroring strategies using a client on the guest and a server on the host.
  • Port lftp to DOS (good luck!)
  • scp / sftp client running on guest https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.2/repos/pkg-html/sshdos.html , sshd running on host
  • rsync client running on guest https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.2/repos/pkg-html/rsync.html with rsync server daemon running on host on a well-known port such as 873
  • FTP client from mTCP
  • Evaluate Apple built-in FTP server (no longer built-in)
  • Evaluate tnftpd (not integrated with brew services, no tnftpd binary, no man page)
  • Evaluate vsftpd (missing secure_chroot_dir)
  • Evaluate proftpd (never binds to 21)
  • Evaluate pure-ftpd (missing ftp system account)
  • Evaluate https://gitea.com/goftp/ftpd (uncloneable git repo)
  • Evaluate https://github.com/andrewarrow/paradise_ftp (deposits configuration file onto local file system)
  • Evaluate https://github.com/fclairamb/ftpserver (deposits configuration file onto local file system)
  • Evaluate https://github.com/wconrad/ftpd
  • Evaluate other macOS-compatible FTP servers
  • TGZ host directory, transfer via FTP, then extract in guest tree.
  • ZIP host directory, transfer via FTP, then extract in guest tree.
  • Do the worm ~~~

https://blog.bravi.org/?p=732

curlftpfs with rsync local:

FTP mirroring:

VMSMount:

rmenu:

https://superuser.com/questions/1472469/how-to-run-multiple-networked-applications-concurrently-on-dos

https://www.reddit.com/r/bbs/comments/cs4bht/help_installing_iniquitty_on_freedos/

https://www.reddit.com/r/DOS/comments/crw7lr/how_to_run_wget_inside_rmenu_commandcom_telnet/

https://www.reddit.com/r/vintagecomputing/comments/cs57dd/how_to_setup_a_freedos_bbs_in_virtualbox_for/

https://groups.google.com/forum/#!topic/vagrant-up/NixRa2nTKLE

http://www.retroarchive.org/cdrom/index.html

https://en.wikipedia.org/wiki/List_of_BBS_software#MS-DOS_and_compatible

http://www.bbsdocumentary.com/software/

http://www.pcmicro.com/bnu/

http://www.bbsing.com/bbsfossil/bbsfossil.html

https://virtuallyfun.com/wordpress/2011/07/01/bbsing-with-windows386-windows-3-0-under-qemu-or-how-i-learned-to-love-rlfossil/

@mcandre mcandre mentioned this issue Aug 11, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant