Subversion Repositories SvarDOS

Rev

Rev 583 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 583 Rev 584
1
AMB1
index.ama
1
AMB1
index.ama
2
k‡pkg.amaD0.network.amacàn
contact.amaC±°pkgfmt.amaFiIUpkgrules.ama¯ÊXlicense.amaÉ#Gmeaning.ama'‡mUfreedos.ama—*M
2
k‡pkg.amaD0.network.amacàn
contact.amaC±°pkgfmt.amaF™¯pkgrules.ama`!ÊXlicense.amaz)Gmeaning.amaÁ,‡mUfreedos.amaH0M
3
[Âhistory.amaä4Þ¥Rtodo.amaÂ;X	]ü8086.amaE÷
ÝtitleS!Ç
3
[Âhistory.ama•:Þ¥Rtodo.amasA2'Ù8086.ama¥I÷
ÝtitleœW!‘G
4
                            %h*** SVARDOS HELP ***
4
                            %h*** SVARDOS HELP ***
5
 
5
 
6
This help documentation is a work-in-progress thing. For the time being it
6
This help documentation is a work-in-progress thing. For the time being it
7
provides only very limited content. (wanna help building it? get in touch with
7
provides only very limited content. (wanna help building it? get in touch with
8
us on the SvarDOS %lcontact.ama:mailing list%t!)
8
us on the SvarDOS %lcontact.ama:mailing list%t!)
9
 
9
 
10
=== Chapters =================================================================
10
=== Chapters =================================================================
11
 
11
 
12
 * %lpkg.ama:Packages management (install/remove/update software)
12
 * %lpkg.ama:Packages management (install/remove/update software)
13
 * %lnetwork.ama:Networking
13
 * %lnetwork.ama:Networking
14
 
14
 
15
 * %lfreedos.ama:SvarDOS vs FreeDOS: what is the story?
15
 * %lfreedos.ama:SvarDOS vs FreeDOS: what is the story?
16
 * %ltodo.ama:The project's "TODO" list
16
 * %ltodo.ama:The project's "TODO" list
17
 * %lcontact.ama:How do I get in touch with the SvarDOS community?
17
 * %lcontact.ama:How do I get in touch with the SvarDOS community?
18
 
18
 
19
 * %lhistory.ama:SvarDOS origins
19
 * %lhistory.ama:SvarDOS origins
20
 * %lmeaning.ama:What does "Svarog" mean?
20
 * %lmeaning.ama:What does "Svarog" mean?
21
 * %l8086.ama:8086 compatibility list
21
 * %l8086.ama:8086 compatibility list
22
 
22
 
23
==============================================================================
23
==============================================================================
24
 
24
 
25
%hSvarDOS packages management
25
%hSvarDOS packages management
26
 
26
 
27
To install or remove software on your SvarDOS system, use the "pkg" command.
27
To install or remove software on your SvarDOS system, use the "pkg" command.
28
pkg is a package manager to allow installing new software from SvarDOS
28
pkg is a package manager to allow installing new software from SvarDOS
29
packages and removing exising software from the system. To learn about exact
29
packages and removing exising software from the system. To learn about exact
30
pkg usage, type pkg /? in the SvarDOS command line shell.
30
pkg usage, type pkg /? in the SvarDOS command line shell.
31
 
31
 
32
You may obtain many SvarDOS packages from the SvarDOS web homepage at
32
You may obtain many SvarDOS packages from the SvarDOS web homepage at
33
<http://svardos.osdn.io>. If your system is connected to the internet, then
33
<http://svardos.osdn.io>. If your system is connected to the internet, then
34
you may also use the SvarDOS "pkgnet" command. pkgnet is a network tool that
34
you may also use the SvarDOS "pkgnet" command. pkgnet is a network tool that
35
makes it easy to search for SvarDOS packages in the SvarDOS repository and
35
makes it easy to search for SvarDOS packages in the SvarDOS repository and
36
download them right away. Type pkgnet /? in the SvarDOS command line shell to
36
download them right away. Type pkgnet /? in the SvarDOS command line shell to
37
learn about exact pkgnet usage.
37
learn about exact pkgnet usage.
38
 
38
 
39
See also:
39
See also:
40
 * %lpkgfmt.ama:The technical format of a SvarDOS package
40
 * %lpkgfmt.ama:The technical format of a SvarDOS package
41
 * %lpkgrules.ama:Packages inclusion rules
41
 * %lpkgrules.ama:Packages inclusion rules
42
 
42
 
43
%hNetworking
43
%hNetworking
44
 
44
 
45
For enabling network connectivity you first need to know what kind of network
45
For enabling network connectivity you first need to know what kind of network
46
adapter you have, and obtain a suitable packet driver for it. The "crynwr"
46
adapter you have, and obtain a suitable packet driver for it. The "crynwr"
47
package contains lots of packet drivers for a variety of network adapters.
47
package contains lots of packet drivers for a variety of network adapters.
48
There is also a packet driver for Intel Pro cards in the e1000pkt package, and
48
There is also a packet driver for Intel Pro cards in the e1000pkt package, and
49
a driver for AMD PC-NET cards in the pcntpk package.
49
a driver for AMD PC-NET cards in the pcntpk package.
50
 
50
 
51
You need to get the packet driver for your card onto the machine, and load it.
51
You need to get the packet driver for your card onto the machine, and load it.
52
Then, you should be able to access the internet and get anything else you need
52
Then, you should be able to access the internet and get anything else you need
53
using wget, htget, gopherus and other network-enabled applications.
53
using wget, htget, gopherus and other network-enabled applications.
54
 
54
 
55
Note that packet drivers are mostly available for old-ish interfaces. If you
55
Note that packet drivers are mostly available for old-ish interfaces. If you
56
have some modern ethernet card, then there might not be a packet driver
56
have some modern ethernet card, then there might not be a packet driver
57
available for it.
57
available for it.
58
 
58
 
59
%hFILE SHARING
59
%hFILE SHARING
60
 
60
 
61
Perhaps these links could provide some pointers:
61
Perhaps these links could provide some pointers:
62
<http://wiki.freedos.org/wiki/index.php/Networking_FreeDOS_-_MS_Client>
62
<http://wiki.freedos.org/wiki/index.php/Networking_FreeDOS_-_MS_Client>
63
<https://www.lazybrowndog.net/freedos/virtualbox/?page_id=374>
63
<https://www.lazybrowndog.net/freedos/virtualbox/?page_id=374>
64
 
64
 
65
There is also EtherDFS, which is a very lightweight and easy solution for
65
There is also EtherDFS, which is a very lightweight and easy solution for
66
file-sharing between DOS and Linux (but it does require a Linux PC and some
66
file-sharing between DOS and Linux (but it does require a Linux PC and some
67
basic understanding of how Linux works):
67
basic understanding of how Linux works):
68
<http://etherdfs.sourceforge.net/>
68
<http://etherdfs.sourceforge.net/>
69
 
69
 
70
%hVIRTUALBOX - PACKET DRIVER
70
%hVIRTUALBOX - PACKET DRIVER
71
 
71
 
72
VirtualBox is able to emulate an AMD PC-NET NIC (you need to make sure of that
72
VirtualBox is able to emulate an AMD PC-NET NIC (you need to make sure of that
73
in the configuration of your VM, VirtualBox calls it "PCnet-FAST III" and it
73
in the configuration of your VM, VirtualBox calls it "PCnet-FAST III" and it
74
should be set to "NAT"). Then, in SvarDOS you have to install the pcntpk.zip
74
should be set to "NAT"). Then, in SvarDOS you have to install the pcntpk.zip
75
package - you don't even need to download it, it's already present on the
75
package - you don't even need to download it, it's already present on the
76
installation image so it should be as simple as that:
76
installation image so it should be as simple as that:
77
 
77
 
78
pkg install a:\pcntpk.zip
78
pkg install a:\pcntpk.zip
79
 
79
 
80
Finally, load it as such:
80
Finally, load it as such:
81
 
81
 
82
C:\DRIVERS\PCNTPK\PCNTPK INT=0x60
82
C:\DRIVERS\PCNTPK\PCNTPK INT=0x60
83
 
83
 
84
...and that's it. From now on, you should be able to search through the
84
...and that's it. From now on, you should be able to search through the
85
available online packages and install extra software, for example:
85
available online packages and install extra software, for example:
86
 
86
 
87
pkgnet pull gopherus
87
pkgnet pull gopherus
88
pkg install gopherus.zip
88
pkg install gopherus.zip
89
 
89
 
90
(gopherus is a gopher browser)
90
(gopherus is a gopher browser)
91
 
91
 
92
To search through the list of available packages in the online repository, use
92
To search through the list of available packages in the online repository, use
93
that:
93
that:
94
 
94
 
95
pkgnet search your_search_term
95
pkgnet search your_search_term
96
 
96
 
97
%hHow do I get in touch with the project's community?
97
%hHow do I get in touch with the project's community?
98
 
98
 
99
The recommended way to contact the SvarDOS community is through the project's
99
The recommended way to contact the SvarDOS community is through the project's
100
mailing list: <https://lists.osdn.me/mailman/listinfo/svardos-users>
100
mailing list: <https://lists.osdn.me/mailman/listinfo/svardos-users>
101
 
101
 
102
The project's web homepage is <http://svardos.osdn.io>
102
The project's web homepage is <http://svardos.osdn.io>
103
 
103
 
104
Package files provide an easy way to manage software on SvarDOS. These
104
Package files provide an easy way to manage software on SvarDOS. These
105
packages must adhere to a strict convention so they can be handled properly
105
packages must adhere to a strict convention so they can be handled properly
106
by the SvarDOS package manager.
106
by the SvarDOS package manager.
107
 
107
 
108
 
108
 
109
%hPackage filenames
109
%hPackage filenames
110
 
110
 
111
Packages names must follow some basic rules. They shall be max. 8 letters long
111
Packages names must follow some basic rules. They shall be max. 8 letters long
112
(but should not be too short either, since a 1 or 2-letters package name might
112
(but should not be too short either, since a 1 or 2-letters package name might
113
be confusing), and must not be composed of characters other than a-b, 0-9 and
113
be confusing), and must not be composed of characters other than a-b, 0-9 and
114
'_'. This for backward compatibility with short file names (8+3) and ISO 9660
114
'_'. This for backward compatibility with short file names (8+3) and ISO 9660
115
file systems (used on CDROMs). The package filename is always followed by the
115
file systems (used on CDROMs). The package filename is always followed by the
116
.ZIP extension.
116
.ZIP extension.
117
 
117
 
118
 
118
 
119
%hPackage files
119
%hPackage files
120
 
120
 
121
SvarDOS uses ZIP files as its package file format. This format has been chosen
121
SvarDOS uses ZIP files as its package file format. This format has been chosen
122
because ZIP files under DOS have become the de facto way to distribute
122
because ZIP files under DOS have become the de facto way to distribute
123
collections of files. Also, the ZIP file format is well documented, well
123
collections of files. Also, the ZIP file format is well documented, well
124
supported, and in the public domain.
124
supported, and in the public domain.
125
 
125
 
126
Here below is the recommended command line that can be used to create a
126
Here below is the recommended command line that can be used to create a
127
package for a program named EXAMPLE using info-zip:
127
package for a program named EXAMPLE using info-zip:
128
 
128
 
129
  zip -9rkDX EXAMPLE.ZIP subdir1 subdir2 ... subdirN
129
  zip -9rkDX EXAMPLE.ZIP subdir1 subdir2 ... subdirN
130
 
130
 
131
If you are using 7za to create your packages, then use this:
131
If you are using 7za to create your packages, then use this:
132
 
132
 
133
  7za a -mm=deflate -mx=9 -tzip EXAMPLE.ZIP subdir1 subdir2 ... subdirN
133
  7za a -mm=deflate -mx=9 -tzip EXAMPLE.ZIP subdir1 subdir2 ... subdirN
134
 
134
 
135
 
135
 
136
%hPackage directory structure
136
%hPackage directory structure
137
 
137
 
138
The directory structure of a package depends on the type of packages.
138
The directory structure of a package depends on the type of packages.
139
For "core" packages, we have this:
139
For "core" packages, we have this:
140
 
140
 
141
  APPINFO            Put the program's LSM file here
141
  APPINFO            Put the program's LSM file here
142
  BIN                Binaries, such as exe and com files
142
  BIN                Binaries, such as exe and com files
143
  DOC\PKGNAME        Package documentation
143
  DOC\PKGNAME        Package documentation
144
  HELP               Used ONLY by the "help" package
144
  HELP               Used ONLY by the "help" package
145
  NLS\PKGNAME        Localizations (NLS language files) of the package
145
  NLS\PKGNAME        Localizations (NLS language files) of the package
146
  SOURCE\PKGNAME     The source code (optional)
146
  SOURCE\PKGNAME     The source code (optional)
147
 
147
 
148
Non-core packages use a slightly different directory organization. For
148
Non-core packages use a slightly different directory organization. For
149
example, if we were to consider a package FOO, we might end up with the
149
example, if we were to consider a package FOO, we might end up with the
150
following structure:
150
following structure:
151
 
151
 
152
  APPINFO\FOO.LSM    Package meta file for the FOO program
152
  APPINFO\FOO.LSM    Package meta file for the FOO program
153
  PROGS\FOO\FOO.EXE  The program's executable
153
  PROGS\FOO\FOO.EXE  The program's executable
154
  PROGS\FOO\FOO.TXT  Some documentation
154
  PROGS\FOO\FOO.TXT  Some documentation
155
  PROGS\FOO\FILE.DAT Data file used by the FOO program
155
  PROGS\FOO\FILE.DAT Data file used by the FOO program
156
  SOURCE\FOO\*       here would be stored the foo's source code (optional)
156
  SOURCE\FOO\*       here would be stored the foo's source code (optional)
157
 
157
 
158
Note the 'PROGS' directory above. This is a category to which the package
158
Note the 'PROGS' directory above. This is a category to which the package
159
belong. The package installer might change this directory at install time,
159
belong. The package installer might change this directory at install time,
160
depending on the user's preferences. Possible categories are listed below:
160
depending on the user's preferences. Possible categories are listed below:
161
 
161
 
162
Category | Description
162
Category | Description
163
DEVEL    | Development tools (mostly compilers)
163
DEVEL    | Development tools (mostly compilers)
164
DRIVERS  | Drivers
164
DRIVERS  | Drivers
165
GAMES    | Games
165
GAMES    | Games
166
PROGS    | User programs, tools...
166
PROGS    | User programs, tools...
167
 
167
 
168
Note: "DOC", "NLS", "BIN" and "HELP" directories are strictly reserved to
168
Note: "DOC", "NLS", "BIN" and "HELP" directories are strictly reserved to
169
      CORE packages.
169
      CORE packages.
170
 
170
 
171
%hLSM meta-data files
171
 
172
 
172
%hLSM meta-data files
173
Every package MUST contain an LSM file in its "APPINFO" directory. This LSM
173
 
174
file is a text file that contains basic information about the package. Its
174
Every package MUST contain an LSM file in its "APPINFO" directory. This LSM
175
format is very simple, it must contain at least two lines:
175
file is a text file that contains basic information about the package. Its
176
 
176
format is very simple, it must contain at least two lines:
177
  version: x.y.z
177
 
178
  description: package description
178
  version: x.y.z
179
 
179
  description: package description
180
Any other lines are ignored by the SvarDOS package manager.
180
 
181
 
181
Any other lines are ignored by the SvarDOS package manager.
182
                     %h*** Packages inclusion rules ***
182
 
183
 
183
 
184
SvarDOS is a DOS distribution that comes with plenty of third-party packages.
184
%hPackage versions
185
With time, packages get updated and new packages are being added. However,
185
 
186
SvarDOS is not a shareware distribution CD, nor it is a "warez" production of
186
The version present in the LSM file is meant to reflect the version of the
187
any kind. Every software that is distributed within SvarDOS must comply to a
187
packaged software, but it may happen that a package needs to be changed to
188
few common sense rules, as listed below.
188
fix a strictly packaging-related issue (for example a forgotten documentation
189
 
189
file or a recompilation of the binary using a better set of flags...). In such
190
%hObjective usefulness
190
case, the version of the software does not change, but the version of the
191
 
191
package itself needs to change so users know something changed. That's what
192
The distributed software must be useful. There is no point in distributing
192
"SvarDOS revisions" come in. A version string is basically following such
193
hundreds of "Hello World" programs for example. The software must be useable
193
format:
194
as a finished product and provide some features that are proven to be seeked
194
 
195
by at least a subset of the user base. Games are considered useful, as long as
195
  UPSTREAM_VER[+SVARREV]
196
they fulfill their goal of providing actual distraction.
196
 
197
 
197
UPSTREAM_VER is the exact version string advertised by the software. It may
198
%hReasonable quality
198
be pretty much anything. This upstream version may be optionally followed by a
199
 
199
plus sign and the SvarDOS revision. In the even that the upstream version
200
The packaged program must exhibit traits of reasonable quality. This means
200
already contains a plus sign, then SvarDOS revision is delimited with a tilde.
201
that it should have a deterministic behavior, and be free of undesirable
201
 
202
side-effects to the user's computer (not crashing, freezing, resulting in
202
The SvarDOS revision starts at 0 and increments each time that the given
203
unexpected loss of data, etc). It should also provide clear, non-ambiguous
203
upstream revision is repackaged. The SvarDOS revision restarts whenever the
204
instructions to the user about how the program is meant to be used.
204
upstream version changes. The SvarDOS revision of 0 is always hidden.
205
 
205
 
206
%hFree (no cost)
206
Examples:
207
 
207
 
208
The program must be free - that is, available at no financial cost. It doesn't
208
FDISK 1.54      <- originally packaged version
209
have to comply to an OSI-approved license or be open-source (even if that
209
FDISK 1.54+1    <- package has been changed, but not the upstream version
210
would be preferred), but at the very least it must be free for personal,
210
FDISK 1.55      <- upstream version increased, so SvarDOS rev restarts
211
non-commercial use.
211
FDISK 1.55+1    <- new version of the package, but still contains FDISK 1.55
212
 
212
FDISK 1.55+2    <- another new version of the package, etc
213
%hDistribution allowed
213
 
214
 
214
                     %h*** Packages inclusion rules ***
215
The program must allow distribution without restrictions, and must not forbid
215
 
216
being redistributed in a re-packaged form.
216
SvarDOS is a DOS distribution that comes with plenty of third-party packages.
217
 
217
With time, packages get updated and new packages are being added. However,
218
 
218
SvarDOS is not a shareware distribution CD, nor it is a "warez" production of
219
%!CORE EXCEPTIONS
219
any kind. Every software that is distributed within SvarDOS must comply to a
220
 
220
few common sense rules, as listed below.
221
Please note that, while the above rules are valid for all third-party packages
221
 
222
that may be distributed with SvarDOS, it does not apply to the 'core' packages
222
%hObjective usefulness
223
that contain the operating system itself. SvarDOS being a free (as in "libre")
223
 
224
operating system, all "core" packages must comply to a libre-like license - be
224
The distributed software must be useful. There is no point in distributing
225
it GPL, BSD, MIT, public domain, or anything that allows for unrestricted
225
hundreds of "Hello World" programs for example. The software must be useable
226
distribution, provides source code and allows to modify it freely.
226
as a finished product and provide some features that are proven to be seeked
227
 
227
by at least a subset of the user base. Games are considered useful, as long as
228
%hSvarDOS licensing
228
they fulfill their goal of providing actual distraction.
229
 
229
 
230
SvarDOS is a DOS distribution made of many different software bricks, hence a
230
%hReasonable quality
231
single license can hardly be applied to all. However, the CORE system (that
231
 
232
is the SvarDOS installer, bootable floppy image and all core packages) is
232
The packaged program must exhibit traits of reasonable quality. This means
233
carefully assembled from software that is "free" (as in "Freedom"), ie. that
233
that it should have a deterministic behavior, and be free of undesirable
234
grants the 3 basic FOSS liberties: freedom to use, modify, and redistribute.
234
side-effects to the user's computer (not crashing, freezing, resulting in
235
This includes, but is not necessarily limited to, software released under
235
unexpected loss of data, etc). It should also provide clear, non-ambiguous
236
following licenses: GNU GPLv2, GNU GPLv3, BSD, MIT, EUPL and Public domain.
236
instructions to the user about how the program is meant to be used.
237
 
237
 
238
Note that, while the above applies to the core of the SvarDOS distribution, it
238
%hFree (no cost)
239
does not cover all extra packages. Additionnal software packages may or may
239
 
240
not be FOSS, they are only guaranteed to be "gratis for non-commercial use".
240
The program must be free - that is, available at no financial cost. It doesn't
241
 
241
have to comply to an OSI-approved license or be open-source (even if that
242
Read more: %lpkgrules.ama:Packages inclusion rules
242
would be preferred), but at the very least it must be free for personal,
243
 
243
non-commercial use.
244
%hWhat does "Svarog" mean?
244
 
245
 
245
%hDistribution allowed
246
The "Svar" in SvarDOS refers to "Svarog". SvarDOS is the successor of the
246
 
247
Svarog86 and Svarog386 distributions.
247
The program must allow distribution without restrictions, and must not forbid
248
 
248
being redistributed in a re-packaged form.
249
Excerpt from Wikipedia, the free encyclopedia:
249
 
250
 
250
 
251
 Svarog is a Slavic deity (...) identified with Hephaestus, the god of the
251
%!CORE EXCEPTIONS
252
 blacksmith in ancient Greek religion (...), some researchers conclude that
252
 
253
 Svarog is the Slavic god of celestial fire and of blacksmithing.
253
Please note that, while the above rules are valid for all third-party packages
254
 
254
that may be distributed with SvarDOS, it does not apply to the 'core' packages
255
 The only mention of Svarog comes from the Hypatian Codex, a 15th-century
255
that contain the operating system itself. SvarDOS being a free (as in "libre")
256
 compilation of several much older documents from the Ipatiev Monastery in
256
operating system, all "core" packages must comply to a libre-like license - be
257
 Russia. (...) The complete passage, reconstructed from several manuscripts,
257
it GPL, BSD, MIT, public domain, or anything that allows for unrestricted
258
 translates as follows:
258
distribution, provides source code and allows to modify it freely.
259
 
259
 
260
 "(Then) began his reign Feosta (Hephaestus), whom the Egyptians called Svarog
260
%hSvarDOS licensing
261
  ... during his rule, from the heavens fell the smith's prongs and weapons
261
 
262
  were forged for the first time; before that, (people) fought with clubs and
262
SvarDOS is a DOS distribution made of many different software bricks, hence a
263
  stones."
263
single license can hardly be applied to all. However, the CORE system (that
264
 
264
is the SvarDOS installer, bootable floppy image and all core packages) is
265
        %h*** Why would I want to use SvarDOS instead of FreeDOS? ***
265
carefully assembled from software that is "free" (as in "Freedom"), ie. that
266
 
266
grants the 3 basic FOSS liberties: freedom to use, modify, and redistribute.
267
The FreeDOS project is a free, open-source operating system that aims to be
267
This includes, but is not necessarily limited to, software released under
268
100%% compatible with MS-DOS. And it is awesome. So why would I want to use
268
following licenses: GNU GPLv2, GNU GPLv3, BSD, MIT, EUPL and Public domain.
269
SvarDOS instead?
269
 
270
 
270
Note that, while the above applies to the core of the SvarDOS distribution, it
271
%hLong release cycles
271
does not cover all extra packages. Additionnal software packages may or may
272
 
272
not be FOSS, they are only guaranteed to be "gratis for non-commercial use".
273
The FreeDOS project began 29 June 1994. Version 1.0 came around in 2006.
273
 
274
Version 1.1 has been released in 2012, and the version 1.2 followed in
274
Read more: %lpkgrules.ama:Packages inclusion rules
275
December 2016. This translates roughly to a 5-years release cycle. Granted,
275
 
276
the DOS scene is not as active as it used to be, but still, many things happen
276
%hWhat does "Svarog" mean?
277
during a few years. Such version-centric approach also requires users to
277
 
278
perform full-system upgrades every now and then.
278
The "Svar" in SvarDOS refers to "Svarog". SvarDOS is the successor of the
279
 
279
Svarog86 and Svarog386 distributions.
280
SvarDOS is very different in this regard: there are no versions at all.
280
 
281
Whenever a new program is included into or updated within the distribution, it
281
Excerpt from Wikipedia, the free encyclopedia:
282
becomes immediately available through the SvarDOS reposoitory and may be
282
 
283
pulled either through the SvarDOS website or SvarDOS' pkgnet tool. Already
283
 Svarog is a Slavic deity (...) identified with Hephaestus, the god of the
284
installed systems can be easily kept up-to-date using the distribution's
284
 blacksmith in ancient Greek religion (...), some researchers conclude that
285
package manager.
285
 Svarog is the Slavic god of celestial fire and of blacksmithing.
286
 
286
 
287
%hConstraints of legal nature
287
 The only mention of Svarog comes from the Hypatian Codex, a 15th-century
288
 
288
 compilation of several much older documents from the Ipatiev Monastery in
289
The FreeDOS project mimicks a proprietary operating system, with all its APIs
289
 Russia. (...) The complete passage, reconstructed from several manuscripts,
290
and peculiarities. For this reason, the project always had to be extremely
290
 translates as follows:
291
careful about what can and what cannot be included within the FreeDOS
291
 
292
distribution. As a result, only "free software" (as in freedom, think GPL,
292
 "(Then) began his reign Feosta (Hephaestus), whom the Egyptians called Svarog
293
BSD, and so on) can make its way into the official distribution. While such
293
  ... during his rule, from the heavens fell the smith's prongs and weapons
294
cautious approach is sane and legally safe, it is far from practical for
294
  were forged for the first time; before that, (people) fought with clubs and
295
users. Allowing exclusively free software means that a high number of useful
295
  stones."
296
programs, tools and games are left behind. For example "freeware" tools (as in
296
 
297
"gratis but no source included") are a no-go. Even open-source programs can be
297
        %h*** Why would I want to use SvarDOS instead of FreeDOS? ***
298
rejected, if they do not clearly state that they comply with an OSI-approved
298
 
299
license.
299
The FreeDOS project is a free, open-source operating system that aims to be
300
 
300
100%% compatible with MS-DOS. And it is awesome. So why would I want to use
301
SvarDOS, on the other hand, is much more liberal about including packages.
301
SvarDOS instead?
302
Basically, anything that is objectively useful, of reasonable quality,
302
 
303
free/gratis and can be legally distributed in the form of a package, can be
303
%hLong release cycles
304
included in SvarDOS. The only exception is for the "core" system (ie. the
304
 
305
operating system itself), which must be based exclusively on free/libre
305
The FreeDOS project began 29 June 1994. Version 1.0 came around in 2006.
306
software. Read more about %lpkgrules.ama:SvarDOS package inclusion rules%t.
306
Version 1.1 has been released in 2012, and the version 1.2 followed in
307
 
307
December 2016. This translates roughly to a 5-years release cycle. Granted,
308
%hFreeDOS included!
308
the DOS scene is not as active as it used to be, but still, many things happen
309
 
309
during a few years. Such version-centric approach also requires users to
310
It must be noted, that altough the goals of SvarDOS and FreeDOS may be
310
perform full-system upgrades every now and then.
311
slightly different, SvarDOS wouldn't exist without FreeDOS. Indeed, SvarDOS
311
 
312
uses the excellent FreeDOS kernel, as well as a few other utilities borrowed
312
SvarDOS is very different in this regard: there are no versions at all.
313
from the FreeDOS ecosystem.
313
Whenever a new program is included into or updated within the distribution, it
314
 
314
becomes immediately available through the SvarDOS reposoitory and may be
315
Read also: %lhistory.ama:SvarDOS history
315
pulled either through the SvarDOS website or SvarDOS' pkgnet tool. Already
316
 
316
installed systems can be easily kept up-to-date using the distribution's
317
%hSvarDOS origins (history from the point of view of its creator)
317
package manager.
318
 
318
 
319
Mateusz Viste says:
319
%hConstraints of legal nature
320
 
320
 
321
In the years 2005-2015 I used to perform packaging work for the FreeDOS
321
The FreeDOS project mimicks a proprietary operating system, with all its APIs
322
project. I wasn't pleased with the packaging tool that FreeDOS used back then
322
and peculiarities. For this reason, the project always had to be extremely
323
(FDPKG), so in 2012 I started working on a new package manager, with network
323
careful about what can and what cannot be included within the FreeDOS
324
support, automatic updates, etc - I named it FDNPKG. Later I also devised a
324
distribution. As a result, only "free software" (as in freedom, think GPL,
325
scripted way of generating an "always up to date" FreeDOS CD that I
325
BSD, and so on) can make its way into the official distribution. While such
326
unimaginatively called "all_cd.iso". This CD included FDNPKG and all the
326
cautious approach is sane and legally safe, it is far from practical for
327
FreeDOS packages available at the given moment.
327
users. Allowing exclusively free software means that a high number of useful
328
 
328
programs, tools and games are left behind. For example "freeware" tools (as in
329
I still wasn't satisfied with how FreeDOS clings to its notion of "releases"
329
"gratis but no source included") are a no-go. Even open-source programs can be
330
and that it cannot include some software because of licensing issues, so in
330
rejected, if they do not clearly state that they comply with an OSI-approved
331
2016 I decided to create my own distribution, that I called Svarog386 (there
331
license.
332
was also a Svarog86 project that I had created a couple months earlier,
332
 
333
dedicated to 8086 machines). Svarog386 naturally relied on the FreeDOS kernel
333
SvarDOS, on the other hand, is much more liberal about including packages.
334
and used the FDNPKG package manager.
334
Basically, anything that is objectively useful, of reasonable quality,
335
 
335
free/gratis and can be legally distributed in the form of a package, can be
336
Then, in 2021, I found it increasingly annoying to look after two separate
336
included in SvarDOS. The only exception is for the "core" system (ie. the
337
distributions. Over time, FDNPKG also became a huge piece of protected mode
337
operating system itself), which must be based exclusively on free/libre
338
code, and although it was magnificent code, I was no longer happy with it: too
338
software. Read more about %lpkgrules.ama:SvarDOS package inclusion rules%t.
339
many features, too much data processing, too much memory required... In a
339
 
340
word: too much fluff. I longed for something simpler, that would do perhaps
340
%hFreeDOS included!
341
less, but with more transparency towards the user - and something that would
341
 
342
work in real mode with not much RAM, so it could run even on ancient 8086
342
It must be noted, that altough the goals of SvarDOS and FreeDOS may be
343
machines.
343
slightly different, SvarDOS wouldn't exist without FreeDOS. Indeed, SvarDOS
344
 
344
uses the excellent FreeDOS kernel, as well as a few other utilities borrowed
345
The result of these thoughts was SvarDOS: a distribution that replaced both
345
from the FreeDOS ecosystem.
346
Svarog86 and Svarog386, and that came with its own package manager - a much
346
 
347
simpler (and in my opinion much more elegant) tool than FDNPKG.
347
Read also: %lhistory.ama:SvarDOS history
348
 
348
 
349
%hSvarDOS: The project's TODO list
349
%hSvarDOS origins (history from the point of view of its creator)
350
 
350
 
351
* Replace the default (FreeDOS) edit with a smaller alternative (?) that is:
351
Mateusz Viste says:
352
  - TINY (a dozen of KiBs or so)
352
 
353
  - relatively simple: no need for advanced text editing features, just enough
353
In the years 2005-2015 I used to perform packaging work for the FreeDOS
354
    to comfortably edit small (<64K) configuration files
354
project. I wasn't pleased with the packaging tool that FreeDOS used back then
355
  - 8086-compatible and have modest memory requirements
355
(FDPKG), so in 2012 I started working on a new package manager, with network
356
  - multi-lang (kitten library)
356
support, automatic updates, etc - I named it FDNPKG. Later I also devised a
357
  - capable of (limited) copy/pasting between two files
357
scripted way of generating an "always up to date" FreeDOS CD that I
358
 
358
unimaginatively called "all_cd.iso". This CD included FDNPKG and all the
359
* validate that CORE is 100%% 8086-compatible
359
FreeDOS packages available at the given moment.
360
 
360
 
361
* replace FreeCOM by SvarCOM
361
I still wasn't satisfied with how FreeDOS clings to its notion of "releases"
362
 
362
and that it cannot include some software because of licensing issues, so in
363
* improve installer so user can choose the target disk
363
2016 I decided to create my own distribution, that I called Svarog386 (there
364
 
364
was also a Svarog86 project that I had created a couple months earlier,
365
* COUNTRY settings shall be configurable by localcfg (and user should be
365
dedicated to 8086 machines). Svarog386 naturally relied on the FreeDOS kernel
366
  able to define local preferences through an easy-to-use wizard during
366
and used the FDNPKG package manager.
367
  install time)
367
 
368
 
368
Then, in 2021, I found it increasingly annoying to look after two separate
369
* out-of-the box networking support:
369
distributions. Over time, FDNPKG also became a huge piece of protected mode
370
 - requires shipping lots of packet drivers with SvarDOS... Should CRYNWR be
370
code, and although it was magnificent code, I was no longer happy with it: too
371
   part of the install set? Or only selected, most popular drivers? Or maybe
371
many features, too much data processing, too much memory required... In a
372
   this could be provided as a "supplemental" floppy disk?
372
word: too much fluff. I longed for something simpler, that would do perhaps
373
 - user should be asked for its NIC model at install time
373
less, but with more transparency towards the user - and something that would
374
 - installer could also ask for a basic DHCP / static configuration
374
work in real mode with not much RAM, so it could run even on ancient 8086
375
 
375
machines.
376
* add a "link" tool so users can easily create "links" to their favorite
376
 
377
  programs (esp. things like zip/unzip, etc). Might be something integrated
377
The result of these thoughts was SvarDOS: a distribution that replaced both
378
  within SvarCOM, or a third-party TSR.
378
Svarog86 and Svarog386, and that came with its own package manager - a much
379
 
379
simpler (and in my opinion much more elegant) tool than FDNPKG.
380
* install.com - MBR changes could be done by the installer itself instead of
380
 
381
  system()-calling fdisk
381
%hSvarDOS: The project's TODO list
382
 
382
 
383
* help - write more useful content!
383
* Replace the default (FreeDOS) edit with a smaller alternative (?) that is:
384
  - basic DOS commands (directories, copy/rename/delete files, etc)
384
  - TINY (a dozen of KiBs or so)
385
  - common configuration files (autoexec, config.sys, pkg.cfg, wattcp.cfg..)
385
  - relatively simple: no need for advanced text editing features, just enough
386
  - networking guide
386
    to comfortably edit small (<64K) configuration files
387
  - memory management basics
387
  - 8086-compatible and have modest memory requirements
388
  - ...
388
  - multi-lang (kitten library)
389
 
389
  - capable of (limited) copy/pasting between two files
390
* test new versions of software and update packages accordingly. special care
390
 
391
  must be taken for core things: kernel, freecom, fdisk, himemx...
391
* replace FreeCOM by SvarCOM
392
 
392
 
393
* add new, useful software to the SvarDOS repository (see the %lpkgrules.ama:rules%t)
393
* improve installer so user can choose the target disk
394
 
394
 
395
* further NLS support, improvements of existing translations and adding new
395
* COUNTRY settings shall be configurable by localcfg (and user should be
396
  languages -> would be nice to have some kind of web interface for submitting
396
  able to define local preferences through an easy-to-use wizard during
397
  and reviewing translations
397
  install time)
398
 
398
 
399
* all CORE packages should be NLS-aware (ie. translatable)
399
* out-of-the box networking support:
400
 
400
 - requires shipping lots of packet drivers with SvarDOS... Should CRYNWR be
401
* pkgnet.exe: implement the 'checkup' action for easy update checks
401
   part of the install set? Or only selected, most popular drivers? Or maybe
402
 
402
   this could be provided as a "supplemental" floppy disk?
403
* possibly plenty of other things
403
 - user should be asked for its NIC model at install time
404
 
404
 - installer could also ask for a basic DHCP / static configuration
405
 
405
 
406
                        =============================
406
* install.com - MBR changes could be done by the installer itself instead of
407
                          %hWanna help? %lcontact.ama:Get in touch!
407
  system()-calling fdisk
408
                        =============================
408
 
409
 
409
* help - write more useful content!
410
%h8086 compatibility
410
  - basic DOS commands (directories, copy/rename/delete files, etc)
411
 
411
  - common configuration files (autoexec, config.sys, pkg.cfg, wattcp.cfg..)
412
This page presents the 8086-compatibility status of each SvarDOS "CORE"
412
  - networking guide
413
package.
413
  - memory management basics
414
 
414
  - ...
415
%bPACKAGE     VERSION   EXECUTABLE BSUM  8086 ok?*   Checked on
415
 
416
amb        20201223      amb.com A11A     yes      2022-01-30
416
* test new versions of software and update packages accordingly. special care
417
attrib          2.1   attrib.com 2C15     yes      2022-01-30
417
  must be taken for core things: kernel, command.com, fdisk, himemx...
418
chkdsk   0.9.2 beta   chkdsk.exe E2A9     yes      2022-01-30
418
 
419
choice          4.4   choice.exe 8311     yes      2022-01-30
419
* add new, useful software to the SvarDOS repository (see the %lpkgrules.ama:rules%t)
420
command  0.84 pre 2  command.com E64E     yes      2022-01-30  01)
420
 
421
cpidos          3.0         none   -       -       2022-01-30
421
* further NLS support, improvements of existing translations and adding new
422
debug          1.25    debug.com 2E6B     yes      2022-01-31
422
  languages -> would be nice to have some kind of web interface for submitting
423
debug          1.25   debugx.com EA59     yes      2022-01-31
423
  and reviewing translations
424
deltree  1.02g.mrlg  deltree.com E20D      no      2022-01-30  02)
424
 
425
deltree       1.02g  deltree.com AB16     yes      2022-01-31  03)
425
* all user-facing CORE packages should be NLS-aware (translatable)
426
devload        3.25  devload.com B91B     yes      2022-01-30
426
 
427
diskcopy  beta 0.95 diskcopy.exe 3558     yes      2022-01-30
427
* possibly plenty of other things
428
display       0.13b  display.exe 5903     yes      2022-01-30
428
 
429
dosfsck       2.11c  dosfsck.exe 1CB8     yes      2022-01-30
429
 
430
edit           0.9a     edit.exe 8F1A     yes      2022-01-30
430
                        =============================
431
fc             3.03       fc.exe E718     yes      2022-01-30
431
                          %hWanna help? %lcontact.ama:Get in touch!
432
fdapm     2009sep11    fdapm.com A74A     yes      2022-01-30
432
                        =============================
433
fdapm     2009sep11 idledpms.com C8BD     yes      2022-01-30
433
 
434
fdisk         1.3.4    fdisk.exe F098      no      2022-01-30  04)
434
%h8086 compatibility
435
fdisk         1.3.4    fdisk.exe 98BF     yes      2022-01-31  05)
435
 
436
find       3.0a LFN     find.com A9DA     yes      2022-01-30
436
This page presents the 8086-compatibility status of each SvarDOS "CORE"
437
format        0.91v   format.exe F11E     yes      2022-01-30
437
package.
438
help       20220124         none   -       -       2022-01-30
438
 
439
himemx         3.34   himemx.exe C8E6     yes      2022-01-30  06)
439
%bPACKAGE     VERSION   EXECUTABLE BSUM  8086 ok?*   Checked on
440
kernel         2042      sys.com BF43     yes      2022-01-30
440
amb        20201223      amb.com A11A     yes      2022-01-30
441
kernel         2042   kernel.sys A9B2     yes      2022-01-30
441
attrib          2.1   attrib.com 2C15     yes      2022-01-30
442
keyb           2.01     keyb.exe 945C     yes      2022-01-30
442
chkdsk   0.9.2 beta   chkdsk.exe E2A9     yes      2022-01-30
443
keyb_lay        3.1         none   -       -       2022-01-30
443
choice          4.4   choice.exe 8311     yes      2022-01-30
444
label       1.4b.ea    label.exe 1F5D     yes      2022-01-30
444
command  0.84 pre 2  command.com E64E     yes      2022-01-30  01)
445
localcfg       0.90 localcfg.com E424     yes      2022-01-30
445
cpidos          3.0         none   -       -       2022-01-30
446
mem           1.11r      mem.exe 2BB8     yes      2022-01-30  07)
446
debug          1.25    debug.com 2E6B     yes      2022-01-31
447
mode     2015-11-25     mode.com BA1E     yes      2022-01-30
447
debug          1.25   debugx.com EA59     yes      2022-01-31
448
more            4.3     more.exe 729B     yes      2022-01-30
448
deltree  1.02g.mrlg  deltree.com E20D      no      2022-01-30  02)
449
move           3.3a     move.exe D3E4     yes      2022-01-30
449
deltree       1.02g  deltree.com AB16     yes      2022-01-31  03)
450
pkg        20210212      pkg.exe 9FAB     yes      2022-01-30
450
devload        3.25  devload.com B91B     yes      2022-01-30
451
pkgnet     20220119   pkgnet.exe 3D2F     yes      2022-01-30
451
diskcopy  beta 0.95 diskcopy.exe 3558     yes      2022-01-30
452
shsucdx        3.05  shcdx86.com 0A74     yes      2022-01-30
452
display       0.13b  display.exe 5903     yes      2022-01-30
453
shsucdx        3.05  shsucdx.com E5A5     yes      2022-01-30  08)
453
dosfsck       2.11c  dosfsck.exe 1CB8     yes      2022-01-30
454
sort          1.5.1     sort.exe 21C2     yes      2022-01-30
454
edit           0.9a     edit.exe 8F1A     yes      2022-01-30
455
tree          3.7.2     tree.com 2370     yes      2022-01-30
455
fc             3.03       fc.exe E718     yes      2022-01-30
456
(pcntpk)      03.10   pcntpk.com 38C7     yes      2022-01-30
456
fdapm     2009sep11    fdapm.com A74A     yes      2022-01-30
457
(udvd2)   30-Apr-13    udvd2.sys D3AB     yes      2022-01-30  09)
457
fdapm     2009sep11 idledpms.com C8BD     yes      2022-01-30
458
 
458
fdisk         1.3.4    fdisk.exe F098      no      2022-01-30  04)
459
* Executable does its normal job or exits gracefully with a hint.
459
fdisk         1.3.4    fdisk.exe 98BF     yes      2022-01-31  05)
460
 
460
find       3.0a LFN     find.com A9DA     yes      2022-01-30
461
Notes:
461
format        0.91v   format.exe F11E     yes      2022-01-30
462
01) also has localized versions from cmd-de.com (German) to cmd-tr.com
462
help       20220124         none   -       -       2022-01-30
463
    (Turkish)
463
himemx         3.34   himemx.exe C8E6     yes      2022-01-30  06)
464
02) pce-ibmpc: undefined operation [C1 04] -> uncompressing with UPX
464
kernel         2042      sys.com BF43     yes      2022-01-30
465
    made it work
465
kernel         2042   kernel.sys A9B2     yes      2022-01-30
466
03) replaced BSUM E20D file; used UPX --8086 option
466
keyb           2.01     keyb.exe 945C     yes      2022-01-30
467
04) pce-ibmpc: undefined operation [C1 e1] -> needed a full rebuild
467
keyb_lay        3.1         none   -       -       2022-01-30
468
05) replaced BSUM F098 file; no -1 option for TC++; used UPX --8086 option
468
label       1.4b.ea    label.exe 1F5D     yes      2022-01-30
469
06) exits with "At least a 80386 is required."
469
localcfg       0.90 localcfg.com E424     yes      2022-01-30
470
07) under pce-ibmpc reports 1,024K of conventional memory, but 0K free
470
mem           1.11r      mem.exe 2BB8     yes      2022-01-30  07)
471
08) exits with "Must have at least a 386."
471
mode     2015-11-25     mode.com BA1E     yes      2022-01-30
472
09) exits with "No 386+ CPU; UDVD2 not loaded!"
472
more            4.3     more.exe 729B     yes      2022-01-30
473
 
473
move           3.3a     move.exe D3E4     yes      2022-01-30
474
------------------------------------------------------------------------------
474
pkg        20210212      pkg.exe 9FAB     yes      2022-01-30
475
Article by Robert Riebisch
475
pkgnet     20220119   pkgnet.exe 3D2F     yes      2022-01-30
476
SVARDOS HELP SYSTEM ver 20220201
476
shsucdx        3.05  shcdx86.com 0A74     yes      2022-01-30
477
 
477
shsucdx        3.05  shsucdx.com E5A5     yes      2022-01-30  08)
-
 
478
sort          1.5.1     sort.exe 21C2     yes      2022-01-30
-
 
479
tree          3.7.2     tree.com 2370     yes      2022-01-30
-
 
480
(pcntpk)      03.10   pcntpk.com 38C7     yes      2022-01-30
-
 
481
(udvd2)   30-Apr-13    udvd2.sys D3AB     yes      2022-01-30  09)
-
 
482
 
-
 
483
* Executable does its normal job or exits gracefully with a hint.
-
 
484
 
-
 
485
Notes:
-
 
486
01) also has localized versions from cmd-de.com (German) to cmd-tr.com
-
 
487
    (Turkish)
-
 
488
02) pce-ibmpc: undefined operation [C1 04] -> uncompressing with UPX
-
 
489
    made it work
-
 
490
03) replaced BSUM E20D file; used UPX --8086 option
-
 
491
04) pce-ibmpc: undefined operation [C1 e1] -> needed a full rebuild
-
 
492
05) replaced BSUM F098 file; no -1 option for TC++; used UPX --8086 option
-
 
493
06) exits with "At least a 80386 is required."
-
 
494
07) under pce-ibmpc reports 1,024K of conventional memory, but 0K free
-
 
495
08) exits with "Must have at least a 386."
-
 
496
09) exits with "No 386+ CPU; UDVD2 not loaded!"
-
 
497
 
-
 
498
------------------------------------------------------------------------------
-
 
499
Article by Robert Riebisch
-
 
500
SVARDOS HELP SYSTEM ver 20220202
-
 
501