Commit Graph

56 Commits (master)

Author SHA1 Message Date
Mike Swanson 82b14b3b55 levels: Change “chapter” terminology to “episode”
A generic term like this isn’t really suitable for trademark, nor
likely to ever be disputed.  The community and the engine both heavily
bias toward “episode” and indeed most other games do.

Closes: #682
2020-07-15 14:02:57 -07:00
Hugo Locurcio d6392ce169
dist: Request dedicated GPU when starting Freedoom from `.desktop` file
See <https://www.hadess.net/2020/05/dual-gpu-support-launch-on-discrete-gpu.html>
for more information about this newly added `.desktop` entry property.
2020-05-06 21:22:22 +02:00
Mike Swanson 4e0a23811d Add missing SPDX identifiers, use CC0 explicitly in dist 2020-02-03 12:31:55 -08:00
Mike Swanson bde0eddaea dist/freedoom: use “/usr/bin/env” for finding bash
Not all systems (FreeBSD or Mac OS X, as examples) have a bash
installed at /bin/bash.  Using /usr/bin/env is a OS-portable way to
invoke a script.
2020-02-03 12:14:16 -08:00
Mike Swanson 08b1deeee3 Makefile: use XDG-compliant icon file names
Completes PR #638
2019-11-05 11:27:12 -08:00
Eonfge 108721d34d Added desktop-standard compliant icon names 2019-10-30 17:40:14 +01:00
Mike Swanson e532a931d8 bump version to 0.12.1 2019-10-22 11:27:59 -07:00
Mike Swanson 03a2baf1ea dist: freedm screenshots and 0.12 release date 2019-10-09 18:20:33 -07:00
Mike Swanson 490f603ba2 dist: point metainfo to 0.12 screenshots 2019-10-09 16:23:53 -07:00
Mike Swanson 6fd4b68523 dist: remove “Freedoom:” from launcher names
GNOME Shell normally doesn’t display enough of the name on-screen,
leaving “Freedoom: P…” on the icons and making it impossible to
distinguish the games by name.

While not entirely ideal, just having “Phase 1” and “Phase 2” should
be decent enough.
2019-09-25 19:34:55 -07:00
Mike Swanson 409e3888ee dist/metainfo: add categories, expand on content rating 2019-09-17 20:27:02 -07:00
Mike Swanson 5947b4229f dist/freedoom: rearrange and change ports to search for
GZDoom gets bumped up to second for its support for high screen
resolutions.  PrBoom-Plus gets bumped to last-place for its menu
complexity.  Eternity got removed due to its difficulty of building
and running on Linux.
2019-09-17 17:14:48 -07:00
Mike Swanson 089180b9a8 dist/metainfo: use reverse-DNS identifiers in <id> tags 2019-09-17 16:57:27 -07:00
Mike Swanson 366cc87d3c dist: add “SEE ALSO” section to the man page
Most source ports do not include man pages sadly, but these three do.
Also point to the wiki to be nice in general.
2019-09-17 04:47:06 -07:00
Mike Swanson db2d48a8ce make: allow controlling asciidoc implementation via variables
ASCIIDOC and ASCIIDOC_MAN have been added, which default to the
(Python-based) reference implementation, but may be changed to
asciidoctor simply.

The manpages have been modified to use single-line section headings
for AsciiDoctor compatibility.
2019-09-12 11:22:11 -07:00
Mike Swanson 8c97b73502 Makefile: use reverse-DNS to install desktop and metainfo files
Current Desktop Entry and AppStream standards recommend using
reverse-DNS for all relevant files under them.

Adds some more scaffolding targets for install/uninstall, but there
aren’t easy text transformations to the new names.
2019-09-07 11:27:21 -07:00
Mike Swanson d9a1ff3e78 dist/freedoom: support ~/.local installs, make it easier to read paths
Bunch of logic to use XDG_DATA_HOME or fallback according to the
actual XDG recommendations.

Use an array to build up paths (can be edited easily in the future or
for whatever custom purpose), which shellcheck warned is a bash-ism,
so change the script interpreter to bash as well.  Let’s hope that
doesn’t break anyone (does anyone lack bash even if they don’t use it
as their shell?)
2019-09-07 01:52:47 -07:00
Mike Swanson 6eef9be73a use python3 only for building
Python 2 is very near end-of-life, and Python3-compatible changes to a
few scripts introduced compatibility problems with 2.7 again.  It went
unnoticed for me since my system symlinks "python" to "python3", but
it broke the build on systems where that symlink is still python2.  At
this point in time, I feel it is worth targetting modern Python and
forgetting about 2.7.
2019-09-06 14:43:50 -07:00
William Breathitt Gray 47dd54d5ce dist/freedoom: Set DOOMWADPATH with sensible default value if unset
Engines such as Odamex may not have a default search path and simply
search for freedoom1.wad relative to the current directory. This can
cause an unexpected WAD file not found error when executing the freedoom
script.

This issue is mitigated by setting a default DOOMWADPATH environment
variable with sensible search paths, if it is not already set. All
engines listed in the PORTS variable support the DOOMWADPATH environment
variable, which makes it a simple and convenient way of helping prevent
this error.
2019-09-06 16:20:49 +09:00
Steven Elliott b2ca8cbfde Organize .gitignore
Organize .gitignore by moving all patterns into a top level sorted
.gitignore file. With this change both "git status" and
"git-ls-ignore-index" should return cleanly. The later checks if any
files in the index are ignored.
2019-09-05 07:09:47 -05:00
Mike Swanson 4701d8f351 Blacken all Python files
Using the black code reformatter, pass it over all our Python files.
This allows for a consistent style across the code base.

Exception: lumps/dmxgus/stats.py, for readability.
2019-09-04 19:36:23 -07:00
Mike Swanson fe7d6f864a dist/freedoom: use DOOMPORT envvar rather than PORT (breaking change)
PORT is too generic, especially if refering to TCP/UDP ports, and if
those are set, the freedoom script may not work properly.  DOOMPORT is
a reasonable alternative.
2019-09-04 14:08:34 -07:00
Mike Swanson 96b28272a6 dist/Makefile: rewrite targets so they build only when sources change
Also includes a change to the top-level Makefile to accommodate new
target names.  Moved the installation variable settings close to the
install targets.
2019-09-04 14:06:17 -07:00
Mike Swanson 3b0f55db25 documentation: change ascii ' quotes to either ’ or _
Non-reference AsciiDoc implementations such as AsciiDoctor (used by
GitHub) or even the simplistic parser in loccount choke up on these
characters for different reasons.  AsciiDoctor doesn’t seem to even
parse them, displaying them as-is and not with emphasized text.
loccount would get hung up on possessives, expecting a terminating
character for emphasis that never comes.

Annoying, but easy to work around.  the curly ’ character can be used
for possessives and _underscores_ can be used for emphasis.
2019-08-25 21:17:41 -07:00
Mike Swanson d6cdeeeac2 dist: add an "all" target to Makefile
Allows everything to be easily built by manually entering the dist
directory and typing `make`.
2019-07-05 10:38:20 -07:00
Hugo Locurcio 492370cca0
dist: Add releases and content rating to AppStream metadata
Those tags are now required by Flathub.

This closes #522.
2019-05-16 15:14:58 +02:00
Mike Swanson 0d6bb9fc72 dist: Use Pillow to generate application icons. 2017-07-31 16:41:07 -07:00
Mike Swanson 9c6c681276 Burn all GIFs: Convert everything to PNGs.
DeuTex 5 now supports these, and we can use real transparency indexes
in the files too, so no more ugly cyan background!
2017-07-18 22:26:52 -07:00
Mike Swanson 96ca8bf67b Deemphasize Final Doom compatibility.
Given that there are a handful of animations that are fundamentally
incompatible between Doom II and Final Doom, and we have decided that
the correct thing to do is to prefer Doom II compatibility.
Additionally, there are only maybe a half dozen Final Doom mods around
and they pretty much all focus on being unofficial sequels.  We won’t
remove nor continue to improve the existing TNT/Plutonia-specific
resources, let’s just make it a little less of an issue when those
mods are broken (assuming it’s due to the Doom II conflicts...).
2017-07-18 21:07:15 -07:00
RjY e94bcdd9ea graphics/titlepic: remove author subdirectory
- move captainw/* into titlepic (rename fdmtitle to freedm_titlepic)
- fix file paths in dist/Makefile, graphics/titlepic/Makefile
2017-03-14 11:43:33 +00:00
Mike Swanson 28bf232711 dist: Remove boom, zdoom, prboom. Add crispy-doom.
‘boom’ and ‘doom’ represent Debian-style links for the alternatives
system to set up preferred ports.  Now that we no longer require
Boom compatibility, it should be safe to remove the former. This
should only be an issue if chocolate-doom -> doom, and tries to play
one of the maps that aren’t vanilla-compatible yet.

zdoom and prboom are dead ports, superceded by gzdoom and prboom-plus.
I hope their removals aren’t controversial.  If it adversally affects
anybody: setup the ~/.doomport symlink to point to them.

Finally, crispy-doom.  Odamex is still preferred before it because of
its simpler multiplayer capabilities, otherwise Crispy would have been
a winner (imo).  It has a close relationship to Chocolate Doom, but I’m
leaving that last because of the non-vanilla compatibility of Freedoom.
Chocolate Doom is a last effort to run something.
2017-02-19 17:52:35 -08:00
Mike Swanson 16da587294 Bump version to 0.11 2017-02-15 19:53:21 -08:00
Mike Swanson 8835afef5f Copyright date bump and apply SPDX tags.
The tags are shorthand for the license of each file and avoid
copying the full license text into each one (and avoids having
to manually update the dates in each one...).
2017-02-15 16:41:53 -08:00
Mike Swanson e081ac986f Change quotes in AsciiDoc to left/right Unicode versions
GitHub’s AsciiDoc parser barfs on the standard AsciiDoc syntax to
represent such characters with only ASCII…  Well, everybody should
support UTF‐8 these days.  Let’s just use these directly.
2016-09-03 15:37:48 -07:00
Mike Swanson 4a7329b0b0 dist: update appdata files for new screenshots 2015-12-15 18:50:46 -08:00
Mike Swanson 8846bda9c0 dist: update *.appdata.xml to validate with the current spec 2015-12-09 15:52:38 -08:00
GreenLunar 14b4bdd0e2 Add Hebrew translation of freedoom2.desktop 2015-08-13 18:09:59 +03:00
GreenLunar f335c23d72 Add Hebrew translation of freedoom1.desktop 2015-08-13 18:07:33 +03:00
GreenLunar 3a92226b31 Add Hebrew translation of freedm.desktop 2015-08-13 18:04:03 +03:00
Mike Swanson 107eeaccf1 dist: Remove Path from the desktop entries
This will cause problems if the engine tries to write files in the
current directory. For example, screenshots will fail.
2015-06-18 09:32:17 -07:00
Mike Swanson 83c12427fd dist: update the AppData XML to current standard specifications 2015-06-12 09:58:21 -07:00
Mike Swanson 18a43617e3 dist: Clean up generated files 2014-11-02 17:24:05 -08:00
Simon Howard f1c35d17e3 dist: Add icon version of FreeDM logo.
Rework CaptainW's FreeDM logo so that the "Free" and "DM" portions
are arranged vertically rather than horizontally. Update the dist/
directory to generate the installed FreeDM icon by scaling down
this image.
2014-11-02 20:07:40 -05:00
Mike Swanson 075b995523 freedm appdata: Slight wording change, remove + on "32+ levels" 2014-10-12 23:09:04 -07:00
Mike Swanson 3a944b097d dist: Change AppData screenshots to 0.9 URLs
These don't actually exist yet, but let's get it over with.
2014-10-12 01:14:03 -07:00
Mike Swanson 3019e194ec dist/freedoom: Add an error condition if no engine was executed 2014-10-02 15:50:13 -07:00
Mike Swanson f6fcee1600 dist: new application icons and Makefile
Continuing the discussion started on GitHub over
2014-09-30T01:33:29Z!mikeonthecomputer@gmail.com, all desktop entries
now have unique icons. Keeping my own personal bias, stfkill3 is still
used for FreeDM, but the Debian choices for their own distro are used
for Phases 1 and 2.

Also, the icons are actually generated automatically now.
2014-09-30 23:01:38 -07:00
Mike Swanson f277033fbb Makefile: Clean up install targets, don't duplicate them all. 2014-09-29 18:57:25 -07:00
Mike Swanson ced5b1eee8 dist: Add application icon based on stfkill3
This should probably be created automatically in case our status bar
face ever changes, but I find it easier to manually copy and create it
for now.
2014-09-29 18:33:29 -07:00
Mike Swanson f840aaa8f1 dist/freedoom: use exec to launch a port
exec will terminate the script itself as well as returning the exit
code from the port.
2014-09-28 03:56:10 -07:00