Release 1.0.0: rename to NoMines, add leaderboard, theme support and release metadata
- Rename app/binary/app-id to nomines (io.github.bemagri.nomines), config dir moves to ~/.config/nomines with legacy path fallback - Add persistent best-time leaderboard (Glib::KeyFile) - Theme-aware board following system light/dark preference - Beveled 3D cells, confetti win animation, keyboard shortcuts, right-click chording, per-difficulty window sizing - Add AppStream metainfo, validate desktop file and metainfo via meson tests - Fix license metadata to GPL-3.0-or-later and real homepage
This commit is contained in:
+27
-6
@@ -1,5 +1,5 @@
|
||||
project('minesweeper', 'cpp',
|
||||
version : '0.2.0',
|
||||
project('nomines', 'cpp',
|
||||
version : '1.0.0',
|
||||
default_options : ['warning_level=3', 'cpp_std=c++20'])
|
||||
|
||||
gnome = import('gnome')
|
||||
@@ -25,24 +25,45 @@ src = [
|
||||
'src/minefield.cpp',
|
||||
'src/board_widget.hpp',
|
||||
'src/board_widget.cpp',
|
||||
'src/leaderboard.hpp',
|
||||
'src/leaderboard.cpp',
|
||||
res
|
||||
]
|
||||
|
||||
# Executable
|
||||
executable('minesweeper',
|
||||
executable('nomines',
|
||||
src,
|
||||
dependencies : deps,
|
||||
install : true
|
||||
)
|
||||
|
||||
# Install icons
|
||||
# Install icon
|
||||
install_data(
|
||||
'resources/minesweeper.svg',
|
||||
'resources/nomines.svg',
|
||||
install_dir: join_paths(get_option('datadir'), 'icons/hicolor/scalable/apps')
|
||||
)
|
||||
|
||||
# Install desktop file
|
||||
install_data(
|
||||
'resources/org.gtkmm.minesweeper.desktop',
|
||||
'resources/io.github.bemagri.nomines.desktop',
|
||||
install_dir: join_paths(get_option('datadir'), 'applications')
|
||||
)
|
||||
|
||||
# Install AppStream metadata
|
||||
install_data(
|
||||
'resources/io.github.bemagri.nomines.metainfo.xml',
|
||||
install_dir: join_paths(get_option('datadir'), 'metainfo')
|
||||
)
|
||||
|
||||
# Release validation (best-effort, only when the tools are installed)
|
||||
desktop_file_validate = find_program('desktop-file-validate', required: false)
|
||||
if desktop_file_validate.found()
|
||||
test('validate-desktop', desktop_file_validate,
|
||||
args: ['resources/io.github.bemagri.nomines.desktop'])
|
||||
endif
|
||||
|
||||
appstreamcli = find_program('appstreamcli', required: false)
|
||||
if appstreamcli.found()
|
||||
test('validate-metainfo', appstreamcli,
|
||||
args: ['validate', '--no-net', 'resources/io.github.bemagri.nomines.metainfo.xml'])
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user