Subversion Repositories SvarDOS

Rev

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

Rev 306 Rev 318
1
AMB1index.amaöïwpkg.amaåD0.network.ama)¶lcontact.amaB±°pkgfmt.amaEhJpkgrules.ama­ÊXlicense.amaÇGmeaning.ama‡mUtodo.ama•"ƒÜMfreedos.ama*M
1
AMB1index.amaöïwpkg.amaåD0.network.ama)¶lcontact.amaB±°pkgfmt.amaEhJpkgrules.ama­ÊXlicense.amaÇGmeaning.ama‡mUtodo.ama•"ƒÜMfreedos.ama*M
2
[Âhistory.amae4ë±titleh;!‘ÿ
2
[Âhistory.amae4Þ¥RtitleC;!‘ÿ
3
                            %h*** SVARDOS HELP ***
3
                            %h*** SVARDOS HELP ***
4
 
4
 
5
This help documentation is a work-in-progress thing. For the time being it
5
This help documentation is a work-in-progress thing. For the time being it
6
provides only very limited content. (wanna help building it? get in touch with
6
provides only very limited content. (wanna help building it? get in touch with
7
us on the SvarDOS %lcontact.ama:mailing list%t!)
7
us on the SvarDOS %lcontact.ama:mailing list%t!)
8
 
8
 
9
=== Chapters =================================================================
9
=== Chapters =================================================================
10
 
10
 
11
 * %lpkg.ama:Packages management (install/remove/update software)
11
 * %lpkg.ama:Packages management (install/remove/update software)
12
 * %lnetwork.ama:Networking
12
 * %lnetwork.ama:Networking
13
 
13
 
14
 * %lfreedos.ama:SvarDOS vs FreeDOS: what is the story?
14
 * %lfreedos.ama:SvarDOS vs FreeDOS: what is the story?
15
 * %ltodo.ama:The project's "TODO" list
15
 * %ltodo.ama:The project's "TODO" list
16
 * %lcontact.ama:How do I get in touch with the SvarDOS community?
16
 * %lcontact.ama:How do I get in touch with the SvarDOS community?
17
 
17
 
18
 * %lhistory.ama:SvarDOS origins
18
 * %lhistory.ama:SvarDOS origins
19
 * %lmeaning.ama:What does "Svarog" mean?
19
 * %lmeaning.ama:What does "Svarog" mean?
20
 
20
 
21
==============================================================================
21
==============================================================================
22
 
22
 
23
%hSvarDOS packages management
23
%hSvarDOS packages management
24
 
24
 
25
To install or remove software on your SvarDOS system, use the "pkg" command.
25
To install or remove software on your SvarDOS system, use the "pkg" command.
26
pkg is a package manager to allow installing new software from SvarDOS
26
pkg is a package manager to allow installing new software from SvarDOS
27
packages and removing exising software from the system. To learn about exact
27
packages and removing exising software from the system. To learn about exact
28
pkg usage, type pkg /? in the SvarDOS command line shell.
28
pkg usage, type pkg /? in the SvarDOS command line shell.
29
 
29
 
30
You may obtain many SvarDOS packages from the SvarDOS web homepage at
30
You may obtain many SvarDOS packages from the SvarDOS web homepage at
31
<http://svardos.osdn.io>. If your system is connected to the internet, then
31
<http://svardos.osdn.io>. If your system is connected to the internet, then
32
you may also use the SvarDOS "pkgnet" command. pkgnet is a network tool that
32
you may also use the SvarDOS "pkgnet" command. pkgnet is a network tool that
33
makes it easy to search for SvarDOS packages in the SvarDOS repository and
33
makes it easy to search for SvarDOS packages in the SvarDOS repository and
34
download them right away. Type pkgnet /? in the SvarDOS command line shell to
34
download them right away. Type pkgnet /? in the SvarDOS command line shell to
35
learn about exact pkgnet usage.
35
learn about exact pkgnet usage.
36
 
36
 
37
See also:
37
See also:
38
 * %lpkgfmt.ama:The technical format of a SvarDOS package
38
 * %lpkgfmt.ama:The technical format of a SvarDOS package
39
 * %lpkgrules.ama:Packages inclusion rules
39
 * %lpkgrules.ama:Packages inclusion rules
40
 
40
 
41
%hNetworking
41
%hNetworking
42
 
42
 
43
WRITE ME!
43
WRITE ME!
44
 
44
 
45
%hHow do I get in touch with the project's community?
45
%hHow do I get in touch with the project's community?
46
 
46
 
47
The recommended way to contact the SvarDOS community is through the project's
47
The recommended way to contact the SvarDOS community is through the project's
48
mailing list: <https://lists.osdn.me/mailman/listinfo/svardos-users>
48
mailing list: <https://lists.osdn.me/mailman/listinfo/svardos-users>
49
 
49
 
50
The project's web homepage is <http://svardos.osdn.io>
50
The project's web homepage is <http://svardos.osdn.io>
51
 
51
 
52
Package files provide an easy way to manage software on SvarDOS. These
52
Package files provide an easy way to manage software on SvarDOS. These
53
packages must adhere to a strict convention so they can be handled properly
53
packages must adhere to a strict convention so they can be handled properly
54
by the SvarDOS package manager.
54
by the SvarDOS package manager.
55
 
55
 
56
 
56
 
57
%hPackage filenames
57
%hPackage filenames
58
 
58
 
59
Packages names must follow some basic rules. They shall be max. 8 letters long
59
Packages names must follow some basic rules. They shall be max. 8 letters long
60
(but should not be too short either, since a 1 or 2-letters package name might
60
(but should not be too short either, since a 1 or 2-letters package name might
61
be confusing), and must not be composed of characters other than a-b, 0-9 and
61
be confusing), and must not be composed of characters other than a-b, 0-9 and
62
'_'. This for backward compatibility with short file names (8+3) and ISO 9660
62
'_'. This for backward compatibility with short file names (8+3) and ISO 9660
63
file systems (used on CDROMs). The package filename is always followed by the
63
file systems (used on CDROMs). The package filename is always followed by the
64
.ZIP extension.
64
.ZIP extension.
65
 
65
 
66
 
66
 
67
%hPackage files
67
%hPackage files
68
 
68
 
69
SvarDOS uses ZIP files as its package file format. This format has been chosen
69
SvarDOS uses ZIP files as its package file format. This format has been chosen
70
because ZIP files under DOS have become the de facto way to distribute
70
because ZIP files under DOS have become the de facto way to distribute
71
collections of files. Also, the ZIP file format is well documented, well
71
collections of files. Also, the ZIP file format is well documented, well
72
supported, and in the public domain.
72
supported, and in the public domain.
73
 
73
 
74
Here below is the recommended command line that can be used to create a
74
Here below is the recommended command line that can be used to create a
75
package for a program named EXAMPLE using info-zip:
75
package for a program named EXAMPLE using info-zip:
76
 
76
 
77
  zip -9rkD EXAMPLE.ZIP subdir1 subdir2 ... subdirN
77
  zip -9rkD EXAMPLE.ZIP subdir1 subdir2 ... subdirN
78
 
78
 
79
If you are using 7za to create your packages, then use this:
79
If you are using 7za to create your packages, then use this:
80
 
80
 
81
  7za a -mm=deflate -mx=9 -tzip EXAMPLE.ZIP subdir1 subdir2 ... subdirN
81
  7za a -mm=deflate -mx=9 -tzip EXAMPLE.ZIP subdir1 subdir2 ... subdirN
82
 
82
 
83
 
83
 
84
%hPackage directory structure
84
%hPackage directory structure
85
 
85
 
86
The directory structure of a package depends on the type of packages.
86
The directory structure of a package depends on the type of packages.
87
For "core" packages, we have this:
87
For "core" packages, we have this:
88
 
88
 
89
  APPINFO            Put the program's LSM file here
89
  APPINFO            Put the program's LSM file here
90
  BIN                Binaries, such as exe and com files
90
  BIN                Binaries, such as exe and com files
91
  DOC\%PKGNAME%      Package documentation
91
  DOC\%PKGNAME%      Package documentation
92
  HELP               Used ONLY by the "help" package
92
  HELP               Used ONLY by the "help" package
93
  NLS\%PKGNAME%      Localizations (NLS language files) of the package
93
  NLS\%PKGNAME%      Localizations (NLS language files) of the package
94
  SOURCE\%PKGNAME%   The source code (optional)
94
  SOURCE\%PKGNAME%   The source code (optional)
95
 
95
 
96
Non-core packages use a slightly different directory organization. For
96
Non-core packages use a slightly different directory organization. For
97
example, if we were to consider a package FOO, we might end up with the
97
example, if we were to consider a package FOO, we might end up with the
98
following structure:
98
following structure:
99
 
99
 
100
  APPINFO\FOO.LSM    Package meta file for the FOO program
100
  APPINFO\FOO.LSM    Package meta file for the FOO program
101
  PROGS\FOO\FOO.EXE  The program's executable
101
  PROGS\FOO\FOO.EXE  The program's executable
102
  PROGS\FOO\FOO.TXT  Some documentation
102
  PROGS\FOO\FOO.TXT  Some documentation
103
  PROGS\FOO\FILE.DAT Data file used by the FOO program
103
  PROGS\FOO\FILE.DAT Data file used by the FOO program
104
  SOURCE\FOO\*       here would be stored the foo's source code (optional)
104
  SOURCE\FOO\*       here would be stored the foo's source code (optional)
105
 
105
 
106
Note the 'PROGS' directory above. This is a category to which the package
106
Note the 'PROGS' directory above. This is a category to which the package
107
belong. The package installer might change this directory at install time,
107
belong. The package installer might change this directory at install time,
108
depending on the user's preferences. Possible categories are listed below:
108
depending on the user's preferences. Possible categories are listed below:
109
 
109
 
110
Category | Description
110
Category | Description
111
DEVEL    | Development tools (mostly compilers)
111
DEVEL    | Development tools (mostly compilers)
112
DRIVERS  | Drivers
112
DRIVERS  | Drivers
113
GAMES    | Games
113
GAMES    | Games
114
PROGS    | User programs, tools...
114
PROGS    | User programs, tools...
115
 
115
 
116
Note: "DOC", "NLS", "BIN" and "HELP" directories are strictly reserved to
116
Note: "DOC", "NLS", "BIN" and "HELP" directories are strictly reserved to
117
      CORE packages.
117
      CORE packages.
118
 
118
 
119
%hLSM meta-data files
119
%hLSM meta-data files
120
 
120
 
121
Every package MUST contain an LSM file in its "APPINFO" directory. This LSM
121
Every package MUST contain an LSM file in its "APPINFO" directory. This LSM
122
file is a text file that contains basic information about the package. Its
122
file is a text file that contains basic information about the package. Its
123
format is very simple, it must contain at least two lines:
123
format is very simple, it must contain at least two lines:
124
 
124
 
125
  version: x.y.z
125
  version: x.y.z
126
  description: package description
126
  description: package description
127
 
127
 
128
Any other lines are ignored by the SvarDOS package manager.
128
Any other lines are ignored by the SvarDOS package manager.
129
 
129
 
130
                     %h*** Packages inclusion rules ***
130
                     %h*** Packages inclusion rules ***
131
 
131
 
132
SvarDOS is a DOS distribution that comes with plenty of third-party packages.
132
SvarDOS is a DOS distribution that comes with plenty of third-party packages.
133
With time, packages get updated and new packages are being added. However,
133
With time, packages get updated and new packages are being added. However,
134
SvarDOS is not a shareware distribution CD, nor it is a "warez" production of
134
SvarDOS is not a shareware distribution CD, nor it is a "warez" production of
135
any kind. Every software that is distributed within SvarDOS must comply to a
135
any kind. Every software that is distributed within SvarDOS must comply to a
136
few common sense rules, as listed below.
136
few common sense rules, as listed below.
137
 
137
 
138
%hObjective usefulness
138
%hObjective usefulness
139
 
139
 
140
The distributed software must be useful. There is no point in distributing
140
The distributed software must be useful. There is no point in distributing
141
hundreds of "Hello World" programs for example. The software must be useable
141
hundreds of "Hello World" programs for example. The software must be useable
142
as a finished product and provide some features that are proven to be seeked
142
as a finished product and provide some features that are proven to be seeked
143
by at least a subset of the user base. Games are considered useful, as long as
143
by at least a subset of the user base. Games are considered useful, as long as
144
they fulfill their goal of providing actual distraction.
144
they fulfill their goal of providing actual distraction.
145
 
145
 
146
%hReasonable quality
146
%hReasonable quality
147
 
147
 
148
The packaged program must exhibit traits of reasonable quality. This means
148
The packaged program must exhibit traits of reasonable quality. This means
149
that it should have a deterministic behavior, and be free of undesirable
149
that it should have a deterministic behavior, and be free of undesirable
150
side-effects to the user's computer (not crashing, freezing, resulting in
150
side-effects to the user's computer (not crashing, freezing, resulting in
151
unexpected loss of data, etc). It should also provide clear, non-ambiguous
151
unexpected loss of data, etc). It should also provide clear, non-ambiguous
152
instructions to the user about how the program is meant to be used.
152
instructions to the user about how the program is meant to be used.
153
 
153
 
154
%hFree (no cost)
154
%hFree (no cost)
155
 
155
 
156
The program must be free - that is, available at no financial cost. It doesn't
156
The program must be free - that is, available at no financial cost. It doesn't
157
have to comply to an OSI-approved license or be open-source (even if that
157
have to comply to an OSI-approved license or be open-source (even if that
158
would be preferred), but at the very least it must be free for personal,
158
would be preferred), but at the very least it must be free for personal,
159
non-commercial use.
159
non-commercial use.
160
 
160
 
161
%hDistribution allowed
161
%hDistribution allowed
162
 
162
 
163
The program must allow distribution without restrictions, and must not forbid
163
The program must allow distribution without restrictions, and must not forbid
164
being redistributed in a re-packaged form.
164
being redistributed in a re-packaged form.
165
 
165
 
166
 
166
 
167
%!CORE EXCEPTIONS
167
%!CORE EXCEPTIONS
168
 
168
 
169
Please note that, while the above rules are valid for all third-party packages
169
Please note that, while the above rules are valid for all third-party packages
170
that may be distributed with SvarDOS, it does not apply to the 'core' packages
170
that may be distributed with SvarDOS, it does not apply to the 'core' packages
171
that contain the operating system itself. SvarDOS being a free (as in "libre")
171
that contain the operating system itself. SvarDOS being a free (as in "libre")
172
operating system, all "core" packages must comply to a libre-like license - be
172
operating system, all "core" packages must comply to a libre-like license - be
173
it GPL, BSD, MIT, public domain, or anything that allows for unrestricted
173
it GPL, BSD, MIT, public domain, or anything that allows for unrestricted
174
distribution, provides source code and allows to modify it freely.
174
distribution, provides source code and allows to modify it freely.
175
 
175
 
176
%hSvarDOS licensing
176
%hSvarDOS licensing
177
 
177
 
178
SvarDOS is a DOS distribution made of many different software bricks, hence a
178
SvarDOS is a DOS distribution made of many different software bricks, hence a
179
single license can hardly be applied to all. However, the CORE system (that
179
single license can hardly be applied to all. However, the CORE system (that
180
is the SvarDOS installer, bootable floppy image and all core packages) is
180
is the SvarDOS installer, bootable floppy image and all core packages) is
181
carefully assembled from software that is "free" (as in "Freedom"), ie. that
181
carefully assembled from software that is "free" (as in "Freedom"), ie. that
182
grants the 3 basic FOSS liberties: freedom to use, modify, and redistribute.
182
grants the 3 basic FOSS liberties: freedom to use, modify, and redistribute.
183
This includes, but is not necessarily limited to, software released under
183
This includes, but is not necessarily limited to, software released under
184
following licenses: GNU GPLv2, GNU GPLv3, BSD, MIT, EUPL and Public domain.
184
following licenses: GNU GPLv2, GNU GPLv3, BSD, MIT, EUPL and Public domain.
185
 
185
 
186
Note that, while the above applies to the core of the SvarDOS distribution, it
186
Note that, while the above applies to the core of the SvarDOS distribution, it
187
does not cover all extra packages. Additionnal software packages may or may
187
does not cover all extra packages. Additionnal software packages may or may
188
not be FOSS, they are only guaranteed to be "gratis for non-commercial use".
188
not be FOSS, they are only guaranteed to be "gratis for non-commercial use".
189
 
189
 
190
Read more: %lpkgrules.ama:Packages inclusion rules
190
Read more: %lpkgrules.ama:Packages inclusion rules
191
 
191
 
192
%hWhat does "Svarog" mean?
192
%hWhat does "Svarog" mean?
193
 
193
 
194
The "Svar" in SvarDOS refers to "Svarog". SvarDOS is the successor of the
194
The "Svar" in SvarDOS refers to "Svarog". SvarDOS is the successor of the
195
Svarog86 and Svarog386 distributions.
195
Svarog86 and Svarog386 distributions.
196
 
196
 
197
Excerpt from Wikipedia, the free encyclopedia:
197
Excerpt from Wikipedia, the free encyclopedia:
198
 
198
 
199
 Svarog is a Slavic deity (...) identified with Hephaestus, the god of the
199
 Svarog is a Slavic deity (...) identified with Hephaestus, the god of the
200
 blacksmith in ancient Greek religion (...), some researchers conclude that
200
 blacksmith in ancient Greek religion (...), some researchers conclude that
201
 Svarog is the Slavic god of celestial fire and of blacksmithing.
201
 Svarog is the Slavic god of celestial fire and of blacksmithing.
202
 
202
 
203
 The only mention of Svarog comes from the Hypatian Codex, a 15th-century
203
 The only mention of Svarog comes from the Hypatian Codex, a 15th-century
204
 compilation of several much older documents from the Ipatiev Monastery in
204
 compilation of several much older documents from the Ipatiev Monastery in
205
 Russia. (...) The complete passage, reconstructed from several manuscripts,
205
 Russia. (...) The complete passage, reconstructed from several manuscripts,
206
 translates as follows:
206
 translates as follows:
207
 
207
 
208
 "(Then) began his reign Feosta (Hephaestus), whom the Egyptians called Svarog
208
 "(Then) began his reign Feosta (Hephaestus), whom the Egyptians called Svarog
209
  ... during his rule, from the heavens fell the smith's prongs and weapons
209
  ... during his rule, from the heavens fell the smith's prongs and weapons
210
  were forged for the first time; before that, (people) fought with clubs and
210
  were forged for the first time; before that, (people) fought with clubs and
211
  stones."
211
  stones."
212
 
212
 
213
%hSvarDOS: The project's TODO list
213
%hSvarDOS: The project's TODO list
214
 
214
 
215
* Replace the default (FreeDOS) edit with a smaller alternative (?) that is:
215
* Replace the default (FreeDOS) edit with a smaller alternative (?) that is:
216
  - TINY (a dozen of KiBs or so)
216
  - TINY (a dozen of KiBs or so)
217
  - relatively simple: no need for advanced text editing features, just enough
217
  - relatively simple: no need for advanced text editing features, just enough
218
    to comfortably edit small (<64K) configuration files
218
    to comfortably edit small (<64K) configuration files
219
  - 8086-compatible and have modest memory requirements
219
  - 8086-compatible and have modest memory requirements
220
  - multi-lang (kitten library)
220
  - multi-lang (kitten library)
221
  - capable of (limited) copy/pasting between two files
221
  - capable of (limited) copy/pasting between two files
222
 
222
 
223
* validate that CORE is 100%% 8086-compatible
223
* validate that CORE is 100%% 8086-compatible
224
 
224
 
225
* Networking setup at install time -> should crynwr be part of the install
225
* Networking setup at install time -> should crynwr be part of the install
226
  set? Or only selected drivers? Or maybe this could be provided as a
226
  set? Or only selected drivers? Or maybe this could be provided as a
227
  "supplemental" floppy disk?
227
  "supplemental" floppy disk?
228
 
228
 
229
* bootable USB install image
229
* bootable USB install image
230
 
230
 
231
* make the COMMAND package smaller so there is no need for multiple
231
* make the COMMAND package smaller so there is no need for multiple
232
  lang-dependant copies of the binary
232
  lang-dependant copies of the binary
233
 
233
 
234
* improve installer so user can choose the target disk
234
* improve installer so user can choose the target disk
235
 
235
 
236
* add a "link" tool so users can easily create "links" to their favorite
236
* add a "link" tool so users can easily create "links" to their favorite
237
  programs (esp. things like zip/unzip, etc)
237
  programs (esp. things like zip/unzip, etc)
238
 
238
 
239
* install.com - MBR changes could be done by the installer itself instead of
239
* install.com - MBR changes could be done by the installer itself instead of
240
  system()-calling fdisk
240
  system()-calling fdisk
241
 
241
 
242
* help - write more useful content!
242
* help - write more useful content!
243
  -> basic DOS commands (directories, copy/rename/delete files, etc)
243
  -> basic DOS commands (directories, copy/rename/delete files, etc)
244
  -> common configuration files (autoexec, config.sys, pkg.cfg, wattcp.cfg..)
244
  -> common configuration files (autoexec, config.sys, pkg.cfg, wattcp.cfg..)
245
  -> networking guide
245
  -> networking guide
246
  -> memory management basics
246
  -> memory management basics
247
  -> ...
247
  -> ...
248
 
248
 
249
* test new versions of software and update packages accordingly. special care
249
* test new versions of software and update packages accordingly. special care
250
  must be taken for core things: kernel, freecom, fdisk, himemx...
250
  must be taken for core things: kernel, freecom, fdisk, himemx...
251
 
251
 
252
* further NLS support, improvements of existing translations and adding new
252
* further NLS support, improvements of existing translations and adding new
253
  languages -> would be nice to have some kind of web interface for submitting
253
  languages -> would be nice to have some kind of web interface for submitting
254
  and reviewing translations
254
  and reviewing translations
255
 
255
 
256
* pkgnet.exe: implement the 'checkup' action for easy update checks
256
* pkgnet.exe: implement the 'checkup' action for easy update checks
257
 
257
 
258
* possibly plenty of other things
258
* possibly plenty of other things
259
 
259
 
260
 
260
 
261
                        =============================
261
                        =============================
262
                          %hWanna help? %lcontact.ama:Get in touch!
262
                          %hWanna help? %lcontact.ama:Get in touch!
263
                        =============================
263
                        =============================
264
 
264
 
265
        %h*** Why would I want to use SvarDOS instead of FreeDOS? ***
265
        %h*** Why would I want to use SvarDOS instead of FreeDOS? ***
266
 
266
 
267
The FreeDOS project is a free, open-source operating system that aims to be
267
The FreeDOS project is a free, open-source operating system that aims to be
268
100%% compatible with MS-DOS. And it is awesome. So why would I want to use
268
100%% compatible with MS-DOS. And it is awesome. So why would I want to use
269
SvarDOS instead?
269
SvarDOS instead?
270
 
270
 
271
%hLong release cycles
271
%hLong release cycles
272
 
272
 
273
The FreeDOS project began 29 June 1994. Version 1.0 came around in 2006.
273
The FreeDOS project began 29 June 1994. Version 1.0 came around in 2006.
274
Version 1.1 has been released in 2012, and the version 1.2 followed in
274
Version 1.1 has been released in 2012, and the version 1.2 followed in
275
December 2016. This translates roughly to a 5-years release cycle. Granted,
275
December 2016. This translates roughly to a 5-years release cycle. Granted,
276
the DOS scene is not as active as it used to be, but still, many things happen
276
the DOS scene is not as active as it used to be, but still, many things happen
277
during a few years. Such version-centric approach also requires users to
277
during a few years. Such version-centric approach also requires users to
278
perform full-system upgrades every now and then.
278
perform full-system upgrades every now and then.
279
 
279
 
280
SvarDOS is very different in this regard: there are no versions at all.
280
SvarDOS is very different in this regard: there are no versions at all.
281
Whenever a new program is included into or updated within the distribution, it
281
Whenever a new program is included into or updated within the distribution, it
282
becomes immediately available through the SvarDOS reposoitory and may be
282
becomes immediately available through the SvarDOS reposoitory and may be
283
pulled either through the SvarDOS website or SvarDOS' pkgnet tool. Already
283
pulled either through the SvarDOS website or SvarDOS' pkgnet tool. Already
284
installed systems can be easily kept up-to-date using the distribution's
284
installed systems can be easily kept up-to-date using the distribution's
285
package manager.
285
package manager.
286
 
286
 
287
%hConstraints of legal nature
287
%hConstraints of legal nature
288
 
288
 
289
The FreeDOS project mimicks a proprietary operating system, with all its APIs
289
The FreeDOS project mimicks a proprietary operating system, with all its APIs
290
and peculiarities. For this reason, the project always had to be extremely
290
and peculiarities. For this reason, the project always had to be extremely
291
careful about what can and what cannot be included within the FreeDOS
291
careful about what can and what cannot be included within the FreeDOS
292
distribution. As a result, only "free software" (as in freedom, think GPL,
292
distribution. As a result, only "free software" (as in freedom, think GPL,
293
BSD, and so on) can make its way into the official distribution. While such
293
BSD, and so on) can make its way into the official distribution. While such
294
cautious approach is sane and legally safe, it is far from practical for
294
cautious approach is sane and legally safe, it is far from practical for
295
users. Allowing exclusively free software means that a high number of useful
295
users. Allowing exclusively free software means that a high number of useful
296
programs, tools and games are left behind. For example "freeware" tools (as in
296
programs, tools and games are left behind. For example "freeware" tools (as in
297
"gratis but no source included") are a no-go. Even open-source programs can be
297
"gratis but no source included") are a no-go. Even open-source programs can be
298
rejected, if they do not clearly state that they comply with an OSI-approved
298
rejected, if they do not clearly state that they comply with an OSI-approved
299
license.
299
license.
300
 
300
 
301
SvarDOS, on the other hand, is much more liberal about including packages.
301
SvarDOS, on the other hand, is much more liberal about including packages.
302
Basically, anything that is objectively useful, of reasonable quality,
302
Basically, anything that is objectively useful, of reasonable quality,
303
free/gratis and can be legally distributed in the form of a package, can be
303
free/gratis and can be legally distributed in the form of a package, can be
304
included in SvarDOS. The only exception is for the "core" system (ie. the
304
included in SvarDOS. The only exception is for the "core" system (ie. the
305
operating system itself), which must be based exclusively on free/libre
305
operating system itself), which must be based exclusively on free/libre
306
software. Read more about %lpkgrules.ama:SvarDOS package inclusion rules%t.
306
software. Read more about %lpkgrules.ama:SvarDOS package inclusion rules%t.
307
 
307
 
308
%hFreeDOS included!
308
%hFreeDOS included!
309
 
309
 
310
It must be noted, that altough the goals of SvarDOS and FreeDOS may be
310
It must be noted, that altough the goals of SvarDOS and FreeDOS may be
311
slightly different, SvarDOS wouldn't exist without FreeDOS. Indeed, SvarDOS
311
slightly different, SvarDOS wouldn't exist without FreeDOS. Indeed, SvarDOS
312
uses the excellent FreeDOS kernel, as well as a few other utilities borrowed
312
uses the excellent FreeDOS kernel, as well as a few other utilities borrowed
313
from the FreeDOS ecosystem.
313
from the FreeDOS ecosystem.
314
 
314
 
315
Read also: %lhistory.ama:SvarDOS history
315
Read also: %lhistory.ama:SvarDOS history
316
 
316
 
317
%hSvarDOS origins (history from the point of view of its creator)
317
%hSvarDOS origins (history from the point of view of its creator)
318
 
318
 
319
Mateusz Viste, the SvarDOS author, says:
319
Mateusz Viste says:
320
 
320
 
321
In the years 2005-2015, I used to perform packaging work for the FreeDOS
321
In the years 2005-2015 I used to perform packaging work for the FreeDOS
322
project. I wasn't pleased with the packaging tool that FreeDOS used back then
322
project. I wasn't pleased with the packaging tool that FreeDOS used back then
323
(FDPKG), so in 2012 I started working on a new package manager, with network
323
(FDPKG), so in 2012 I started working on a new package manager, with network
324
support, automatic updates, etc - I named it FDNPKG. Later I also devised a
324
support, automatic updates, etc - I named it FDNPKG. Later I also devised a
325
scripted way of generating an "always up to date" FreeDOS CD that I
325
scripted way of generating an "always up to date" FreeDOS CD that I
326
unimaginatively called "all_cd.iso". This CD included FDNPKG and all the
326
unimaginatively called "all_cd.iso". This CD included FDNPKG and all the
327
FreeDOS packages available at the given moment.
327
FreeDOS packages available at the given moment.
328
 
328
 
329
I still wasn't satisfied with how FreeDOS clings to its notion of "releases"
329
I still wasn't satisfied with how FreeDOS clings to its notion of "releases"
330
and that it cannot include some software because of licensing issues, so in
330
and that it cannot include some software because of licensing issues, so in
331
2016 I decided to create my own distribution, that I called Svarog386 (there
331
2016 I decided to create my own distribution, that I called Svarog386 (there
332
was also a Svarog86 project that I had created a couple of months earlier,
332
was also a Svarog86 project that I had created a couple months earlier,
333
dedicated to 8086 machines). Svarog386 naturally relied on the FreeDOS kernel
333
dedicated to 8086 machines). Svarog386 naturally relied on the FreeDOS kernel
334
and used the FDNPKG package manager.
334
and used the FDNPKG package manager.
335
 
335
 
336
Then, in 2021, I started to be tired of having two separate distributions to
336
Then, in 2021, I found it increasingly annoying to look after two separate
337
care about. Over time, FDNPKG also became a huge piece of protected mode code,
337
distributions. Over time, FDNPKG also became a huge piece of protected mode
338
and although it was magnificent code, I was no longer happy with it: too many
338
code, and although it was magnificent code, I was no longer happy with it: too
339
features, too complex data processing, too high memory requirements... In a
339
many features, too much data processing, too much memory required... In a
340
word: too much fluff. I longed for something simpler, that would do perhaps
340
word: too much fluff. I longed for something simpler, that would do perhaps
341
less, but with more transparency towards the user - and something that would
341
less, but with more transparency towards the user - and something that would
342
work in real mode with not much RAM, so it could be useful even on ancient
342
work in real mode with not much RAM, so it could run even on ancient 8086
343
8086 machines.
343
machines.
344
 
344
 
345
The result of these thoughts was SvarDOS: a distribution that replaced both
345
The result of these thoughts was SvarDOS: a distribution that replaced both
346
Svarog86 and Svarog386, and that came with its own package manager - a much
346
Svarog86 and Svarog386, and that came with its own package manager - a much
347
simpler (and in my opinion much more elegant) tool than FDNPKG.
347
simpler (and in my opinion much more elegant) tool than FDNPKG.
348
SVARDOS HELP SYSTEM ver 20210213
348
SVARDOS HELP SYSTEM ver 20210403
349
 
349