0

Update and detailed answer Feb 4, 2022.

For the purposes of the Plutus Pioneer Program, the checkout information can be found in the weekly cabal.project file, located (for Week04, as an example, and on my system) at

~/plutus/plutus-pioneer-program/code/week04/cabal.project
I have developed a system using aliases that load when I enter my shell (using a text file sourced from within .zshrc) and my nix-shell (same file, but sourced from .bashrc which is what nix uses). Among those aliases are:
alias pp='cd ~/plutus/plutus; ls -laFh; pwd'
alias ppa='cd ~/plutus/plutus-apps; ls -laFh; pwd'
alias ppp='cd ~/plutus/plutus-pioneer-program; ls -laFh; pwd'
alias pppw4='cd ~/plutus/plutus-pioneer-program/code/week04; ls -laFh; pwd'

So now my sequence is

pp
git pull
ppp
git pull
ppa
git pull
pppw4
cat cabal.project

The "git pull" following the "ppp" is what brings in the weekly lesson/project files.

I then look within cabal.project for the following section (the key portion is directly under "plutus-apps.git") Be careful because there are numerous other tags in that file.

package cardano-wallet-core-integration
  optimization: False
  
source-repository-package
  type: git
  location: https://github.com/input-output-hk/plutus-apps.git
  tag:ea1bfc6a49ee731c67ada3bfb326ee798001701a
  subdir:
    freer-extras
    playground-common
    plutus-chain-index-core
    plutus-contract
    plutus-ledger
    plutus-ledger-constraints
    quickcheck-dynamic
  
-- Direct dependency.
-- Are you thinking of updating this tag to some other commit?

I then use this info to add an alias to my aliases file.

alias pppcheckoutw4='cd ~/plutus/plutus-apps; git checkout ea1bfc6a49ee731c67ada3bfb326ee798001701a'
That way I can easily do the git checkout in the future with
pppcheckoutw4
and then enter the nix shell (always from within the Plutus-apps directory!) Once in the nix shell I do "$ pppw4" (or whichever week it is) and then "$ cabal update" and then "$ cabal repl" and I am ready to work.

So now I have an efficient and organized system for doing my "git pull"s and "git checkout" before diving into my nix shell and then my cabal repl. May you find your way as pleasant.

=========== Original Question ===========

When setting up plutus-playground, I have seen comments and at least one other source that advised running

git checkout 3746610e53654a1167aeb4c6294c6096d16b0502
#Newer??
git checkout 7f53f18dfc788bf6aa929f47d840efa1247e11fd
inside the plutus-apps directory, prior to running
[$] nix-build -A plutus-playground.client
[$] nix-build -A plutus-playground.server
This seemed to be the key for me to successfully build and run the playground, yet it is not in the canonical instructions and I have no idea how I could have deduced this on my own. Where does that line(code) come from (I assume github, but where?) and should it be included in the canonical instructions? How is it different from "git commit"? Does it have anything to do with the similar codes in the cabal.project files in plutus and plutus-apps? Still learning, explanation appreciated!

2 Answers 2

4

You can find it in the Plutus Pioneer Program cabal.project file under the plutus-apps dependency entry.

-2

Use 41149926c108c71831cfe8d244c83b0ee4bf5c8a as specified here

1

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.