Skip to content

Commit

Permalink
Release v5.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
kevinawalsh committed Jul 21, 2023
1 parent 1c2c01f commit 035fbfa
Show file tree
Hide file tree
Showing 8 changed files with 154 additions and 634 deletions.
24 changes: 19 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ Logisim-Evolution (Holy Cross Edition)

You can get the latest *stable version* of Logisim-Evolution (Holy Cross Edition) here:

[![Download for Windows](https://raw.githubusercontent.com/kevinawalsh/logisim-evolution/holycross/images/download-windows.jpg)](https://mathcs.holycross.edu/~kwalsh/Logisim-Evolution-4.0.4hc.exe)
[![Download for Mac](https://raw.githubusercontent.com/kevinawalsh/logisim-evolution/holycross/images/download-mac.jpg)](https://mathcs.holycross.edu/~kwalsh/Logisim-Evolution-4.0.4-HC.pkg)
[![Download for Linux](https://raw.githubusercontent.com/kevinawalsh/logisim-evolution/holycross/images/download-linux.jpg)](https://mathcs.holycross.edu/~kwalsh/logisim-evolution-4.0.4hc.jar)
[![Download for Windows](https://raw.githubusercontent.com/kevinawalsh/logisim-evolution/holycross/images/download-windows.jpg)](https://github.com/kevinawalsh/logisim-evolution/releases/download/v5.0.0/Logisim-Evolution-5.0.0hc.exe)
[![Download for Mac](https://raw.githubusercontent.com/kevinawalsh/logisim-evolution/holycross/images/download-mac.jpg)](https://github.com/kevinawalsh/logisim-evolution/releases/download/v5.0.0/Logisim-Evolution-5.0.0-HC.pkg)
[![Download for Linux](https://raw.githubusercontent.com/kevinawalsh/logisim-evolution/holycross/images/download-linux.jpg)](https://github.com/kevinawalsh/logisim-evolution/releases/download/v5.0.0/logisim-evolution-5.0.0hc.jar)

**MAC Security Warning**: On some recent MacOS versions, the OS security
gatekeeper may prevent you from opening the PKG file above directly. Instead,
Expand All @@ -14,7 +14,7 @@ go to your download folder in the finder, right click the PKG file and "Open
with... Installer (Default)". When given a security warning, click "Open". This
should install the program.

An alternative [ZIP format version for Windows](https://mathcs.holycross.edu/~kwalsh/Logisim-Evolution-4.0.4hc.zip) is
An alternative [ZIP format version for Windows](https://github.com/kevinawalsh/logisim-evolution/releases/download/v5.0.0/Logisim-Evolution-5.0.0hc-windows.zip) is
also available. After downloading it, extract the compressed contents to a directory of your choice and run the
extracted exe file.

Expand All @@ -23,9 +23,23 @@ platform, but requires that Java version 11 or above be installed separately
(Java version 17 is recommended; the Adoptium project's Temurin OpenJDK 17
available [here](https://adoptium.net/) is one possible choice).
To run the JAR file, open a command line (or Mac Terminal or Windows CMD.exe
prompt) and type `java -jar logisim-evolution-4.0.4hc.jar` from within the
prompt) and type `java -jar logisim-evolution-5.0.0hc.jar` from within the
directory where you have downloaded the JAR file.

## What's new in version 5.0.0

* Mac releases are compiled for Apple M1 and M2 processors, so should perform
much better.
* A new built-in audio component library.
* Custom appearance shapes can be automatically hidden or shown depending on
circuit state. This enables building fancy dynamic components that change
appearance depending on their state.
* Higher auto-tick rates.
* Scroll/zoom now works on mac, and many other bug fixes and small
user-interface improvements.
* Auto-backup and recovery of projects to help avoid losing your work.

## History

This is a fork of
[reds-heig logisim-evolution](https://github.com/reds-heig/logisim-evolution), which in
Expand Down
11 changes: 5 additions & 6 deletions build-mac-release-package.sh
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@
# at jdk.incubator.jpackage/jdk.incubator.jpackage.internal.IOUtils.exec(IOUtils.java:150)
# at jdk.incubator.jpackage/jdk.incubator.jpackage.internal.MacAppImageBuilder.lambda$signAppBundle$16(MacAppImageBuilder.java:804)
# This, however, just means that the Developer ID Application and Developer ID Installer keys (not the certificates)
# are missing fro mthe keychain. This can be fixed by going into XCode, preferences, Keys, and create a new one of each.
# are missing from the keychain. This can be fixed by going into XCode, preferences, Keys, and create a new one of each.

set -e # die on error
#set -x # debug output
Expand All @@ -92,7 +92,7 @@ set -e # die on error
# Using print-module-deps appears to be the correct way to get the dependencies.
echo "Detecting java module dependencies..."
DETECTED_MODULES=`jdeps --print-module-deps logisim-evolution.jar`
MODULES="java.base,java.desktop,java.logging,java.prefs"
MODULES="java.base,java.desktop,java.logging,java.prefs,jdk.httpserver"
echo "Detected java module dependencies: ${DETECTED_MODULES}"

JAVA_RUNTIME="java-runtime-mac"
Expand All @@ -116,7 +116,7 @@ fi
INSTALLER_TYPE="pkg" # Options: dmg or pkg
OUTPUT="."
JAR="logisim-evolution.jar"
VERSION="4.0.4" # must be numerical x.y.z
VERSION="5.0.0" # must be numerical x.y.z
FILE_ASSOCIATIONS="file-associations.properties"
APP_ICON="logisim.icns"
JAVA_APP_IDENTIFIER="edu.holycross.cs.kwalsh.logisim"
Expand All @@ -141,8 +141,7 @@ chmod a+rx mac-resources/postinstall

# Build the app and installer package
echo "Building ${INSTALLER_TYPE} ..."
PACKAGER=/Library/Java/JavaVirtualMachines/jdk-14.jdk/Contents/Home/bin/jpackage
#PACKAGER=/Library/Java/JavaVirtualMachines/jdk-15-ea-6.jdk/Contents/Home/bin/jpackage
PACKAGER=/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home/bin/jpackage
${PACKAGER} \
--type ${INSTALLER_TYPE} \
--input mac-staging \
Expand All @@ -151,7 +150,7 @@ ${PACKAGER} \
--main-class com.cburch.logisim.Main \
--main-jar "${JAR}" \
--app-version "${VERSION}" \
--copyright "(c) 2019 Kevin Walsh" \
--copyright "(c) 2023 Kevin Walsh" \
--description "Digital logic designer and simulator." \
--vendor "Kevin Walsh" \
--runtime-image "${JAVA_RUNTIME}" \
Expand Down
6 changes: 3 additions & 3 deletions build-mac-unsigned-package.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
# which come with a new jpackage tool, which apparently can be used to package
# files created with JDK 11. Both of these appear to be broken in various
# ways: the backport can't deal with license files correctly, and neither sets
# the permissions correctly on the installed files
# the permissions correctly on the installed files.
# However, this appears to be broken in several ways:
# - MacOS is becoming increasingly (and rapidly) more strict about running code
# from unsigned/unofficial sources. It seems that the most recent versions of
Expand Down Expand Up @@ -87,7 +87,7 @@ fi
INSTALLER_TYPE="pkg" # Options: dmg or pkg
OUTPUT="."
JAR="logisim-evolution.jar"
VERSION="4.0.1" # must be numerical x.y.z
VERSION="5.0.0" # must be numerical x.y.z
FILE_ASSOCIATIONS="file-associations.properties"
APP_ICON="logisim.icns"
JAVA_APP_IDENTIFIER="edu.holycross.cs.kwalsh.logisim"
Expand Down Expand Up @@ -121,7 +121,7 @@ ${PACKAGER} \
--main-class com.cburch.logisim.Main \
--main-jar "${JAR}" \
--app-version "${VERSION}" \
--copyright "(c) 2019 Kevin Walsh" \
--copyright "(c) 2023 Kevin Walsh" \
--description "Digital logic designer and simulator." \
--vendor "Kevin Walsh" \
--add-modules "${MODULES}" \
Expand Down
30 changes: 15 additions & 15 deletions build-win-release-package.bat
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ rem logisim-win-install.nsi

rem set JDEPS="C:\Program Files\Java\jdk-11.0.4+11\bin\jdeps.exe"
rem set JLINK="C:\Program Files\Java\jdk-11.0.4+11\bin\jlink.exe"
set JDEPS="C:\Program Files\AdoptOpenJDK\jdk-11.0.4.11-hotspot\bin\jdeps.exe"
set JLINK="C:\Program Files\AdoptOpenJDK\jdk-11.0.4.11-hotspot\bin\jlink.exe"
set JDEPS="C:\Program Files\AdoptOpenJDK\temurin-17.0.7_7-hotspot\bin\jdeps.exe"
set JLINK="C:\Program Files\AdoptOpenJDK\temurin-17.0.7_7-hotspot\bin\jlink.exe"
rem set PACKAGER="C:\Program Files\Java\jdk-14\bin\jpackage.exe"
set LAUNCH4J="C:\Program Files (x86)\Launch4j\launch4jc.exe"
set NSIS="c:\Program Files (x86)\NSIS\Bin\makensis.exe"
Expand All @@ -43,7 +43,7 @@ echo Detecting java module dependencies...
%JDEPS% --print-module-deps logisim-evolution.jar > module-deps.txt
set /p DETECTED_MODULES=<module-deps.txt

set MODULES=java.base,java.desktop,java.logging,java.prefs
set MODULES=java.base,java.desktop,java.logging,java.prefs,jdk.httpserver
echo Detected java module dependencies: %DETECTED_MODULES%

set JAVA_RUNTIME=logisim-evolution-runtime
Expand All @@ -69,7 +69,7 @@ rem rem installer type can be exe or msi, but exe does not seem to work
rem set INSTALLER_TYPE="msi"
rem set OUTPUT=.
rem set JAR=logisim-evolution.jar
rem set VERSION=4.0.4
rem set VERSION=5.0.0
rem rem FILE_ASSOCIATIONS="file-associations.properties"
rem set APP_ICON="logisim.ico"
rem rem JAVA_APP_IDENTIFIER="edu.holycross.cs.kwalsh.logisim"
Expand Down Expand Up @@ -98,7 +98,7 @@ rem --name "Logisim-Evolution" ^
rem --main-class com.cburch.logisim.Main ^
rem --main-jar "%JAR%" ^
rem --app-version "%VERSION%" ^
rem --copyright "(c) 2019 Kevin Walsh" ^
rem --copyright "(c) 2023 Kevin Walsh" ^
rem --description "Digital logic designer and simulator." ^
rem --vendor "Kevin Walsh" ^
rem --add-modules "%MODULES%" ^
Expand All @@ -119,18 +119,18 @@ echo Creating executable wrapper...
%LAUNCH4J% logisim-l4j.xml || goto :error

echo Creating ZIP package for distribution...
IF EXIST Logisim-Evolution-4.0.4hc.zip del Logisim-Evolution-4.0.4hc.zip || goto :error
IF EXIST Logisim-Evolution-4.0.4hc rmdir /S /Q Logisim-Evolution-4.0.4hc || goto :error
mkdir Logisim-Evolution-4.0.4hc || goto :error
copy LICENSE Logisim-Evolution-4.0.4hc\LICENSE.txt || goto :error
copy logisim-evolution-4.0.4hc.exe Logisim-Evolution-4.0.4hc || goto :error
xcopy /s logisim-evolution-runtime Logisim-Evolution-4.0.4hc\logisim-evolution-runtime\ || goto :error
powershell.exe -nologo -noprofile -command "& { Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::CreateFromDirectory('Logisim-Evolution-4.0.4hc', 'Logisim-Evolution-4.0.4hc.zip'); }" || goto :error
IF EXIST logisim-evolution-4.0.4hc.exe del logisim-evolution-4.0.4hc.exe || goto :error
rmdir /S /Q Logisim-Evolution-4.0.4hc || goto :error
IF EXIST Logisim-Evolution-5.0.0hc-windows.zip del Logisim-Evolution-5.0.0hc-windows.zip || goto :error
IF EXIST Logisim-Evolution-5.0.0hc rmdir /S /Q Logisim-Evolution-5.0.0hc || goto :error
mkdir Logisim-Evolution-5.0.0hc || goto :error
copy LICENSE Logisim-Evolution-5.0.0hc\LICENSE.txt || goto :error
copy logisim-evolution-5.0.0hc.exe Logisim-Evolution-5.0.0hc || goto :error
xcopy /s logisim-evolution-runtime Logisim-Evolution-5.0.0hc\logisim-evolution-runtime\ || goto :error
powershell.exe -nologo -noprofile -command "& { Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::CreateFromDirectory('Logisim-Evolution-5.0.0hc', 'Logisim-Evolution-5.0.0hc-windows.zip'); }" || goto :error
IF EXIST logisim-evolution-5.0.0hc.exe del logisim-evolution-5.0.0hc.exe || goto :error
rmdir /S /Q Logisim-Evolution-5.0.0hc || goto :error

echo Creating self-contained executable...
copy logisim-evolution.jar logisim-evolution-4.0.4hc.jar || goto :error
copy logisim-evolution.jar logisim-evolution-5.0.0hc.jar || goto :error
%NSIS% logisim-win-install.nsi || goto :error

echo =======================================
Expand Down
2 changes: 1 addition & 1 deletion logisim-l4j.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<dontWrapJar>false</dontWrapJar>
<headerType>gui</headerType>
<jar>C:\Users\kwalsh\Downloads\logisim-evolution\logisim-evolution.jar</jar>
<outfile>C:\Users\kwalsh\Downloads\logisim-evolution\logisim-evolution-4.0.4hc.exe</outfile>
<outfile>C:\Users\kwalsh\Downloads\logisim-evolution\logisim-evolution-5.0.0hc.exe</outfile>
<errTitle></errTitle>
<cmdLine></cmdLine>
<chdir>.</chdir>
Expand Down
18 changes: 9 additions & 9 deletions logisim-win-install.nsi
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,16 @@ SilentInstall silent
RequestExecutionLevel user
ShowInstDetails hide

OutFile "Logisim-Evolution-4.0.4hc.exe"
OutFile "Logisim-Evolution-5.0.0hc.exe"
Icon "logisim.ico"
VIProductVersion 4.0.4.00000
VIAddVersionKey ProductName "Logisim-Evolution-4.0.4hc"
VIAddVersionKey LegalCopyright "Copyright (c) 2019 Kevin Walsh"
VIProductVersion 5.0.0.00000
VIAddVersionKey ProductName "Logisim-Evolution-5.0.0hc"
VIAddVersionKey LegalCopyright "Copyright (c) 2023 Kevin Walsh"
VIAddVersionKey FileDescription "Digital logic designer and simulator"
VIAddVersionKey FileVersion 4.0.4.00000
VIAddVersionKey ProductVersion "4.0.4hc / AdoptOpenJDK Windows Hotspot 11.0.4_11 (x64)"
VIAddVersionKey FileVersion 5.0.0.00000
VIAddVersionKey ProductVersion "5.0.0hc / Adoptium OpenJDK Temurin-17.0.7_7 (x64)"
VIAddVersionKey InternalName "Logisim-Evolution-HC"
VIAddVersionKey OriginalFilename "Logisim-Evolution-4.0.4hc.exe"
VIAddVersionKey OriginalFilename "Logisim-Evolution-5.0.0hc.exe"

Section
SetOverwrite off
Expand All @@ -24,9 +24,9 @@ Section

InitPluginsDir
SetOutPath $PluginsDir
File "logisim-evolution-4.0.4hc.jar"
File "logisim-evolution-5.0.0hc.jar"
SetOutPath $TEMP
${GetParameters} $R0
nsExec::Exec '"$TEMP\logisim-evolution-runtime\bin\javaw.exe" -jar $PluginsDir\logisim-evolution-4.0.4hc.jar $R0'
nsExec::Exec '"$TEMP\logisim-evolution-runtime\bin\javaw.exe" -jar $PluginsDir\logisim-evolution-5.0.0hc.jar $R0'
RMDir /r $PluginsDir
SectionEnd
Loading

0 comments on commit 035fbfa

Please sign in to comment.