do not edit — generated by btf.
git.druid.rocksindexdruid520mpsrc/export.pl

src/export.pl


#!/usr/bin/env perl
use v5.16;
use strict;
use warnings FATAL => 'all';
use FindBin;
use lib "$FindBin::Bin";
use mplib::config qw($CFG);
use mplib::util qw(fail ok);
use mplib::db qw(read_db);
use mplib::resolve qw(init);
 
my $flags = mplib::config::parse_flags(\@ARGV);
mplib::config::load($flags);
my $all = grep { $_ eq '--all' } @ARGV;
@ARGV = grep { $_ ne '--all' } @ARGV;
fail("export needs a set name") unless @ARGV;
init();
 
my $setname = $ARGV[0];
fail("set name can't contain '/'") if $setname =~ m{/};
my $db = read_db();
my @names = sort grep { $all || $db->{$_}{requested} } keys %$db;
fail("nothing to export (nothing installed is 'requested' -- try --all)") unless @names;
 
my $setsdir = "$CFG->{WD}/sets";
system('mkdir', '-p', $setsdir) == 0 or fail("failed making $setsdir");
my $path = "$setsdir/$setname.set";
open(my $fh, '>', $path) or fail("cannot write $path: $!");
print $fh "$_\n" for @names;
close($fh);
ok("exported " . scalar(@names) . " package(s) to $path (install with: mp install \@$setname)");
powered by btf.