view release on metacpan or search on metacpan
t/lib/TestAppBuild.pm view on Meta::CPAN
File::Path::rmtree( 'unpack' );
File::Path::mkpath( 't/test_install' );
open my $fh, '>', 't/test_install/is_x';
return if -x 't/test_install/is_x';
chmod 0777, 't/test_install/is_x';
return unless -x 't/test_install/is_x';
$support_executable_bit = 1;
}
sub _run {
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/CPANtoRPM.pm view on Meta::CPAN
eof { puts "Success" }
}
EOF
$out->close();
chmod 0755,$file;
open(IN,"'$file' |");
my @out = <IN>;
close(IN);
unlink $file;
lib/App/CPANtoRPM.pm view on Meta::CPAN
%prep
rm -rf %{_builddir}/<name>-%{version}
%setup -D -n <name>-<version>
chmod -R u+w %{_builddir}/<name>-%{version}
if [ -f pm_to_blib ]; then rm -f pm_to_blib; fi
%build
view all matches for this distribution
view release on metacpan or search on metacpan
3. Extract the App-CamelPKI archive and create your own app_camelpki.yml (a sample can be found 'app_camelpki.yml.sample').
3. Key Ceremony - Preparing the application
A good idea here is to make whole files only readable by the user who executes apache.go
into CamelPKI root directory and type :
#chmod -R u+rw,g-rwx,o-rwx *
It is also important to fix the right for the directories containing the different keys (as defined in app_camelpki.yml).
Key ceremony is an important task to do. You have to generate your own
Certificates and Private Keys for the CA. A script has been coded to do this easily :
$ perl Build.PL
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/ChangeShebang.pm view on Meta::CPAN
$content =~ s/$remove//;
my $mode = (stat $file)[2];
my ($tmp_fh, $tmp_name) = File::Temp::tempfile UNLINK => 0, DIR => File::Basename::dirname($file);
chmod $mode, $tmp_name;
print {$tmp_fh} <<'...';
#!/bin/sh
exec "$(dirname "$0")"/perl -x "$0" "$@"
#!perl
...
view all matches for this distribution
view release on metacpan or search on metacpan
#############################################################
# Connect to phone and fix file permissions. (oneplus)
adb shell
su
chmod 777 /data/data
#############################################################
## Android
#############################################################
# Skip the first line on the file
cat file | tail -n +2
#############################################################
## Linux Commands - chmod
#############################################################
# Set suid for a file
sudo chmod +s file
# Change permission of only the group
chmod g+w file
#############################################################
## Linux Commands - chown
#############################################################
find . -name "*.h" -printf '%h\n'
find . -name "*.h" -exec dirname {} ';'
find . -name "*.h" -exec dirname {} \;
# Change permissions of all files / folders.
find . -type f -exec chmod 664 {} ';'
find . -type d -exec chmod 775 {} ';'
# Using a variable to define the find string.
n="-name *.pm"; find . $n # Works.
n="-name '*.pm'"; find . $n # Looks correct, but does NOT work!
#############################################################
## Linux Commands - grep
#############################################################
# Find what is setting the sticky bit to /tmp folder upon machine reboot
grep -r chmod /etc/* 2>/dev/null | NOT "chmod (?:0?(?:-[f]\s+)?\d{3}|[aguo]*[+-][rwxs]+)\b" '^Binary' | add_color chmod
grep -r '/tmp' /etc/* 2>/dev/null | NOT '^Binary' | add_color tmp
# Return matching file name only
grep --color "trace config off" * -l
# Show if sticky bit is set on temp directory
[ -k /tmp ] && echo t
# Set sticky bit
chmod +t /tmp
# Remove sticky bit
chmod -t /tmp
#############################################################
## Linux Firewall
#############################################################
mkdir /media/fasthdd
dd if=/dev/zero of=/media/fasthdd/swapfile.img bs=512 count=1M
#
# Turn that swap file into a filesystem !?
mkswap /media/fasthdd/swapfile.img
chmod 600 /media/fasthdd/swapfile.img
#
# Add this line to /etc/fstab to be able to use the swap at startup
/media/fasthdd/swapfile.img swap swap sw 0 0
#
# Activate the swap file
# Additional folder preparation (module-starter)
mv App-Pod/* .
rmdir App-Pod
mv ignore.txt .gitignore
echo "*.swp" >> .gitignore
chmod +x Build.PL
# Remove MYMETA.* and META.*
#
# Prepend to Build.PL
"#!/bin/env perl
"
unzip chromedriver*.zip
#
# Move it:
sudo mv chromedriver /usr/bin/chromedriver
sudo chown root:root /usr/bin/chromedriver
sudo chmod +x /usr/bin/chromedriver
#
# Step 4 â Download Required Jar Files:
# Create selenium service
view all matches for this distribution
view release on metacpan or search on metacpan
bin_PL/_build_docs view on Meta::CPAN
next if($source =~ m/\.x$/);
print "Generating: $source",$/;
if(-f $dest) {
chmod(0777, $dest) || die "Could not chmod $dest for removing: $!";
}
open(my $sfh, '<', $source) || die "Could not open $source for reading: $!";
open(my $dfh, '>', $dest ) || die "Could not open $dest for writing: $!";
print $dfh $_ while(<$sfh>);
bin_PL/_build_docs view on Meta::CPAN
print $dfh $pod;
}
close($dfh);
chmod(0555, $dest) || die "Could not chmod $dest: $!";
}
view all matches for this distribution
view release on metacpan or search on metacpan
build/build.PL view on Meta::CPAN
close $out;
# Cleanup, make our fatpacked binary executable
unlink "$baseDir/cmddirs";
rename "$baseDir/cmddirs.tmp", "$baseDir/cmddirs";
chmod 0755, "$baseDir/cmddirs";
END { unlink "$baseDir/cmddirs.tmp" }
view all matches for this distribution
view release on metacpan or search on metacpan
t/cme-command.t view on Meta::CPAN
foreach my $test ( @script_tests) {
subtest $test->{label} => sub {
$conf_file->spew_utf8(@orig);
my $script = $wr_dir->child('my-script'.$i++.'.cme');
$script->spew_utf8( map { "$_\n"} @{$test->{script}});
$script->chmod("0755") if $test->{exec_mode};
my $cmd = [
run => $script->stringify,
'-root-dir' => $wr_dir->stringify,
@{$test->{args} // []}
view all matches for this distribution
view release on metacpan or search on metacpan
You can also choose to download git-codeowners as a self-contained
executable:
curl -OL https://raw.githubusercontent.com/chazmcgarvey/git-codeowners/solo/git-codeowners
chmod +x git-codeowners
To hack on the code, clone the repo instead:
git clone https://github.com/chazmcgarvey/git-codeowners.git
cd git-codeowners
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Codit/Plugins/SearchReplace.pm view on Meta::CPAN
my $searchterm = '';
my $replaceterm = '';
my $casesensitive = '-case';
my $useregex = '-exact';
my $searchmode = 'Search in current document';
$self->{CASE} = \$casesensitive;
$self->{CURRENT} = undef;
$self->{LASTRESULTS} = [];
$self->{MODE} = \$searchmode;
$self->{OFFSET} = {};
$self->{REPLACE} = \$replaceterm;
$self->{REPLACED} = 0;
$self->{REGEX} = \$useregex;
$self->{SEARCH} = \$searchterm;
lib/App/Codit/Plugins/SearchReplace.pm view on Meta::CPAN
-anchor => 'w',
)->pack(@padding, -fill => 'x');
my $mb = $sb->Menubutton(
# -relief => 'raised',
-anchor => 'w',
-textvariable => \$searchmode,
)->pack(@padding, -fill => 'x');
my @menu = ();
for ($srchcur, $srchall, $srchprj, $srchres) {
my $mode = $_;
push @menu, [command => $mode,
-command => sub { $searchmode = $mode },
];
}
$mb->configure(-menu => $mb->Menu(
-menuitems => \@menu,
));
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/adminguide/cvs.pod view on Meta::CPAN
than creating another version in /usr/local.
Somewhere else I read that I need to set the setgid bit on the
cvs binary.
chmod 2755 /usr/bin/cvs
=head2 Users and Groups
We use NIS, so I verified that we have both the cvs user and group
defined.
lib/App/adminguide/cvs.pod view on Meta::CPAN
cd /usr/mycompany
mkdir cvs
chown cvs cvs
chgrp cvs cvs
chmod 775 cvs
chmod g+s cvs
We use Bash and Korn shell, so I added the following lines to
"/etc/profile" so that the CVSROOT variable is available to all
users.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Dest.pm view on Meta::CPAN
positive value if and only if the deploy action worked.
Since your local CLI shell probably doesn't know how to execute SQL files
natively, you'll likely need to create a C<dest.wrap> file.
touch db/dest.wrap && chmod u+x db/dest.wrap && vi db/dest.wrap
This file if it exists will get executed instead of the deploy, verify, and
revert files, and it will be passed the action file being executed.
=head2 Status and Deploying
view all matches for this distribution
view release on metacpan or search on metacpan
fatpack tree $(cat packlists)
rm scripts/dex </dev/null || echo "No packed dex present"
# There's warnings here about Class::XSAccessor from Moo, but this is fine. It'll fall back to pure perl code when that's not installed to the local perl
fatpack file scripts.bare/dex > scripts/dex
chmod a+rx-w scripts/dex
rm -rf fatpacker.trace packlists fatlib
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Difio/dotCloud.pm view on Meta::CPAN
#!/bin/sh
/home/dotcloud/perl5/lib/perl5/App/Difio/dotCloud.pm
6) Make `postinstall` executable
chmod a+x postinstall
7) Then push your application to dotCloud
dotcloud push <app name>
view all matches for this distribution
view release on metacpan or search on metacpan
t/lib/Test/DocKnot/Spin.pm view on Meta::CPAN
sub fix_pointers {
my ($tree, $base) = @_;
my $rule = Path::Iterator::Rule->new()->name('*.spin')->file();
my $iter = $rule->iter("$tree", { follow_symlinks => 0 });
while (defined(my $file = $iter->())) {
chmod(0644, $file);
my $data_ref = YAML::XS::LoadFile($file);
my $path = path($data_ref->{path});
my $top = path($file)->parent()->relative($tree)->absolute($base);
$data_ref->{path} = $path->absolute($top)->realpath()->stringify();
YAML::XS::DumpFile($file, $data_ref);
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/EPAN.pm view on Meta::CPAN
else
"$MYDIR/cpanm" --mirror "file://$MYDIR" --mirror-only \
$(<"$MYDIR/modlist.txt")
fi
END_OF_INSTALL
chmod 0777 & ~umask(), $file->stringify();
} ## end if (!-e $file)
$file = $target->file('cpanm');
if (!-e $file) {
my $cpanm = which('cpanm');
File::Copy::copy($cpanm, $file->stringify());
chmod 0777 & ~umask(), $file->stringify();
}
} ## end sub action_update
{
no strict 'subs';
view all matches for this distribution
view release on metacpan or search on metacpan
&& mkdir -p /home/linuxbrew/bin \
&& curl -L https://github.com/wang-q/ubuntu/releases/download/20190906/jkbin-egaz-ubuntu-1404-2011.tar.gz | \
tar -xvzf - \
&& mv x86_64/* /home/linuxbrew/bin/ \
&& curl -O http://hgdownload.soe.ucsc.edu/admin/exe/linux.x86_64/faToTwoBit \
&& chmod +x faToTwoBit \
&& mv faToTwoBit /home/linuxbrew/bin/
# RepeatMasker
# https://stackoverflow.com/questions/57629010/linuxbrew-curl-certificate-issue
RUN true \
view all matches for this distribution
view release on metacpan or search on metacpan
CONTRIBUTING.md view on Meta::CPAN
Dependencies for this module are recorded in the `META.json` file.
Installation is most easily done with `cpanminus`[1], which can be
made available locally via:
$ curl -L https://cpanmin.us/ -o cpanm
$ chmod +x cpanm
To install the dependencies into a local directory (to avoid polluting
your Perl distribution),
$ export PERL5LIB=${PERL5LIB}:$PWD/local
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/EvalServerAdvanced/Sandbox.pm view on Meta::CPAN
my $files = shift;
my $work_path = Path::Tiny->tempdir("eval-XXXXXXXX");
$|++;
chmod(0555, $work_path); # have to fix permissions on the new / or nobody can do anything!
unless ($seccomp) {
App::EvalServerAdvanced::Sandbox::Internal->load_plugins();
$seccomp = App::EvalServerAdvanced::Seccomp->new();
$seccomp->load_yaml(config->sandbox->seccomp->yaml); # TODO allow multiple yamls
lib/App/EvalServerAdvanced/Sandbox.pm view on Meta::CPAN
_exit(213) unless $type eq 'c';
mknod("$jail_path/dev/$dev_name", S_IFCHR|0666, makedev($major, $minor));
}
path("$jail_path/tmp")->chmod(0777);
path($jail_home)->chmod(0777);
# Do these before the chroot. Just to avoid weird autoloading issues
set_resource_limits();
chdir($jail_path) or die "Jail was not made"; # ensure it exists before we chroot. unnecessary?
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/FatPacker/Simple.pm view on Meta::CPAN
open my $fh, ">", $output_filename
or die "Cannot open '$output_filename': $!\n";
print {$fh} $fatpacked;
close $fh;
my $mode = (stat $self->{script})[2];
chmod $mode, $output_filename;
$self->debug("Successfully created $output_filename");
}
# In order not to depend on App::FatPacker internals,
# we use only App::FatPacker::fatpack_code method.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Fetchware/Util.pm view on Meta::CPAN
# Ensure that $user_temp_dir can be accessed by my drop priv'd child.
# And only try to change perms to 0755 only if perms are not 0755
# already.
my $st = stat(cwd());
unless ((S_IMODE($st->mode) & 0755) >= 0755) {
chmod 0755, cwd() or die <<EOD;
App-Fetchware-Util: Fetchware failed to change the permissions of the current
temporary directory [@{[cwd()]} to 0755. The OS error was [$!].
EOD
}
# Create a new tempdir for the droped prive user to use, and be sure
lib/App/Fetchware/Util.pm view on Meta::CPAN
chown($uid, $gid, $new_temp_dir) or die <<EOD;
App-Fetchware-Util: Fetchware failed to chown [$new_temp_dir] to the user it is
dropping privileges to. This just shouldn't happen, and might be a bug, or
perhaps your system temporary directory is full. The OS error was [$!].
EOD
chmod(0700, $new_temp_dir) or die <<EOD;
App-Fetchware-Util: Fetchware failed to change the permissions of its new
temporary directory [$new_temp_dir] to 0700 that it created, because its
dropping privileges. This just shouldn't happen, and is bug, or perhaps your
system temporary directory is full. The OS error is [$!].
EOD
lib/App/Fetchware/Util.pm view on Meta::CPAN
# Only when we do *not* drop privs...
if (config('stay_root')
or ($< != 0 or $> != 0)
) {
# ...Must chmod 700 so gpg's localized keyfiles are good.
chmod(0700, $temp_dir) or die <<EOD;
App-Fetchware-Util: Fetchware failed to change the permissions of its temporary
directory [$temp_dir] to 0700. This should not happen, and is a bug, or perhaps
your system's temporary directory is full. The OS error was [$!].
EOD
}
lib/App/Fetchware/Util.pm view on Meta::CPAN
=head2 create_tempdir()
my $temp_dir = create_tempdir();
Creates a temporary directory, chmod 700's it, and chdir()'s into it.
Accepts the fake hash argument C<KeepTempDir => 1>, which tells create_tempdir()
to B<not> delete the temporary directory when the program exits.
Also, accepts C<TempDir =E<gt> '/tmp'> to specify what temporary directory to
lib/App/Fetchware/Util.pm view on Meta::CPAN
=over
=item WARNING
According to L<perlport>'s chmod() documentation, on Win32 perl's Unixish file
permissions arn't supported only "owner" is:
"Only good for changing "owner" read-write access, "group", and "other" bits are
meaningless. (Win32)"
I'm not completely sure this means that under Win32 only owner perms mean
something, or if just chmod()ing group or ther bits don't do anything, but
testing if group and other are rwx does work. This needs testing.
And remember this only applies to Win32, and fetchware has not yet been properly
ported or tested under Win32 yet.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Followme/UploadLocal.pm view on Meta::CPAN
my $new_dir = catfile($self->{remote_directory}, $dir);
my $status = mkdir($new_dir);
if ($status) {
my $permissions = $self->{permissions} | 0111;
chmod($permissions, $new_dir);
}
return $status;
}
lib/App/Followme/UploadLocal.pm view on Meta::CPAN
my ($self, $local_filename, $remote_filename) = @_;
my $new_file = catfile($self->{remote_directory}, $remote_filename);
my $status = copy($local_filename, $new_file);
chmod($self->{permissions}, $new_file) if $status;
return $status;
}
#----------------------------------------------------------------------
# Close the connection
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/ForExample.pm view on Meta::CPAN
sudo cp my-app.apache2 /etc/apache2/sites-enabled
Enable the fastcgi start-stop script (with execute permissions)
chmod +x my-app.start-stop
Add a C<my-app.localhost> entry to C</etc/hosts>
127.0.0.1 my-app.localhost
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Framework/Lite.pm view on Meta::CPAN
($exitval, $verbose) = (2, 0) if ($level eq 'opt') ;
($exitval, $verbose) = (1, 0) if ($level eq 'help') ;
($exitval, $verbose) = (0, 2) if ($level =~ /^man/) ;
# make file readable by all - in case we're running as root
chmod 0644, $fname ;
# system("perldoc", $fname) ;
pod2usage(
-verbose => $verbose,
# -exitval => $exitval,
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Framework.pm view on Meta::CPAN
## Write file
my $blib_pod = "blib/lib/$podfile" ;
if (-f $blib_pod)
{
chmod 0755, $blib_pod ;
}
if (open my $fh, ">$blib_pod")
{
my $list ;
foreach my $href (@list)
view all matches for this distribution
view release on metacpan or search on metacpan
You can also copy the standalone executable to whatever location you'd like.
% cd ~/bin
% curl -LO http://bit.ly/from_unixtime
% chmod +x from_unixtime
NOTE: edit shebang if you don't have /usr/bin/env
=head1 DOCUMENTATION
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GenPericmdCompleterScript.pm view on Meta::CPAN
print $fh $packed_code;
close $fh
or return [500, "Can't write '$output_file': $!"];
chmod 0755, $output_file or do {
log_warn("Can't 'chmod 0755, $output_file': $!");
};
my $output_name = $output_file;
$output_name =~ s!.+[\\/]!!;
view all matches for this distribution
view release on metacpan or search on metacpan
script/gen-pericmd-script view on Meta::CPAN
Create a Perinci::CmdLine script:
% gen-pericmd-script /App/MyApp/myfunc > mycli
Some more options (turn on debugging, output to file, overwrite existing output,
will automatically chmod +x the file and run L<shcompgen> if it's available on
the system and output dir is in PATH, pick Perinci::CmdLine::Any backend):
% gen-pericmd-script --debug \
-o /path/to/mycli --overwrite \
--cmdline Perinci::CmdLine::Classic \
view all matches for this distribution
view release on metacpan or search on metacpan
script/_genpass-id view on Meta::CPAN
# my $err = $@;
# return [$type, $clsets] unless $err;
# die "Can't check whether $type is a builtin Sah type: $err"
# unless $err =~ /\ACan't locate/;
#
# my $schmod = "Sah::Schema::$type";
# (my $schmod_pm = "$schmod.pm") =~ s!::!/!g;
# eval { require $schmod_pm; 1 };
# die "Not a known built-in Sah type '$type' (can't locate ".
# "Data::Sah::Type::$type) and not a known schema name '$type' ($@)"
# if $@;
# no strict 'refs';
# my $sch2 = ${"$schmod\::schema"};
# die "BUG: Schema module $schmod doesn't contain \$schema" unless $sch2;
# unshift @$clsets, $sch2->[1];
# _resolve($opts, $sch2->[0], $clsets, $seen);
#}
#
#sub resolve_schema {
view all matches for this distribution
view release on metacpan or search on metacpan
script/_genpass-wordlist view on Meta::CPAN
# my $err = $@;
# return [$type, $clsets] unless $err;
# die "Can't check whether $type is a builtin Sah type: $err"
# unless $err =~ /\ACan't locate/;
#
# my $schmod = "Sah::Schema::$type";
# (my $schmod_pm = "$schmod.pm") =~ s!::!/!g;
# eval { require $schmod_pm; 1 };
# die "Not a known built-in Sah type '$type' (can't locate ".
# "Data::Sah::Type::$type) and not a known schema name '$type' ($@)"
# if $@;
# no strict 'refs';
# my $sch2 = ${"$schmod\::schema"};
# die "BUG: Schema module $schmod doesn't contain \$schema" unless $sch2;
# unshift @$clsets, $sch2->[1];
# _resolve($opts, $sch2->[0], $clsets, $seen);
#}
#
#sub resolve_schema {
view all matches for this distribution