{"id":16671451,"url":"https://github.com/ikluft/sys-ospackage","last_synced_at":"2026-04-30T05:36:11.923Z","repository":{"id":57679316,"uuid":"486792040","full_name":"ikluft/Sys-OsPackage","owner":"ikluft","description":"Perl library for installing OS packages and determining if CPAN modules are packaged for the OS","archived":false,"fork":false,"pushed_at":"2023-06-03T02:56:43.000Z","size":352,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-19T17:37:55.183Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ikluft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-04-29T00:49:37.000Z","updated_at":"2022-04-30T06:14:49.000Z","dependencies_parsed_at":"2023-01-23T12:16:07.584Z","dependency_job_id":null,"html_url":"https://github.com/ikluft/Sys-OsPackage","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikluft%2FSys-OsPackage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikluft%2FSys-OsPackage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikluft%2FSys-OsPackage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ikluft%2FSys-OsPackage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ikluft","download_url":"https://codeload.github.com/ikluft/Sys-OsPackage/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243318748,"owners_count":20272137,"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":[],"created_at":"2024-10-12T11:44:31.467Z","updated_at":"2025-12-28T07:24:24.116Z","avatar_url":"https://github.com/ikluft.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sys::OsPackage\nModules in this distribution:\n* [Sys::OsPackage](main) [![Perl](https://github.com/ikluft/Sys-OsPackage/actions/workflows/test-main.yml/badge.svg)](https://github.com/ikluft/Sys-OsPackage/actions/workflows/test-main.yml)\n* [Sys::OsPackage::DepTree](deptree)\n\nAs an overview, the manual for the Sys::OsPackage library follows.\n\n# Presentations\n\nNovember 3, 2022 at Silicon Valley Perl: [slides](doc/pres-2022-11-sys-ospackage.pdf) (PDF)\n\n\u003ca href=\"doc/pres-2022-11-sys-ospackage.pdf\"\u003e\u003cimg src=\"doc/slide1-screenshot-scaled.png\"/\u003e\u003c/a\u003e\n\n# SYNOPSIS\n\n    use Sys::OsPackage;\n    my $ospackage = Sys::OsPackage-\u003einstance();\n    foreach my $module ( qw(module-name ...)) {\n      $ospackage-\u003einstall_module($module);\n    }\n\n# DESCRIPTION\n\n_Sys::OsPackage_ is used for installing Perl module dependencies.\nIt can look up whether a Perl module is available under some operating systems' packages.\nIf the module is available as an OS package, it installs it via the packaging system of the OS.\nOtherwise it runs CPAN to install the module.\n\nThe use cases of _Sys::OsPackage_ include setting up systems or containers with Perl modules using OS packages\nas often as possible. It can also be used fvor installing dependencies for a Perl script on an existing system.\n\nOS packaging systems currently supported by _Sys::OsPackage_ are the Linux distributions Alpine, Arch, Debian,\nFedora and OpenSuse.\nUsing [Sys::OsRelease](https://metacpan.org/pod/Sys%3A%3AOsRelease) it's able to detect operating systems derived from a supported platform use the correct driver.\n\nRHEL and CentOS are supported by the Fedora driver.\nCentOS-derived systems Rocky and Alma are supported by recognizing them as derivatives.\nUbuntu is supported by the Debian driver.\n\nOther packaging systems for Unix-like operating systems should be feasible to add by writing a driver module.\n\n# SEE ALSO\n\n[fetch-reqs.pl](https://metacpan.org/pod/fetch-reqs.pl) comes with _Sys::OsPackage_ to provide a command-line interface.\n\n[Sys::OsPackage::Driver](https://metacpan.org/pod/Sys%3A%3AOsPackage%3A%3ADriver)\n\n\"pacman/Rosetta\" at Arch Linux Wiki compares commands of 5 Linux packaging systems [https://wiki.archlinux.org/title/Pacman/Rosetta](https://wiki.archlinux.org/title/Pacman/Rosetta)\n\nGitHub repository for Sys::OsPackage: [https://github.com/ikluft/Sys-OsPackage](https://github.com/ikluft/Sys-OsPackage)\n\n# BUGS AND LIMITATIONS\n\nPlease report bugs via GitHub at [https://github.com/ikluft/Sys-OsPackage/issues](https://github.com/ikluft/Sys-OsPackage/issues)\n\nPatches and enhancements may be submitted via a pull request at [https://github.com/ikluft/Sys-OsPackage/pulls](https://github.com/ikluft/Sys-OsPackage/pulls)\n\n# LICENSE INFORMATION\n\nCopyright © 2022 by Ian Kluft\n\nThis module is distributed in the hope that it will be useful, but it is provided “as is” and without any express or implied warranties. For details, see the full text of the license in the file LICENSE or at [https://www.perlfoundation.org/artistic-license-20.html](https://www.perlfoundation.org/artistic-license-20.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fikluft%2Fsys-ospackage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fikluft%2Fsys-ospackage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fikluft%2Fsys-ospackage/lists"}