From 3645672af55910ca9dc7e6a4b134fad7f584ce7d Mon Sep 17 00:00:00 2001 From: Sandro Bonazzola Date: May 22 2017 13:05:14 +0000 Subject: Initial import --- diff --git a/.gitignore b/.gitignore index e69de29..573b694 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/laby-0.6.4.tar.gz diff --git a/0001-Adapts-to-smaller-screens.patch b/0001-Adapts-to-smaller-screens.patch new file mode 100644 index 0000000..b33ba7a --- /dev/null +++ b/0001-Adapts-to-smaller-screens.patch @@ -0,0 +1,95 @@ +From 1932542ac46aca936ee57747f633f1af4d0881f7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Gimenez?= +Date: Wed, 19 Nov 2014 13:15:46 +0100 +Subject: [PATCH 01/11] Adapts to smaller screens + +The spiral level is now one leg smaller. +Also improves the readability of the start screen logo. +--- + data/conf | 4 ++-- + data/levels/4a.laby | 4 +--- + src/gfx.ml | 9 +++++---- + src/level.ml | 4 ++-- + 4 files changed, 10 insertions(+), 11 deletions(-) + +diff --git a/data/conf b/data/conf +index cae4897..8155edc 100644 +--- a/data/conf ++++ b/data/conf +@@ -1,6 +1,6 @@ + #int gfx.tile-size :40 +-#int gfx.window.width :1000 +-#int gfx.window.height :750 ++#int gfx.window.width :640 ++#int gfx.window.height :480 + #string gfx.source-style :classic + #string mod.selected :ocaml + #bool mod.exclusive :false +diff --git a/data/levels/4a.laby b/data/levels/4a.laby +index ad9565e..76ab568 100644 +--- a/data/levels/4a.laby ++++ b/data/levels/4a.laby +@@ -10,9 +10,7 @@ o . o . o . x o . o . o . o + o . o . o o o o . o . o . o + o . o . . . . . . o . o . o + o . o o o o o o o o . o . o +-o . . . . . . . . . . o . o +-o o o o o o o o o o o o . o +-o → . . . . . . . . . . . o ++o . . . . . . . . . . o ↑ o + o o o o o o o o o o o o o o + + title: +diff --git a/src/gfx.ml b/src/gfx.ml +index 64f8d62..7c0e45f 100644 +--- a/src/gfx.ml ++++ b/src/gfx.ml +@@ -32,11 +32,11 @@ let conf_window = + (F.x "initial window geometry" []) + + let conf_window_width = +- Conf.int ~p:(conf_window#plug "width") ~d:1000 ++ Conf.int ~p:(conf_window#plug "width") ~d:800 + (F.x "width of window" []) + + let conf_window_height = +- Conf.int ~p:(conf_window#plug "height") ~d:750 ++ Conf.int ~p:(conf_window#plug "height") ~d:600 + (F.x "height of window" []) + + exception Error of F.t +@@ -248,10 +248,11 @@ let layout () = + + (* Game screen *) + let hpaned = GPack.paned `HORIZONTAL ~packing:main_vbox#add () in +- hpaned#set_position 620; ++ let tile_size = max 5 conf_tilesize#get in ++ hpaned#set_position (70 + 550 * tile_size / 40); + let lvbox = GPack.vbox ~packing:hpaned#add1 () in + let vpaned = GPack.paned `VERTICAL ~packing:hpaned#add () in +- vpaned#set_position 450; ++ vpaned#set_position 350; + let view_title = label lvbox#pack in + let view_comment = label lvbox#pack in + let sw_laby = scrolled ~vpolicy:`AUTOMATIC lvbox#add in +diff --git a/src/level.ml b/src/level.ml +index 392a1d7..ba59e6e 100644 +--- a/src/level.ml ++++ b/src/level.ml +@@ -24,11 +24,11 @@ let dummy = + [| + [| `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall |]; + [| `Wall; `Void; `Wall; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Wall; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Wall |]; +- [| `Wall; `Void; `Wall; `Void; `Void; `Void; `Wall; `Wall; `Wall; `Void; `Void; `Wall; `Void; `Void; `Void; `Void; `Wall; `Void; `Void; `Wall; `Void; `Wall |]; ++ [| `Wall; `Void; `Wall; `Void; `Void; `Void; `Void; `Wall; `Wall; `Void; `Void; `Wall; `Void; `Void; `Void; `Void; `Wall; `Void; `Void; `Wall; `Void; `Wall |]; + [| `Wall; `Void; `Wall; `Void; `Void; `Void; `Void; `Void; `Web ; `Wall; `Void; `Wall; `Wall; `Wall; `Void; `Void; `Wall; `Void; `Void; `Wall; `Void; `Wall |]; + [| `Wall; `Void; `Wall; `Void; `Void; `Void; `Wall; `Wall; `Wall; `Wall; `Void; `Wall; `Void; `Void; `Wall; `Void; `Wall; `Void; `Void; `Wall; `Void; `Wall |]; + [| `Wall; `Void; `Wall; `Void; `Void; `Void; `Wall; `Void; `Void; `Wall; `Void; `Wall; `Void; `Void; `Wall; `Void; `Void; `Wall; `Web ; `Wall; `Void; `Wall |]; +- [| `Wall; `Void; `Wall; `Wall; `Wall; `Void; `Void; `Wall; `Wall; `Void; `Void; `Wall; `Wall; `Wall; `Void; `Void; `Void; `Void; `Wall; `Void; `Void; `Wall |]; ++ [| `Wall; `Void; `Wall; `Wall; `Wall; `Void; `Void; `Wall; `Wall; `Wall; `Void; `Wall; `Wall; `Wall; `Void; `Void; `Void; `Void; `Wall; `Void; `Void; `Wall |]; + [| `Wall; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Void; `Wall; `Void; `Void; `Void; `Wall |]; + [| `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall; `Wall |]; + |]; +-- +2.9.4 + diff --git a/0002-Packaging-Metadata.patch b/0002-Packaging-Metadata.patch new file mode 100644 index 0000000..83f0414 --- /dev/null +++ b/0002-Packaging-Metadata.patch @@ -0,0 +1,155 @@ +From a6f50db0e183fd2a88cd211159a2168905f83cd8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Gimenez?= +Date: Mon, 1 Dec 2014 14:10:42 +0100 +Subject: [PATCH 02/11] Packaging Metadata + +Based on the following commits + +commit 023f2dc386164ed5bfd43a26fd65433ab2f49cca +Author: Igor Gnatenko +Date: Wed Nov 19 11:00:34 2014 +0300 + + implement appdata to show laby in Software Centers + + Reference: https://github.com/sgimenez/laby/issues/31 + Signed-off-by: Igor Gnatenko + +commit cae6ecc53f777940dbe5f4dd4b3cde992241a9b3 +Author: Igor Gnatenko +Date: Wed Nov 19 10:53:41 2014 +0300 + + improve desktop-file + + Signed-off-by: Igor Gnatenko +--- + Makefile | 19 ++++++++++++++++++- + build | 4 ++-- + packaging/laby.appdata.xml | 31 +++++++++++++++++++++++++++++++ + packaging/laby.desktop | 10 ++++++++++ + src/config.sh | 4 ++-- + 5 files changed, 63 insertions(+), 5 deletions(-) + create mode 100644 packaging/laby.appdata.xml + create mode 100644 packaging/laby.desktop + +diff --git a/Makefile b/Makefile +index ca18c1e..b30577d 100644 +--- a/Makefile ++++ b/Makefile +@@ -3,6 +3,11 @@ + include project.conf + PROJECT_ARCHIVE=$(PROJECT_NAME)-$(PROJECT_VERSION) + ++DESTDIR ?= ++PREFIX ?= /usr ++BINDIR ?= ${PREFIX}/bin ++DATADIR ?= ${PREFIX}/share ++ + default: all + + all: +@@ -14,8 +19,20 @@ clean: + byte native byte-debug native-profile: + @./build --$@ + ++install: ++ install -Dp --mode=0755 laby \ ++ "${DESTDIR}${BINDIR}/laby" ++ install -d "${DESTDIR}${DATADIR}/laby/" ++ cp -pr data/* "${DESTDIR}${DATADIR}/laby/" ++ install -Dp --mode=0644 data/tiles/ant-e.svg \ ++ "${DESTDIR}${DATADIR}/icons/hicolor/scalable/apps/laby.svg" ++ desktop-file-install packaging/laby.desktop \ ++ --dir="${DESTDIR}${DATADIR}/applications" ++ install -Dp --mode=0644 packaging/laby.appdata.xml \ ++ "${DESTDIR}${DATADIR}/appdata/laby.appdata.xml" ++ + dist: + @mkdir _dist + @git archive --prefix="$(PROJECT_ARCHIVE)/" HEAD \ +- | gzip >_dist/"$(PROJECT_ARCHIVE)".tar.gz ++ | gzip >"_dist/$(PROJECT_ARCHIVE).tar.gz" + @echo archive stored in "_dist/$(PROJECT_ARCHIVE).tar.gz" +diff --git a/build b/build +index 6ff36ff..8787694 100755 +--- a/build ++++ b/build +@@ -6,8 +6,8 @@ cd $(dirname $0) + source build.conf || exit 1 + + export PREFIX=${PREFIX-/usr} +-export SYSDATADIR=${SYSDATADIR-${PREFIX}/share} +-export SYSTMPDIR=${SYSTMPDIR-/tmp} ++export DATADIR=${DATADIR-${PREFIX}/share} ++export TMPDIR=${TMPDIR-/tmp} + + export PROJECT_NAME=${PROJECT_NAME-unknown} + export PROJECT_VERSION=${PROJECT_VERSION-unknown} +diff --git a/packaging/laby.appdata.xml b/packaging/laby.appdata.xml +new file mode 100644 +index 0000000..691fe28 +--- /dev/null ++++ b/packaging/laby.appdata.xml +@@ -0,0 +1,31 @@ ++ ++ ++ ++ laby.desktop ++ CC0-1.0 ++ GPL-3.0+ ++ Laby ++ Learn programming, playing with ants and spider webs ++ ++

++ Laby is a small program to learn how to program with ants and spider webs. ++ You have to move an ant out of a labyrinth, avoid spider webs, move rocks, etc. ++

++
++ ++ ++ https://sgimenez.github.io/laby/laby.png ++ The main window showing the application in action ++ ++ ++ https://sgimenez.github.io/laby/ ++ ++ ++ ++ ++ ++ ++ laby ++ ++ i.gnatenko.brain@gmail.com ++
+diff --git a/packaging/laby.desktop b/packaging/laby.desktop +new file mode 100644 +index 0000000..aebc46f +--- /dev/null ++++ b/packaging/laby.desktop +@@ -0,0 +1,10 @@ ++[Desktop Entry] ++Name=Laby ++Comment=Learn how to program with ants and spider webs ++Comment[fr]=Apprendre à programmer avec des fourmis ++Exec=laby ++Icon=laby ++Terminal=false ++Type=Application ++Categories=GNOME;GTK;Game;LogicGame; ++StartupNotify=true +diff --git a/src/config.sh b/src/config.sh +index b90e7fd..1474907 100644 +--- a/src/config.sh ++++ b/src/config.sh +@@ -26,6 +26,6 @@ let build_system = "${OCAML_SYSTEM}" + let build_arch = "${OCAML_ARCH}" + let build_ocaml = "${OCAML_VERSION}" + let build_lablgtk = "${BUILD_LABLGTK}" +-let _ = Res.sys_data_dir := "${SYSDATADIR}" +-let _ = Res.sys_tmp_dir := "${SYSTMPDIR}" ++let _ = Res.sys_data_dir := "${DATADIR}" ++let _ = Res.sys_tmp_dir := "${TMPDIR}" + EOF +-- +2.9.4 + diff --git a/0003-Use-proper-Makefile-syntax.patch b/0003-Use-proper-Makefile-syntax.patch new file mode 100644 index 0000000..22ffc66 --- /dev/null +++ b/0003-Use-proper-Makefile-syntax.patch @@ -0,0 +1,49 @@ +From c482c9d751c3f078d8b22aef034dcf03217145c5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Gimenez?= +Date: Mon, 1 Dec 2014 14:35:12 +0100 +Subject: [PATCH 03/11] Use proper Makefile syntax + +--- + Makefile | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/Makefile b/Makefile +index b30577d..14d8fbd 100644 +--- a/Makefile ++++ b/Makefile +@@ -5,8 +5,8 @@ PROJECT_ARCHIVE=$(PROJECT_NAME)-$(PROJECT_VERSION) + + DESTDIR ?= + PREFIX ?= /usr +-BINDIR ?= ${PREFIX}/bin +-DATADIR ?= ${PREFIX}/share ++BINDIR ?= $(PREFIX)/bin ++DATADIR ?= $(PREFIX)/share + + default: all + +@@ -21,15 +21,15 @@ byte native byte-debug native-profile: + + install: + install -Dp --mode=0755 laby \ +- "${DESTDIR}${BINDIR}/laby" +- install -d "${DESTDIR}${DATADIR}/laby/" +- cp -pr data/* "${DESTDIR}${DATADIR}/laby/" ++ "$(DESTDIR)$(BINDIR)/laby" ++ install -d "$(DESTDIR)$(DATADIR)/laby/" ++ cp -pr data/* "$(DESTDIR)$(DATADIR)/laby/" + install -Dp --mode=0644 data/tiles/ant-e.svg \ +- "${DESTDIR}${DATADIR}/icons/hicolor/scalable/apps/laby.svg" ++ "$(DESTDIR)$(DATADIR)/icons/hicolor/scalable/apps/laby.svg" + desktop-file-install packaging/laby.desktop \ +- --dir="${DESTDIR}${DATADIR}/applications" ++ --dir="$(DESTDIR)$(DATADIR)/applications" + install -Dp --mode=0644 packaging/laby.appdata.xml \ +- "${DESTDIR}${DATADIR}/appdata/laby.appdata.xml" ++ "$(DESTDIR)$(DATADIR)/appdata/laby.appdata.xml" + + dist: + @mkdir _dist +-- +2.9.4 + diff --git a/0004-src-gfx.ml-Fix-height-of-help-sourceview.patch b/0004-src-gfx.ml-Fix-height-of-help-sourceview.patch new file mode 100644 index 0000000..6c3c7d2 --- /dev/null +++ b/0004-src-gfx.ml-Fix-height-of-help-sourceview.patch @@ -0,0 +1,25 @@ +From fdc8a26bc7a06bcebe130cb7ece3152f16e3ed9f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Yann=20R=C3=A9gis-Gianas?= +Date: Tue, 24 Mar 2015 16:08:16 +0100 +Subject: [PATCH 04/11] src/gfx.ml: Fix height of help sourceview. + +--- + src/gfx.ml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/gfx.ml b/src/gfx.ml +index 7c0e45f..a860e89 100644 +--- a/src/gfx.ml ++++ b/src/gfx.ml +@@ -260,7 +260,7 @@ let layout () = + label_txt (Fd.render_raw label_help) box_help#pack; + let sw_help = scrolled box_help#pack in + let view_help = +- GSourceView2.source_view ~editable:false ~packing:sw_help#add () ++ GSourceView2.source_view ~height:100 ~editable:false ~packing:sw_help#add () + in + view_help#set_indent 1; + view_help#misc#modify_font monofont; +-- +2.9.4 + diff --git a/0005-Tweaking-the-vertical-split-to-avoid-scroll-bars.patch b/0005-Tweaking-the-vertical-split-to-avoid-scroll-bars.patch new file mode 100644 index 0000000..5e7d0b2 --- /dev/null +++ b/0005-Tweaking-the-vertical-split-to-avoid-scroll-bars.patch @@ -0,0 +1,25 @@ +From b1408f7f64e131f280d0c55ae82743c9154eb97b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Gimenez?= +Date: Tue, 24 Mar 2015 18:46:49 +0100 +Subject: [PATCH 05/11] Tweaking the vertical split to avoid scroll bars + +--- + src/gfx.ml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/gfx.ml b/src/gfx.ml +index a860e89..3c51176 100644 +--- a/src/gfx.ml ++++ b/src/gfx.ml +@@ -249,7 +249,7 @@ let layout () = + (* Game screen *) + let hpaned = GPack.paned `HORIZONTAL ~packing:main_vbox#add () in + let tile_size = max 5 conf_tilesize#get in +- hpaned#set_position (70 + 550 * tile_size / 40); ++ hpaned#set_position (80 + 550 * tile_size / 40); + let lvbox = GPack.vbox ~packing:hpaned#add1 () in + let vpaned = GPack.paned `VERTICAL ~packing:hpaned#add () in + vpaned#set_position 350; +-- +2.9.4 + diff --git a/0007-Desktop-file-translations-provided-by-glixx.patch b/0007-Desktop-file-translations-provided-by-glixx.patch new file mode 100644 index 0000000..b6024c8 --- /dev/null +++ b/0007-Desktop-file-translations-provided-by-glixx.patch @@ -0,0 +1,72 @@ +From 745e474f41fea863844309954e7f6aed4c4a1373 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Gimenez?= +Date: Mon, 31 Aug 2015 09:28:24 +0200 +Subject: [PATCH 07/11] Desktop file translations, provided by glixx. + +--- + packaging/laby.desktop | 47 +++++++++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 45 insertions(+), 2 deletions(-) + +diff --git a/packaging/laby.desktop b/packaging/laby.desktop +index aebc46f..20dffee 100644 +--- a/packaging/laby.desktop ++++ b/packaging/laby.desktop +@@ -1,10 +1,53 @@ + [Desktop Entry] + Name=Laby +-Comment=Learn how to program with ants and spider webs +-Comment[fr]=Apprendre à programmer avec des fourmis ++GenericName=Programming Game + Exec=laby + Icon=laby + Terminal=false + Type=Application + Categories=GNOME;GTK;Game;LogicGame; + StartupNotify=true ++Comment=Learn how to program with ants and spider webs ++Comment[af]=Leer om te programmeer met miere en spinnerakke ++Comment[ast]=Deprendi a programar con formigues y redes de arañes ++Comment[bg]=Научете се да програмирате с мравки и паяжини ++Comment[bn]=শিখুন কিভাবে এন্ট এবং স্পাইডার ওয়েবের সঙ্গে প্রোগ্রাম ++Comment[bs]=Naučite se kako programirati pomoću mrava i paukovih mreža ++Comment[ca@valencia]=Apreneu a programar amb formigues i teles d'aranya ++Comment[ca]=Apreneu a programar amb formigues i teles d'aranya ++Comment[crh]=Karıncalar ve örümcek ağları ile programlamayı öğrenin ++Comment[cs]=Naučte se programovat s pomocí mravenců a pavučin ++Comment[da]=Lær at programmere med myrer og spindelvæv ++Comment[de]=Lernen Sie Programmieren, mit Ameisen und Spinnennetzen ++Comment[el]=Μάθετε προγραμματισμό με μυρμηγκάκια και ιστούς αράχνης ++Comment[es]=Aprende a programar con hormigas y redes de arañas ++Comment[es_MX]=Aprenda a programar con hormigas y telarañas ++Comment[fi]=Opettele ohjelmoimaan muurahaisilla ja hämähäkkien verkoilla ++Comment[fr]=Apprenez à programmer avec des fourmis et des toiles d'araignées ++Comment[gl]=Aprenda a programar con formigas e arañeiras ++Comment[hu]=Tanulj programozni hangyákkal és pókhálókkal ++Comment[hy]=Ինչպես ծրագրավորել մրջունների և սարդերի ցանցերի միջոցով ++Comment[id]=Belajar memprogram dengan ants dan spider web ++Comment[it]=Imparare a programmare con ant e spider web ++Comment[ja]=クモの巣を避けるアリプログラムを作ろう ++Comment[ky]=Кумурскалардын жана жөргөмүштөрдун желелерин үлгү кылып программалоого үйрөтүү ++Comment[lv]=Iemācīties programmēt ar skudru un zirnekli ++Comment[ms]=Pelajari bagaimana lakukan pengaturcaraan ++Comment[nb]=Lær å programmere med maur og edderkoppnett ++Comment[nl]=Leren programmeren met mieren en spinnenwebben ++Comment[oc]=Aprene a programar amb de formigas e de telaranhas ++Comment[pl]=Nauka programowania z udziałem mrówek i pajęczyn ++Comment[pt]=Aprende a programar com as formigas e as teias de aranha ++Comment[pt_BR]=Aprenda a programar com formigas e teias de aranha ++Comment[ro]=Învățați programare cu furnici și păianjeni virtuali ++Comment[ru]=Обучение программированию на примере муравьёв и паучьих сетей ++Comment[sl]=Naučite se programiranja s pomočjo mravelj in pajkovih mrež ++Comment[sq]=Mësoni si të programoni me milingona dhe rrjeta merimange ++Comment[sr]=Научите како да се програм са мравима и паука Вебс ++Comment[sv]=Lär dig att programmera med myror och spindelnät ++Comment[th]=เรียนรู้วิธีการเขียนโปรแกรมที่มีมดและใยแมงมุม ++Comment[tr]=Karıncalar ve örümcek ağları ile programlamayı öğrenin ++Comment[uk]=Навчання програмуванню на прикладі мурашок та павукових мереж ++Comment[vi]=Học cách để lập trình với kiến và mạng nhện ++Comment[zh_CN]=了解如何使用蚂蚁和蜘蛛网进行编程 ++Comment[zh_TW]=學習如何用 ants 和 spider webs 寫程式 +-- +2.9.4 + diff --git a/0008-Translation-for-desktop-entry-GenericName.patch b/0008-Translation-for-desktop-entry-GenericName.patch new file mode 100644 index 0000000..8096702 --- /dev/null +++ b/0008-Translation-for-desktop-entry-GenericName.patch @@ -0,0 +1,50 @@ +From 35e5f15c5ff93d60e68c55f5ca9cbca98eb0d7c8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Gimenez?= +Date: Mon, 31 Aug 2015 12:36:14 +0200 +Subject: [PATCH 08/11] Translation for desktop entry GenericName + +--- + packaging/laby.desktop | 22 +++++++++++++++++++++- + 1 file changed, 21 insertions(+), 1 deletion(-) + +diff --git a/packaging/laby.desktop b/packaging/laby.desktop +index 20dffee..2bf34f9 100644 +--- a/packaging/laby.desktop ++++ b/packaging/laby.desktop +@@ -1,12 +1,32 @@ + [Desktop Entry] + Name=Laby +-GenericName=Programming Game + Exec=laby + Icon=laby + Terminal=false + Type=Application + Categories=GNOME;GTK;Game;LogicGame; + StartupNotify=true ++GenericName=Programming Game ++GenericName[bs]=Igra programiranja ++GenericName[ca]=Joc de programació ++GenericName[cs]=Programovací hra ++GenericName[da]=Programmering spil ++GenericName[de]=Programmierspiel ++GenericName[el]=Προγραμματιστικό παιχνίδι ++GenericName[es]=Juego de programación ++GenericName[fr]=Jeu de programmation ++GenericName[gl]=Xogo de programación ++GenericName[it]=Gioco di programmazione ++GenericName[ja]=プログラミングゲーム ++GenericName[ms]=Permainan pengaturcaraan ++GenericName[pl]=Gra w programowanie ++GenericName[pt]=Jogo de programação ++GenericName[pt_BR]=Jogo de programação ++GenericName[ru]=Игра в программирование ++GenericName[sl]=Igra programiranja ++GenericName[sv]=Programmeringsspel ++GenericName[tr]=Oyun programlama ++GenericName[uk]=Гра у програмування + Comment=Learn how to program with ants and spider webs + Comment[af]=Leer om te programmeer met miere en spinnerakke + Comment[ast]=Deprendi a programar con formigues y redes de arañes +-- +2.9.4 + diff --git a/0009-Fix-the-FSF-address.patch b/0009-Fix-the-FSF-address.patch new file mode 100644 index 0000000..6e54cb5 --- /dev/null +++ b/0009-Fix-the-FSF-address.patch @@ -0,0 +1,27 @@ +From b14c08bd7d3a3094ab74009d415ca2bbcdb4b828 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?St=C3=A9phane=20Gimenez?= +Date: Tue, 1 Sep 2015 09:51:22 +0200 +Subject: [PATCH 09/11] Fix the FSF address + +--- + data/syntax/ocaml.lang | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/data/syntax/ocaml.lang b/data/syntax/ocaml.lang +index d476681..81ca99f 100644 +--- a/data/syntax/ocaml.lang ++++ b/data/syntax/ocaml.lang +@@ -18,8 +18,8 @@ + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the +- Free Software Foundation, Inc., 59 Temple Place - Suite 330, +- Boston, MA 02111-1307, USA. ++ Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, ++ MA 02110-1301, USA. + --> + + +-- +2.9.4 + diff --git a/laby.spec b/laby.spec new file mode 100644 index 0000000..75f7b13 --- /dev/null +++ b/laby.spec @@ -0,0 +1,106 @@ +Name: laby +Version: 0.6.4 +Release: 4%{?dist} +Summary: Learn programming, playing with ants and spider webs + +License: GPLv3+ +URL: https://sgimenez.github.io/laby/ +Source0: https://github.com/sgimenez/%{name}/archive/%{name}-%{version}.tar.gz +Patch1: 0001-Adapts-to-smaller-screens.patch +Patch2: 0002-Packaging-Metadata.patch +Patch3: 0003-Use-proper-Makefile-syntax.patch +Patch4: 0004-src-gfx.ml-Fix-height-of-help-sourceview.patch +Patch5: 0005-Tweaking-the-vertical-split-to-avoid-scroll-bars.patch +Patch7: 0007-Desktop-file-translations-provided-by-glixx.patch +Patch8: 0008-Translation-for-desktop-entry-GenericName.patch +Patch9: 0009-Fix-the-FSF-address.patch + +# All above patches have been already merged in upstream master +# For genertating them: +# git clone https://github.com/sgimenez/laby.git +# git format-patch e6d783468b6d1273e6c7b40015367d81467c0205 +# note patch 0006 has been skipped since it cause build failure on CentOS + +BuildRequires: ocaml >= 3.10.0 +BuildRequires: ocaml-findlib-devel +BuildRequires: ocaml-lablgtk-devel >= 2.14.0 +BuildRequires: ocaml-ocamldoc +BuildRequires: chrpath +BuildRequires: gtksourceview2-devel >= 2.10 +BuildRequires: libappstream-glib +BuildRequires: desktop-file-utils + +%if 0%{?fedora} >= 26 +BuildRequires: ocaml-ocamlbuild +%endif + +# Note: rpmlint suggest to add +# BuildRequires: python2-devel +# or +# BuildRequires: python3-devel +# but they're not used during the build so they've not been added. + +%description +Laby is a small program to learn how to program with ants and spider webs. +You have to move an ant out of a labyrinth, avoid spider webs, move rocks, etc. + + +%prep +%setup -q -n %{name}-%{name}-%{version} +%autosetup -n %{name}-%{name}-%{version} -p1 + +%build +make %{?_smp_mflags} native + +%install +export DESTDIR=%{buildroot} +make install + +appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/appdata/*.appdata.xml +desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop + +%post +/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%postun +if [ $1 -eq 0 ] ; then + /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null + /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%posttrans +/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + + +%files +%license COPYRIGHT +%license gpl-3.0.txt +%doc AUTHORS +%{_bindir}/%{name} +%{_datadir}/%{name}/ + +# Note above contains also: +# /usr/share/laby/mods/c/lib/robot.h +# /usr/share/laby/mods/cpp/lib/robot.h +# Which rpmlint suggest to have in -devel subpackage. +# This is intentional. The game teach you also how to program in C and in order +# to move the ant, you'll need the robot.h header file. It isn't the use case +# addressed by -devel subpackages. + +%{_datadir}/appdata/%{name}.appdata.xml +%{_datadir}/applications/%{name}.desktop +%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg + + +%changelog +* Sun May 21 2017 Sandro Bonazzola - 0.6.4-4 +- Addressed comment #10 from rhbz#1450679 + +* Fri May 19 2017 Sandro Bonazzola - 0.6.4-3 +- Addressed comments #3-7 from rhbz#1450679 + +* Tue May 16 2017 Sandro Bonazzola - 0.6.4-2 +- Add Fedora >= 26 support + +* Sun May 14 2017 Sandro Bonazzola - 0.6.4-1 +- Initial packaging diff --git a/sources b/sources index e69de29..82a1cc2 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +SHA512 (laby-0.6.4.tar.gz) = 6da03bb8608a4bf101e4357728b144fde8d7b47bdc165abf0fcc4ad1978eafa7b1a189395460f38383fb80d485d141527735b7ca3f7f7964f2ba894c042c2703