{"id":13786965,"url":"https://github.com/electronics-and-drives/SPAM","last_synced_at":"2025-05-12T00:30:35.104Z","repository":{"id":119713658,"uuid":"181688720","full_name":"electronics-and-drives/SPAM","owner":"electronics-and-drives","description":"SKILL Package Manager","archived":false,"fork":false,"pushed_at":"2019-04-17T14:25:30.000Z","size":33,"stargazers_count":9,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-18T00:37:17.317Z","etag":null,"topics":["asic","asic-design","cadence","cadence-skill","cadence-virtuoso","design-automation","package-manager","skill","skill-cadence","virtuoso"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/electronics-and-drives.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-04-16T12:52:23.000Z","updated_at":"2024-11-02T10:58:06.000Z","dependencies_parsed_at":"2024-01-08T01:44:50.025Z","dependency_job_id":"55ddf9b0-0507-4813-89fa-61c534fa694b","html_url":"https://github.com/electronics-and-drives/SPAM","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electronics-and-drives%2FSPAM","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electronics-and-drives%2FSPAM/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electronics-and-drives%2FSPAM/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electronics-and-drives%2FSPAM/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/electronics-and-drives","download_url":"https://codeload.github.com/electronics-and-drives/SPAM/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253655752,"owners_count":21943068,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asic","asic-design","cadence","cadence-skill","cadence-virtuoso","design-automation","package-manager","skill","skill-cadence","virtuoso"],"created_at":"2024-08-03T20:00:23.511Z","updated_at":"2025-05-12T00:30:34.770Z","avatar_url":"https://github.com/electronics-and-drives.png","language":null,"funding_links":[],"categories":["Full Custom Design"],"sub_categories":["Verification"],"readme":"# SKILL Package Manager (SPAM)\n\nSPAM is a package management system for Cadence SKILL.\n\n## Dependencies\n\nFollowing utilities must be installed:\n+ wget\n+ unzip\n\nSPAM has only been tested under Cadence Design Framework:\n+ virtuoso version 6.1.7-64b 01/24/2018\n+ SKILL 35.00\n\n## Getting Started\n\nDownload spam\n```bash\n$ git clone https://github.com/rbzentrum/SPAM.git ~/.cadence/spam\n```\ninto a directory of your choosing, for example ```~/.cadence/spam/```.\n\nMake sure environment variables ```SPAMHOMEPATH``` and ```SPAMPROJPATH``` are set either with\n```bash\n$ export SPAMHOMEPATH=~/.cadence/spam\n$ export SPAMPROJPATH=/path/to/project\n```\nor in your ```.cdsinit```\n```scheme\n(setShellEnvVar \"SPAMHOMEPATH\" \"~/.cadence/spam\")\n(setShellEnvVar \"SPAMPROJPATH\" \"/path/to/project\")\n```\nand load ```spam.ils```.\n```scheme\n(load \"spam.ils\")\n```\n\n## Adding Repositories\n\nThe repository definition for github is given in ```repo.ils```, \njust add others or private repositories in the same way to that list.\nAlternatively you can call ```spmDefineRepo``` at runtime:\n```scheme\n(spmDefineRepo \n    t_name\n    t_metaUrl\n    u_urlGenerator\n) =\u003e r_repo\n```\nand add this ```r_repo``` object to ```(get SPAM 'repositories)```.\n\n## Function Reference\n\n### spamSearch\n```scheme\n(spamSearch\n    t_query\n) =\u003e t | nil\n```\nSearches for packages with the names given by the string 't_query'.\n\n### spamInstall\n```scheme\n(spamInstall\n    t_name \n    [ t_name ]\n    ...\n) =\u003e t | nil \n```\nInstalls the packages given by the strings 't_name'.\nIf the installation was successful, t is returned.\n\n### spamRemove\n```scheme\n(spamRemove\n    t_name\n    [ t_name ]\n    ...\n) =\u003e t | nil\n```\nRemoves the packages with the names given by the strings 't_name'.\n\n### spamUpdate\n```scheme\n(spamUpdate\n    [t_name]\n    ...\n) =\u003e t | nil\n```\nUpdates a given list of packages (t_name).\nIf no packages are specified the meta database will be updated.\n\n### spamInfo\n```scheme\n(spamInfo\n    t_name\n) =\u003e t | nil\n```\nPrints information about the given package with name 't_name'.\n\n### spamUse\n```scheme\n(spamUse\n    t_name\n    [ t_name ]\n    ...\n) =\u003e t | nil\n```\nIncludes the given packages in the given order into the current toplevel.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felectronics-and-drives%2FSPAM","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felectronics-and-drives%2FSPAM","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felectronics-and-drives%2FSPAM/lists"}