Skip to content

Commit

Permalink
Add files under contrib/ for building an NSIS installer.
Browse files Browse the repository at this point in the history
  • Loading branch information
jlindgren90 committed May 6, 2016
1 parent 0eefebb commit ecbc461
Show file tree
Hide file tree
Showing 3 changed files with 256 additions and 0 deletions.
89 changes: 89 additions & 0 deletions contrib/win32/installer/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
Audacious 3.7.2 for Windows

http://audacious-media-player.org

Audacious is free and open source software. By installing Audacious, you agree
to be bound by various licenses governing its use and redistribution.

Build date: 28 March 2016

LICENSE

Copyright (C) 2001-2016 Audacious developers and others

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions, and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions, and the following disclaimer in the documentation
provided with the distribution.

This software is provided "as is" and without any warranty, express or
implied. In no event shall the authors be liable for any damages arising
from the use of this software.

EXCEPTIONS

Other than the Audacious logo itself, the images included with Audacious are
based on the Tango Icon Library and are in the public domain.

Please note that many of the plugins distributed with Audacious are under
different licenses, whose full text may be found either in the "About" window
of each plugin or in the source code.

Audacious would not exist without the efforts of numerous other free and open
source software projects, which are listed below. By installing Audacious, you
also agree to all relevant licenses governing these projects. The source code
and license of each project can be found on the Internet.

Project Website
------- -------

MinGW http://mingw.org
GNU libc http://www.gnu.org/software/libc
GNU libstdc++ http://gcc.gnu.org/libstdc++
GNU gettext http://www.gnu.org/software/gettext
GNU libiconv http://www.gnu.org/software/libiconv
zlib http://zlib.net
libpng http://libpng.org/pub/png
libjpeg-turbo http://libjpeg-turbo.org/
libffi http://sourceware.org/libffi
GLib http://developer.gnome.org/glib
Pixman http://pixman.org
Cairo http://cairographics.org
Pango http://www.pango.org
GDK-Pixbuf http://developer.gnome.org/gdk-pixbuf
ATK http://developer.gnome.org/atk
GTK+ http://www.gtk.org
libguess http://atheme.org/projects/libguess.html
libxml2 http://xmlsoft.org
mpg123 http://mpg123.de
FAAD2 http://www.audiocoding.com/faad2.html
libsndfile http://mega-nerd.com/libsndfile
bs2b http://bs2b.sourceforge.net
GNU libcdio http://www.gnu.org/software/libcdio
libcddb http://libcddb.sourceforge.net
libcue http://github.com/lipnitsk/libcue
LAME http://lame.sourceforge.net
libflac http://xiph.org/flac
libogg http://xiph.org/ogg
libvorbis http://xiph.org/vorbis
OpenSSL http://www.openssl.org
neon http://webdav.org/neon
libsamplerate http://mega-nerd.com/SRC
WavPack http://wavpack.com
FFmpeg http://ffmpeg.org
ModPlug http://modplug-xmms.sourceforge.net
libbinio http://libbinio.sourceforge.net
libcurl http://curl.haxx.se
libmms http://libmms.sourceforge.net
sidplayfp http://sidplay-residfp.sourceforge.net
FluidSynth http://fluidsynth.org

If you are an author of one of these projects and do not wish your software
included with Audacious in binary form, please contact us via the support forum:

http://redmine.audacious-media-player.org/projects/audacious/boards
124 changes: 124 additions & 0 deletions contrib/win32/installer/audacious.nsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
; audacious.nsi
; Copyright 2013-2016 Carlo Bramini and John Lindgren
;
; Redistribution and use in source and binary forms, with or without
; modification, are permitted provided that the following conditions are met:
;
; 1. Redistributions of source code must retain the above copyright notice,
; this list of conditions, and the following disclaimer.
;
; 2. Redistributions in binary form must reproduce the above copyright notice,
; this list of conditions, and the following disclaimer in the documentation
; provided with the distribution.
;
; This software is provided "as is" and without any warranty, express or
; implied. In no event shall the authors be liable for any damages arising from
; the use of this software.

; Imports
!include "MUI2.nsh"

; Version
!define VERSION "3.7.2"

; Program name
Name "Audacious ${VERSION}"

; Installer file name
OutFile "audacious-${VERSION}-win32.exe"

; Installer icon
!define MUI_ICON "audacious.ico"
!define MUI_UNICON "audacious.ico"

; Installer options
RequestExecutionLevel admin
SetCompressor /SOLID lzma

; Default installation directory
InstallDir "$PROGRAMFILES\Audacious"

; Registry uninstall key
!define UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\Audacious"

; Path to uninstaller
!define UNINSTALLER "$INSTDIR\uninstall.exe"

; Installer pages
!insertmacro MUI_PAGE_LICENSE README.txt
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES

; Uninstaller pages
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES

; Languages
!insertmacro MUI_LANGUAGE "English"

Section "Audacious" InstallSection
SectionIn 1 2 RO

SetOutPath "$INSTDIR"
File "README.txt"

SetOutPath "$INSTDIR\bin"
File /r "bin\*.*"

SetOutPath "$INSTDIR\etc"
File /r "etc\*.*"

SetOutPath "$INSTDIR\lib"
File /r "lib\*.*"

SetOutPath "$INSTDIR\share"
File /r "share\*.*"

; create uninstaller
WriteRegStr HKLM "${UNINST_KEY}" "DisplayName" "Audacious"
WriteRegStr HKLM "${UNINST_KEY}" "DisplayVersion" "${VERSION}"
WriteRegStr HKLM "${UNINST_KEY}" "Publisher" "Audacious developers"
WriteRegStr HKLM "${UNINST_KEY}" "DisplayIcon" "${UNINSTALLER}"
WriteRegStr HKLM "${UNINST_KEY}" "UninstallString" "${UNINSTALLER}"
WriteRegDWORD HKLM "${UNINST_KEY}" "NoModify" 1
WriteRegDWORD HKLM "${UNINST_KEY}" "NoRepair" 1

; estimate installed size
SectionGetSize InstallSection $0
WriteRegDWORD HKLM "${UNINST_KEY}" "EstimatedSize" $0

WriteUninstaller ${UNINSTALLER}

SectionEnd

; Optional sections
Section "Add to Start Menu" StartMenuSection
SectionIn 1 2

SetShellVarContext all
SetOutPath "$INSTDIR\bin" ; sets the shortcut's working directory
CreateShortCut "$SMPROGRAMS\Audacious.lnk" "$INSTDIR\bin\audacious.exe"

SectionEnd

Section "Add to Desktop" DesktopSection
SectionIn 1 2

SetShellVarContext all
SetOutPath "$INSTDIR\bin" ; sets the shortcut's working directory
CreateShortCut "$DESKTOP\Audacious.lnk" "$INSTDIR\bin\audacious.exe"

SectionEnd

Section "Uninstall" UninstallSection

RMDir /r "$INSTDIR"

SetShellVarContext all
Delete "$SMPROGRAMS\Audacious.lnk"
Delete "$DESKTOP\Audacious.lnk"

DeleteRegKey HKLM "${UNINST_KEY}"

SectionEnd
43 changes: 43 additions & 0 deletions contrib/win32/installer/merge.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#!/bin/sh

# Quick-and-dirty script for updating a Windows release folder

cd /C/aud-win32
for i in `find -type f` ; do
if test -f /C/MinGW/$i ; then
cp /C/MinGW/$i $i
elif test -f /C/GTK/$i ; then
cp /C/GTK/$i $i
elif test -f /C/libs/$i ; then
cp /C/libs/$i $i
elif test -f /C/aud/$i ; then
cp /C/aud/$i $i
else
echo Not found: $i
fi
done

for i in `find -name *.dll` ; do strip -s $i ; done
for i in `find -name *.exe` ; do strip -s $i ; done

cd /C/misc
cp loaders.cache /C/aud-win32/lib/gdk-pixbuf-2.0/2.10.0
cp pango.modules /C/aud-win32/etc/pango

rm -rf /C/aud-win32/share/locale

cd /C/GTK
for i in `find ./share/locale -name gtk20.mo` ; do
mkdir -p /C/aud-win32/${i%%/gtk20.mo}
cp $i /C/aud-win32/$i
done

cd /C/aud
for i in `find ./share/locale -name audacious.mo` ; do
mkdir -p /C/aud-win32/${i%%/audacious.mo}
cp $i /C/aud-win32/$i
done
for i in `find ./share/locale -name audacious-plugins.mo` ; do
mkdir -p /C/aud-win32/${i%%/audacious-plugins.mo}
cp $i /C/aud-win32/$i
done

0 comments on commit ecbc461

Please sign in to comment.