A permission-less helper for NTT programs which don't have their own lookup tables.
The addition of a managed lookup table was added in Solana NTT v3.
It is assumed this helper is only needed for NTT managers prior to v3 which did not include a lookup table and bundled their manager and transceiver.
See luts.rs from the NTT repo for more background.
⚠ This software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Or plainly spoken - this is a very complex piece of software which targets a bleeding-edge, experimental smart contract runtime. Mistakes happen, and no matter how hard you try and whether you pay someone to audit it, it may eat your tokens, set your printer on fire or startle your cat. Cryptocurrencies are a high-risk investment, no matter how fancy.
anchor testEnsure that the WORMHOLE_PROGRAM_ID in lib.rs is set to the appropriate Wormhole program ID.
solana-verify buildsolana program deploy -u <NETWORK> target/deploy/example_ntt_svm_lut.so --program-id target/deploy/example_ntt_svm_lut-keypair.json --with-compute-unit-price 1 --max-sign-attempts 100 --use-rpc -k ~/.config/solana/<KEYPAIR>.jsonAs of this writing, verification is only supported on mainnet.
solana-verify verify-from-repo --skip-build -u <NETWORK> --program-id 1uteB5DZdNfns9B12rgGf5msKh1d7FbbkvciWmhsZiC https://github.com/wormholelabs-xyz/example-ntt-svm-lut --commit-hash <COMMIT> --library-name example_ntt_svm_lut -k ~/.config/solana/<KEYPAIR>.json
solana-verify verify-from-repo --remote -u <NETWORK> --program-id 1uteB5DZdNfns9B12rgGf5msKh1d7FbbkvciWmhsZiC https://github.com/wormholelabs-xyz/example-ntt-svm-lut --commit-hash <COMMIT> --library-name example_ntt_svm_lut -k ~/.config/solana/<KEYPAIR>.jsonThen init the IDL
anchor build
anchor idl init --provider.cluster <NETWORK> --provider.wallet ~/.config/solana/<KEYPAIR>.json -f target/idl/example_ntt_svm_lut.json 1uteB5DZdNfns9B12rgGf5msKh1d7FbbkvciWmhsZiC
⚠️ Only drop the upgrade authority after verifying the program is verified and the IDL has been uploaded! If devnet, you may want to keep these
anchor idl erase-authority --provider.cluster <NETWORK> --provider.wallet ~/.config/solana/<KEYPAIR>.json -p 1uteB5DZdNfns9B12rgGf5msKh1d7FbbkvciWmhsZiC
solana program set-upgrade-authority -u <NETWORK> -k ~/.config/solana/<KEYPAIR>.json 1uteB5DZdNfns9B12rgGf5msKh1d7FbbkvciWmhsZiC --final