1
0
mirror of https://github.com/wfjm/w11.git synced 2026-03-26 18:33:31 +00:00

automation of oskit download [skip ci]

- bin/oskit_setup: generic helper
- oskit/*/*_setup: scripts for oskit
This commit is contained in:
wfjm
2019-07-28 08:43:08 +02:00
parent 1742dfab4c
commit 4f447bc05a
29 changed files with 243 additions and 26 deletions

View File

@@ -24,6 +24,14 @@ The HEAD version shows the current development. No guarantees that
software or firmware builds or that the documentation is consistent.
The full set of tests is only run for tagged releases.
### Summary
- automate oskit download and container file setup
### New features
- new tools
- bin/oskit_setup: helper for oskit download and container file setup
- oskit/*/*_setup: scripts for oskit download and container file setup
<!-- --------------------------------------------------------------------- -->
---
## <a id="w11a_V0.79">2019-07-27: [w11a_V0.79](https://github.com/wfjm/w11/releases/tag/w11a_V0.79) - rev 1197(wfjm)</a>

67
tools/bin/oskit_setup Executable file
View File

@@ -0,0 +1,67 @@
#!/usr/bin/perl -w
# $Id: oskit_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
# Revision History:
# Date Rev Version Comment
# 2019-07-13 1187 1.0 Initial version
#
use 5.14.0; # require Perl 5.14 or higher
use strict; # require strict checking
use Getopt::Long;
my %opts = ();
GetOptions(\%opts, "fkit", "fdsk", "help")
or bailout("bad command options");
my $kit_path = "https://www.retro11.de/data/oc_w11/oskits";
if (scalar(@ARGV) == 0 || $opts{help}) {
print_usage();
exit 0;
}
my $kball = shift @ARGV;
if ($opts{fkit} || not -r $kball) {
system("wget $kit_path/$kball -nv -O $kball 2>&1") == 0 or
bailout("wget of '$kball' failed");
system("tar", "-xvzf", "$kball") == 0 or
bailout("tar failed");
exit 0;
}
my @fmis;
if (scalar @ARGV) {
foreach my $fnam (@ARGV) {
push @fmis,$fnam unless -r $fnam; }
}
@fmis = @ARGV if $opts{fdsk};
exit 0 unless scalar @fmis;
system("tar", "-xvzf", "$kball", @fmis) == 0 or
bailout("tar failed");
exit 0;
#-------------------------------------------------------------------------------
sub bailout {
my ($msg) = @_;
print STDERR "oskit_setup-F: $msg\n";
exit 1;
}
# ----------------------------------------------------------------------------
sub print_usage {
print "usage: oskit_setup [options] kitball files...\n";
print " kitball name of tarball\n";
print " files list of container files\n";
print " Options\n";
print " --fkit force tarball download\n";
print " --fdsk force container restore\n";
print " --help this message\n";
}

View File

@@ -0,0 +1,55 @@
.\" -*- nroff -*-
.\" $Id: oskit_setup.1 1188 2019-07-13 14:31:51Z mueller $
.\" SPDX-License-Identifier: GPL-3.0-or-later
.\" Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
.\"
.\" ------------------------------------------------------------------
.
.TH OSKIT_SETUP 1 2019-07-13 "Retro Project" "Retro Project Manual"
.\" ------------------------------------------------------------------
.SH NAME
oskit_setup \- download oskit and setup container files
.\" ------------------------------------------------------------------
.SH SYNOPSIS
.
.SY oskit_setup
.RI [ OPTION ]...
.I KITBALL
.IR FILE ...
.
.SY oskit_setup
.B \-\-help
.YS
.
.\" ------------------------------------------------------------------
.SH DESCRIPTION
If the tar archive \fIKITBALL\fR is not present in the current working
directory it is downloaded and unpacked in full. If \fIKITBALL\fR is
present, the existence of the specified container files \fIFILE\fR is
tested, and if one is missing, the file is restored from \fIKITBALL\fR.
.
.\" ------------------------------------------------------------------
.SH OPTIONS
.
.\" ----------------------------------------------
.IP "\fB\-\-fkit\fR"
\fIKITBALL\fR will be downloaded and unpacked unconditionally.
All containers will be overwritten.
.
.\" ----------------------------------------------
.IP "\fB\-\-fdsk\fR"
The specified container files \fIFILE\fR will be restored unconditionally
from \fIKITBALL\fR, which will be downloaded if missing.
.
.\" ----------------------------------------------
.IP "\fB\-\-help\fR"
print full help text and exit.
.\" ------------------------------------------------------------------
.SH EXAMPLES
.IP "\fBoskit_setup 211bsd_rpset.tgz ./211bsd_rp.dsk\fR" 4
download the tar archive \fI211bsd_rpset.tgz\fR is missing and restores
\fI./211bsd_rp.dsk\fR if missing.
.\" ------------------------------------------------------------------
.SH AUTHOR
Walter F.J. Mueller <W.F.J.Mueller@gsi.de>

View File

@@ -0,0 +1,11 @@
#!/bin/bash
# $Id: 211bsd_rk_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" 211bsd_rkset.tgz \
./211bsd_rk_bin.dsk \
./211bsd_rk_root.dsk \
./211bsd_rk_swap.dsk \
./211bsd_rk_tmp.dsk \
./211bsd_rk_usr.dsk

View File

@@ -16,8 +16,7 @@ http://www.retro11.de/data/oc_w11/oskits/211bsd_rkset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/211bsd_rk/
wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rkset.tgz
tar -xzf 211bsd_rkset.tgz
211bsd_rk_setup
```
### System properties and intended usage

View File

@@ -0,0 +1,8 @@
#!/bin/bash
# $Id: 211bsd_rl_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" 211bsd_rlset.tgz \
./211bsd_rl_root.dsk \
./211bsd_rl_usr.dsk

View File

@@ -16,8 +16,7 @@ http://www.retro11.de/data/oc_w11/oskits/211bsd_rlset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/211bsd_rl/
wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rlset.tgz
tar -xzf 211bsd_rlset.tgz
211bsd_rl_setup
```
### System properties and intended usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: 211bsd_rp_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" 211bsd_rpset.tgz \
./211bsd_rp.dsk

View File

@@ -16,8 +16,7 @@ http://www.retro11.de/data/oc_w11/oskits/211bsd_rpset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/211bsd_rp/
wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rpset.tgz
tar -xzf 211bsd_rpset.tgz
211bsd_rp_setup
```
### System properties and intended usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: 211bsd_rpeth_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" 211bsd_rpethset.tgz \
./211bsd_rpeth.dsk

View File

@@ -26,8 +26,7 @@ http://www.retro11.de/data/oc_w11/oskits/211bsd_rpethset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/211bsd_rpeth/
wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rpethset.tgz
tar -xzf 211bsd_rpethset.tgz
211bsd_rpeth_setup
```
### Usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: 211bsd_rpmin_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" 211bsd_rpminset.tgz \
./211bsd_rpmin.dsk

View File

@@ -30,8 +30,7 @@ http://www.retro11.de/data/oc_w11/oskits/211bsd_rpminset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/211bsd_rpmin/
wget http://www.retro11.de/data/oc_w11/oskits/211bsd_rpminset.tgz
tar -xzf 211bsd_rpminset.tgz
211bsd_rpmin_setup
```
### Usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: 211bsd_tm_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" 211bsd_tmset.tgz \
./211bsd_tm.tap

View File

@@ -15,8 +15,7 @@ http://www.retro11.de/data/oc_w11/oskits/211bsd_tmset.tgz
Download, unpack and copy the tape images (*.tap), e.g.
```bash
cd $RETROBASE/tools/oskit/211bsd_tm/
wget http://www.retro11.de/data/oc_w11/oskits/211bsd_tmset.tgz
tar -xzf 211bsd_tmset.tgz
211bsd_tm_setup
```
### Usage

View File

@@ -17,8 +17,7 @@ http://www.retro11.de/data/oc_w11/oskits/rsx11m-31_rkset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/rsx11m-31_rk
wget http://www.retro11.de/data/oc_w11/oskits/rsx11m-31_rkset.tgz
tar -xzf rsx11m-31_rkset.tgz
rsx11m-31_rk_setup
```
### Usage

View File

@@ -0,0 +1,9 @@
#!/bin/bash
# $Id: rsx11m-31_rk_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" rsx11m-31_rkset.tgz \
./RSX11M_USER.dsk \
./RSX11M_V3.1_SYSTEM0.dsk \
./RSX11M_V3.1_SYSTEM1.dsk

View File

@@ -15,8 +15,7 @@ http://www.retro11.de/data/oc_w11/oskits/rsx11m-40_rkset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```
cd $RETROBASE/tools/oskit/rsx11m-40_rk
wget http://www.retro11.de/data/oc_w11/oskits/rsx11m-40_rkset.tgz
tar -xzf rsx11m-40_rkset.tgz
rsx11m-40_rk_setup
```
### Usage

View File

@@ -0,0 +1,9 @@
#!/bin/bash
# $Id: rsx11m-40_rk_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" rsx11m-40_rkset.tgz \
./RSX11M_USER.dsk \
./RSX11M_V4.0_SYSTEM0.dsk \
./RSX11M_V4.0_SYSTEM1.dsk

View File

@@ -17,8 +17,7 @@ http://www.retro11.de/data/oc_w11/oskits/rsx11mp-30_rpset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/rsx11mp-30_rp
wget http://www.retro11.de/data/oc_w11/oskits/rsx11mp-30_rpset.tgz
tar -xzf rsx11mp-30_rpset.tgz
rsx11mp-30_rp_setup
```
### Usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: rsx11mp-30_rp_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" rsx11mp-30_rpset.tgz \
./rsx11mp-30.dsk

View File

@@ -17,8 +17,7 @@ http://www.retro11.de/data/oc_w11/oskits/rt11-40_rkset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/rt11-40_rk
wget http://www.retro11.de/data/oc_w11/oskits/rt11-40_rkset.tgz
tar -xzf rt11-40_rkset.tgz
rt11-40_rk_setup
```
### Usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: rt11-40_rk_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" rt11-40_rkset.tgz \
./rtv4_rk.dsk

View File

@@ -17,8 +17,7 @@ http://www.retro11.de/data/oc_w11/oskits/rt11-53_rlset.tgz
Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/rt11-53_rl
wget http://www.retro11.de/data/oc_w11/oskits/rt11-53_rlset.tgz
tar -xzf rt11-53_rlset.tgz
rt11-53_rl_setup
```
### Usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: rt11-53_rl_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" rt11-53_rlset.tgz \
./RT11_V5.3_SYSTEM.dsk

View File

@@ -15,8 +15,7 @@ Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/u5ed_rk
wget http://www.retro11.de/data/oc_w11/oskits/u5ed_rkset.tgz
tar -xzf u5ed_rkset.tgz
u5ed_rk_setup
```
### Usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: u5ed_rk_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" u5ed_rkset.tgz \
./u5ed_rk.dsk

View File

@@ -33,8 +33,7 @@ Download, unpack and copy the disk images (*.dsk), e.g.
```bash
cd $RETROBASE/tools/oskit/u7ed_rp
wget http://www.retro11.de/data/oc_w11/oskits/u7ed_rpset.tgz
tar -xzf u7ed_rpset.tgz
u7ed_rp_setup
```
### Usage

View File

@@ -0,0 +1,7 @@
#!/bin/bash
# $Id: u7ed_rp_setup 1187 2019-07-13 14:21:29Z mueller $
# SPDX-License-Identifier: GPL-3.0-or-later
# Copyright 2019- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
#
oskit_setup "$@" u7ed_rpset.tgz \
./u7ed_rp.dsk