Files
MPF/README.md

139 lines
7.2 KiB
Markdown
Raw Normal View History

2020-11-10 17:43:21 -08:00
# Media Preservation Frontend (MPF)
2018-05-12 20:11:23 -04:00
2023-09-02 15:24:03 -04:00
Redumper/Aaru/DiscImageCreator UI in C#
2018-05-14 12:08:51 -04:00
2020-11-10 20:42:04 -08:00
[![Build status](https://ci.appveyor.com/api/projects/status/3ldav3v0c373jeqa?svg=true)](https://ci.appveyor.com/project/mnadareski/MPF/build/artifacts)
2020-11-10 20:42:04 -08:00
This is a community project, so if you have some time and knowledge to give, we'll be glad to add you as a contributor to this project. If you have any suggestions, issues, bugs, or crashes, please look at the [Issues](https://github.com/SabreTools/MPF/issues) page first to see if it has been reported before and try out the latest AppVeyor WIP build below to see if it has already been addressed. If it hasn't, please open an issue that's as descriptive as you can be. Help me make this a better program for everyone :)
2020-08-14 11:06:57 -07:00
## Releases
For those who would rather use the most recent stable build, download the latest release here:
2020-11-10 20:42:04 -08:00
[Releases Page](https://github.com/SabreTools/MPF/releases)
2020-08-14 11:06:57 -07:00
2020-11-10 20:42:04 -08:00
For those who like to test the newest features, download the latest AppVeyor WIP build here: [AppVeyor](https://ci.appveyor.com/project/mnadareski/MPF/build/artifacts)
2018-05-14 12:08:51 -04:00
2023-03-13 13:25:32 -04:00
## Media Preservation Frontend (MPF)
2018-06-25 10:18:06 -07:00
2023-09-27 15:50:30 -04:00
MPF is the main, UI-centric application of the MPF suite. This program allows users to use Redumper, Aaru, or DiscImageCreato in a more user-friendly way. Each backend dumping program is supported as fully as possible to ensure that all information is captured on output. There are many customization options and quality of life settings that can be access through the Options menu.
2018-06-25 10:18:06 -07:00
2023-03-13 13:25:32 -04:00
### System Requirements
- Windows 8.1 (x86 or x64) or newer
2023-03-20 15:47:01 -04:00
- Users who wish to use MPF on Windows 7 need to disable strong name validation due to `Microsoft.Management.Infrastructure` being unsigned. Add the following registry keys (accurate at time of writing):
```
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StrongName\Verification\*,31bf3856ad364e35]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\StrongName\Verification\*,31bf3856ad364e35]
```
- Alternatively, look at this [StackOverflow question](https://stackoverflow.com/questions/403731/strong-name-validation-failed) for more information.
2023-09-27 15:50:30 -04:00
- .NET Framework 4.8 .NET 6.0, or .NET 7.0 Runtimes
- As much hard drive space as the amount of discs you will be dumping (20+ GB recommended)
2018-06-25 10:18:06 -07:00
Ensure that your operating system is as up-to-date as possible, since some features may rely on those updates.
2018-05-12 22:01:51 -04:00
2023-07-24 13:45:31 -04:00
### Support Limitations
.NET 6 has some known limitations that are documented in code and in some prior support tickets:
- Windows-only due to reliance on WPF and Winforms
- MAUI is not a viable alternative due to lack of out-of-box support for Linux
- Avalonia is being heavily considered
- No media type detection due to lack of alternatives to IMAPI2
2023-07-23 23:48:04 -04:00
### Build Instructions
To build for .NET Framework 4.8 (Windows only), ensure that the .NET Framework 4.8 SDK is installed and included in your PATH. Then, run the following commands from command prompt, Powershell, or Terminal:
```
dotnet restore
msbuild MPF\MPF.csproj -property:TargetFramework=net48 -property:RuntimeIdentifiers=win7-x64
```
2023-09-26 23:26:48 -04:00
To build for .NET 6.0 or .NET 7.0 (Windows only), ensure that the .NET 7.0 SDK (or later) is installed and included in your PATH. Then, run the following commands from command prompt, Powershell, or Terminal:
2023-07-23 23:48:04 -04:00
```
2023-09-26 23:26:48 -04:00
dotnet build MPF\MPF.csproj --framework net6.0-windows --runtime [win-x64]
2023-07-23 23:48:04 -04:00
```
2023-03-13 13:25:32 -04:00
## Media Preservation Frontend Checker (MPF.Check)
2023-09-27 15:50:30 -04:00
MPF.Check is a commandline-only program that allows users to generate submission information from their personal rips. This program supports the outputs from Redumper, Aaru, DiscImageCreator, Cleanrip, and UmdImageCreator. Running this program without any parameters will display the help text, including all supported parameters.
2023-03-13 13:25:32 -04:00
### System Requirements
- Windows 8.1 (x86 or x64) or newer, GNU/Linux x64, or OSX x64
2023-09-26 23:26:48 -04:00
- .NET Framework 4.8 (Windows or `mono` only), .NET 6.0, or .NET 7.0 Runtimes
2023-03-13 13:25:32 -04:00
2023-07-23 23:48:04 -04:00
### Build Instructions
To build for .NET Framework 4.8 (Windows only), ensure that the .NET Framework 4.8 SDK is installed and included in your PATH. Then, run the following commands from command prompt, Powershell, or Terminal:
```
dotnet restore
msbuild MPF.Check\MPF.Check.csproj -property:TargetFramework=net48 -property:RuntimeIdentifiers=win7-x64
```
2023-09-26 23:26:48 -04:00
To build for .NET 6.0 and .NET 7.0 (All supported OSes), ensure that the .NET 7.0 SDK (or later) is installed and included in your PATH. Then, run the following commands from command prompt, Powershell, Terminal, or shell:
2023-07-23 23:48:04 -04:00
```
2023-09-26 23:26:48 -04:00
dotnet build MPF.Check\MPF.Check.csproj --framework net6.0 --runtime [win-x64linux-x64|osx-x64]
2023-07-23 23:48:04 -04:00
```
2023-09-26 23:26:48 -04:00
Choose one of `[win-x64|linux-x64|osx-x64]` depending on the machine you are targeting.
2023-07-23 23:48:04 -04:00
2020-09-08 23:30:02 -07:00
## Information
2020-08-04 13:53:33 -07:00
2020-11-10 20:42:04 -08:00
For all additional information, including information about the individual components included in the project and what dumping programs are supported, please see [the wiki](https://github.com/SabreTools/MPF/wiki) for more details.
2020-08-04 13:53:33 -07:00
## Changelist
2018-06-13 12:26:57 -07:00
2020-11-10 17:43:21 -08:00
A list of all changes in each stable release and current WIP builds can now be found [here](https://github.com/SabreTools/MPF/blob/master/CHANGELIST.md).
2020-07-28 14:10:29 -07:00
## External Libraries
2020-11-10 17:43:21 -08:00
MPF uses some external libraries to assist with additional information gathering after the dumping process.
2020-07-28 14:10:29 -07:00
- **BurnOutSharp** - Protection scanning - [GitHub](https://github.com/mnadareski/BurnOutSharp)
- **UnshieldSharp** - Protection scanning - [GitHub](https://github.com/mnadareski/UnshieldSharp)
2022-04-18 22:59:07 -07:00
- **WPFCustomMessageBox.thabse** - Custom message boxes in UI - [GitHub](https://github.com/thabse/WPFCustomMessageBox)
2018-06-08 17:20:33 -04:00
## Contributors
2018-06-08 17:20:33 -04:00
2023-09-02 15:24:03 -04:00
Here are the talented people who have contributed to the project so far in ways that GitHub doesn't like to track:
2018-06-08 17:20:33 -04:00
- **ReignStumble** - Former Project Lead / UI Design
- **Shadów** - UI Support
2018-05-18 22:39:05 -04:00
2023-09-02 15:24:03 -04:00
For all others who have contributed in some way, please see [here](https://github.com/SabreTools/MPF/graphs/contributors).
## Notable Testers
2018-05-18 22:39:05 -04:00
2020-11-10 17:43:21 -08:00
These are the tireless individuals who have dedicated countless hours to help test the many features of MPF and have worked with the development team closely:
2018-05-14 13:49:26 -04:00
2023-09-02 15:24:03 -04:00
- [**ajshell1**](https://github.com/ajshell1)
- [**Billy**](https://github.com/InternalLoss)
- [**David 'Foxhack' Silva**](https://github.com/FoxhackDN)
- [**ehw**](https://github.com/ehw)
- [**fuzzball**](https://github.com/fuzz6001)
- [**Gameboi64**](https://github.com/gameboi64)
- [**Intothisworld**](https://github.com/Intothisworld)
- [**John Veness**](https://github.com/JohnVeness)
2021-02-28 13:19:55 -08:00
- **Kludge**
2023-09-02 15:24:03 -04:00
- [**Matt Sephton**](https://github.com/gingerbeardman)
- [**NightsoN Blaze**](https://github.com/nightson)
- [**NovaSAurora**](https://github.com/NovaSAurora)
- [**Seventy7**](https://github.com/7Seventy7) - Additonal thanks for the original concept
- [**Silent**](https://github.com/CookiePLMonster)
- [**Terry Janas**](https://github.com/tjanas)
- [**TheRogueArchivist**](https://github.com/TheRogueArchivist)
- [**Whovian9369**](https://github.com/Whovian9369)
2021-02-28 13:19:55 -08:00
## Community Shout-Outs
2021-04-09 13:52:03 -07:00
Thanks to these communities for their use, testing, and feedback. I can't even hope to be able to thank everyone individually.
2021-02-28 13:19:55 -08:00
2023-09-02 15:24:03 -04:00
- [**VGPC Discord**](https://discord.gg/AHTfxQV) - Fast feedback and a lot of testing
- [**Redump Community**](http://redump.org/) - Near-daily use to assist with metadata gathering