Skip to content

Commit

Permalink
Merge pull request #30 from AdmiringWorm/openmpt
Browse files Browse the repository at this point in the history
(openmpt) New migrated package
  • Loading branch information
mergify[bot] authored Jan 5, 2019
2 parents 9e8eb71 + d986650 commit 38c5400
Show file tree
Hide file tree
Showing 8 changed files with 203 additions and 0 deletions.
4 changes: 4 additions & 0 deletions automatic/openmpt/Changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# ![OpenMPT Changelog](https://img.shields.io/badge/OpenMPT-Package%20Changelog-blue.svg?style=for-the-badge)

## UPCOMING
- Taken over as a new maintainer of the openmpt package (original maintainer: nipsky)
8 changes: 8 additions & 0 deletions automatic/openmpt/Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# [<img src="https://cdn.jsdelivr.net/gh/AdmiringWorm/chocolatey-packages@36f480238c82ed040dee8926cf562c1c78e73ac3/icons/openmpt.png" height="48" width="48" /> ![OpenMPT](https://img.shields.io/chocolatey/v/openmpt.svg?label=OpenMPT&style=for-the-badge)](https://chocolatey.org/packages/openmpt)

**OpenMPT** is a popular [tracker](https://en.wikipedia.org/wiki/Tracker_%28music_software%29) software for Windows. OpenMPT (short hand for **Open ModPlug Tracker**) is completely free and allows you to create and play back some great music on your computer. Based on the original ModPlug Tracker written by Olivier Lapicque, OpenMPT is free software, can import a wide variety of module formats and offers an intuitive, native GUI as well as advanced features such as [VST][] plugins and [ASIO][] output. In addition to its own song format, OpenMPT can natively edit Impulse Tracker, FastTracker, Scream Tracker and ProTracker module files

[ASIO]: https://en.wikipedia.org/wiki/Audio_Stream_Input/Output
[VST]: https://en.wikipedia.org/wiki/Virtual_Studio_Technology
*[ASIO]: Audio Stream Input/Output, a common low-latency audio driver protocol
*[VST]: Virtual Studio Technology, a common audio plugin interface
25 changes: 25 additions & 0 deletions automatic/openmpt/legal/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Copyright (c) 2004-2018, OpenMPT contributors
Copyright (c) 1997-2003, Olivier Lapicque
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the OpenMPT project nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS ``AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
21 changes: 21 additions & 0 deletions automatic/openmpt/legal/VERIFICATION.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
VERIFICATION
Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.

The embedded software have been downloaded from the listed download
location on <https://openmpt.org/download>
and can be verified by doing the following:

1. Download the following:
32-Bit software: <>
64-Bit software: <>
2. Get the checksum using one of the following methods:
- Using powershell function 'Get-FileHash'
- Use chocolatey utility 'checksum.exe'
3. The checksums should match the following:

checksum type:
checksum32:
checksum64:

The file 'LICENSE.txt' has been obtained from <https://source.openmpt.org/browse/openmpt/trunk/OpenMPT/LICENSE>
72 changes: 72 additions & 0 deletions automatic/openmpt/openmpt.nuspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Do not remove this test for UTF-8: if “Ω” doesn’t appear as greek uppercase omega letter enclosed in quotation marks, you should use an editor that supports UTF-8, not this one. -->
<package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd">
<metadata>
<id>openmpt</id>
<version>1.27.05.00</version>
<packageSourceUrl>https://github.com/AdmiringWorm/chocolatey-packages/tree/master/automatic/openmpt</packageSourceUrl>
<owners>AdmiringWorm, nipsky AdmiringWorm</owners>
<title>OpenMPT</title>
<authors>ModPlug Central</authors>
<projectUrl>http://openmpt.org</projectUrl>
<iconUrl>https://cdn.jsdelivr.net/gh/AdmiringWorm/chocolatey-packages@36f480238c82ed040dee8926cf562c1c78e73ac3/icons/openmpt.png</iconUrl>
<copyright>ModPlug Central</copyright>
<licenseUrl>https://source.openmpt.org/browse/openmpt/trunk/OpenMPT/LICENSE</licenseUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<projectSourceUrl>https://source.openmpt.org/browse/openmpt/</projectSourceUrl>
<docsUrl>http://wiki.openmpt.org/Main_Page</docsUrl>
<mailingListUrl>http://forum.openmpt.org/</mailingListUrl>
<bugTrackerUrl>http://bugs.openmpt.org/</bugTrackerUrl>
<tags>openmpt music mod tracker notsilent admin</tags>
<summary>OpenMPT is a powerful audio application that makes writing music fun, easy and efficient.</summary>
<!-- Do not touch the description here in the nuspec file. Description is imported during update from the Readme.md file -->
<description>OpenMPT is being developed since 1997 (initially named ModPlug Tracker) and has grown a lot since then. It can be used as a "classic" sample-based tracker to edit and play your favourite tracked music, but also as a modern DAW with plugin support and other great features. Here, you can find some of the key features of the tracker.</description>
<releaseNotes>v1.27.05.00 (11 February 2018, revision 9643)
---------------------------------------------
Pattern tab
[Imp] &lt;js&gt; Seeking with sample sync now supports fine volume slides.
[Mod] &lt;js&gt; Interpolating the note column no longer overwrites existing instrument numbers.
[Fix] &lt;js&gt; Possible crash when trying to enter notes after deleting all patterns.

Pattern tab::Find/Replace
[Imp] &lt;js&gt; If no pattern selection is made, pre-fill the Find fields with values from the current pattern cell if they have not been used in a previous search (http://bugs.openmpt.org/view.php?id=1082).
[Fix] &lt;js&gt; After an unsuccessful search, show the correct search strings when searching for PC events.
[Fix] &lt;js&gt; When repeating a search for PC events, the previous parameter value was not filled in correctly.
[Fix] &lt;js&gt; Searching for specific plugin parameter values did not work correctly.
[Fix] &lt;js&gt; Searching for PC events sometimes found normal events and vice versa.

Sample tab
[Imp] &lt;js&gt; Add drop-down menu for saving all samples.
[Fix] &lt;js&gt; Upsampling a sample selection did not scale the new selection correctly if its end exceeded the old sample length (tx Xemogasa).

Instrument tab
[Imp] &lt;js&gt; Add drop-down menu for saving all instruments.

Comments tab
[Fix] &lt;js&gt; Soft tabs did not have the correct size most of the time (http://bugs.openmpt.org/view.php?id=1083).

Tree view
[Mod] &lt;js&gt; Do not enforce dragged-over items to be completely visible when using drag and drop (tx sincx).
[Fix] &lt;js&gt; Duplicating or inserting instruments or samples did not refresh the pattern view properly.
[Fix] &lt;js&gt; Even after removing all patterns, they were still visible.

Other formats
[Fix] &lt;js&gt; IMF: Filter cutoff was upside down.
[Fix] &lt;js&gt; MED: Correctly import patterns with less channels than the maximum used amount.
[Fix] &lt;js&gt; STM: More accurate tempo calculation and better support for old format versions.
[Fix] &lt;js&gt; Possible small memory leaks and crashes with malformed STP files.

Misc
[Fix] &lt;js&gt; Loading the default keyboard configuration didn't load all default keys since OpenMPT 1.27.01.00, causing issues such as making instrument number entry with the regular number keys impossible.
[Fix] &lt;js&gt; More accurate song length calculation for pattern loops that have no start command (SB0).</releaseNotes>
<dependencies>
<!--We could set chocolatey to version 0.10.4, but that version was broken so we use 0.10.5-->
<dependency id="chocolatey" version="0.10.5" />
</dependencies>
</metadata>
<files>
<file src="legal\**" target="legal" />
<file src="tools\**" target="tools" />
<file src="..\..\icons\openmpt.png" target="icons" />
</files>
</package>
17 changes: 17 additions & 0 deletions automatic/openmpt/tools/chocolateyInstall.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
$ErrorActionPreference = 'Stop'

$toolsPath = Split-Path -parent $MyInvocation.MyCommand.Definition

$packageArgs = @{
packageName = $env:ChocolateyPackageName
fileType = 'exe'
file = "$toolsPath\"
file64 = "$toolsPath\"
softwareName = 'OpenMPT*'
silentArgs = "/VERYSILENT /NORESTART /SUPPRESSMSGBOXES /SP- /LOG=`"$($env:TEMP)\$($env:chocolateyPackageName).$($env:chocolateyPackageVersion).InnoInstall.log`""
validExitCodes = @(0)
}

Install-ChocolateyInstallPackage @packageArgs

ls $toolsPath\*.exe | % { rm $_ -ea 0; if (Test-Path $_) { sc "$_.ignore" } }
56 changes: 56 additions & 0 deletions automatic/openmpt/update.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
Import-Module AU

$releases = 'https://openmpt.org/download'

function global:au_BeforeUpdate { Get-RemoteFiles -Purge -NoSuffix }

function global:au_AfterUpdate {
$releaseNotes = @"
[Software Changelog](https://openmpt.org/release_notes/)
[Package Changelog](https://github.com/AdmiringWorm/chocolatey-packages/blob/master/automatic/openmpt/Changelog.md)
"@

Update-Metadata -key "releaseNotes" -value $releaseNotes
Update-Changelog -useIssueTitle
}

function global:au_SearchReplace {
@{
".\legal\VERIFICATION.txt" = @{
"(?i)(^\s*location on\:?\s*)\<.*\>" = "`${1}<$releases>"
"(?i)(\s*32\-Bit Software.*)\<.*\>" = "`${1}<$($Latest.URL32)>"
"(?i)(\s*64\-Bit Software.*)\<.*\>" = "`${1}<$($Latest.URL64)>"
"(?i)(^\s*checksum\s*type\:).*" = "`${1} $($Latest.ChecksumType32)"
"(?i)(^\s*checksum(32)?\:).*" = "`${1} $($Latest.Checksum32)"
"(?i)(^\s*checksum64\:).*" = "`${1} $($Latest.Checksum64)"
}
".\tools\chocolateyInstall.ps1" = @{
"(?i)(^\s*file\s*=\s*`"[$]toolsPath\\).*" = "`${1}$($Latest.FileName32)`""
"(?i)(^\s*file64\s*=\s*`"[$]toolsPath\\).*" = "`${1}$($Latest.FileName64)`""
}
}
}

function global:au_GetLatest {
$download_page = Invoke-WebRequest -Uri $releases -UseBasicParsing

$re = 'Setup\.exe$'
$url32 = $download_page.Links | ? href -match $re | select -first 1 -expand href | % { 'https://openmpt.org' + $_ }

$re = 'Setup-x64\.exe$'
$url64 = $download_page.links | ? href -match $re | select -first 1 -expand href | % { 'https://openmpt.org' + $_ }

$verRe = '[-]'
[version]$version32 = $url32 -split "$verRe" | select -last 1 -skip 1
[version]$version64 = $url64 -split "$verRe" | select -last 1 -skip 2
if ($version32 -ne $version64) {
throw "32bit version do not match the 64bit version"
}
@{
URL32 = Get-RedirectedUrl $url32
URL64 = Get-RedirectedUrl $url64
Version = $version32
}
}

update -ChecksumFor none
Binary file added icons/openmpt.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 38c5400

Please sign in to comment.