Commit Graph

36203 Commits

Author SHA1 Message Date
Martin Natano 2ce8bcea76 Remove SM5 default theme 2022-05-11 21:59:06 +02:00
Martin Natano d54bc6857f Prevent access to /Save/Preferences.ini from lua
Directly writing to the file would circumvent preference protections,
compromising security.
2022-05-07 23:53:58 +02:00
Martin Natano b9ebbd32a9 Build universal binary on macOS 2022-05-02 21:23:48 +02:00
Martin Natano b039be360c Fix subdomain matching 2022-05-01 17:33:52 +02:00
Martin Natano f7d8408fc2 Add support for subdomain wildcards to HttpAllowHosts 2022-05-01 13:16:14 +02:00
Martin Natano 6cd4ac88c3 Fix error reporting when opening the download file fails 2022-05-01 10:42:28 +02:00
Martin Natano 07e8abf380 Generate downloads folder in portable mode 2022-05-01 10:27:30 +02:00
Martin Natano 9cf66ae643 Update ffmpeg 2.1.3 -> 5.0.1
Old ffmpeg has a lot of vulnerabilities that have been fixed in newer
versions, see https://www.cvedetails.com/vulnerability-list/vendor_id-3611/Ffmpeg.html.
2022-04-30 23:22:52 +02:00
teejusb 4c04a2a974 Use CI from itgmania repository
travis and appveyor are still incorrect as they still point to stepmania
2022-04-14 13:02:39 -07:00
Martin Natano 692310a0e4 Tweak defaults for the HTTP preferences
Connections to GrooveStats are now allowed by default.
2022-04-13 21:56:04 +02:00
Martin Natano 3ca3bb0773 Fix macOS build 2022-04-11 14:50:00 -07:00
Martin Natano 4c0aef69dd Remove legacy network code 2022-04-11 14:50:00 -07:00
Martin Natano f1e3e4d519 Remove the 'home' and 'legacy' themes 2022-04-11 14:50:00 -07:00
Martin Natano 7f31fd59e8 Remove unused appveyor and travis files 2022-04-11 14:50:00 -07:00
Martin Natano 5019625aaf Remove unused extern cmake project 2022-04-11 14:50:00 -07:00
Martin Natano 28b53ae79e Remove unused build option 2022-04-11 14:50:00 -07:00
Martin Natano dbef16945f Remove unused SDL dependency 2022-04-11 14:50:00 -07:00
Martin Natano 7d2d74fa19 Remove unused cmake files 2022-04-11 14:50:00 -07:00
Martin Natano f710aaf67f Always include full version number in ProductVersion() 2022-04-08 21:55:49 +02:00
Martin Natano 2586eec53f Update lua docs 2022-04-06 21:13:16 +02:00
Martin Natano 54ddcb9df8 Update README.md, round 1 2022-04-03 23:00:40 +02:00
Martin Natano 724b880dfa ITGmania 2022-04-03 22:25:01 +02:00
Martin Natano 65eb85b8e9 Sync LuaDocumentation.xml with 'Lua for SM5'
The LuaDocumentation.xml in the StepMania repository and
quietly-turning's 'Lua for SM5' diverged over time. This commit pulls in
a couple of documentation improvements from 'Lua for SM5'.

- Add documentation for previously undocumented functions
- Improved descriptions
- More crosslinking
2022-04-03 21:35:21 +02:00
Martin Natano d8055e59ab Update Lua.xml documentation 2022-04-03 19:59:29 +02:00
Martin Natano 02008eb469 Rename to ITGmania
- executable name:
  - linux: itgmania
  - windows: ITGmania.exe
  - macOS: ITGmania.app
- config path:
  - linux: ~/.itgmania
  - windows; %AppData%\ITGmania
  - macOS: ~/Library/Application Support/ITGmania
2022-04-02 20:14:57 -07:00
Martin Natano a8b9c1da09 Replace some SM cmake macros with builtin functions 2022-03-31 12:06:18 -07:00
Martin Natano 1ab364c0fa Remove autotools infrastructure
Having one build system is enough.
2022-03-31 12:06:18 -07:00
Martin Natano e3347276b5 Build LoadingWindow_Gtk as an object module
CMake object modules have the advantage of allowing to set additional
compile flags for the involved files, but it's linked into the main
binary with the rest of the object files.

This removes GtkModule.so and the dynamic loading code that goes with
it.
2022-03-31 12:06:18 -07:00
Jose_Varela 1b27032a38 Add GaveUp() 2022-03-28 20:11:53 -07:00
Nico Lehmann f0170fc8ce FIx "protocol on port 9418 is no longer supported"
I was getting the following error when building:

```
fatal: remote error:
  The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
```

Changing the protocol to `https` solves the problem for me.
2022-03-28 20:11:53 -07:00
Arthur Eubanks b88e81a8f5 Don't re-sort sections when sorting by length
Re-sorting causes oddities like
https://github.com/Simply-Love/Simply-Love-SM5/issues/362
2022-03-28 20:11:53 -07:00
Charles Magahern ab991981fd Move resource mounting to the right place
Fix from Club Fantastic, but adapted for RageFile changes.
2022-03-20 07:46:03 -07:00
Martin Natano 024f3ac96a Don't crash when reloading songs with players joined
This allows to call ScreenReloadSongs from SSM.
2022-03-19 08:18:58 -07:00
Martin Natano c99477f046 Only make parts of the initial filesystem writable
This prevents overwriting the program binary or other sentitive paths
like /Data/Static.ini from Lua.
2022-03-13 12:46:14 -07:00
Martin Natano 1036d20e11 Implement FILEMAN:Copy(string fromPath, string toPath)
Copies a file from `fromPath` to `toPath`. Returns `true` if the file
was copied successfully.
2022-03-13 12:37:11 -07:00
Martin Natano 67d1c78450 Implement FILEMAN:Unzip(string zipPath, string targetPath, int strip)
Unzip zip file at `zipPath` to `targetPath`.
`strip` is optional and defaults to `0`. If set to a number larger than
`0`, that many components are removed from the paths of the extracted
files. e.g. `a/b/c` is replaced with `b/c` when stripping one component
or just `c` when stripping two.
Returns whether all files were extracted successfully.
2022-03-13 11:46:28 -07:00
Martin Natano ca86f80743 Add support for onProgress and downloadFile to NETWORK:HttpRequest() 2022-03-13 11:31:49 -07:00
Martin Natano 394bc93915 Add support for streaming transfers
This change adds onChunkCallback to the request. If defined it will be
called repeatedly with the incoming data. This allows to process data on
the go or write it to disk instead of accumulating the data in memory.

Submitted upstream:
https://github.com/machinezone/IXWebSocket/pull/353
2022-03-12 14:18:48 -08:00
Martin Natano bb8fc0f4c2 Change access order for RageFS
Packages > Additional folders > User FS > Initial FS
2022-03-12 14:14:59 -08:00
teejusb 6defe32d05 Merge pull request #21 from natano/netman-download-pr3
[Downloads 3/8] Mount directories read-only where possible
2022-03-12 14:12:31 -08:00
Martin Natano 168877f6a8 Mount directories read-only where possible 2022-03-12 22:30:54 +01:00
teejusb 0aa42742e4 Merge pull request #20 from natano/netman-download-pr2
[Downloads 2/8] Allow to mark preferences as immutable or compat
2022-03-12 13:23:25 -08:00
Martin Natano d8b6d36a78 Allow to mark preferences as immutable or deprecated
- Deprecated: The option is read from the settings, but not written back
  when saving. This can be used for migrating options to a new name or
  format. (Not used yet.)
- Immutable: The option can not be changed from Lua. Used for
  security-relevant options that should not be changable by the theme or
  mod charts. Currently that's networking and some file system access
  options.
2022-03-12 22:19:19 +01:00
teejusb eb0ab83d89 Merge pull request #19 from natano/netman-download-pr1
[Downloads 1/8] Merge /AdditionalSongs into /Songs, and /AdditionalCourses into /Courses
2022-03-12 12:15:47 -08:00
teejusb 0dda63c7ee Merge pull request #28 from natano/sort-defaults
Tweak sort defaults to make more sense
2022-03-12 11:41:30 -08:00
teejusb a6aac477b0 Merge pull request #27 from natano/fix-sort-length
Fix sort by length
2022-03-12 11:37:37 -08:00
Martin Natano 7bd7a9b41e Tweak sort defaults to make more sense
- SortBPMDivision: Reduce from 20 to 10 to match up with ECS "tiers".
- SortLengthDivision: Increase from 5 seconds to 1 minute. Divisions of
  5 seconds don't seem very useful.
2022-03-12 20:32:21 +01:00
Martin Natano acb3ad727a Fix sort by length
The sort order is not remembered between songs when sorting by length.
This can be fixed by recognizing SORT_LENGTH as a sort order that can be
used for songs.

Reported by @aeubanks in https://github.com/Simply-Love/Simply-Love-SM5/issues/363
2022-03-12 19:13:11 +01:00
Martin Natano 0861ed45c7 Merge /AdditionalSongs into /Songs, and /AdditionalCourses into /Courses
Includes a backwards-compatibility mechanism to adapt paths when loading
Stats.xml.
2022-03-11 22:35:31 +01:00
teejusb 92ce8c6801 Merge pull request #18 from natano/remove-package-lib
Remove unsafe package library
2022-03-05 12:17:52 -08:00