git archives

This commit is contained in:
Trilarion 2018-06-11 14:42:52 +02:00
parent a75480724d
commit 91e703e7fb
14 changed files with 55 additions and 32 deletions

File diff suppressed because one or more lines are too long

View File

@ -36,7 +36,7 @@
- **[Polycode](polycode.md)** (C, C++, MIT, beta) - **[Polycode](polycode.md)** (C, C++, MIT, beta)
- **[Qt](qt.md)** (C++, LGPL-3.0, mature) - **[Qt](qt.md)** (C++, LGPL-3.0, mature)
- **[Quad-engine](quad.md)** (Pascal, MIT, beta) - **[Quad-engine](quad.md)** (Pascal, MIT, beta)
- **[SDL Game Engine 2D](sge2d.md)** (C, MIT, beta) - **[SDL Game Engine 2D](sge2d.md)** (C, MIT, beta, inactive since 2014)
- **[ScummVM](scummvm.md)** (C++, GPL-2.0, mature) - **[ScummVM](scummvm.md)** (C++, GPL-2.0, mature)
- **[Solarus](solarus.md)** (C++, GPL-3.0, mature) - **[Solarus](solarus.md)** (C++, GPL-3.0, mature)
- **[Superpowers](superpowers.md)** (Typescript, ISC, mature) - **[Superpowers](superpowers.md)** (Typescript, ISC, mature)

View File

@ -4,7 +4,7 @@ _2D game programming framework for c/c++ programmers with least possible depende
- Home: https://sourceforge.net/projects/sge2d/, https://web.archive.org/web/20110526140520/http://agnosent.com:80/wolfcms/open-source/sge2d - Home: https://sourceforge.net/projects/sge2d/, https://web.archive.org/web/20110526140520/http://agnosent.com:80/wolfcms/open-source/sge2d
- Download: https://sourceforge.net/projects/sge2d/files/sge2d/ - Download: https://sourceforge.net/projects/sge2d/files/sge2d/
- State: beta - State: beta, inactive since 2014
- Code repository: https://github.com/Trilarion/sge2d (import of the svn), https://sourceforge.net/p/sge2d/code/HEAD/tree/ (svn) - Code repository: https://github.com/Trilarion/sge2d (import of the svn), https://sourceforge.net/p/sge2d/code/HEAD/tree/ (svn)
- Code language: C - Code language: C
- Code license: MIT - Code license: MIT

View File

@ -6,7 +6,7 @@ _Capable of producing high-quality output (glyph images) of most vector and bitm
- Media: https://en.wikipedia.org/wiki/FreeType - Media: https://en.wikipedia.org/wiki/FreeType
- Download: https://www.freetype.org/download.html - Download: https://www.freetype.org/download.html
- State: mature - State: mature
- Code repository: http://git.savannah.gnu.org/cgit/freetype/ - Code repository: https://git.savannah.gnu.org/git/freetype/freetype2.git (http://git.savannah.gnu.org/cgit/freetype/), https://git.savannah.gnu.org/git/freetype/freetype2-demos.git (+)
- Code language: C - Code language: C
- Code license: GPL - Code license: GPL

View File

@ -2,11 +2,11 @@
_libpng is the official PNG reference library._ _libpng is the official PNG reference library._
- Home: http://libpng.org/pub/png/libpng.html - Home: http://libpng.org/pub/png/libpng.html, https://libpng.sourceforge.io/
- Media: https://en.wikipedia.org/wiki/Libpng - Media: https://en.wikipedia.org/wiki/Libpng
- Download: (see home) - Download: (see home)
- State: mature - State: mature
- Code repository: https://sourceforge.net/p/libpng/code/ci/master/tree/ - Code repository: https://github.com/glennrp/libpng, https://sourceforge.net/p/libpng/code/ci/master/tree/
- Code language: C - Code language: C
- Code license: Custom (see LICENSE) - Code license: Custom (see LICENSE)

View File

@ -6,7 +6,7 @@ _Libxml2 is the XML C parser and toolkit developed for the Gnome project (but us
- Media: https://en.wikipedia.org/wiki/Libxml2 - Media: https://en.wikipedia.org/wiki/Libxml2
- Download: http://www.xmlsoft.org/downloads.html - Download: http://www.xmlsoft.org/downloads.html
- State: mature - State: mature
- Code repository: https://git.gnome.org//browse/libxml2/ - Code repository: https://gitlab.gnome.org/GNOME/libxml2.git
- Code language: C - Code language: C
- Code license: MIT - Code license: MIT

View File

@ -6,7 +6,7 @@ _Powerful, efficient, lightweight, embeddable scripting language._
- Media: <https://en.wikipedia.org/wiki/Lua_(programming_language)> - Media: <https://en.wikipedia.org/wiki/Lua_(programming_language)>
- Download: http://www.lua.org/download.html - Download: http://www.lua.org/download.html
- State: mature - State: mature
- Code repository: (see download) https://github.com/lua/lua (mirror) - Code repository: https://github.com/lua/lua (mirror)
- Code language: C - Code language: C
- Code license: MIT - Code license: MIT

View File

@ -4,10 +4,10 @@ _Cross-platform audio application programming interface (API)._
- Home: http://www.openal.org/ - Home: http://www.openal.org/
- Media: https://en.wikipedia.org/wiki/OpenAL - Media: https://en.wikipedia.org/wiki/OpenAL
- Download: http://www.openal.org/downloads/
- State: mature - State: mature
- Code repository: http://www.openal.org/downloads/ - Code repository: (see downloads)
- Code license: Proprietary - Code license: Proprietary (since v1.1, LGPL before)
- Code license details: since v1.1, LGPL before
## Building ## Building

View File

@ -6,7 +6,7 @@ _Toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) p
- Media: https://en.wikipedia.org/wiki/OpenSSL - Media: https://en.wikipedia.org/wiki/OpenSSL
- Download: https://www.openssl.org/source/ - Download: https://www.openssl.org/source/
- State: mature - State: mature
- Code repository: https://www.openssl.org/source/gitrepo.html https://github.com/openssl/openssl (mirror) - Code repository: https://github.com/openssl/openssl (mirror), https://www.openssl.org/source/gitrepo.html
- Code language: C - Code language: C
- Code license: Custom (Dual licensed under special licenses, https://github.com/openssl/openssl/blob/master/LICENSE) - Code license: Custom (Dual licensed under special licenses, https://github.com/openssl/openssl/blob/master/LICENSE)

View File

@ -5,7 +5,7 @@ _Demo game for Adonthell._
- Home: http://adonthell.nongnu.org/download/index.html - Home: http://adonthell.nongnu.org/download/index.html
- Download: (see home) - Download: (see home)
- State: beta - State: beta
- Code repository: http://git.savannah.gnu.org/cgit/adonthell/adonthell-wastesedge.git - Code repository: https://git.savannah.gnu.org/git/adonthell/adonthell-wastesedge.git
- Code language: Python - Code language: Python
- Code license: GPL-2.0 - Code license: GPL-2.0

View File

@ -1,17 +1,17 @@
[comment]: # (autogenerated content, do not edit) [comment]: # (autogenerated content, do not edit)
# Statistics # Statistics
analyzed 405 entries on 2018-06-11 13:59:41 analyzed 405 entries on 2018-06-11 14:40:03
## State ## State
- mature: 236 (58.3%) - mature: 236 (58.3%)
- beta: 169 (41.7%) - beta: 169 (41.7%)
- inactive: 170 (42.0%) - inactive: 171 (42.2%)
##### Inactive State ##### Inactive State
Zone of Control (2017), 3d.city (2016), Atlantis (2016), Atrinik (2016), Birth of the Empires (2016), DNT (2016), Dark Destiny (2016), Dungeon Monkey Eternal (2016), FreeRCT (2016), Mechanized Assault & eXploration Reloaded (2016), Polis (2016), WarGame (2016), Dash Engine (2015), Delta Engine (2015), Egoboo (2015), Free heroes2 engine (2015), M.E.W.L. (2015), Project Helena (2015), Roguish (2015), The Epic of Heroes (2015), TwinEngine (2015), Witch Blast (2015), pyORPG (2015), Argentum Online (2014), Battles of Antargis (2014), Deity (2014), Drop Shock (2014), Dune Dynasty (2014), EternalWinterWars (2014), FAR Colony (2014), Hale (2014), Heroes of Wing Commander (2014), Kingdoms (2014), Lips of Suna (2014), Open RPG Maker (2014), Open Tibia (2014), Sintel The Game (2014), Summoning Wars (2014), Turious (2014), Xenowar (2014), rpge (2014), sandbox Game Maker (2014), Bos Wars (2013), C-evo (2013), Decker (2013), DemiGod (2013), Dungeon Mapper (2013), Holyspirit (2013), MechCommander 2 Omnitech (2013), Mpango (2013), OpenRPG (2013), Phantasy Star Rebirth (2013), Room for Change (2013), Source of Tales (2013), Trinity Reign (2013), VegaTrek (2013), BlackNova Traders (2012), Cataclysm (2012), CommandoJS (2012), Conquests (2012), Dark City (2012), Goblin Camp (2012), Hexwar (2012), Outer Space (2012), PARPG (2012), Solar Empire (2012), Thousand Parsec (2012), UFO2000 (2012), Wizards Magic (2012), Age of Magic (2011), Battlefield Java (2011), Danger from the Deep (2011), Dawn (2011), GalaxyMage Redux (2011), JaNaG - Java Name Generator (2011), KQ Lives (2011), Kobold's Quest 2 (2011), OpenMOO2 (2011), Project Diaspora (2011), RuneSword II (2011), Song of Albion (2011), Star Control II: The Ur-Quan Masters (2011), UlDunAd (2011), World of Phaos (2011), X-Force: Fight For Destiny (2011), AI Wars (2010), Crimson Fields (2010), Dragon History (2010), Endgame: Singularity (2010), Labyrinth of Worlds (2010), Linwarrior 3D (2010), Mercenary Commander (2010), OpenHoMM (2010), Radakan (2010), Skrupel - Tribute Compilation (2010), Slay (2010), Solaris the Game (2010), SpaceTrader for Java (2010), XSera (2010), 8 Kingdoms (2009), Alien Assault Traders (2009), Annchienta (2009), Ardentryst (2009), Begin2 (2009), Blitzkrieg (2009), Dark Oberon (2009), Duel Commander (2009), Fall of Imyrin (2009), Fallen Spire (2009), FreeTrain (2009), Glest (2009), Goblin Hack (2009), ORIENT (2009), OpenPop (2009), Secret Mario Chronicles (2009), World of Heroes (2009), A Planet's Revenge (2008), Attal (2008), Freestars (2008), Mars, Land of No Mercy (2008), Meritous (2008), Moopy (2008), Moria (2008), S.C.O.U.R.G.E. (2008), Scoreos (2008), Sengoku: Warring States of Japan (2008), Space Opera (2008), Space Trader for Windows (2008), Armies (2007), Eos, Dawn of Light: A Space Opera (2007), Silvertree (2007), Slash'EM (2007), Arthur's Knights (2006), Avanor (2006), Betrayer's Moon Tactics (2006), Boson (2006), Crown and Cutless (2006), Eleconics (2006), JQuest (2006), Linley's Dungeon Crawl (2006), Metal Mech (2006), RPDungeon - computer aided role playing (2006), Rogue Clone IV (2006), Underworld Adventures (2006), Visions from the Other Side (2006), GalaxyNG (2005), H-World (2005), Spice Trade (2005), WAtomic (2005), ZAngband (2005), Colonization too (2004), GM Tools (2004), Gee Whiz (2004), Iter Vehemens ad Necem (2004), Openglad (2004), Promisance (2004), T-Bots (2004), AntiChess (2003), Cat Mother Dead Justice (2003), Civil (2003), Machinations (2003), Pizza Business (2003), Planetary Hoppers (2003), The Clans (2003), Wargamer (2003), XArchon (2003), Umbra (2002), Greenius' Civil War (2001), Tux Racer (2001), Operation Citadel (2000) Zone of Control (2017), 3d.city (2016), Atlantis (2016), Atrinik (2016), Birth of the Empires (2016), DNT (2016), Dark Destiny (2016), Dungeon Monkey Eternal (2016), FreeRCT (2016), Mechanized Assault & eXploration Reloaded (2016), Polis (2016), WarGame (2016), Dash Engine (2015), Delta Engine (2015), Egoboo (2015), Free heroes2 engine (2015), M.E.W.L. (2015), Project Helena (2015), Roguish (2015), The Epic of Heroes (2015), TwinEngine (2015), Witch Blast (2015), pyORPG (2015), Argentum Online (2014), Battles of Antargis (2014), Deity (2014), Drop Shock (2014), Dune Dynasty (2014), EternalWinterWars (2014), FAR Colony (2014), Hale (2014), Heroes of Wing Commander (2014), Kingdoms (2014), Lips of Suna (2014), Open RPG Maker (2014), Open Tibia (2014), SDL Game Engine 2D (2014), Sintel The Game (2014), Summoning Wars (2014), Turious (2014), Xenowar (2014), rpge (2014), sandbox Game Maker (2014), Bos Wars (2013), C-evo (2013), Decker (2013), DemiGod (2013), Dungeon Mapper (2013), Holyspirit (2013), MechCommander 2 Omnitech (2013), Mpango (2013), OpenRPG (2013), Phantasy Star Rebirth (2013), Room for Change (2013), Source of Tales (2013), Trinity Reign (2013), VegaTrek (2013), BlackNova Traders (2012), Cataclysm (2012), CommandoJS (2012), Conquests (2012), Dark City (2012), Goblin Camp (2012), Hexwar (2012), Outer Space (2012), PARPG (2012), Solar Empire (2012), Thousand Parsec (2012), UFO2000 (2012), Wizards Magic (2012), Age of Magic (2011), Battlefield Java (2011), Danger from the Deep (2011), Dawn (2011), GalaxyMage Redux (2011), JaNaG - Java Name Generator (2011), KQ Lives (2011), Kobold's Quest 2 (2011), OpenMOO2 (2011), Project Diaspora (2011), RuneSword II (2011), Song of Albion (2011), Star Control II: The Ur-Quan Masters (2011), UlDunAd (2011), World of Phaos (2011), X-Force: Fight For Destiny (2011), AI Wars (2010), Crimson Fields (2010), Dragon History (2010), Endgame: Singularity (2010), Labyrinth of Worlds (2010), Linwarrior 3D (2010), Mercenary Commander (2010), OpenHoMM (2010), Radakan (2010), Skrupel - Tribute Compilation (2010), Slay (2010), Solaris the Game (2010), SpaceTrader for Java (2010), XSera (2010), 8 Kingdoms (2009), Alien Assault Traders (2009), Annchienta (2009), Ardentryst (2009), Begin2 (2009), Blitzkrieg (2009), Dark Oberon (2009), Duel Commander (2009), Fall of Imyrin (2009), Fallen Spire (2009), FreeTrain (2009), Glest (2009), Goblin Hack (2009), ORIENT (2009), OpenPop (2009), Secret Mario Chronicles (2009), World of Heroes (2009), A Planet's Revenge (2008), Attal (2008), Freestars (2008), Mars, Land of No Mercy (2008), Meritous (2008), Moopy (2008), Moria (2008), S.C.O.U.R.G.E. (2008), Scoreos (2008), Sengoku: Warring States of Japan (2008), Space Opera (2008), Space Trader for Windows (2008), Armies (2007), Eos, Dawn of Light: A Space Opera (2007), Silvertree (2007), Slash'EM (2007), Arthur's Knights (2006), Avanor (2006), Betrayer's Moon Tactics (2006), Boson (2006), Crown and Cutless (2006), Eleconics (2006), JQuest (2006), Linley's Dungeon Crawl (2006), Metal Mech (2006), RPDungeon - computer aided role playing (2006), Rogue Clone IV (2006), Underworld Adventures (2006), Visions from the Other Side (2006), GalaxyNG (2005), H-World (2005), Spice Trade (2005), WAtomic (2005), ZAngband (2005), Colonization too (2004), GM Tools (2004), Gee Whiz (2004), Iter Vehemens ad Necem (2004), Openglad (2004), Promisance (2004), T-Bots (2004), AntiChess (2003), Cat Mother Dead Justice (2003), Civil (2003), Machinations (2003), Pizza Business (2003), Planetary Hoppers (2003), The Clans (2003), Wargamer (2003), XArchon (2003), Umbra (2002), Greenius' Civil War (2001), Tux Racer (2001), Operation Citadel (2000)
## Code Languages ## Code Languages

View File

@ -1,7 +1,11 @@
[ [
"http://repo.or.cz/openal-soft.git",
"https://anongit.freedesktop.org/git/pkg-config.git", "https://anongit.freedesktop.org/git/pkg-config.git",
"https://git.octaforge.org/engine/octaforge.git", "https://git.octaforge.org/engine/octaforge.git",
"https://git.savannah.gnu.org/git/adonthell/adonthell-wastesedge.git",
"https://git.savannah.gnu.org/git/freedink.git", "https://git.savannah.gnu.org/git/freedink.git",
"https://git.savannah.gnu.org/git/freetype/freetype2-demos.git",
"https://git.savannah.gnu.org/git/freetype/freetype2.git",
"https://git.savannah.gnu.org/git/rpge.git", "https://git.savannah.gnu.org/git/rpge.git",
"https://git.savannah.nongnu.org/git/lordsawar.git", "https://git.savannah.nongnu.org/git/lordsawar.git",
"https://git.tukaani.org/xz.git", "https://git.tukaani.org/xz.git",
@ -92,6 +96,7 @@
"https://github.com/freeors/War-Of-Kingdom.git", "https://github.com/freeors/War-Of-Kingdom.git",
"https://github.com/freeserf/freeserf.git", "https://github.com/freeserf/freeserf.git",
"https://github.com/gemrb/gemrb.git", "https://github.com/gemrb/gemrb.git",
"https://github.com/glennrp/libpng.git",
"https://github.com/godotengine/godot.git", "https://github.com/godotengine/godot.git",
"https://github.com/godrin/antargis.git", "https://github.com/godrin/antargis.git",
"https://github.com/graememcc/micropolisJS.git", "https://github.com/graememcc/micropolisJS.git",
@ -136,6 +141,7 @@
"https://github.com/nicupavel/openpanzer.git", "https://github.com/nicupavel/openpanzer.git",
"https://github.com/nlarn/nlarn.git", "https://github.com/nlarn/nlarn.git",
"https://github.com/openlegend/core-rules.git", "https://github.com/openlegend/core-rules.git",
"https://github.com/openssl/openssl.git",
"https://github.com/openzelda/openzelda-source.git", "https://github.com/openzelda/openzelda-source.git",
"https://github.com/orx/orx.git", "https://github.com/orx/orx.git",
"https://github.com/ozkriff/zoc.git", "https://github.com/ozkriff/zoc.git",
@ -171,5 +177,6 @@
"https://github.com/xesf/twin-e.git", "https://github.com/xesf/twin-e.git",
"https://github.com/zaki/irrlicht.git", "https://github.com/zaki/irrlicht.git",
"https://gitlab.com/evol/evol-all.git", "https://gitlab.com/evol/evol-all.git",
"https://gitlab.com/solarus-games/zsdx.git" "https://gitlab.com/solarus-games/zsdx.git",
"https://gitlab.gnome.org/GNOME/libxml2.git"
] ]

View File

@ -22,24 +22,24 @@ def read_text(file):
text = f.read() text = f.read()
return text return text
def friendly_folder_name(folder):
folder = folder.replace('/', '.')
return folder
def derive_folder_name(url): def derive_folder_name(url):
replaces = { replaces = {
'https://github.com': 'github', 'https://github.com': 'github',
'https://git.code.sf.net/p': 'sourceforge', 'https://git.code.sf.net/p': 'sourceforge',
'https://git.tuxfamily.org': 'tuxfamily', 'https://git.tuxfamily.org': 'tuxfamily',
'https://git.savannah.gnu.org/git': 'savannah.gnu',
'https://gitlab.com': 'gitlab'
} }
sanitize = lambda x: x.replace('/', '.')
for service in replaces: for service in replaces:
if url.startswith(service): if url.startswith(service):
url = replaces[service] + url[len(service):] url = replaces[service] + url[len(service):]
return friendly_folder_name(url) return sanitize(url)
generic = 'https://' generics = ['http://', 'https://']
for generic in generics:
if url.startswith(generic) and url.endswith('.git'): if url.startswith(generic) and url.endswith('.git'):
url = url[len(generic):] url = url[len(generic):]
return friendly_folder_name(url) return sanitize(url)
raise Exception('unknown service, please define') raise Exception('unknown service, please define')
@ -63,16 +63,31 @@ if __name__ == '__main__':
# read archives.json # read archives.json
text = read_text(os.path.join(root_folder, 'archives.json')) text = read_text(os.path.join(root_folder, 'archives.json'))
archives = json.loads(text) archives = json.loads(text)
print('update {} archives'.format(len(archives)))
# loop over archives # get derived folder names
for archive in archives: folders = [derive_folder_name(url) for url in archives]
folder = os.path.join(root_folder, derive_folder_name(archive))
# if not existing do the initial checkout # find those folders not used anymore
if not os.path.isdir(folder): existing_folders = [x for x in os.listdir(root_folder) if os.path.isdir(os.path.join(root_folder, x))]
unused_folders = [x for x in existing_folders if x not in folders]
print('{} unused archives'.format(len(unused_folders)))
if unused_folders:
print(unused_folders)
# new folder, need to clone
new_folders = [x for x in folders if x not in existing_folders]
print('{} new archives, will clone'.format(len(new_folders)))
# add root to folders
folders = [os.path.join(root_folder, x) for x in folders]
os.chdir(root_folder) os.chdir(root_folder)
for folder, archive in zip(folders, archives):
if not os.path.isdir(folder):
clone(archive, folder) clone(archive, folder)
# at the end update them all
for folder in folders:
# pull all # pull all
os.chdir(folder) os.chdir(folder)
pull() pull()
@ -80,3 +95,4 @@ if __name__ == '__main__':

View File

@ -521,7 +521,7 @@ def git_repo(repo):
if repo.startswith(service): if repo.startswith(service):
return repo return repo
# generic (https://*.git) # generic (https://*.git)
if repo.startswith('https://') and repo.endswith('.git'): if (repo.startswith('https://') or repo.startswith('http://')) and repo.endswith('.git'):
return repo return repo
return None return None