Skip to content

Release 7.1.0 #3272

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 26 commits into from
Feb 26, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f02475f
Merge branch 'main' into develop
michalrus Dec 12, 2024
039a1c9
fix: `libiconv.dylib` issue on previous macOS
michalrus Jan 8, 2025
0f50f91
[LW-12084] Update cardano-wallet to v2025-01-07
michalrus Jan 9, 2025
60a5b97
[LW-12084] Update cardano-node to 10.1.4
michalrus Jan 9, 2025
2cd00b9
[LW-12084] Update cardano-playground to `d3322dce0ab1c00386adc93899aa…
michalrus Jan 9, 2025
c807f32
[LW-12084] Update `CHANGELOG.md`
michalrus Jan 9, 2025
87c0292
[LW-12084] Update cardano-wallet to v2025-01-09
michalrus Jan 9, 2025
6d1cde5
[LW-12084] Correct the `CHANGELOG.md`
michalrus Jan 9, 2025
ba891cf
fix: Hydra eval (more like a workaround)
michalrus Jan 9, 2025
8ef96c9
[LW-12086] Remove `MacInstaller.hs`
michalrus Jan 10, 2025
1d024da
[LW-12086] Unify runtime Node.js deps across systems
michalrus Jan 10, 2025
51eb36d
[LW-12086] Drop `common.daedalus-installer` from the devshell
michalrus Jan 10, 2025
d364dc6
feat: add support of cip129 for drep ids
szymonmaslowski Jan 10, 2025
dcd1dfb
[LW-12086] Don’t use symlinks
michalrus Jan 10, 2025
234dcc0
[LW-12086] Remove dots from directory names under `Contents/MacOS`…
michalrus Jan 10, 2025
184bc1b
[LW-12086] Restore `.productName` in the final `package.json`
michalrus Jan 10, 2025
57141a8
Merge pull request #3270 from input-output-hk/chore/LW-12084-update-c…
michalrus Jan 10, 2025
286799a
[LW-12088] Update `CHANGELOG.md`
michalrus Jan 10, 2025
d9a45a0
Merge pull request #3271 from input-output-hk/feat/LW-12088-enable-ci…
michalrus Jan 10, 2025
41423f8
Merge pull request #3268 from input-output-hk/fix/previous-macos
michalrus Jan 10, 2025
de501c5
[LW-12086] Update `CHANGELOG.md`
michalrus Jan 10, 2025
dd63902
Release version 7.1.0
michalrus Jan 10, 2025
295cf77
fix: vote delegation form for wallets that have active pool and vote …
szymonmaslowski Jan 27, 2025
9195bee
feat: enable cip-129 for hardware wallets
szymonmaslowski Jan 27, 2025
bd7d70d
fix: allow Trezor to delegate vote with cip129
szymonmaslowski Jan 28, 2025
5472147
Merge pull request #3273 from input-output-hk/fix/LW-12119-fix-vote-d…
michalrus Jan 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
# Changelog

## 7.1.0

### Chores

- Introduced a potential fix for dynamic libraries on earlier macOS versions ([PR 3268](https://github.com/input-output-hk/daedalus/pull/3268))

- Added support of CIP-129 for DRep IDs ([PR 3271](https://github.com/input-output-hk/daedalus/pull/3271))

- Update `cardano-node` to 10.1.4, and `cardano-wallet` to v2025-01-09 ([PR 3270](https://github.com/input-output-hk/daedalus/pull/3270))

## 7.0.2

### Fixes
Expand Down
24 changes: 12 additions & 12 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@

inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-22.11-darwin";
cardano-wallet-unpatched.url = "github:cardano-foundation/cardano-wallet/v2024-11-18";
cardano-wallet-unpatched.url = "github:cardano-foundation/cardano-wallet/v2025-01-09";
cardano-wallet-unpatched.flake = false; # otherwise, +10k quadratic dependencies in flake.lock…
cardano-node-override.url = "github:IntersectMBO/cardano-node/10.1.3";
cardano-node-override.url = "github:IntersectMBO/cardano-node/10.1.4";
cardano-node-override.flake = false;
cardano-playground.url = "github:input-output-hk/cardano-playground/49d93e5fe42e1e37f8b4c7d463b5d6bc4af65f26";
cardano-playground.url = "github:input-output-hk/cardano-playground/d3322dce0ab1c00386adc93899aabe9252342b54";
cardano-playground.flake = false; # otherwise, +9k dependencies in flake.lock…
cardano-shell.url = "github:input-output-hk/cardano-shell/0d1d5f036c73d18e641412d2c58d4acda592d493";
cardano-shell.flake = false;
Expand Down
3 changes: 0 additions & 3 deletions installers/Installer.hs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import qualified System.Info as Sys
import Turtle (export)
import qualified System.IO as IO

import qualified MacInstaller
import qualified WindowsInstaller
import Data.Yaml (decodeFileThrow)

Expand All @@ -20,7 +19,6 @@ main = do
IO.hSetEncoding IO.stdout IO.utf8
let os = case Sys.os of
"linux" -> Linux64
"darwin" -> Macos64
"mingw32" -> Win64
_ -> error ("Unsupported OS: " <> pack Sys.os)

Expand All @@ -43,5 +41,4 @@ genSignedInstaller os options'= do
export "NETWORK" (clusterNetwork $ oCluster options')
case os of
Linux64 -> putStrLn ("Use default.nix, please." :: String)
Macos64 -> MacInstaller.main options'
Win64 -> WindowsInstaller.main options'
32 changes: 0 additions & 32 deletions installers/Spec.hs
Original file line number Diff line number Diff line change
Expand Up @@ -19,45 +19,13 @@ import Data.Aeson (decode)

import Config
import Types
import qualified MacInstaller as Mac
import Util

main :: IO ()
main = hspec $ do
describe "Utility functions" utilSpec
describe "MacInstaller build" macBuildSpec
describe "recursive directory deletion" deleteSpec

macBuildSpec :: Spec
macBuildSpec = do
describe "The whole thing" $ do
it "Runs through the whole installer build" $ runManaged $ do
out <- getTempDir "test-build"
installersDir <- makeTestInstallersDir
daedalusBridge <- liftIO getDaedalusBridge

let opts = Options
{ oOS = Win64
, oBackend = Cardano daedalusBridge
, oBuildJob = Just (BuildJob "test")
, oCluster = Testnet
, oAppName = "Daedalus"
, oOutputDir = out
, oTestInstaller = testInstaller False
, oSigningConfigPath = Nothing
}

liftIO $ do
withDir installersDir $ do
mktree "../release/darwin-x64/Daedalus-darwin-x64/Daedalus.app/Contents/Resources/app"
mktree "../release/darwin-arm64/Daedalus-darwin-arm64/Daedalus.app/Contents/Resources/app"
writeFile "../release/darwin-x64/Daedalus-darwin-x64/Daedalus.app/Contents/Resources/app/package.json" "{}"
writeFile "../release/darwin-arm64/Daedalus-darwin-arm64/Daedalus.app/Contents/Resources/app/package.json" "{}"
Mac.main opts

-- there should be an installer file at the end
fold (ls out) Fold.length `shouldReturn` 1

-- | Set up a temporary source/installers directory with everything
-- required for the installer builder. This is so that the installer
-- builder can be tested in a pure environment without any
Expand Down
45 changes: 45 additions & 0 deletions installers/codesign.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
set -x
SIGN_ID="$1"
KEYCHAIN="$2"
REL_PATH="$3"
XML_PATH="$4"
ABS_PATH="$(pwd)/$REL_PATH"
TS="$(date +%Y-%m-%d_%H-%M-%S)"
function sign_cmd() {
for targetFile in "$@" ; do
codesign --force --verbose=4 --deep --strict --timestamp --options=runtime --entitlements $XML_PATH --sign "$SIGN_ID" "$targetFile" 2>&1 | tee -a /tmp/codesign-output-${TS}.txt
done
}
VERIFY_CMD="codesign --verbose=4 --verify --deep --strict"
ENTITLEMENT_CMD="codesign -d --entitlements :-"
LOG="2>&1 | tee -a /tmp/codesign-output-${TS}.txt"

# Remove symlinks pointing outside of the project build folder:
rm -f "$ABS_PATH/Contents/Resources/app/result"

# Ensure the code signing identity is found and set the keychain search path:
eval "security show-keychain-info \"$KEYCHAIN\" $LOG"
eval "security find-identity -v -p codesigning \"$KEYCHAIN\" $LOG"
eval "security list-keychains -d user -s \"$KEYCHAIN\" $LOG"

# Sign framework executables not signed by the deep sign command:
sign_cmd "$ABS_PATH/Contents/Frameworks/Squirrel.framework/Versions/A/Resources/ShipIt"
sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/Current/Resources/crashpad_handler"
sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/Current/Libraries/libnode.dylib"
sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/Current/Libraries/libffmpeg.dylib"

sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libEGL.dylib"
sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libGLESv2.dylib"
sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libswiftshader_libEGL.dylib"
sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libswiftshader_libGLESv2.dylib"
sign_cmd "$ABS_PATH/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libvk_swiftshader.dylib"

# Sign the whole component deeply
sign_cmd "$ABS_PATH"

# Verify the signing
eval "$VERIFY_CMD \"$ABS_PATH\" $LOG"
eval "$VERIFY_CMD --display -r- \"$ABS_PATH\"" "$LOG"
eval "$ENTITLEMENT_CMD \"$ABS_PATH\"" "$LOG"
set +x
4 changes: 1 addition & 3 deletions installers/common/Config.hs
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ data Options = Options
, oOS :: OS
, oCluster :: Cluster
, oAppName :: AppName
, oAppRootOverride :: Maybe FilePath
, oDontPkgbuild :: Bool
, oOutputDir :: FilePath
, oTestInstaller :: TestInstaller
Expand All @@ -87,12 +86,11 @@ optionsParser detectedOS = Options
<*> (optional $
(BuildJob <$> optText "build-counter" 'v' "‘inputs.self.sourceInfo.revCount’"))
<*> (fromMaybe detectedOS <$> (optional $
optReadLower "os" 's' "OS, defaults to host OS. One of: linux64 macos64 win64"))
optReadLower "os" 's' "OS, defaults to host OS. One of: linux64 win64"))
<*> (fromMaybe Selfnode <$> (optional $
optReadLower "cluster" 'c' "Cluster the resulting installer will target: mainnet, staging, or testnet"))
<*> (fromMaybe "daedalus" <$> (optional $
(AppName <$> optText "appname" 'n' "Application name: daedalus or..")))
<*> (optional (optPath "app-root-override" 'r' "If you built the Electron app outside of MacInstaller.hs"))
<*> (switch "dont-pkgbuild" 'd' "Stop after preparing the package (content root), don’t create the final *.pkg file")
<*> optPath "out-dir" 'o' "Installer output directory"
<*> (testInstaller
Expand Down
Loading