mirror of
https://git.gfz-potsdam.de/naaice/poet.git
synced 2025-12-15 12:28:22 +01:00
removed .ai dir
This commit is contained in:
parent
daf279c63c
commit
c423c8f6aa
@ -1 +0,0 @@
|
||||
2to3-3.11
|
||||
@ -1,5 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
import sys
|
||||
from lib2to3.main import main
|
||||
|
||||
sys.exit(main("lib2to3.fixes"))
|
||||
BIN
.ai/bin/bunzip2
BIN
.ai/bin/bunzip2
Binary file not shown.
BIN
.ai/bin/bzcat
BIN
.ai/bin/bzcat
Binary file not shown.
@ -1 +0,0 @@
|
||||
bzdiff
|
||||
@ -1,76 +0,0 @@
|
||||
#!/bin/sh
|
||||
# sh is buggy on RS/6000 AIX 3.2. Replace above line with #!/bin/ksh
|
||||
|
||||
# Bzcmp/diff wrapped for bzip2,
|
||||
# adapted from zdiff by Philippe Troin <phil@fifi.org> for Debian GNU/Linux.
|
||||
|
||||
# Bzcmp and bzdiff are used to invoke the cmp or the diff pro-
|
||||
# gram on compressed files. All options specified are passed
|
||||
# directly to cmp or diff. If only 1 file is specified, then
|
||||
# the files compared are file1 and an uncompressed file1.gz.
|
||||
# If two files are specified, then they are uncompressed (if
|
||||
# necessary) and fed to cmp or diff. The exit status from cmp
|
||||
# or diff is preserved.
|
||||
|
||||
PATH="/usr/bin:/bin:$PATH"; export PATH
|
||||
prog=`echo $0 | sed 's|.*/||'`
|
||||
case "$prog" in
|
||||
*cmp) comp=${CMP-cmp} ;;
|
||||
*) comp=${DIFF-diff} ;;
|
||||
esac
|
||||
|
||||
OPTIONS=
|
||||
FILES=
|
||||
for ARG
|
||||
do
|
||||
case "$ARG" in
|
||||
-*) OPTIONS="$OPTIONS $ARG";;
|
||||
*) if test -f "$ARG"; then
|
||||
FILES="$FILES $ARG"
|
||||
else
|
||||
echo "${prog}: $ARG not found or not a regular file"
|
||||
exit 1
|
||||
fi ;;
|
||||
esac
|
||||
done
|
||||
if test -z "$FILES"; then
|
||||
echo "Usage: $prog [${comp}_options] file [file]"
|
||||
exit 1
|
||||
fi
|
||||
set $FILES
|
||||
if test $# -eq 1; then
|
||||
FILE=`echo "$1" | sed 's/.bz2$//'`
|
||||
bzip2 -cd "$FILE.bz2" | $comp $OPTIONS - "$FILE"
|
||||
STAT="$?"
|
||||
|
||||
elif test $# -eq 2; then
|
||||
case "$1" in
|
||||
*.bz2)
|
||||
case "$2" in
|
||||
*.bz2)
|
||||
F=`echo "$2" | sed 's|.*/||;s|.bz2$||'`
|
||||
tmp=`mktemp "${TMPDIR:-/tmp}"/bzdiff.XXXXXXXXXX` || {
|
||||
echo 'cannot create a temporary file' >&2
|
||||
exit 1
|
||||
}
|
||||
bzip2 -cdfq "$2" > "$tmp"
|
||||
bzip2 -cdfq "$1" | $comp $OPTIONS - "$tmp"
|
||||
STAT="$?"
|
||||
/bin/rm -f "$tmp";;
|
||||
|
||||
*) bzip2 -cdfq "$1" | $comp $OPTIONS - "$2"
|
||||
STAT="$?";;
|
||||
esac;;
|
||||
*) case "$2" in
|
||||
*.bz2)
|
||||
bzip2 -cdfq "$2" | $comp $OPTIONS "$1" -
|
||||
STAT="$?";;
|
||||
*) $comp $OPTIONS "$1" "$2"
|
||||
STAT="$?";;
|
||||
esac;;
|
||||
esac
|
||||
else
|
||||
echo "Usage: $prog [${comp}_options] file [file]"
|
||||
exit 1
|
||||
fi
|
||||
exit "$STAT"
|
||||
@ -1 +0,0 @@
|
||||
bzgrep
|
||||
@ -1 +0,0 @@
|
||||
bzgrep
|
||||
@ -1,85 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Bzgrep wrapped for bzip2,
|
||||
# adapted from zgrep by Philippe Troin <phil@fifi.org> for Debian GNU/Linux.
|
||||
## zgrep notice:
|
||||
## zgrep -- a wrapper around a grep program that decompresses files as needed
|
||||
## Adapted from a version sent by Charles Levert <charles@comm.polymtl.ca>
|
||||
|
||||
PATH="/usr/bin:$PATH"; export PATH
|
||||
|
||||
prog=`echo $0 | sed 's|.*/||'`
|
||||
case "$prog" in
|
||||
*egrep) grep=${EGREP-egrep} ;;
|
||||
*fgrep) grep=${FGREP-fgrep} ;;
|
||||
*) grep=${GREP-grep} ;;
|
||||
esac
|
||||
pat=""
|
||||
while test $# -ne 0; do
|
||||
case "$1" in
|
||||
-e | -f) opt="$opt $1"; shift; pat="$1"
|
||||
if test "$grep" = grep; then # grep is buggy with -e on SVR4
|
||||
grep=egrep
|
||||
fi;;
|
||||
-A | -B) opt="$opt $1 $2"; shift;;
|
||||
-*) opt="$opt $1";;
|
||||
*) if test -z "$pat"; then
|
||||
pat="$1"
|
||||
else
|
||||
break;
|
||||
fi;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
if test -z "$pat"; then
|
||||
echo "grep through bzip2 files"
|
||||
echo "usage: $prog [grep_options] pattern [files]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
list=0
|
||||
silent=0
|
||||
op=`echo "$opt" | sed -e 's/ //g' -e 's/-//g'`
|
||||
case "$op" in
|
||||
*l*) list=1
|
||||
esac
|
||||
case "$op" in
|
||||
*h*) silent=1
|
||||
esac
|
||||
|
||||
if test $# -eq 0; then
|
||||
bzip2 -cdfq | $grep $opt "$pat"
|
||||
exit $?
|
||||
fi
|
||||
|
||||
res=0
|
||||
for i do
|
||||
if test -f "$i"; then :; else if test -f "$i.bz2"; then i="$i.bz2"; fi; fi
|
||||
if test $list -eq 1; then
|
||||
bzip2 -cdfq "$i" | $grep $opt "$pat" 2>&1 > /dev/null && echo $i
|
||||
r=$?
|
||||
elif test $# -eq 1 -o $silent -eq 1; then
|
||||
bzip2 -cdfq "$i" | $grep $opt "$pat"
|
||||
r=$?
|
||||
else
|
||||
j=$(echo "$i" | sed 's/\\/&&/g;s/|/\\&/g;s/&/\\&/g')
|
||||
j=`printf "%s" "$j" | tr '\n' ' '`
|
||||
# A trick adapted from
|
||||
# https://groups.google.com/forum/#!original/comp.unix.shell/x1345iu10eg/Nn1n-1r1uU0J
|
||||
# that has the same effect as the following bash code:
|
||||
# bzip2 -cdfq "$i" | $grep $opt "$pat" | sed "s|^|${j}:|"
|
||||
# r=${PIPESTATUS[1]}
|
||||
exec 3>&1
|
||||
eval `
|
||||
exec 4>&1 >&3 3>&-
|
||||
{
|
||||
bzip2 -cdfq "$i" 4>&-
|
||||
} | {
|
||||
$grep $opt "$pat" 4>&-; echo "r=$?;" >&4
|
||||
} | sed "s|^|${j}:|"
|
||||
`
|
||||
fi
|
||||
test "$r" -ne 0 && res="$r"
|
||||
done
|
||||
exit $res
|
||||
BIN
.ai/bin/bzip2
BIN
.ai/bin/bzip2
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
bzmore
|
||||
@ -1,61 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Bzmore wrapped for bzip2,
|
||||
# adapted from zmore by Philippe Troin <phil@fifi.org> for Debian GNU/Linux.
|
||||
|
||||
PATH="/usr/bin:$PATH"; export PATH
|
||||
|
||||
prog=`echo $0 | sed 's|.*/||'`
|
||||
case "$prog" in
|
||||
*less) more=less ;;
|
||||
*) more=more ;;
|
||||
esac
|
||||
|
||||
if test "`echo -n a`" = "-n a"; then
|
||||
# looks like a SysV system:
|
||||
n1=''; n2='\c'
|
||||
else
|
||||
n1='-n'; n2=''
|
||||
fi
|
||||
oldtty=`stty -g 2>/dev/null`
|
||||
if stty -cbreak 2>/dev/null; then
|
||||
cb='cbreak'; ncb='-cbreak'
|
||||
else
|
||||
# 'stty min 1' resets eof to ^a on both SunOS and SysV!
|
||||
cb='min 1 -icanon'; ncb='icanon eof ^d'
|
||||
fi
|
||||
if test $? -eq 0 -a -n "$oldtty"; then
|
||||
trap 'stty $oldtty 2>/dev/null; exit' 0 2 3 5 10 13 15
|
||||
else
|
||||
trap 'stty $ncb echo 2>/dev/null; exit' 0 2 3 5 10 13 15
|
||||
fi
|
||||
|
||||
if test $# = 0; then
|
||||
if test -t 0; then
|
||||
echo usage: $prog files...
|
||||
else
|
||||
bzip2 -cdfq | eval $more
|
||||
fi
|
||||
else
|
||||
FIRST=1
|
||||
for FILE
|
||||
do
|
||||
if test $FIRST -eq 0; then
|
||||
echo $n1 "--More--(Next file: $FILE)$n2"
|
||||
stty $cb -echo 2>/dev/null
|
||||
ANS=`dd bs=1 count=1 2>/dev/null`
|
||||
stty $ncb echo 2>/dev/null
|
||||
echo " "
|
||||
if test "$ANS" = 'e' -o "$ANS" = 'q'; then
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
if test "$ANS" != 's'; then
|
||||
echo "------> $FILE <------"
|
||||
bzip2 -cdfq "$FILE" | eval $more
|
||||
fi
|
||||
if test -t; then
|
||||
FIRST=0
|
||||
fi
|
||||
done
|
||||
fi
|
||||
252
.ai/bin/c_rehash
252
.ai/bin/c_rehash
@ -1,252 +0,0 @@
|
||||
#!/croot/openssl_1740989479866/_build_env/bin/perl
|
||||
|
||||
# WARNING: do not edit!
|
||||
# Generated by Makefile from tools/c_rehash.in
|
||||
# Copyright 1999-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
#
|
||||
# Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
# this file except in compliance with the License. You can obtain a copy
|
||||
# in the file LICENSE in the source distribution or at
|
||||
# https://www.openssl.org/source/license.html
|
||||
|
||||
# Perl c_rehash script, scan all files in a directory
|
||||
# and add symbolic links to their hash values.
|
||||
|
||||
my $dir = "";
|
||||
my $prefix = "/mnt/beegfs/home/rastogi/poet/.ai";
|
||||
|
||||
my $errorcount = 0;
|
||||
my $openssl = $ENV{OPENSSL} || "openssl";
|
||||
my $pwd;
|
||||
my $x509hash = "-subject_hash";
|
||||
my $crlhash = "-hash";
|
||||
my $verbose = 0;
|
||||
my $symlink_exists=eval {symlink("",""); 1};
|
||||
my $removelinks = 1;
|
||||
|
||||
## Parse flags.
|
||||
while ( $ARGV[0] =~ /^-/ ) {
|
||||
my $flag = shift @ARGV;
|
||||
last if ( $flag eq '--');
|
||||
if ( $flag eq '-old') {
|
||||
$x509hash = "-subject_hash_old";
|
||||
$crlhash = "-hash_old";
|
||||
} elsif ( $flag eq '-h' || $flag eq '-help' ) {
|
||||
help();
|
||||
} elsif ( $flag eq '-n' ) {
|
||||
$removelinks = 0;
|
||||
} elsif ( $flag eq '-v' ) {
|
||||
$verbose++;
|
||||
}
|
||||
else {
|
||||
print STDERR "Usage error; try -h.\n";
|
||||
exit 1;
|
||||
}
|
||||
}
|
||||
|
||||
sub help {
|
||||
print "Usage: c_rehash [-old] [-h] [-help] [-v] [dirs...]\n";
|
||||
print " -old use old-style digest\n";
|
||||
print " -h or -help print this help text\n";
|
||||
print " -v print files removed and linked\n";
|
||||
exit 0;
|
||||
}
|
||||
|
||||
eval "require Cwd";
|
||||
if (defined(&Cwd::getcwd)) {
|
||||
$pwd=Cwd::getcwd();
|
||||
} else {
|
||||
$pwd=`pwd`;
|
||||
chomp($pwd);
|
||||
}
|
||||
|
||||
# DOS/Win32 or Unix delimiter? Prefix our installdir, then search.
|
||||
my $path_delim = ($pwd =~ /^[a-z]\:/i) ? ';' : ':';
|
||||
$ENV{PATH} = "$prefix/bin" . ($ENV{PATH} ? $path_delim . $ENV{PATH} : "");
|
||||
|
||||
if (! -x $openssl) {
|
||||
my $found = 0;
|
||||
foreach (split /$path_delim/, $ENV{PATH}) {
|
||||
if (-x "$_/$openssl") {
|
||||
$found = 1;
|
||||
$openssl = "$_/$openssl";
|
||||
last;
|
||||
}
|
||||
}
|
||||
if ($found == 0) {
|
||||
print STDERR "c_rehash: rehashing skipped ('openssl' program not available)\n";
|
||||
exit 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (@ARGV) {
|
||||
@dirlist = @ARGV;
|
||||
} elsif ($ENV{SSL_CERT_DIR}) {
|
||||
@dirlist = split /$path_delim/, $ENV{SSL_CERT_DIR};
|
||||
} else {
|
||||
$dirlist[0] = "$dir/certs";
|
||||
}
|
||||
|
||||
if (-d $dirlist[0]) {
|
||||
chdir $dirlist[0];
|
||||
$openssl="$pwd/$openssl" if (!-x $openssl);
|
||||
chdir $pwd;
|
||||
}
|
||||
|
||||
foreach (@dirlist) {
|
||||
if (-d $_ ) {
|
||||
if ( -w $_) {
|
||||
hash_dir($_);
|
||||
} else {
|
||||
print "Skipping $_, can't write\n";
|
||||
$errorcount++;
|
||||
}
|
||||
}
|
||||
}
|
||||
exit($errorcount);
|
||||
|
||||
sub copy_file {
|
||||
my ($src_fname, $dst_fname) = @_;
|
||||
|
||||
if (open(my $in, "<", $src_fname)) {
|
||||
if (open(my $out, ">", $dst_fname)) {
|
||||
print $out $_ while (<$in>);
|
||||
close $out;
|
||||
} else {
|
||||
warn "Cannot open $dst_fname for write, $!";
|
||||
}
|
||||
close $in;
|
||||
} else {
|
||||
warn "Cannot open $src_fname for read, $!";
|
||||
}
|
||||
}
|
||||
|
||||
sub hash_dir {
|
||||
my $dir = shift;
|
||||
my %hashlist;
|
||||
|
||||
print "Doing $dir\n";
|
||||
|
||||
if (!chdir $dir) {
|
||||
print STDERR "WARNING: Cannot chdir to '$dir', $!\n";
|
||||
return;
|
||||
}
|
||||
|
||||
opendir(DIR, ".") || print STDERR "WARNING: Cannot opendir '.', $!\n";
|
||||
my @flist = sort readdir(DIR);
|
||||
closedir DIR;
|
||||
if ( $removelinks ) {
|
||||
# Delete any existing symbolic links
|
||||
foreach (grep {/^[\da-f]+\.r{0,1}\d+$/} @flist) {
|
||||
if (-l $_) {
|
||||
print "unlink $_\n" if $verbose;
|
||||
unlink $_ || warn "Can't unlink $_, $!\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
FILE: foreach $fname (grep {/\.(pem)|(crt)|(cer)|(crl)$/} @flist) {
|
||||
# Check to see if certificates and/or CRLs present.
|
||||
my ($cert, $crl) = check_file($fname);
|
||||
if (!$cert && !$crl) {
|
||||
print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n";
|
||||
next;
|
||||
}
|
||||
link_hash_cert($fname) if ($cert);
|
||||
link_hash_crl($fname) if ($crl);
|
||||
}
|
||||
|
||||
chdir $pwd;
|
||||
}
|
||||
|
||||
sub check_file {
|
||||
my ($is_cert, $is_crl) = (0,0);
|
||||
my $fname = $_[0];
|
||||
|
||||
open(my $in, "<", $fname);
|
||||
while(<$in>) {
|
||||
if (/^-----BEGIN (.*)-----/) {
|
||||
my $hdr = $1;
|
||||
if ($hdr =~ /^(X509 |TRUSTED |)CERTIFICATE$/) {
|
||||
$is_cert = 1;
|
||||
last if ($is_crl);
|
||||
} elsif ($hdr eq "X509 CRL") {
|
||||
$is_crl = 1;
|
||||
last if ($is_cert);
|
||||
}
|
||||
}
|
||||
}
|
||||
close $in;
|
||||
return ($is_cert, $is_crl);
|
||||
}
|
||||
|
||||
sub compute_hash {
|
||||
my $fh;
|
||||
if ( $^O eq "VMS" ) {
|
||||
# VMS uses the open through shell
|
||||
# The file names are safe there and list form is unsupported
|
||||
if (!open($fh, "-|", join(' ', @_))) {
|
||||
print STDERR "Cannot compute hash on '$fname'\n";
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
if (!open($fh, "-|", @_)) {
|
||||
print STDERR "Cannot compute hash on '$fname'\n";
|
||||
return;
|
||||
}
|
||||
}
|
||||
return (<$fh>, <$fh>);
|
||||
}
|
||||
|
||||
# Link a certificate to its subject name hash value, each hash is of
|
||||
# the form <hash>.<n> where n is an integer. If the hash value already exists
|
||||
# then we need to up the value of n, unless its a duplicate in which
|
||||
# case we skip the link. We check for duplicates by comparing the
|
||||
# certificate fingerprints
|
||||
|
||||
sub link_hash_cert {
|
||||
link_hash($_[0], 'cert');
|
||||
}
|
||||
|
||||
# Same as above except for a CRL. CRL links are of the form <hash>.r<n>
|
||||
|
||||
sub link_hash_crl {
|
||||
link_hash($_[0], 'crl');
|
||||
}
|
||||
|
||||
sub link_hash {
|
||||
my ($fname, $type) = @_;
|
||||
my $is_cert = $type eq 'cert';
|
||||
|
||||
my ($hash, $fprint) = compute_hash($openssl,
|
||||
$is_cert ? "x509" : "crl",
|
||||
$is_cert ? $x509hash : $crlhash,
|
||||
"-fingerprint", "-noout",
|
||||
"-in", $fname);
|
||||
chomp $hash;
|
||||
$hash =~ s/^.*=// if !$is_cert;
|
||||
chomp $fprint;
|
||||
return if !$hash;
|
||||
$fprint =~ s/^.*=//;
|
||||
$fprint =~ tr/://d;
|
||||
my $suffix = 0;
|
||||
# Search for an unused hash filename
|
||||
my $crlmark = $is_cert ? "" : "r";
|
||||
while(exists $hashlist{"$hash.$crlmark$suffix"}) {
|
||||
# Hash matches: if fingerprint matches its a duplicate cert
|
||||
if ($hashlist{"$hash.$crlmark$suffix"} eq $fprint) {
|
||||
my $what = $is_cert ? 'certificate' : 'CRL';
|
||||
print STDERR "WARNING: Skipping duplicate $what $fname\n";
|
||||
return;
|
||||
}
|
||||
$suffix++;
|
||||
}
|
||||
$hash .= ".$crlmark$suffix";
|
||||
if ($symlink_exists) {
|
||||
print "link $fname -> $hash\n" if $verbose;
|
||||
symlink $fname, $hash || warn "Can't symlink, $!";
|
||||
} else {
|
||||
print "copy $fname -> $hash\n" if $verbose;
|
||||
copy_file($fname, $hash);
|
||||
}
|
||||
$hashlist{$hash} = $fprint;
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
tic
|
||||
BIN
.ai/bin/clear
BIN
.ai/bin/clear
Binary file not shown.
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from numpy.f2py.f2py2e import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
@ -1 +0,0 @@
|
||||
idle3.11
|
||||
@ -1,5 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
|
||||
from idlelib.pyshell import main
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from tensorflow.python.tools.import_pb_to_tensorboard import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
BIN
.ai/bin/infocmp
BIN
.ai/bin/infocmp
Binary file not shown.
@ -1 +0,0 @@
|
||||
tic
|
||||
@ -1 +0,0 @@
|
||||
xz
|
||||
@ -1 +0,0 @@
|
||||
xzdiff
|
||||
@ -1 +0,0 @@
|
||||
xzdiff
|
||||
@ -1 +0,0 @@
|
||||
xzgrep
|
||||
@ -1 +0,0 @@
|
||||
xzgrep
|
||||
@ -1 +0,0 @@
|
||||
xzgrep
|
||||
@ -1 +0,0 @@
|
||||
xzless
|
||||
@ -1 +0,0 @@
|
||||
xz
|
||||
BIN
.ai/bin/lzmadec
BIN
.ai/bin/lzmadec
Binary file not shown.
BIN
.ai/bin/lzmainfo
BIN
.ai/bin/lzmainfo
Binary file not shown.
@ -1 +0,0 @@
|
||||
xzmore
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from markdown_it.cli.parse import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from markdown.__main__ import run
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(run())
|
||||
@ -1,331 +0,0 @@
|
||||
#!/bin/sh
|
||||
# $Id: ncurses-config.in,v 1.52 2022/07/26 21:36:28 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2018-2021,2022 Thomas E. Dickey #
|
||||
# Copyright 2006-2015,2017 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
# copy of this software and associated documentation files (the "Software"), #
|
||||
# to deal in the Software without restriction, including without limitation #
|
||||
# the rights to use, copy, modify, merge, publish, distribute, distribute #
|
||||
# with modifications, sublicense, and/or sell copies of the Software, and to #
|
||||
# permit persons to whom the Software is furnished to do so, subject to the #
|
||||
# following conditions: #
|
||||
# #
|
||||
# The above copyright notice and this permission notice shall be included in #
|
||||
# all copies or substantial portions of the Software. #
|
||||
# #
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, #
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL #
|
||||
# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER #
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING #
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER #
|
||||
# DEALINGS IN THE SOFTWARE. #
|
||||
# #
|
||||
# Except as contained in this notice, the name(s) of the above copyright #
|
||||
# holders shall not be used in advertising or otherwise to promote the sale, #
|
||||
# use or other dealings in this Software without prior written #
|
||||
# authorization. #
|
||||
##############################################################################
|
||||
#
|
||||
# Author: Thomas E. Dickey, 2006-on
|
||||
|
||||
LANG=C; export LANG
|
||||
LANGUAGE=C; export LANGUAGE
|
||||
LC_ALL=C; export LC_ALL
|
||||
LC_CTYPE=C; export LC_CTYPE
|
||||
|
||||
prefix="/mnt/beegfs/home/rastogi/poet/.ai"
|
||||
exec_prefix="${prefix}"
|
||||
|
||||
bindir="${exec_prefix}/bin"
|
||||
includedir="${prefix}/include"
|
||||
libdir="${exec_prefix}/lib"
|
||||
datarootdir="${prefix}/share"
|
||||
datadir="${datarootdir}"
|
||||
mandir="${datarootdir}/man"
|
||||
|
||||
THIS="ncursesw"
|
||||
TINFO_LIB="tinfow"
|
||||
RPATH_LIST="${libdir}"
|
||||
|
||||
includesubdir="${prefix}/include/${THIS}"
|
||||
|
||||
# Ensure that RPATH_LIST contains only absolute pathnames, if it is nonempty.
|
||||
# We cannot filter it out within the build-process since the variable is used
|
||||
# in some special cases of installation using a relative path.
|
||||
if [ -n "$RPATH_LIST" ]
|
||||
then
|
||||
save_IFS="$IFS"
|
||||
IFS=':'
|
||||
filtered=
|
||||
for item in $RPATH_LIST
|
||||
do
|
||||
case "$item" in
|
||||
./*|../*|*/..|*/../*)
|
||||
;;
|
||||
*)
|
||||
[ -n "$filtered" ] && filtered="${filtered}:"
|
||||
filtered="${filtered}${item}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
IFS="$save_IFS"
|
||||
# if the result is empty, there is little we can do to fix it
|
||||
RPATH_LIST="$filtered"
|
||||
fi
|
||||
|
||||
# with --disable-overwrite, we installed into a subdirectory, but transformed
|
||||
# the headers to include like this:
|
||||
# <ncursesw/curses.h>
|
||||
if [ xno = xno ]; then
|
||||
case $includedir in
|
||||
$prefix/include/ncursesw)
|
||||
includedir=`echo "$includedir" | sed -e 's,/[^/]*$,,'`
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
LIBS=""
|
||||
if [ "tinfo" = "ncurses" ]; then
|
||||
LIBS="-l${THIS} $LIBS"
|
||||
else
|
||||
LIBS="-l${THIS} -l${TINFO_LIB} $LIBS"
|
||||
fi
|
||||
|
||||
# Ignore -L options which do not correspond to an actual directory, or which
|
||||
# are standard library directories (i.e., the linker is supposed to search
|
||||
# those directories).
|
||||
#
|
||||
# There is no portable way to find the list of standard library directories.
|
||||
# Require a POSIX shell anyway, to keep this simple.
|
||||
lib_flags=
|
||||
for opt in -L$libdir -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/mnt/beegfs/home/rastogi/poet/.ai/lib -Wl,-rpath-link,/mnt/beegfs/home/rastogi/poet/.ai/lib -L/mnt/beegfs/home/rastogi/poet/.ai/lib $LIBS
|
||||
do
|
||||
case $opt in
|
||||
-specs*) # ignore linker specs-files which were used to build library
|
||||
continue
|
||||
;;
|
||||
-Wl,-z,*) # ignore flags used to manipulate shared image
|
||||
continue
|
||||
;;
|
||||
-Wl,--dynamic-linker*) # ignore ELF interpreter
|
||||
continue
|
||||
;;
|
||||
-Wl,--as-needed|-Wl,--build-id=*|-Wl,-dT,*|-Wl,-T,*)
|
||||
continue
|
||||
;;
|
||||
-L*)
|
||||
lib_check=`echo "x$opt" | sed -e 's/^.-L//'`
|
||||
[ -d "$lib_check" ] || continue
|
||||
case "$lib_check" in
|
||||
/usr/local/lib64|/lib64|/usr/lib64|/usr/local/lib|/lib|/usr/lib) # skip standard libdir
|
||||
if [ "$lib_check" = "$libdir" ]
|
||||
then
|
||||
lib_first=yes
|
||||
IFS_save="$IFS"
|
||||
IFS='|'
|
||||
LIBDIRS="/usr/local/lib64|/lib64|/usr/lib64|/usr/local/lib|/lib|/usr/lib"
|
||||
for lib_check in $LIBDIRS
|
||||
do
|
||||
if [ -d "$lib_check" ]
|
||||
then
|
||||
if [ "$lib_check" != "$libdir" ]
|
||||
then
|
||||
lib_first=no
|
||||
fi
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS="$IFS_save"
|
||||
[ $lib_first = yes ] && continue
|
||||
found=no
|
||||
for check in $lib_flags
|
||||
do
|
||||
if [ "x$check" = "x$opt" ]
|
||||
then
|
||||
found=yes
|
||||
break
|
||||
fi
|
||||
done
|
||||
[ $found = yes ] && continue
|
||||
:
|
||||
else
|
||||
continue
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
found=no
|
||||
for check in $lib_flags
|
||||
do
|
||||
if [ "x$check" = "x$opt" ]
|
||||
then
|
||||
found=yes
|
||||
break
|
||||
fi
|
||||
done
|
||||
[ $found = yes ] && continue
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
lib_flags="$lib_flags $opt"
|
||||
done
|
||||
|
||||
[ $# = 0 ] && exec /bin/sh "$0" --error
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
# basic configuration
|
||||
--prefix)
|
||||
echo "$prefix"
|
||||
;;
|
||||
--exec-prefix)
|
||||
echo "$exec_prefix"
|
||||
;;
|
||||
# compile/link
|
||||
--cflags)
|
||||
INCS=" -D_GNU_SOURCE -DNCURSES_WIDECHAR"
|
||||
if [ "xno" = xno ]; then
|
||||
INCS="$INCS -I${includesubdir}"
|
||||
fi
|
||||
if [ "${includedir}" != /usr/include ]; then
|
||||
INCS="$INCS -I${includedir}"
|
||||
fi
|
||||
sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO
|
||||
$INCS
|
||||
ENDECHO
|
||||
;;
|
||||
--libs)
|
||||
OPTS=
|
||||
for opt in $lib_flags
|
||||
do
|
||||
[ -n "$OPTS" ] && OPTS="$OPTS "
|
||||
OPTS="${OPTS}${opt}"
|
||||
done
|
||||
printf '%s\n' "$OPTS"
|
||||
;;
|
||||
--libs-only-L)
|
||||
OPTS=
|
||||
for opt in $lib_flags
|
||||
do
|
||||
case "x$opt" in
|
||||
x-L*)
|
||||
[ -n "$OPTS" ] && OPTS="$OPTS "
|
||||
OPTS="${OPTS}${opt}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
printf '%s\n' "$OPTS"
|
||||
;;
|
||||
--libs-only-l)
|
||||
OPTS=
|
||||
for opt in $lib_flags
|
||||
do
|
||||
case "x$opt" in
|
||||
x-l*)
|
||||
[ -n "$OPTS" ] && OPTS="$OPTS "
|
||||
OPTS="${OPTS}${opt}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
printf '%s\n' "$OPTS"
|
||||
;;
|
||||
--libs-only-other)
|
||||
OPTS=
|
||||
for opt in $lib_flags
|
||||
do
|
||||
case "x$opt" in
|
||||
x-[lL]*)
|
||||
;;
|
||||
*)
|
||||
[ -n "$OPTS" ] && OPTS="$OPTS "
|
||||
OPTS="${OPTS}${opt}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
printf '%s\n' "$OPTS"
|
||||
;;
|
||||
# identification
|
||||
--version)
|
||||
echo "6.4.20221231"
|
||||
;;
|
||||
--abi-version)
|
||||
echo "6"
|
||||
;;
|
||||
--mouse-version)
|
||||
echo "2"
|
||||
;;
|
||||
# locations
|
||||
--bindir)
|
||||
echo "${bindir}"
|
||||
;;
|
||||
--datadir)
|
||||
echo "${datadir}"
|
||||
;;
|
||||
--includedir)
|
||||
INCS=
|
||||
if [ "xno" = xno ]; then
|
||||
INCS="${includesubdir}"
|
||||
elif [ "${includedir}" != /usr/include ]; then
|
||||
INCS="${includedir}"
|
||||
fi
|
||||
echo "$INCS"
|
||||
;;
|
||||
--libdir)
|
||||
echo "${libdir}"
|
||||
;;
|
||||
--mandir)
|
||||
echo "${mandir}"
|
||||
;;
|
||||
--terminfo)
|
||||
echo "/mnt/beegfs/home/rastogi/poet/.ai/share/terminfo"
|
||||
;;
|
||||
--terminfo-dirs)
|
||||
echo "/mnt/beegfs/home/rastogi/poet/.ai/share/terminfo"
|
||||
;;
|
||||
--termpath)
|
||||
echo "/etc/termcap:/usr/share/misc/termcap"
|
||||
;;
|
||||
# general info
|
||||
--help)
|
||||
cat <<ENDHELP
|
||||
Usage: `basename "$0"` [options]
|
||||
|
||||
Options:
|
||||
--prefix echos the package-prefix of ${THIS}
|
||||
--exec-prefix echos the executable-prefix of ${THIS}
|
||||
|
||||
--cflags echos the C compiler flags needed to compile with ${THIS}
|
||||
--libs echos the libraries needed to link with ${THIS}
|
||||
|
||||
--libs-only-L echos -L linker options (search path) for ${THIS}
|
||||
--libs-only-l echos -l linker options (libraries) for ${THIS}
|
||||
--libs-only-other echos linker options other than -L/-l
|
||||
|
||||
--version echos the release+patchdate version of ${THIS}
|
||||
--abi-version echos the ABI version of ${THIS}
|
||||
--mouse-version echos the mouse-interface version of ${THIS}
|
||||
|
||||
--bindir echos the directory containing ${THIS} programs
|
||||
--datadir echos the directory containing ${THIS} data
|
||||
--includedir echos the directory containing ${THIS} header files
|
||||
--libdir echos the directory containing ${THIS} libraries
|
||||
--mandir echos the directory containing ${THIS} manpages
|
||||
--terminfo echos the \$TERMINFO terminfo database path
|
||||
--terminfo-dirs echos the \$TERMINFO_DIRS directory list
|
||||
--termpath echos the \$TERMPATH termcap list
|
||||
|
||||
--help prints this message
|
||||
ENDHELP
|
||||
;;
|
||||
--error|*)
|
||||
/bin/sh "$0" --help 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
# vi:ts=4 sw=4
|
||||
# vile:shmode
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from charset_normalizer import cli
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(cli.cli_detect())
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from numpy._configtool import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
BIN
.ai/bin/openssl
BIN
.ai/bin/openssl
Binary file not shown.
10
.ai/bin/pip
10
.ai/bin/pip
@ -1,10 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from pip._internal.cli.main import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
10
.ai/bin/pip3
10
.ai/bin/pip3
@ -1,10 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from pip._internal.cli.main import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
@ -1 +0,0 @@
|
||||
pydoc3.11
|
||||
@ -1 +0,0 @@
|
||||
pydoc3.11
|
||||
@ -1,5 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
|
||||
import pydoc
|
||||
if __name__ == '__main__':
|
||||
pydoc.cli()
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from pygments.cmdline import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
@ -1 +0,0 @@
|
||||
python3.11
|
||||
@ -1 +0,0 @@
|
||||
python3.11
|
||||
@ -1 +0,0 @@
|
||||
python3.11-config
|
||||
@ -1 +0,0 @@
|
||||
python3.11
|
||||
Binary file not shown.
@ -1,116 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Keep this script in sync with python-config.in
|
||||
|
||||
exit_with_usage ()
|
||||
{
|
||||
echo "Usage: $0 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--help|--abiflags|--configdir|--embed"
|
||||
exit $1
|
||||
}
|
||||
|
||||
if [ "$1" = "" ] ; then
|
||||
exit_with_usage 1
|
||||
fi
|
||||
|
||||
# Returns the actual prefix where this script was installed to.
|
||||
installed_prefix ()
|
||||
{
|
||||
RESULT=$(dirname $(cd $(dirname "$1") && pwd -P))
|
||||
if which readlink >/dev/null 2>&1 ; then
|
||||
if readlink -f "$RESULT" >/dev/null 2>&1; then
|
||||
RESULT=$(readlink -f "$RESULT")
|
||||
fi
|
||||
fi
|
||||
echo $RESULT
|
||||
}
|
||||
|
||||
prefix_real=$(installed_prefix "$0")
|
||||
|
||||
# Use sed to fix paths from their built-to locations to their installed-to
|
||||
# locations. Keep prefix & exec_prefix using their original values in case
|
||||
# they are referenced in other configure variables, to prevent double
|
||||
# substitution, issue #22140.
|
||||
prefix="/mnt/beegfs/home/rastogi/poet/.ai"
|
||||
exec_prefix="${prefix}"
|
||||
exec_prefix_real=${prefix_real}
|
||||
includedir=$(echo "${prefix}/include" | sed "s#$prefix#$prefix_real#")
|
||||
libdir=$(echo "${exec_prefix}/lib" | sed "s#$prefix#$prefix_real#")
|
||||
CFLAGS=$(echo "-march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O3 -ffunction-sections -pipe -isystem /mnt/beegfs/home/rastogi/poet/.ai/include -fdebug-prefix-map=/croot/python-split_1749128431100/work=/usr/local/src/conda/python-3.11.13 -fdebug-prefix-map=/mnt/beegfs/home/rastogi/poet/.ai=/usr/local/src/conda-prefix -fuse-linker-plugin -ffat-lto-objects -flto-partition=none -flto" | sed "s#$prefix#$prefix_real#")
|
||||
VERSION="3.11"
|
||||
LIBM="-lm"
|
||||
LIBC=""
|
||||
SYSLIBS="$LIBM $LIBC"
|
||||
ABIFLAGS=""
|
||||
LIBS=" -lpthread -ldl -lutil $SYSLIBS"
|
||||
LIBS_EMBED="-lpython${VERSION}${ABIFLAGS} -lpthread -ldl -lutil $SYSLIBS"
|
||||
BASECFLAGS=""
|
||||
LDLIBRARY="libpython${VERSION}${ABIFLAGS}.a"
|
||||
OPT="-DNDEBUG -fwrapv -O3 -Wall"
|
||||
PY_ENABLE_SHARED="0"
|
||||
LDVERSION="${VERSION}${ABIFLAGS}"
|
||||
LIBDEST=${prefix_real}/lib/python${VERSION}
|
||||
LIBPL=$(echo "${prefix}/lib/python3.11/config-${VERSION}${ABIFLAGS}-x86_64-linux-gnu" | sed "s#$prefix#$prefix_real#")
|
||||
SO=".cpython-311-x86_64-linux-gnu.so"
|
||||
PYTHONFRAMEWORK=""
|
||||
INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}"
|
||||
PLATINCDIR="-I$includedir/python${VERSION}${ABIFLAGS}"
|
||||
PY_EMBED=0
|
||||
|
||||
# Scan for --help or unknown argument.
|
||||
for ARG in $*
|
||||
do
|
||||
case $ARG in
|
||||
--help)
|
||||
exit_with_usage 0
|
||||
;;
|
||||
--embed)
|
||||
PY_EMBED=1
|
||||
;;
|
||||
--prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--abiflags|--configdir)
|
||||
;;
|
||||
*)
|
||||
exit_with_usage 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ $PY_EMBED = 1 ] ; then
|
||||
LIBS="$LIBS_EMBED"
|
||||
fi
|
||||
|
||||
for ARG in "$@"
|
||||
do
|
||||
case "$ARG" in
|
||||
--prefix)
|
||||
echo "$prefix_real"
|
||||
;;
|
||||
--exec-prefix)
|
||||
echo "$exec_prefix_real"
|
||||
;;
|
||||
--includes)
|
||||
echo "$INCDIR $PLATINCDIR"
|
||||
;;
|
||||
--cflags)
|
||||
echo "$INCDIR $PLATINCDIR $BASECFLAGS $CFLAGS $OPT"
|
||||
;;
|
||||
--libs)
|
||||
echo "$LIBS"
|
||||
;;
|
||||
--ldflags)
|
||||
LIBPLUSED=
|
||||
if [ "$PY_ENABLE_SHARED" = "0" ] ; then
|
||||
LIBPLUSED="-L$LIBPL"
|
||||
fi
|
||||
echo "$LIBPLUSED -L$libdir $LIBS"
|
||||
;;
|
||||
--extension-suffix)
|
||||
echo "$SO"
|
||||
;;
|
||||
--abiflags)
|
||||
echo "$ABIFLAGS"
|
||||
;;
|
||||
--configdir)
|
||||
echo "$LIBPL"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
@ -1 +0,0 @@
|
||||
tset
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from tensorflow.python.tools.saved_model_cli import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
BIN
.ai/bin/sqlite3
BIN
.ai/bin/sqlite3
Binary file not shown.
@ -1,899 +0,0 @@
|
||||
#! /bin/sh
|
||||
# restart with tclsh \
|
||||
exec tclsh "$0" ${1+"$@"}
|
||||
package require sqlite3
|
||||
|
||||
# Run this TCL script using an SQLite-enabled TCL interpreter to get a report
|
||||
# on how much disk space is used by a particular data to actually store data
|
||||
# versus how much space is unused.
|
||||
#
|
||||
# The dbstat virtual table is required.
|
||||
#
|
||||
|
||||
if {[catch {
|
||||
|
||||
# Argument $tname is the name of a table within the database opened by
|
||||
# database handle [db]. Return true if it is a WITHOUT ROWID table, or
|
||||
# false otherwise.
|
||||
#
|
||||
proc is_without_rowid {tname} {
|
||||
set t [string map {' ''} $tname]
|
||||
db eval "PRAGMA index_list = '$t'" o {
|
||||
if {$o(origin) == "pk"} {
|
||||
set n $o(name)
|
||||
if {0==[db one { SELECT count(*) FROM sqlite_schema WHERE name=$n }]} {
|
||||
return 1
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
# Read and run TCL commands from standard input. Used to implement
|
||||
# the --tclsh option.
|
||||
#
|
||||
proc tclsh {} {
|
||||
set line {}
|
||||
while {![eof stdin]} {
|
||||
if {$line!=""} {
|
||||
puts -nonewline "> "
|
||||
} else {
|
||||
puts -nonewline "% "
|
||||
}
|
||||
flush stdout
|
||||
append line [gets stdin]
|
||||
if {[info complete $line]} {
|
||||
if {[catch {uplevel #0 $line} result]} {
|
||||
puts stderr "Error: $result"
|
||||
} elseif {$result!=""} {
|
||||
puts $result
|
||||
}
|
||||
set line {}
|
||||
} else {
|
||||
append line \n
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Get the name of the database to analyze
|
||||
#
|
||||
proc usage {} {
|
||||
set argv0 [file rootname [file tail [info script]]]
|
||||
puts stderr "Usage: $argv0 ?--pageinfo? ?--stats? database-filename"
|
||||
puts stderr {
|
||||
Analyze the SQLite3 database file specified by the "database-filename"
|
||||
argument and output a report detailing size and storage efficiency
|
||||
information for the database and its constituent tables and indexes.
|
||||
|
||||
Options:
|
||||
|
||||
--pageinfo Show how each page of the database-file is used
|
||||
|
||||
--stats Output SQL text that creates a new database containing
|
||||
statistics about the database that was analyzed
|
||||
|
||||
--tclsh Run the built-in TCL interpreter interactively (for debugging)
|
||||
|
||||
--version Show the version number of SQLite
|
||||
}
|
||||
exit 1
|
||||
}
|
||||
set file_to_analyze {}
|
||||
set flags(-pageinfo) 0
|
||||
set flags(-stats) 0
|
||||
set flags(-debug) 0
|
||||
append argv {}
|
||||
foreach arg $argv {
|
||||
if {[regexp {^-+pageinfo$} $arg]} {
|
||||
set flags(-pageinfo) 1
|
||||
} elseif {[regexp {^-+stats$} $arg]} {
|
||||
set flags(-stats) 1
|
||||
} elseif {[regexp {^-+debug$} $arg]} {
|
||||
set flags(-debug) 1
|
||||
} elseif {[regexp {^-+tclsh$} $arg]} {
|
||||
tclsh
|
||||
exit 0
|
||||
} elseif {[regexp {^-+version$} $arg]} {
|
||||
sqlite3 mem :memory:
|
||||
puts [mem one {SELECT sqlite_version()||' '||sqlite_source_id()}]
|
||||
mem close
|
||||
exit 0
|
||||
} elseif {[regexp {^-} $arg]} {
|
||||
puts stderr "Unknown option: $arg"
|
||||
usage
|
||||
} elseif {$file_to_analyze!=""} {
|
||||
usage
|
||||
} else {
|
||||
set file_to_analyze $arg
|
||||
}
|
||||
}
|
||||
if {$file_to_analyze==""} usage
|
||||
set root_filename $file_to_analyze
|
||||
regexp {^file:(//)?([^?]*)} $file_to_analyze all x1 root_filename
|
||||
if {![file exists $root_filename]} {
|
||||
puts stderr "No such file: $root_filename"
|
||||
exit 1
|
||||
}
|
||||
if {![file readable $root_filename]} {
|
||||
puts stderr "File is not readable: $root_filename"
|
||||
exit 1
|
||||
}
|
||||
set true_file_size [file size $root_filename]
|
||||
if {$true_file_size<512} {
|
||||
puts stderr "Empty or malformed database: $root_filename"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Compute the total file size assuming test_multiplexor is being used.
|
||||
# Assume that SQLITE_ENABLE_8_3_NAMES might be enabled
|
||||
#
|
||||
set extension [file extension $root_filename]
|
||||
set pattern $root_filename
|
||||
append pattern {[0-3][0-9][0-9]}
|
||||
foreach f [glob -nocomplain $pattern] {
|
||||
incr true_file_size [file size $f]
|
||||
set extension {}
|
||||
}
|
||||
if {[string length $extension]>=2 && [string length $extension]<=4} {
|
||||
set pattern [file rootname $root_filename]
|
||||
append pattern {.[0-3][0-9][0-9]}
|
||||
foreach f [glob -nocomplain $pattern] {
|
||||
incr true_file_size [file size $f]
|
||||
}
|
||||
}
|
||||
|
||||
# Open the database
|
||||
#
|
||||
if {[catch {sqlite3 db $file_to_analyze -uri 1} msg]} {
|
||||
puts stderr "error trying to open $file_to_analyze: $msg"
|
||||
exit 1
|
||||
}
|
||||
if {$flags(-debug)} {
|
||||
proc dbtrace {txt} {puts $txt; flush stdout;}
|
||||
db trace ::dbtrace
|
||||
}
|
||||
|
||||
# Make sure all required compile-time options are available
|
||||
#
|
||||
if {![db exists {SELECT 1 FROM pragma_compile_options
|
||||
WHERE compile_options='ENABLE_DBSTAT_VTAB'}]} {
|
||||
puts "The SQLite database engine linked with this application\
|
||||
lacks required capabilities. Recompile using the\
|
||||
-DSQLITE_ENABLE_DBSTAT_VTAB compile-time option to fix\
|
||||
this problem."
|
||||
exit 1
|
||||
}
|
||||
|
||||
db eval {SELECT count(*) FROM sqlite_schema}
|
||||
set pageSize [expr {wide([db one {PRAGMA page_size}])}]
|
||||
|
||||
if {$flags(-pageinfo)} {
|
||||
db eval {CREATE VIRTUAL TABLE temp.stat USING dbstat}
|
||||
db eval {SELECT name, path, pageno FROM temp.stat ORDER BY pageno} {
|
||||
puts "$pageno $name $path"
|
||||
}
|
||||
exit 0
|
||||
}
|
||||
if {$flags(-stats)} {
|
||||
db eval {CREATE VIRTUAL TABLE temp.stat USING dbstat}
|
||||
puts "BEGIN;"
|
||||
puts "CREATE TABLE stats("
|
||||
puts " name STRING, /* Name of table or index */"
|
||||
puts " path INTEGER, /* Path to page from root */"
|
||||
puts " pageno INTEGER, /* Page number */"
|
||||
puts " pagetype STRING, /* 'internal', 'leaf' or 'overflow' */"
|
||||
puts " ncell INTEGER, /* Cells on page (0 for overflow) */"
|
||||
puts " payload INTEGER, /* Bytes of payload on this page */"
|
||||
puts " unused INTEGER, /* Bytes of unused space on this page */"
|
||||
puts " mx_payload INTEGER, /* Largest payload size of all cells */"
|
||||
puts " pgoffset INTEGER, /* Offset of page in file */"
|
||||
puts " pgsize INTEGER /* Size of the page */"
|
||||
puts ");"
|
||||
db eval {SELECT quote(name) || ',' ||
|
||||
quote(path) || ',' ||
|
||||
quote(pageno) || ',' ||
|
||||
quote(pagetype) || ',' ||
|
||||
quote(ncell) || ',' ||
|
||||
quote(payload) || ',' ||
|
||||
quote(unused) || ',' ||
|
||||
quote(mx_payload) || ',' ||
|
||||
quote(pgoffset) || ',' ||
|
||||
quote(pgsize) AS x FROM stat} {
|
||||
puts "INSERT INTO stats VALUES($x);"
|
||||
}
|
||||
puts "COMMIT;"
|
||||
exit 0
|
||||
}
|
||||
|
||||
|
||||
# In-memory database for collecting statistics. This script loops through
|
||||
# the tables and indices in the database being analyzed, adding a row for each
|
||||
# to an in-memory database (for which the schema is shown below). It then
|
||||
# queries the in-memory db to produce the space-analysis report.
|
||||
#
|
||||
sqlite3 mem :memory:
|
||||
if {$flags(-debug)} {
|
||||
proc dbtrace {txt} {puts $txt; flush stdout;}
|
||||
mem trace ::dbtrace
|
||||
}
|
||||
set tabledef {CREATE TABLE space_used(
|
||||
name clob, -- Name of a table or index in the database file
|
||||
tblname clob, -- Name of associated table
|
||||
is_index boolean, -- TRUE if it is an index, false for a table
|
||||
is_without_rowid boolean, -- TRUE if WITHOUT ROWID table
|
||||
nentry int, -- Number of entries in the BTree
|
||||
leaf_entries int, -- Number of leaf entries
|
||||
depth int, -- Depth of the b-tree
|
||||
payload int, -- Total amount of data stored in this table or index
|
||||
ovfl_payload int, -- Total amount of data stored on overflow pages
|
||||
ovfl_cnt int, -- Number of entries that use overflow
|
||||
mx_payload int, -- Maximum payload size
|
||||
int_pages int, -- Number of interior pages used
|
||||
leaf_pages int, -- Number of leaf pages used
|
||||
ovfl_pages int, -- Number of overflow pages used
|
||||
int_unused int, -- Number of unused bytes on interior pages
|
||||
leaf_unused int, -- Number of unused bytes on primary pages
|
||||
ovfl_unused int, -- Number of unused bytes on overflow pages
|
||||
gap_cnt int, -- Number of gaps in the page layout
|
||||
compressed_size int -- Total bytes stored on disk
|
||||
);}
|
||||
mem eval $tabledef
|
||||
|
||||
# Create a temporary "dbstat" virtual table.
|
||||
#
|
||||
db eval {CREATE VIRTUAL TABLE temp.stat USING dbstat}
|
||||
db eval {CREATE TEMP TABLE dbstat AS SELECT * FROM temp.stat
|
||||
ORDER BY name, path}
|
||||
db eval {DROP TABLE temp.stat}
|
||||
|
||||
set isCompressed 0
|
||||
set compressOverhead 0
|
||||
set depth 0
|
||||
set sql { SELECT name, tbl_name FROM sqlite_schema WHERE rootpage>0 }
|
||||
foreach {name tblname} [concat sqlite_schema sqlite_schema [db eval $sql]] {
|
||||
|
||||
set is_index [expr {$name!=$tblname}]
|
||||
set is_without_rowid [is_without_rowid $name]
|
||||
db eval {
|
||||
SELECT
|
||||
sum(ncell) AS nentry,
|
||||
sum((pagetype=='leaf')*ncell) AS leaf_entries,
|
||||
sum(payload) AS payload,
|
||||
sum((pagetype=='overflow') * payload) AS ovfl_payload,
|
||||
sum(path LIKE '%+000000') AS ovfl_cnt,
|
||||
max(mx_payload) AS mx_payload,
|
||||
sum(pagetype=='internal') AS int_pages,
|
||||
sum(pagetype=='leaf') AS leaf_pages,
|
||||
sum(pagetype=='overflow') AS ovfl_pages,
|
||||
sum((pagetype=='internal') * unused) AS int_unused,
|
||||
sum((pagetype=='leaf') * unused) AS leaf_unused,
|
||||
sum((pagetype=='overflow') * unused) AS ovfl_unused,
|
||||
sum(pgsize) AS compressed_size,
|
||||
max((length(CASE WHEN path LIKE '%+%' THEN '' ELSE path END)+3)/4)
|
||||
AS depth
|
||||
FROM temp.dbstat WHERE name = $name
|
||||
} break
|
||||
|
||||
set total_pages [expr {$leaf_pages+$int_pages+$ovfl_pages}]
|
||||
set storage [expr {$total_pages*$pageSize}]
|
||||
if {!$isCompressed && $storage>$compressed_size} {
|
||||
set isCompressed 1
|
||||
set compressOverhead 14
|
||||
}
|
||||
|
||||
# Column 'gap_cnt' is set to the number of non-contiguous entries in the
|
||||
# list of pages visited if the b-tree structure is traversed in a top-down
|
||||
# fashion (each node visited before its child-tree is passed). Any overflow
|
||||
# chains present are traversed from start to finish before any child-tree
|
||||
# is.
|
||||
#
|
||||
set gap_cnt 0
|
||||
set prev 0
|
||||
db eval {
|
||||
SELECT pageno, pagetype FROM temp.dbstat
|
||||
WHERE name=$name
|
||||
ORDER BY pageno
|
||||
} {
|
||||
if {$prev>0 && $pagetype=="leaf" && $pageno!=$prev+1} {
|
||||
incr gap_cnt
|
||||
}
|
||||
set prev $pageno
|
||||
}
|
||||
mem eval {
|
||||
INSERT INTO space_used VALUES(
|
||||
$name,
|
||||
$tblname,
|
||||
$is_index,
|
||||
$is_without_rowid,
|
||||
$nentry,
|
||||
$leaf_entries,
|
||||
$depth,
|
||||
$payload,
|
||||
$ovfl_payload,
|
||||
$ovfl_cnt,
|
||||
$mx_payload,
|
||||
$int_pages,
|
||||
$leaf_pages,
|
||||
$ovfl_pages,
|
||||
$int_unused,
|
||||
$leaf_unused,
|
||||
$ovfl_unused,
|
||||
$gap_cnt,
|
||||
$compressed_size
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
proc integerify {real} {
|
||||
if {[string is double -strict $real]} {
|
||||
return [expr {wide($real)}]
|
||||
} else {
|
||||
return 0
|
||||
}
|
||||
}
|
||||
mem function int integerify
|
||||
|
||||
# Quote a string for use in an SQL query. Examples:
|
||||
#
|
||||
# [quote {hello world}] == {'hello world'}
|
||||
# [quote {hello world's}] == {'hello world''s'}
|
||||
#
|
||||
proc quote {txt} {
|
||||
return [string map {' ''} $txt]
|
||||
}
|
||||
|
||||
# Output a title line
|
||||
#
|
||||
proc titleline {title} {
|
||||
if {$title==""} {
|
||||
puts [string repeat * 79]
|
||||
} else {
|
||||
set len [string length $title]
|
||||
set stars [string repeat * [expr {79-$len-5}]]
|
||||
puts "*** $title $stars"
|
||||
}
|
||||
}
|
||||
|
||||
# Generate a single line of output in the statistics section of the
|
||||
# report.
|
||||
#
|
||||
proc statline {title value {extra {}}} {
|
||||
set len [string length $title]
|
||||
set dots [string repeat . [expr {50-$len}]]
|
||||
set len [string length $value]
|
||||
set sp2 [string range { } $len end]
|
||||
if {$extra ne ""} {
|
||||
set extra " $extra"
|
||||
}
|
||||
puts "$title$dots $value$sp2$extra"
|
||||
}
|
||||
|
||||
# Generate a formatted percentage value for $num/$denom
|
||||
#
|
||||
proc percent {num denom {of {}}} {
|
||||
if {$denom==0.0} {return ""}
|
||||
set v [expr {$num*100.0/$denom}]
|
||||
set of {}
|
||||
if {$v==100.0 || $v<0.001 || ($v>1.0 && $v<99.0)} {
|
||||
return [format {%5.1f%% %s} $v $of]
|
||||
} elseif {$v<0.1 || $v>99.9} {
|
||||
return [format {%7.3f%% %s} $v $of]
|
||||
} else {
|
||||
return [format {%6.2f%% %s} $v $of]
|
||||
}
|
||||
}
|
||||
|
||||
proc divide {num denom} {
|
||||
if {$denom==0} {return 0.0}
|
||||
return [format %.2f [expr {double($num)/double($denom)}]]
|
||||
}
|
||||
|
||||
# Generate a subreport that covers some subset of the database.
|
||||
# the $where clause determines which subset to analyze.
|
||||
#
|
||||
proc subreport {title where showFrag} {
|
||||
global pageSize file_pgcnt compressOverhead
|
||||
|
||||
# Query the in-memory database for the sum of various statistics
|
||||
# for the subset of tables/indices identified by the WHERE clause in
|
||||
# $where. Note that even if the WHERE clause matches no rows, the
|
||||
# following query returns exactly one row (because it is an aggregate).
|
||||
#
|
||||
# The results of the query are stored directly by SQLite into local
|
||||
# variables (i.e. $nentry, $payload etc.).
|
||||
#
|
||||
mem eval "
|
||||
SELECT
|
||||
int(sum(
|
||||
CASE WHEN (is_without_rowid OR is_index) THEN nentry
|
||||
ELSE leaf_entries
|
||||
END
|
||||
)) AS nentry,
|
||||
int(sum(payload)) AS payload,
|
||||
int(sum(ovfl_payload)) AS ovfl_payload,
|
||||
max(mx_payload) AS mx_payload,
|
||||
int(sum(ovfl_cnt)) as ovfl_cnt,
|
||||
int(sum(leaf_pages)) AS leaf_pages,
|
||||
int(sum(int_pages)) AS int_pages,
|
||||
int(sum(ovfl_pages)) AS ovfl_pages,
|
||||
int(sum(leaf_unused)) AS leaf_unused,
|
||||
int(sum(int_unused)) AS int_unused,
|
||||
int(sum(ovfl_unused)) AS ovfl_unused,
|
||||
int(sum(gap_cnt)) AS gap_cnt,
|
||||
int(sum(compressed_size)) AS compressed_size,
|
||||
int(max(depth)) AS depth,
|
||||
count(*) AS cnt
|
||||
FROM space_used WHERE $where" {} {}
|
||||
|
||||
# Output the sub-report title, nicely decorated with * characters.
|
||||
#
|
||||
puts ""
|
||||
titleline $title
|
||||
puts ""
|
||||
|
||||
# Calculate statistics and store the results in TCL variables, as follows:
|
||||
#
|
||||
# total_pages: Database pages consumed.
|
||||
# total_pages_percent: Pages consumed as a percentage of the file.
|
||||
# storage: Bytes consumed.
|
||||
# payload_percent: Payload bytes used as a percentage of $storage.
|
||||
# total_unused: Unused bytes on pages.
|
||||
# avg_payload: Average payload per btree entry.
|
||||
# avg_fanout: Average fanout for internal pages.
|
||||
# avg_unused: Average unused bytes per btree entry.
|
||||
# avg_meta: Average metadata overhead per entry.
|
||||
# ovfl_cnt_percent: Percentage of btree entries that use overflow pages.
|
||||
#
|
||||
set total_pages [expr {$leaf_pages+$int_pages+$ovfl_pages}]
|
||||
set total_pages_percent [percent $total_pages $file_pgcnt]
|
||||
set storage [expr {$total_pages*$pageSize}]
|
||||
set payload_percent [percent $payload $storage {of storage consumed}]
|
||||
set total_unused [expr {$ovfl_unused+$int_unused+$leaf_unused}]
|
||||
set avg_payload [divide $payload $nentry]
|
||||
set avg_unused [divide $total_unused $nentry]
|
||||
set total_meta [expr {$storage - $payload - $total_unused}]
|
||||
set total_meta [expr {$total_meta + 4*($ovfl_pages - $ovfl_cnt)}]
|
||||
set meta_percent [percent $total_meta $storage {of metadata}]
|
||||
set avg_meta [divide $total_meta $nentry]
|
||||
if {$int_pages>0} {
|
||||
# TODO: Is this formula correct?
|
||||
set nTab [mem eval "
|
||||
SELECT count(*) FROM (
|
||||
SELECT DISTINCT tblname FROM space_used WHERE $where AND is_index=0
|
||||
)
|
||||
"]
|
||||
set avg_fanout [mem eval "
|
||||
SELECT (sum(leaf_pages+int_pages)-$nTab)/sum(int_pages) FROM space_used
|
||||
WHERE $where
|
||||
"]
|
||||
set avg_fanout [format %.2f $avg_fanout]
|
||||
}
|
||||
set ovfl_cnt_percent [percent $ovfl_cnt $nentry {of all entries}]
|
||||
|
||||
# Print out the sub-report statistics.
|
||||
#
|
||||
statline {Percentage of total database} $total_pages_percent
|
||||
statline {Number of entries} $nentry
|
||||
statline {Bytes of storage consumed} $storage
|
||||
if {$compressed_size!=$storage} {
|
||||
set compressed_size [expr {$compressed_size+$compressOverhead*$total_pages}]
|
||||
set pct [expr {$compressed_size*100.0/$storage}]
|
||||
set pct [format {%5.1f%%} $pct]
|
||||
statline {Bytes used after compression} $compressed_size $pct
|
||||
}
|
||||
statline {Bytes of payload} $payload $payload_percent
|
||||
statline {Bytes of metadata} $total_meta $meta_percent
|
||||
if {$cnt==1} {statline {B-tree depth} $depth}
|
||||
statline {Average payload per entry} $avg_payload
|
||||
statline {Average unused bytes per entry} $avg_unused
|
||||
statline {Average metadata per entry} $avg_meta
|
||||
if {[info exists avg_fanout]} {
|
||||
statline {Average fanout} $avg_fanout
|
||||
}
|
||||
if {$showFrag && $total_pages>1} {
|
||||
set fragmentation [percent $gap_cnt [expr {$total_pages-1}]]
|
||||
statline {Non-sequential pages} $gap_cnt $fragmentation
|
||||
}
|
||||
statline {Maximum payload per entry} $mx_payload
|
||||
statline {Entries that use overflow} $ovfl_cnt $ovfl_cnt_percent
|
||||
if {$int_pages>0} {
|
||||
statline {Index pages used} $int_pages
|
||||
}
|
||||
statline {Primary pages used} $leaf_pages
|
||||
statline {Overflow pages used} $ovfl_pages
|
||||
statline {Total pages used} $total_pages
|
||||
if {$int_unused>0} {
|
||||
set int_unused_percent [
|
||||
percent $int_unused [expr {$int_pages*$pageSize}] {of index space}]
|
||||
statline "Unused bytes on index pages" $int_unused $int_unused_percent
|
||||
}
|
||||
statline "Unused bytes on primary pages" $leaf_unused [
|
||||
percent $leaf_unused [expr {$leaf_pages*$pageSize}] {of primary space}]
|
||||
statline "Unused bytes on overflow pages" $ovfl_unused [
|
||||
percent $ovfl_unused [expr {$ovfl_pages*$pageSize}] {of overflow space}]
|
||||
statline "Unused bytes on all pages" $total_unused [
|
||||
percent $total_unused $storage {of all space}]
|
||||
return 1
|
||||
}
|
||||
|
||||
# Calculate the overhead in pages caused by auto-vacuum.
|
||||
#
|
||||
# This procedure calculates and returns the number of pages used by the
|
||||
# auto-vacuum 'pointer-map'. If the database does not support auto-vacuum,
|
||||
# then 0 is returned. The two arguments are the size of the database file in
|
||||
# pages and the page size used by the database (in bytes).
|
||||
proc autovacuum_overhead {filePages pageSize} {
|
||||
|
||||
# Set $autovacuum to non-zero for databases that support auto-vacuum.
|
||||
set autovacuum [db one {PRAGMA auto_vacuum}]
|
||||
|
||||
# If the database is not an auto-vacuum database or the file consists
|
||||
# of one page only then there is no overhead for auto-vacuum. Return zero.
|
||||
if {0==$autovacuum || $filePages==1} {
|
||||
return 0
|
||||
}
|
||||
|
||||
# The number of entries on each pointer map page. The layout of the
|
||||
# database file is one pointer-map page, followed by $ptrsPerPage other
|
||||
# pages, followed by a pointer-map page etc. The first pointer-map page
|
||||
# is the second page of the file overall.
|
||||
set ptrsPerPage [expr {double($pageSize/5)}]
|
||||
|
||||
# Return the number of pointer map pages in the database.
|
||||
return [expr {wide(ceil(($filePages-1.0)/($ptrsPerPage+1.0)))}]
|
||||
}
|
||||
|
||||
|
||||
# Calculate the summary statistics for the database and store the results
|
||||
# in TCL variables. They are output below. Variables are as follows:
|
||||
#
|
||||
# pageSize: Size of each page in bytes.
|
||||
# file_bytes: File size in bytes.
|
||||
# file_pgcnt: Number of pages in the file.
|
||||
# file_pgcnt2: Number of pages in the file (calculated).
|
||||
# av_pgcnt: Pages consumed by the auto-vacuum pointer-map.
|
||||
# av_percent: Percentage of the file consumed by auto-vacuum pointer-map.
|
||||
# inuse_pgcnt: Data pages in the file.
|
||||
# inuse_percent: Percentage of pages used to store data.
|
||||
# free_pgcnt: Free pages calculated as (<total pages> - <in-use pages>)
|
||||
# free_pgcnt2: Free pages in the file according to the file header.
|
||||
# free_percent: Percentage of file consumed by free pages (calculated).
|
||||
# free_percent2: Percentage of file consumed by free pages (header).
|
||||
# ntable: Number of tables in the db.
|
||||
# nindex: Number of indices in the db.
|
||||
# nautoindex: Number of indices created automatically.
|
||||
# nmanindex: Number of indices created manually.
|
||||
# user_payload: Number of bytes of payload in table btrees
|
||||
# (not including sqlite_schema)
|
||||
# user_percent: $user_payload as a percentage of total file size.
|
||||
|
||||
### The following, setting $file_bytes based on the actual size of the file
|
||||
### on disk, causes this tool to choke on zipvfs databases. So set it based
|
||||
### on the return of [PRAGMA page_count] instead.
|
||||
if 0 {
|
||||
set file_bytes [file size $file_to_analyze]
|
||||
set file_pgcnt [expr {$file_bytes/$pageSize}]
|
||||
}
|
||||
set file_pgcnt [db one {PRAGMA page_count}]
|
||||
set file_bytes [expr {$file_pgcnt * $pageSize}]
|
||||
|
||||
set av_pgcnt [autovacuum_overhead $file_pgcnt $pageSize]
|
||||
set av_percent [percent $av_pgcnt $file_pgcnt]
|
||||
|
||||
set sql {SELECT sum(leaf_pages+int_pages+ovfl_pages) FROM space_used}
|
||||
set inuse_pgcnt [expr {wide([mem eval $sql])}]
|
||||
set inuse_percent [percent $inuse_pgcnt $file_pgcnt]
|
||||
|
||||
set free_pgcnt [expr {$file_pgcnt-$inuse_pgcnt-$av_pgcnt}]
|
||||
set free_percent [percent $free_pgcnt $file_pgcnt]
|
||||
set free_pgcnt2 [db one {PRAGMA freelist_count}]
|
||||
set free_percent2 [percent $free_pgcnt2 $file_pgcnt]
|
||||
|
||||
set file_pgcnt2 [expr {$inuse_pgcnt+$free_pgcnt2+$av_pgcnt}]
|
||||
|
||||
# Account for the lockbyte page
|
||||
if {$file_pgcnt2*$pageSize>1073742335} {incr file_pgcnt2}
|
||||
|
||||
set ntable [db eval {SELECT count(*)+1 FROM sqlite_schema WHERE type='table'}]
|
||||
set nindex [db eval {SELECT count(*) FROM sqlite_schema WHERE type='index'}]
|
||||
set sql {SELECT count(*) FROM sqlite_schema WHERE name LIKE 'sqlite_autoindex%'}
|
||||
set nautoindex [db eval $sql]
|
||||
set nmanindex [expr {$nindex-$nautoindex}]
|
||||
|
||||
# set total_payload [mem eval "SELECT sum(payload) FROM space_used"]
|
||||
set user_payload [mem one {SELECT int(sum(payload)) FROM space_used
|
||||
WHERE NOT is_index AND name NOT LIKE 'sqlite_schema'}]
|
||||
set user_percent [percent $user_payload $file_bytes]
|
||||
|
||||
# Output the summary statistics calculated above.
|
||||
#
|
||||
puts "/** Disk-Space Utilization Report For $root_filename"
|
||||
puts ""
|
||||
statline {Page size in bytes} $pageSize
|
||||
statline {Pages in the whole file (measured)} $file_pgcnt
|
||||
statline {Pages in the whole file (calculated)} $file_pgcnt2
|
||||
statline {Pages that store data} $inuse_pgcnt $inuse_percent
|
||||
statline {Pages on the freelist (per header)} $free_pgcnt2 $free_percent2
|
||||
statline {Pages on the freelist (calculated)} $free_pgcnt $free_percent
|
||||
statline {Pages of auto-vacuum overhead} $av_pgcnt $av_percent
|
||||
statline {Number of tables in the database} $ntable
|
||||
statline {Number of indices} $nindex
|
||||
statline {Number of defined indices} $nmanindex
|
||||
statline {Number of implied indices} $nautoindex
|
||||
if {$isCompressed} {
|
||||
statline {Size of uncompressed content in bytes} $file_bytes
|
||||
set efficiency [percent $true_file_size $file_bytes]
|
||||
statline {Size of compressed file on disk} $true_file_size $efficiency
|
||||
} else {
|
||||
statline {Size of the file in bytes} $file_bytes
|
||||
}
|
||||
statline {Bytes of user payload stored} $user_payload $user_percent
|
||||
|
||||
# Output table rankings
|
||||
#
|
||||
puts ""
|
||||
titleline "Page counts for all tables with their indices"
|
||||
puts ""
|
||||
mem eval {SELECT tblname, count(*) AS cnt,
|
||||
int(sum(int_pages+leaf_pages+ovfl_pages)) AS size
|
||||
FROM space_used GROUP BY tblname ORDER BY size+0 DESC, tblname} {} {
|
||||
statline [string toupper $tblname] $size [percent $size $file_pgcnt]
|
||||
}
|
||||
puts ""
|
||||
titleline "Page counts for all tables and indices separately"
|
||||
puts ""
|
||||
mem eval {
|
||||
SELECT
|
||||
upper(name) AS nm,
|
||||
int(int_pages+leaf_pages+ovfl_pages) AS size
|
||||
FROM space_used
|
||||
ORDER BY size+0 DESC, name} {} {
|
||||
statline $nm $size [percent $size $file_pgcnt]
|
||||
}
|
||||
if {$isCompressed} {
|
||||
puts ""
|
||||
titleline "Bytes of disk space used after compression"
|
||||
puts ""
|
||||
set csum 0
|
||||
mem eval {SELECT tblname,
|
||||
int(sum(compressed_size)) +
|
||||
$compressOverhead*sum(int_pages+leaf_pages+ovfl_pages)
|
||||
AS csize
|
||||
FROM space_used GROUP BY tblname ORDER BY csize+0 DESC, tblname} {} {
|
||||
incr csum $csize
|
||||
statline [string toupper $tblname] $csize [percent $csize $true_file_size]
|
||||
}
|
||||
set overhead [expr {$true_file_size - $csum}]
|
||||
if {$overhead>0} {
|
||||
statline {Header and free space} $overhead [percent $overhead $true_file_size]
|
||||
}
|
||||
}
|
||||
|
||||
# Output subreports
|
||||
#
|
||||
if {$nindex>0} {
|
||||
subreport {All tables and indices} 1 0
|
||||
}
|
||||
subreport {All tables} {NOT is_index} 0
|
||||
if {$nindex>0} {
|
||||
subreport {All indices} {is_index} 0
|
||||
}
|
||||
foreach tbl [mem eval {SELECT DISTINCT tblname name FROM space_used
|
||||
ORDER BY name}] {
|
||||
set qn [quote $tbl]
|
||||
set name [string toupper $tbl]
|
||||
set n [mem eval {SELECT count(*) FROM space_used WHERE tblname=$tbl}]
|
||||
if {$n>1} {
|
||||
set idxlist [mem eval "SELECT name FROM space_used
|
||||
WHERE tblname='$qn' AND is_index
|
||||
ORDER BY 1"]
|
||||
subreport "Table $name and all its indices" "tblname='$qn'" 0
|
||||
subreport "Table $name w/o any indices" "name='$qn'" 1
|
||||
if {[llength $idxlist]>1} {
|
||||
subreport "Indices of table $name" "tblname='$qn' AND is_index" 0
|
||||
}
|
||||
foreach idx $idxlist {
|
||||
set qidx [quote $idx]
|
||||
subreport "Index [string toupper $idx] of table $name" "name='$qidx'" 1
|
||||
}
|
||||
} else {
|
||||
subreport "Table $name" "name='$qn'" 1
|
||||
}
|
||||
}
|
||||
|
||||
# Output instructions on what the numbers above mean.
|
||||
#
|
||||
puts ""
|
||||
titleline Definitions
|
||||
puts {
|
||||
Page size in bytes
|
||||
|
||||
The number of bytes in a single page of the database file.
|
||||
Usually 1024.
|
||||
|
||||
Number of pages in the whole file
|
||||
}
|
||||
puts " The number of $pageSize-byte pages that go into forming the complete
|
||||
database"
|
||||
puts {
|
||||
Pages that store data
|
||||
|
||||
The number of pages that store data, either as primary B*Tree pages or
|
||||
as overflow pages. The number at the right is the data pages divided by
|
||||
the total number of pages in the file.
|
||||
|
||||
Pages on the freelist
|
||||
|
||||
The number of pages that are not currently in use but are reserved for
|
||||
future use. The percentage at the right is the number of freelist pages
|
||||
divided by the total number of pages in the file.
|
||||
|
||||
Pages of auto-vacuum overhead
|
||||
|
||||
The number of pages that store data used by the database to facilitate
|
||||
auto-vacuum. This is zero for databases that do not support auto-vacuum.
|
||||
|
||||
Number of tables in the database
|
||||
|
||||
The number of tables in the database, including the SQLITE_SCHEMA table
|
||||
used to store schema information.
|
||||
|
||||
Number of indices
|
||||
|
||||
The total number of indices in the database.
|
||||
|
||||
Number of defined indices
|
||||
|
||||
The number of indices created using an explicit CREATE INDEX statement.
|
||||
|
||||
Number of implied indices
|
||||
|
||||
The number of indices used to implement PRIMARY KEY or UNIQUE constraints
|
||||
on tables.
|
||||
|
||||
Size of the file in bytes
|
||||
|
||||
The total amount of disk space used by the entire database files.
|
||||
|
||||
Bytes of user payload stored
|
||||
|
||||
The total number of bytes of user payload stored in the database. The
|
||||
schema information in the SQLITE_SCHEMA table is not counted when
|
||||
computing this number. The percentage at the right shows the payload
|
||||
divided by the total file size.
|
||||
|
||||
Percentage of total database
|
||||
|
||||
The amount of the complete database file that is devoted to storing
|
||||
information described by this category.
|
||||
|
||||
Number of entries
|
||||
|
||||
The total number of B-Tree key/value pairs stored under this category.
|
||||
|
||||
Bytes of storage consumed
|
||||
|
||||
The total amount of disk space required to store all B-Tree entries
|
||||
under this category. The is the total number of pages used times
|
||||
the pages size.
|
||||
|
||||
Bytes of payload
|
||||
|
||||
The amount of payload stored under this category. Payload is the data
|
||||
part of table entries and the key part of index entries. The percentage
|
||||
at the right is the bytes of payload divided by the bytes of storage
|
||||
consumed.
|
||||
|
||||
Bytes of metadata
|
||||
|
||||
The amount of formatting and structural information stored in the
|
||||
table or index. Metadata includes the btree page header, the cell pointer
|
||||
array, the size field for each cell, the left child pointer or non-leaf
|
||||
cells, the overflow pointers for overflow cells, and the rowid value for
|
||||
rowid table cells. In other words, metadata is everything that is neither
|
||||
unused space nor content. The record header in the payload is counted as
|
||||
content, not metadata.
|
||||
|
||||
Average payload per entry
|
||||
|
||||
The average amount of payload on each entry. This is just the bytes of
|
||||
payload divided by the number of entries.
|
||||
|
||||
Average unused bytes per entry
|
||||
|
||||
The average amount of free space remaining on all pages under this
|
||||
category on a per-entry basis. This is the number of unused bytes on
|
||||
all pages divided by the number of entries.
|
||||
|
||||
Non-sequential pages
|
||||
|
||||
The number of pages in the table or index that are out of sequence.
|
||||
Many filesystems are optimized for sequential file access so a small
|
||||
number of non-sequential pages might result in faster queries,
|
||||
especially for larger database files that do not fit in the disk cache.
|
||||
Note that after running VACUUM, the root page of each table or index is
|
||||
at the beginning of the database file and all other pages are in a
|
||||
separate part of the database file, resulting in a single non-
|
||||
sequential page.
|
||||
|
||||
Maximum payload per entry
|
||||
|
||||
The largest payload size of any entry.
|
||||
|
||||
Entries that use overflow
|
||||
|
||||
The number of entries that user one or more overflow pages.
|
||||
|
||||
Total pages used
|
||||
|
||||
This is the number of pages used to hold all information in the current
|
||||
category. This is the sum of index, primary, and overflow pages.
|
||||
|
||||
Index pages used
|
||||
|
||||
This is the number of pages in a table B-tree that hold only key (rowid)
|
||||
information and no data.
|
||||
|
||||
Primary pages used
|
||||
|
||||
This is the number of B-tree pages that hold both key and data.
|
||||
|
||||
Overflow pages used
|
||||
|
||||
The total number of overflow pages used for this category.
|
||||
|
||||
Unused bytes on index pages
|
||||
|
||||
The total number of bytes of unused space on all index pages. The
|
||||
percentage at the right is the number of unused bytes divided by the
|
||||
total number of bytes on index pages.
|
||||
|
||||
Unused bytes on primary pages
|
||||
|
||||
The total number of bytes of unused space on all primary pages. The
|
||||
percentage at the right is the number of unused bytes divided by the
|
||||
total number of bytes on primary pages.
|
||||
|
||||
Unused bytes on overflow pages
|
||||
|
||||
The total number of bytes of unused space on all overflow pages. The
|
||||
percentage at the right is the number of unused bytes divided by the
|
||||
total number of bytes on overflow pages.
|
||||
|
||||
Unused bytes on all pages
|
||||
|
||||
The total number of bytes of unused space on all primary and overflow
|
||||
pages. The percentage at the right is the number of unused bytes
|
||||
divided by the total number of bytes.
|
||||
}
|
||||
|
||||
# Output a dump of the in-memory database. This can be used for more
|
||||
# complex offline analysis.
|
||||
#
|
||||
titleline {}
|
||||
puts "The entire text of this report can be sourced into any SQL database"
|
||||
puts "engine for further analysis. All of the text above is an SQL comment."
|
||||
puts "The data used to generate this report follows:"
|
||||
puts "*/"
|
||||
puts "BEGIN;"
|
||||
puts $tabledef
|
||||
unset -nocomplain x
|
||||
mem eval {SELECT * FROM space_used} x {
|
||||
puts -nonewline "INSERT INTO space_used VALUES"
|
||||
set sep (
|
||||
foreach col $x(*) {
|
||||
set v $x($col)
|
||||
if {$v=="" || ![string is double $v]} {set v '[quote $v]'}
|
||||
puts -nonewline $sep$v
|
||||
set sep ,
|
||||
}
|
||||
puts ");"
|
||||
}
|
||||
puts "COMMIT;"
|
||||
|
||||
} err]} {
|
||||
puts "ERROR: $err"
|
||||
puts $errorInfo
|
||||
exit 1
|
||||
}
|
||||
BIN
.ai/bin/tabs
BIN
.ai/bin/tabs
Binary file not shown.
@ -1 +0,0 @@
|
||||
tclsh8.6
|
||||
BIN
.ai/bin/tclsh8.6
BIN
.ai/bin/tclsh8.6
Binary file not shown.
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from tensorboard.main import run_main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(run_main())
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from tensorflow.tools.compatibility.tf_upgrade_v2_main import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from tensorflow.lite.python.tflite_convert import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
BIN
.ai/bin/tic
BIN
.ai/bin/tic
Binary file not shown.
@ -1,8 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python3.11
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from tensorflow.lite.python.tflite_convert import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
BIN
.ai/bin/toe
BIN
.ai/bin/toe
Binary file not shown.
BIN
.ai/bin/tput
BIN
.ai/bin/tput
Binary file not shown.
BIN
.ai/bin/tset
BIN
.ai/bin/tset
Binary file not shown.
@ -1 +0,0 @@
|
||||
xz
|
||||
@ -1 +0,0 @@
|
||||
xz
|
||||
@ -1,11 +0,0 @@
|
||||
#!/mnt/beegfs/home/rastogi/poet/.ai/bin/python
|
||||
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from wheel.cli import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
@ -1 +0,0 @@
|
||||
wish8.6
|
||||
BIN
.ai/bin/wish8.6
BIN
.ai/bin/wish8.6
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
x86_64-conda-linux-gnu-ld
|
||||
BIN
.ai/bin/xmlwf
BIN
.ai/bin/xmlwf
Binary file not shown.
BIN
.ai/bin/xz
BIN
.ai/bin/xz
Binary file not shown.
@ -1 +0,0 @@
|
||||
xz
|
||||
@ -1 +0,0 @@
|
||||
xzdiff
|
||||
BIN
.ai/bin/xzdec
BIN
.ai/bin/xzdec
Binary file not shown.
220
.ai/bin/xzdiff
220
.ai/bin/xzdiff
@ -1,220 +0,0 @@
|
||||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (C) 1998, 2002, 2006, 2007 Free Software Foundation
|
||||
# Copyright (C) 1993 Jean-loup Gailly
|
||||
|
||||
# Modified for XZ Utils by Andrew Dudman and Lasse Collin.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
|
||||
#SET_PATH - This line is a placeholder to ease patching this script.
|
||||
|
||||
# Instead of unsetting XZ_OPT, just make sure that xz will use file format
|
||||
# autodetection. This way memory usage limit and thread limit can be
|
||||
# specified via XZ_OPT. With gzip, bzip2, and lzop it's OK to just unset the
|
||||
# environment variables.
|
||||
xz='xz --format=auto'
|
||||
unset GZIP BZIP BZIP2 LZOP
|
||||
|
||||
case ${0##*/} in
|
||||
*cmp*) prog=xzcmp; cmp=${CMP:-cmp};;
|
||||
*) prog=xzdiff; cmp=${DIFF:-diff};;
|
||||
esac
|
||||
|
||||
version="$prog (XZ Utils) 5.6.4"
|
||||
|
||||
usage="Usage: ${0##*/} [OPTION]... FILE1 [FILE2]
|
||||
Compare FILE1 to FILE2, using their uncompressed contents if they are
|
||||
compressed. If FILE2 is omitted, then the files compared are FILE1 and
|
||||
FILE1 from which the compression format suffix has been stripped.
|
||||
|
||||
Do comparisons like '$cmp' does. OPTIONs are the same as for '$cmp'.
|
||||
|
||||
Report bugs to <xz@tukaani.org>."
|
||||
|
||||
# sed script to escape all ' for the shell, and then (to handle trailing
|
||||
# newlines correctly) turn trailing X on last line into '.
|
||||
escape='
|
||||
s/'\''/'\''\\'\'''\''/g
|
||||
$s/X$/'\''/
|
||||
'
|
||||
|
||||
while :; do
|
||||
case $1 in
|
||||
--h*) printf '%s\n' "$usage" || exit 2; exit;;
|
||||
--v*) printf '%s\n' "$version" || exit 2; exit;;
|
||||
--) shift; break;;
|
||||
-*\'*) cmp="$cmp '"`printf '%sX\n' "$1" | sed "$escape"`;;
|
||||
-?*) cmp="$cmp '$1'";;
|
||||
*) break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
cmp="$cmp --"
|
||||
|
||||
for file; do
|
||||
test "X$file" = X- || <"$file" || exit 2
|
||||
done
|
||||
|
||||
# xz needs -qQ to ignore warnings like unsupported check type.
|
||||
xz1="$xz -qQ"
|
||||
xz2="$xz -qQ"
|
||||
xz_status=0
|
||||
exec 3>&1
|
||||
|
||||
if test $# -eq 1; then
|
||||
case $1 in
|
||||
*[-.]xz | *[-.]lzma | *[-.]lz | *.t[lx]z)
|
||||
;;
|
||||
*[-.]bz2 | *.tbz | *.tbz2)
|
||||
xz1=bzip2;;
|
||||
*[-.][zZ] | *_z | *[-.]gz | *.t[ag]z)
|
||||
xz1=gzip;;
|
||||
*[-.]lzo | *.tzo)
|
||||
xz1=lzop;;
|
||||
*[-.]zst | *.tzst)
|
||||
xz1='zstd -q';;
|
||||
*[-.]lz4)
|
||||
xz1=lz4;;
|
||||
*)
|
||||
printf '%s\n' "$0: $1: Unknown compressed file name suffix" >&2
|
||||
exit 2;;
|
||||
esac
|
||||
case $1 in
|
||||
*[-.][zZ] | *_z | *[-.][gx]z | *[-.]bz2 | *[-.]lzma | *[-.]lz | *[-.]lzo | *[-.]zst | *[-.]lz4)
|
||||
FILE=`expr "X$1" : 'X\(.*\)[-.][abglmostxzZ24]*$'`;;
|
||||
*.t[abglx]z)
|
||||
FILE=`expr "X$1" : 'X\(.*[-.]t\)[abglx]z$'`ar;;
|
||||
*.tbz2)
|
||||
FILE=`expr "X$1" : 'X\(.*[-.]t\)bz2$'`ar;;
|
||||
*.tzo)
|
||||
FILE=`expr "X$1" : 'X\(.*[-.]t\)zo$'`ar;;
|
||||
*.tzst)
|
||||
FILE=`expr "X$1" : 'X\(.*[-.]t\)zst$'`ar;;
|
||||
esac
|
||||
xz_status=$(
|
||||
exec 4>&1
|
||||
($xz1 -cd -- "$1" 4>&-; echo $? >&4) 3>&- | eval "$cmp" - '"$FILE"' >&3
|
||||
)
|
||||
elif test $# -eq 2; then
|
||||
case $1 in
|
||||
*[-.]bz2 | *.tbz | *.tbz2) xz1=bzip2;;
|
||||
*[-.][zZ] | *_z | *[-.]gz | *.t[ag]z) xz1=gzip;;
|
||||
*[-.]lzo | *.tzo) xz1=lzop;;
|
||||
*[-.]zst | *.tzst) xz1='zstd -q';;
|
||||
*[-.]lz4) xz1=lz4;;
|
||||
esac
|
||||
case $2 in
|
||||
*[-.]bz2 | *.tbz | *.tbz2) xz2=bzip2;;
|
||||
*[-.][zZ] | *_z | *[-.]gz | *.t[ag]z) xz2=gzip;;
|
||||
*[-.]lzo | *.tzo) xz2=lzop;;
|
||||
*[-.]zst | *.tzst) xz2='zstd -q';;
|
||||
*[-.]lz4) xz2=lz4;;
|
||||
esac
|
||||
case $1 in
|
||||
*[-.][zZ] | *_z | *[-.][gx]z | *[-.]bz2 | *[-.]lzma | *[-.]lz | *.t[abglx]z | *.tbz2 | *[-.]lzo | *.tzo | *[-.]zst | *.tzst | *[-.]lz4 | -)
|
||||
case "$2" in
|
||||
*[-.][zZ] | *_z | *[-.][gx]z | *[-.]bz2 | *[-.]lzma | *[-.]lz | *.t[abglx]z | *.tbz2 | *[-.]lzo | *.tzo | *[-.]zst | *.tzst | *[-.]lz4 | -)
|
||||
if test "$1$2" = --; then
|
||||
xz_status=$(
|
||||
exec 4>&1
|
||||
($xz1 -cdf - 4>&-; echo $? >&4) 3>&- |
|
||||
eval "$cmp" - - >&3
|
||||
)
|
||||
elif # Reject Solaris 8's buggy /bin/bash 2.03.
|
||||
echo X | (echo X | eval "$cmp" /dev/fd/5 - >/dev/null 2>&1) 5<&0; then
|
||||
# NOTE: xz_status will contain two numbers.
|
||||
xz_status=$(
|
||||
exec 4>&1
|
||||
($xz1 -cdf -- "$1" 4>&-; echo $? >&4) 3>&- |
|
||||
( ($xz2 -cdf -- "$2" 4>&-; echo $? >&4) 3>&- 5<&- </dev/null |
|
||||
eval "$cmp" /dev/fd/5 - >&3) 5<&0
|
||||
)
|
||||
else
|
||||
F=`expr "/$2" : '.*/\(.*\)[-.][ablmotxz2]*$'` || F=$prog
|
||||
tmp=
|
||||
trap '
|
||||
test -n "$tmp" && rm -rf "$tmp"
|
||||
(exit 2); exit 2
|
||||
' HUP INT PIPE TERM 0
|
||||
if type mktemp >/dev/null 2>&1; then
|
||||
# Note that FreeBSD's mktemp isn't fully compatible with
|
||||
# the implementations from mktemp.org and GNU coreutils.
|
||||
# It is important that the -t argument is the last argument
|
||||
# and that no "--" is used between -t and the template argument.
|
||||
# This way this command works on all implementations.
|
||||
tmp=`mktemp -d -t "$prog.XXXXXXXXXX"` || exit 2
|
||||
else
|
||||
# Fallback code if mktemp is missing. This isn't as
|
||||
# robust as using mktemp since this doesn't try with
|
||||
# different file names in case of a file name conflict.
|
||||
#
|
||||
# There's no need to save the original umask since
|
||||
# we don't create any non-temp files. Note that using
|
||||
# mkdir -m 0077 isn't secure since some mkdir implementations
|
||||
# create the dir with the default umask and chmod the
|
||||
# the dir afterwards.
|
||||
umask 0077
|
||||
mkdir -- "${TMPDIR-/tmp}/$prog.$$" || exit 2
|
||||
tmp="${TMPDIR-/tmp}/$prog.$$"
|
||||
fi
|
||||
$xz2 -cdf -- "$2" > "$tmp/$F" || exit 2
|
||||
xz_status=$(
|
||||
exec 4>&1
|
||||
($xz1 -cdf -- "$1" 4>&-; echo $? >&4) 3>&- |
|
||||
eval "$cmp" - '"$tmp/$F"' >&3
|
||||
)
|
||||
cmp_status=$?
|
||||
rm -rf "$tmp" || xz_status=$?
|
||||
trap - HUP INT PIPE TERM 0
|
||||
(exit $cmp_status)
|
||||
fi;;
|
||||
*)
|
||||
xz_status=$(
|
||||
exec 4>&1
|
||||
($xz1 -cdf -- "$1" 4>&-; echo $? >&4) 3>&- |
|
||||
eval "$cmp" - '"$2"' >&3
|
||||
);;
|
||||
esac;;
|
||||
*)
|
||||
case "$2" in
|
||||
*[-.][zZ] | *_z | *[-.][gx]z | *[-.]bz2 | *[-.]lzma | *[-.]lz | *.t[abglx]z | *.tbz2 | *[-.]lzo | *.tzo | *[-.]zst | *.tzst | *[-.]lz4 | -)
|
||||
xz_status=$(
|
||||
exec 4>&1
|
||||
($xz2 -cdf -- "$2" 4>&-; echo $? >&4) 3>&- |
|
||||
eval "$cmp" '"$1"' - >&3
|
||||
);;
|
||||
*)
|
||||
eval "$cmp" '"$1"' '"$2"';;
|
||||
esac;;
|
||||
esac
|
||||
else
|
||||
printf '%s\n' "$0: Invalid number of operands; try '${0##*/} --help' for help" >&2
|
||||
exit 2
|
||||
fi
|
||||
|
||||
cmp_status=$?
|
||||
for num in $xz_status ; do
|
||||
# 0 from decompressor means successful decompression. SIGPIPE from
|
||||
# decompressor is possible when diff or cmp exits before the whole file
|
||||
# has been decompressed. In that case we want to retain the exit status
|
||||
# from diff or cmp. Note that using "trap '' PIPE" is not possible
|
||||
# because gzip changes its behavior (including exit status) if SIGPIPE
|
||||
# is ignored.
|
||||
test "$num" -eq 0 && continue
|
||||
test "$num" -ge 128 \
|
||||
&& test "$(kill -l "$num" 2> /dev/null)" = "PIPE" \
|
||||
&& continue
|
||||
exit 2
|
||||
done
|
||||
exit $cmp_status
|
||||
@ -1 +0,0 @@
|
||||
xzgrep
|
||||
@ -1 +0,0 @@
|
||||
xzgrep
|
||||
300
.ai/bin/xzgrep
300
.ai/bin/xzgrep
@ -1,300 +0,0 @@
|
||||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# xzgrep -- a wrapper around a grep program that decompresses files as needed
|
||||
# Adapted from a version sent by Charles Levert <charles@comm.polymtl.ca>
|
||||
|
||||
# Copyright (C) 1998, 2001, 2002, 2006, 2007 Free Software Foundation
|
||||
# Copyright (C) 1993 Jean-loup Gailly
|
||||
|
||||
# Modified for XZ Utils by Andrew Dudman and Lasse Collin.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
|
||||
#SET_PATH - This line is a placeholder to ease patching this script.
|
||||
|
||||
# Instead of unsetting XZ_OPT, just make sure that xz will use file format
|
||||
# autodetection. This way memory usage limit and thread limit can be
|
||||
# specified via XZ_OPT. With gzip, bzip2, and lzop it's OK to just unset the
|
||||
# environment variables.
|
||||
xz='xz --format=auto'
|
||||
unset GZIP BZIP BZIP2 LZOP
|
||||
|
||||
case ${0##*/} in
|
||||
*egrep*) prog=xzegrep; grep=${GREP:-grep -E};;
|
||||
*fgrep*) prog=xzfgrep; grep=${GREP:-grep -F};;
|
||||
*) prog=xzgrep; grep=${GREP:-grep};;
|
||||
esac
|
||||
|
||||
version="$prog (XZ Utils) 5.6.4"
|
||||
|
||||
usage="Usage: ${0##*/} [OPTION]... [-e] PATTERN [FILE]...
|
||||
Look for instances of PATTERN in the input FILEs, using their
|
||||
uncompressed contents if they are compressed.
|
||||
|
||||
OPTIONs are the same as for '$grep'.
|
||||
|
||||
Report bugs to <xz@tukaani.org>."
|
||||
|
||||
# sed script to escape all ' for the shell, and then (to handle trailing
|
||||
# newlines correctly) turn trailing X on last line into '.
|
||||
escape='
|
||||
s/'\''/'\''\\'\'''\''/g
|
||||
$s/X$/'\''/
|
||||
'
|
||||
operands=
|
||||
have_pat=0
|
||||
files_with_matches=0
|
||||
files_without_matches=0
|
||||
no_filename=0
|
||||
with_filename=0
|
||||
|
||||
# See if -H and --label options are supported (GNU and *BSDs).
|
||||
if test f:x = "$(eval "echo x | $grep -H --label=f x 2> /dev/null")"; then
|
||||
grep_supports_label=1
|
||||
else
|
||||
grep_supports_label=0
|
||||
fi
|
||||
|
||||
while test $# -ne 0; do
|
||||
option=$1
|
||||
shift
|
||||
optarg=
|
||||
|
||||
case $option in
|
||||
(-[0123456789abcdEFGhHiIKlLnoPqrRsTuUvVwxyzZ]*[!0123456789]*)
|
||||
# Something like -Fiv was specified, that is, $option contains more
|
||||
# than one option of which the first option (in this example -F)
|
||||
# doesn't take an argument. Split the first option into a standalone
|
||||
# argument and continue parsing the rest of the options (in this example,
|
||||
# replace -Fiv with -iv in the argument list and set option=-F).
|
||||
#
|
||||
# If there are digits [0-9] they are treated as if they were a single
|
||||
# option character because this syntax is an alias for -C for GNU grep.
|
||||
# For example, "grep -25F" is equivalent to "grep -C25 -F". If only
|
||||
# digits are specified like "grep -25" we don't get here because the
|
||||
# above pattern in the case-statement doesn't match such strings.
|
||||
arg2=-\'$(LC_ALL=C expr "X${option}X" : 'X-.[0-9]*\(.*\)' |
|
||||
LC_ALL=C sed "$escape")
|
||||
eval "set -- $arg2 "'${1+"$@"}'
|
||||
option=$(LC_ALL=C expr "X$option" : 'X\(-.[0-9]*\)');;
|
||||
(--binary-*=* | --[lm]a*=* | --reg*=*)
|
||||
# These options require an argument and an argument has been provided
|
||||
# with the --foo=argument syntax. All is good.
|
||||
;;
|
||||
(-[ABCDefmX] | --binary-* | --file | --[lm]a* | --reg*)
|
||||
# These options require an argument which should now be in $1.
|
||||
# If it isn't, display an error and exit.
|
||||
case ${1?"$option option requires an argument"} in
|
||||
(*\'*)
|
||||
optarg=" '"$(printf '%sX\n' "$1" | LC_ALL=C sed "$escape");;
|
||||
(*)
|
||||
optarg=" '$1'";;
|
||||
esac
|
||||
shift;;
|
||||
(--)
|
||||
break;;
|
||||
(-?*)
|
||||
;;
|
||||
(*)
|
||||
case $option in
|
||||
(*\'*)
|
||||
operands="$operands '"$(printf '%sX\n' "$option" |
|
||||
LC_ALL=C sed "$escape");;
|
||||
(*)
|
||||
operands="$operands '$option'";;
|
||||
esac
|
||||
${POSIXLY_CORRECT+break}
|
||||
continue;;
|
||||
esac
|
||||
|
||||
case $option in
|
||||
(-[drRzZ] | --di* | --exc* | --inc* | --rec* | --nu*)
|
||||
printf >&2 '%s: %s: Option not supported\n' "$0" "$option"
|
||||
exit 2;;
|
||||
(-[ef]* | --file | --file=* | --reg*)
|
||||
have_pat=1;;
|
||||
(--h | --he | --hel | --help)
|
||||
printf '%s\n' "$usage" || exit 2
|
||||
exit;;
|
||||
(-H | --wi | --wit | --with | --with- | --with-f | --with-fi \
|
||||
| --with-fil | --with-file | --with-filen | --with-filena | --with-filenam \
|
||||
| --with-filename)
|
||||
with_filename=1
|
||||
continue;;
|
||||
(-l | --files-with-*)
|
||||
files_with_matches=1
|
||||
continue;;
|
||||
(-L | --files-witho*)
|
||||
files_without_matches=1
|
||||
continue;;
|
||||
(-h | --no-f*)
|
||||
no_filename=1;;
|
||||
(-V | --v | --ve | --ver | --vers | --versi | --versio | --version)
|
||||
printf '%s\n' "$version" || exit 2
|
||||
exit;;
|
||||
esac
|
||||
|
||||
case $option in
|
||||
(*\'?*)
|
||||
option=\'$(printf '%sX\n' "$option" | LC_ALL=C sed "$escape");;
|
||||
(*)
|
||||
option="'$option'";;
|
||||
esac
|
||||
|
||||
grep="$grep $option$optarg"
|
||||
done
|
||||
|
||||
eval "set -- $operands "'${1+"$@"}'
|
||||
|
||||
if test $have_pat -eq 0; then
|
||||
case ${1?"Missing pattern; try '${0##*/} --help' for help"} in
|
||||
(*\'*)
|
||||
grep="$grep -e '"$(printf '%sX\n' "$1" | LC_ALL=C sed "$escape");;
|
||||
(*)
|
||||
grep="$grep -e '$1'";;
|
||||
esac
|
||||
shift
|
||||
fi
|
||||
|
||||
if test $# -eq 0; then
|
||||
set -- -
|
||||
fi
|
||||
|
||||
exec 3>&1
|
||||
|
||||
# res=1 means that no file matched yet
|
||||
res=1
|
||||
|
||||
for i; do
|
||||
case $i in
|
||||
*[-.][zZ] | *_z | *[-.]gz | *.t[ag]z) uncompress="gzip -cdf";;
|
||||
*[-.]bz2 | *[-.]tbz | *.tbz2) uncompress="bzip2 -cdf";;
|
||||
*[-.]lzo | *[-.]tzo) uncompress="lzop -cdf";;
|
||||
*[-.]zst | *[-.]tzst) uncompress="zstd -cdfq";; # zstd needs -q.
|
||||
*[-.]lz4) uncompress="lz4 -cdf";;
|
||||
*) uncompress="$xz -cdfqQ";; # -qQ to ignore warnings like unsupp. check.
|
||||
esac
|
||||
# xz_status will hold the decompressor's exit status.
|
||||
# Exit status of grep (and in rare cases, printf or sed) is
|
||||
# available as the exit status of this assignment command.
|
||||
xz_status=$(
|
||||
exec 5>&1
|
||||
($uncompress -- "$i" 5>&-; echo $? >&5) 3>&- |
|
||||
if test $files_with_matches -eq 1; then
|
||||
eval "$grep -q" && { printf '%s\n' "$i" || exit 2; }
|
||||
elif test $files_without_matches -eq 1; then
|
||||
eval "$grep -q" || {
|
||||
r=$?
|
||||
if test $r -eq 1; then
|
||||
printf '%s\n' "$i" || r=2
|
||||
fi
|
||||
exit $r
|
||||
}
|
||||
elif test $with_filename -eq 0 &&
|
||||
{ test $# -eq 1 || test $no_filename -eq 1; }; then
|
||||
eval "$grep"
|
||||
elif test $grep_supports_label -eq 1; then
|
||||
# The grep implementation in use allows us to specify the filename
|
||||
# that grep will prefix to the output lines. This is faster and
|
||||
# less prone to security bugs than the fallback method that uses sed.
|
||||
# This also avoids confusing output with GNU grep >= 3.5 (2020-09-27)
|
||||
# which prints "binary file matches" to stderr instead of stdout.
|
||||
#
|
||||
# If reading from stdin, let grep use whatever name it prefers for
|
||||
# stdin. With GNU grep it is a locale-specific translated string.
|
||||
if test "x$i" = "x-"; then
|
||||
eval "$grep -H"
|
||||
else
|
||||
eval "$grep -H --label \"\$i\""
|
||||
fi
|
||||
else
|
||||
# Append a colon so that the last character will never be a newline
|
||||
# which would otherwise get lost in shell command substitution.
|
||||
i="$i:"
|
||||
|
||||
# Escape & \ | and newlines only if such characters are present
|
||||
# (speed optimization).
|
||||
case $i in
|
||||
(*'
|
||||
'* | *'&'* | *'\'* | *'|'*)
|
||||
# If sed fails, set i to a known safe string to ensure that
|
||||
# failing sed did not create a half-escaped dangerous string.
|
||||
i=$(printf '%s\n' "$i" | LC_ALL=C sed 's/[&\|]/\\&/g; $!s/$/\\/') ||
|
||||
i='(unknown filename):';;
|
||||
esac
|
||||
|
||||
# $i already ends with a colon so do not add it here.
|
||||
sed_script="s|^|$i|"
|
||||
|
||||
# If grep or sed fails, pick the larger value of the two exit statuses.
|
||||
# If sed fails, use at least 2 since we use >= 2 to indicate errors.
|
||||
r=$(
|
||||
exec 4>&1
|
||||
(eval "$grep" 4>&-; echo $? >&4) 3>&- |
|
||||
LC_ALL=C sed "$sed_script" >&3 4>&-
|
||||
) || {
|
||||
sed_status=$?
|
||||
test "$sed_status" -lt 2 && sed_status=2
|
||||
test "$r" -lt "$sed_status" && r=$sed_status
|
||||
}
|
||||
exit $r
|
||||
fi >&3 5>&-
|
||||
)
|
||||
r=$?
|
||||
|
||||
# If grep or sed or other non-decompression command failed with a signal,
|
||||
# exit immediately and ignore the possible remaining files.
|
||||
#
|
||||
# NOTE: Instead of 128 + signal_number, some shells use
|
||||
# 256 + signal_number (ksh) or 384 + signal_number (yash).
|
||||
# This is fine for us since their "exit" and "kill -l" commands take
|
||||
# this into account. (At least the versions I tried do but there is
|
||||
# a report of an old ksh variant whose "exit" truncates the exit status
|
||||
# to 8 bits without any special handling for values indicating a signal.)
|
||||
test "$r" -ge 128 && exit "$r"
|
||||
|
||||
if test -z "$xz_status"; then
|
||||
# Something unusual happened, for example, we got a signal and
|
||||
# the exit status of the decompressor was never echoed and thus
|
||||
# $xz_status is empty. Exit immediately and ignore the possible
|
||||
# remaining files.
|
||||
exit 2
|
||||
elif test "$xz_status" -ge 128; then
|
||||
# The decompressor died due to a signal. SIGPIPE is ignored since it can
|
||||
# occur if grep exits before the whole file has been decompressed (grep -q
|
||||
# can do that). If the decompressor died with some other signal, exit
|
||||
# immediately and ignore the possible remaining files.
|
||||
test "$(kill -l "$xz_status" 2> /dev/null)" != "PIPE" && exit "$xz_status"
|
||||
elif test "$xz_status" -gt 0; then
|
||||
# Decompression failed but we will continue with the remaining
|
||||
# files anyway. Set exit status to at least 2 to indicate an error.
|
||||
test "$r" -lt 2 && r=2
|
||||
fi
|
||||
|
||||
# Since res=1 is the initial value, we only need to care about
|
||||
# matches (r == 0) and errors (r >= 2) here; r == 1 can be ignored.
|
||||
if test "$r" -ge 2; then
|
||||
# An error occurred in decompressor, grep, or some other command. Update
|
||||
# res unless a larger error code has been seen with an earlier file.
|
||||
test "$res" -lt "$r" && res=$r
|
||||
elif test "$r" -eq 0; then
|
||||
# grep found a match and no errors occurred. Update res if no errors have
|
||||
# occurred with earlier files.
|
||||
test "$res" -eq 1 && res=0
|
||||
fi
|
||||
done
|
||||
|
||||
# 0: At least one file matched and no errors occurred.
|
||||
# 1: No matches were found and no errors occurred.
|
||||
# >=2: Error. It's unknown if matches were found.
|
||||
exit "$res"
|
||||
@ -1,74 +0,0 @@
|
||||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (C) 1998, 2002, 2006, 2007 Free Software Foundation
|
||||
|
||||
# The original version for gzip was written by Paul Eggert.
|
||||
# Modified for XZ Utils by Andrew Dudman and Lasse Collin.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
|
||||
#SET_PATH - This line is a placeholder to ease patching this script.
|
||||
|
||||
# Instead of unsetting XZ_OPT, just make sure that xz will use file format
|
||||
# autodetection. This way memory usage limit and thread limit can be
|
||||
# specified via XZ_OPT.
|
||||
xz='xz --format=auto'
|
||||
|
||||
version='xzless (XZ Utils) 5.6.4'
|
||||
|
||||
usage="Usage: ${0##*/} [OPTION]... [FILE]...
|
||||
Like 'less', but operate on the uncompressed contents of xz compressed FILEs.
|
||||
|
||||
Options are the same as for 'less'.
|
||||
|
||||
Report bugs to <xz@tukaani.org>."
|
||||
|
||||
case $1 in
|
||||
--help) printf '%s\n' "$usage" || exit 2; exit;;
|
||||
--version) printf '%s\n' "$version" || exit 2; exit;;
|
||||
esac
|
||||
|
||||
if test "${LESSMETACHARS+set}" != set; then
|
||||
# Work around a bug in less 394 and earlier;
|
||||
# it mishandles the metacharacters '$%=~'.
|
||||
space=' '
|
||||
tab=' '
|
||||
nl='
|
||||
'
|
||||
LESSMETACHARS="$space$tab$nl'"';*?"()<>[|&^`#\$%=~'
|
||||
fi
|
||||
|
||||
VER=$(less -V | { read _ ver _ && echo ${ver%%.*}; })
|
||||
if test "$VER" -ge 451; then
|
||||
# less 451 or later: If the compressed file is valid but has
|
||||
# zero bytes of uncompressed data, using two vertical bars ||- makes
|
||||
# "less" check the exit status of xz and if it is zero then display
|
||||
# an empty file. With a single vertical bar |- and no output from xz,
|
||||
# "less" would attempt to display the raw input file instead.
|
||||
LESSOPEN="||-$xz -cdfqQ -- %s"
|
||||
elif test "$VER" -ge 429; then
|
||||
# less 429 or later: LESSOPEN pipe will be used on
|
||||
# standard input if $LESSOPEN begins with |-.
|
||||
LESSOPEN="|-$xz -cdfqQ -- %s"
|
||||
else
|
||||
LESSOPEN="|$xz -cdfqQ -- %s"
|
||||
fi
|
||||
|
||||
SHOW_PREPROC_ERRORS=
|
||||
if test "$VER" -ge 632; then
|
||||
SHOW_PREPROC_ERRORS=--show-preproc-errors
|
||||
fi
|
||||
|
||||
export LESSMETACHARS LESSOPEN
|
||||
|
||||
exec less $SHOW_PREPROC_ERRORS "$@"
|
||||
@ -1,80 +0,0 @@
|
||||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (C) 2001, 2002, 2007 Free Software Foundation
|
||||
# Copyright (C) 1992, 1993 Jean-loup Gailly
|
||||
|
||||
# Modified for XZ Utils by Andrew Dudman and Lasse Collin.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
|
||||
#SET_PATH - This line is a placeholder to ease patching this script.
|
||||
|
||||
# Instead of unsetting XZ_OPT, just make sure that xz will use file format
|
||||
# autodetection. This way memory usage limit and thread limit can be
|
||||
# specified via XZ_OPT.
|
||||
xz='xz --format=auto'
|
||||
|
||||
version='xzmore (XZ Utils) 5.6.4'
|
||||
|
||||
usage="Usage: ${0##*/} [OPTION]... [FILE]...
|
||||
Like 'more', but operate on the uncompressed contents of xz compressed FILEs.
|
||||
|
||||
Report bugs to <xz@tukaani.org>."
|
||||
|
||||
case $1 in
|
||||
--help) printf '%s\n' "$usage" || exit 2; exit;;
|
||||
--version) printf '%s\n' "$version" || exit 2; exit;;
|
||||
esac
|
||||
|
||||
oldtty=`stty -g 2>/dev/null`
|
||||
if stty -cbreak 2>/dev/null; then
|
||||
cb='cbreak'; ncb='-cbreak'
|
||||
else
|
||||
# 'stty min 1' resets eof to ^a on both SunOS and SysV!
|
||||
cb='min 1 -icanon'; ncb='icanon eof ^d'
|
||||
fi
|
||||
if test $? -eq 0 && test -n "$oldtty"; then
|
||||
trap 'stty $oldtty 2>/dev/null; exit' 0 2 3 5 10 13 15
|
||||
else
|
||||
trap 'stty $ncb echo 2>/dev/null; exit' 0 2 3 5 10 13 15
|
||||
fi
|
||||
|
||||
if test $# = 0; then
|
||||
if test -t 0; then
|
||||
printf '%s\n' "$usage"; exit 1
|
||||
else
|
||||
$xz -cdfqQ | eval "${PAGER:-more}"
|
||||
fi
|
||||
else
|
||||
FIRST=1
|
||||
for FILE; do
|
||||
< "$FILE" || continue
|
||||
if test $FIRST -eq 0; then
|
||||
printf "%s--More--(Next file: %s)" "" "$FILE"
|
||||
stty $cb -echo 2>/dev/null
|
||||
ANS=`dd bs=1 count=1 2>/dev/null`
|
||||
stty $ncb echo 2>/dev/null
|
||||
echo " "
|
||||
case "$ANS" in
|
||||
[eq]) exit;;
|
||||
esac
|
||||
fi
|
||||
if test "$ANS" != 's'; then
|
||||
printf '%s\n' "------> $FILE <------"
|
||||
$xz -cdfqQ -- "$FILE" | eval "${PAGER:-more}"
|
||||
fi
|
||||
if test -t 1; then
|
||||
FIRST=0
|
||||
fi
|
||||
done
|
||||
fi
|
||||
@ -1,2 +0,0 @@
|
||||
Files in this folder are to enhance backwards compatibility of anaconda software with older compilers.
|
||||
See: https://github.com/conda/conda/issues/6030 for more information.
|
||||
@ -1 +0,0 @@
|
||||
../bin/x86_64-conda-linux-gnu-ld
|
||||
@ -1,31 +0,0 @@
|
||||
{
|
||||
"build": "main",
|
||||
"build_number": 0,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/_libgcc_mutex-0.1-main",
|
||||
"features": "",
|
||||
"files": [],
|
||||
"fn": "_libgcc_mutex-0.1-main.conda",
|
||||
"license": "",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/_libgcc_mutex-0.1-main",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "c3473ff8bdb3d124ed5ff11ec380d6f9",
|
||||
"name": "_libgcc_mutex",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/_libgcc_mutex-0.1-main.conda",
|
||||
"paths_data": {
|
||||
"paths": [],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "476626712f60e5ef0fe04c354727152b1ee5285d57ccd3575c7be930122bd051",
|
||||
"size": 3473,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1562011674000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/_libgcc_mutex-0.1-main.conda",
|
||||
"version": "0.1"
|
||||
}
|
||||
@ -1,45 +0,0 @@
|
||||
{
|
||||
"build": "1_gnu",
|
||||
"build_number": 0,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [
|
||||
"openmp_impl 9999"
|
||||
],
|
||||
"depends": [
|
||||
"_libgcc_mutex 0.1 main",
|
||||
"libgomp >=7.5.0"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/_openmp_mutex-5.1-1_gnu",
|
||||
"features": "",
|
||||
"files": [
|
||||
"lib/libgomp.so.1"
|
||||
],
|
||||
"fn": "_openmp_mutex-5.1-1_gnu.conda",
|
||||
"license": "BSD-3-Clause",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/_openmp_mutex-5.1-1_gnu",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "71d281e9c2192cb3fa425655a8defb85",
|
||||
"name": "_openmp_mutex",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/_openmp_mutex-5.1-1_gnu.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "lib/libgomp.so.1",
|
||||
"path_type": "softlink",
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"size_in_bytes": 0
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "576011048d23f2e03372263493c5529f802286ff53e8426df99a5b11cc2572f3",
|
||||
"size": 21315,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1652859733000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/_openmp_mutex-5.1-1_gnu.conda",
|
||||
"version": "5.1"
|
||||
}
|
||||
@ -1,221 +0,0 @@
|
||||
{
|
||||
"build": "h5eee18b_6",
|
||||
"build_number": 6,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [
|
||||
"libgcc-ng >=11.2.0"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/bzip2-1.0.8-h5eee18b_6",
|
||||
"features": "",
|
||||
"files": [
|
||||
"bin/bunzip2",
|
||||
"bin/bzcat",
|
||||
"bin/bzcmp",
|
||||
"bin/bzdiff",
|
||||
"bin/bzegrep",
|
||||
"bin/bzfgrep",
|
||||
"bin/bzgrep",
|
||||
"bin/bzip2",
|
||||
"bin/bzip2recover",
|
||||
"bin/bzless",
|
||||
"bin/bzmore",
|
||||
"include/bzlib.h",
|
||||
"lib/libbz2.a",
|
||||
"lib/libbz2.so",
|
||||
"lib/libbz2.so.1.0",
|
||||
"lib/libbz2.so.1.0.8",
|
||||
"man/man1/bzcmp.1",
|
||||
"man/man1/bzdiff.1",
|
||||
"man/man1/bzegrep.1",
|
||||
"man/man1/bzfgrep.1",
|
||||
"man/man1/bzgrep.1",
|
||||
"man/man1/bzip2.1",
|
||||
"man/man1/bzless.1",
|
||||
"man/man1/bzmore.1"
|
||||
],
|
||||
"fn": "bzip2-1.0.8-h5eee18b_6.conda",
|
||||
"license": "bzip2-1.0.8",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/bzip2-1.0.8-h5eee18b_6",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "f21a3ff51c1b271977f53ce956a69297",
|
||||
"name": "bzip2",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/bzip2-1.0.8-h5eee18b_6.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "bin/bunzip2",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "8a514cce807cb1656a3bcd59794401e7d63c9554267e9acc77097a406092a8ed",
|
||||
"sha256_in_prefix": "8a514cce807cb1656a3bcd59794401e7d63c9554267e9acc77097a406092a8ed",
|
||||
"size_in_bytes": 299464
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzcat",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "8a514cce807cb1656a3bcd59794401e7d63c9554267e9acc77097a406092a8ed",
|
||||
"sha256_in_prefix": "8a514cce807cb1656a3bcd59794401e7d63c9554267e9acc77097a406092a8ed",
|
||||
"size_in_bytes": 299464
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzcmp",
|
||||
"path_type": "softlink",
|
||||
"sha256": "1c1f96193cdf14b85ea65f140a7557a07ece8783a53ec5ba6b5c30644a9d3012",
|
||||
"size_in_bytes": 2140
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzdiff",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "1c1f96193cdf14b85ea65f140a7557a07ece8783a53ec5ba6b5c30644a9d3012",
|
||||
"sha256_in_prefix": "1c1f96193cdf14b85ea65f140a7557a07ece8783a53ec5ba6b5c30644a9d3012",
|
||||
"size_in_bytes": 2140
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzegrep",
|
||||
"path_type": "softlink",
|
||||
"sha256": "a8e368a31766c7862b8d0feeffe274c3bb43b969e3ccb4f9e77d13bfa447a5c9",
|
||||
"size_in_bytes": 2054
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzfgrep",
|
||||
"path_type": "softlink",
|
||||
"sha256": "a8e368a31766c7862b8d0feeffe274c3bb43b969e3ccb4f9e77d13bfa447a5c9",
|
||||
"size_in_bytes": 2054
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzgrep",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "a8e368a31766c7862b8d0feeffe274c3bb43b969e3ccb4f9e77d13bfa447a5c9",
|
||||
"sha256_in_prefix": "a8e368a31766c7862b8d0feeffe274c3bb43b969e3ccb4f9e77d13bfa447a5c9",
|
||||
"size_in_bytes": 2054
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzip2",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "8a514cce807cb1656a3bcd59794401e7d63c9554267e9acc77097a406092a8ed",
|
||||
"sha256_in_prefix": "8a514cce807cb1656a3bcd59794401e7d63c9554267e9acc77097a406092a8ed",
|
||||
"size_in_bytes": 299464
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzip2recover",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "4713d7b2cdf7a82857e47b9001665d26656a0eb13dc830430a42f5d6fe5fe0b6",
|
||||
"sha256_in_prefix": "4713d7b2cdf7a82857e47b9001665d26656a0eb13dc830430a42f5d6fe5fe0b6",
|
||||
"size_in_bytes": 30920
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzless",
|
||||
"path_type": "softlink",
|
||||
"sha256": "836536d4c7469788c730355d59f8ae8d16ba07cb0754174878d99ed90f04448d",
|
||||
"size_in_bytes": 1259
|
||||
},
|
||||
{
|
||||
"_path": "bin/bzmore",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "836536d4c7469788c730355d59f8ae8d16ba07cb0754174878d99ed90f04448d",
|
||||
"sha256_in_prefix": "836536d4c7469788c730355d59f8ae8d16ba07cb0754174878d99ed90f04448d",
|
||||
"size_in_bytes": 1259
|
||||
},
|
||||
{
|
||||
"_path": "include/bzlib.h",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "6ac62e811669598ee30c9e1c379b9e627f6ff17a5a3dc1e0b4fa8b8ea75e580d",
|
||||
"sha256_in_prefix": "6ac62e811669598ee30c9e1c379b9e627f6ff17a5a3dc1e0b4fa8b8ea75e580d",
|
||||
"size_in_bytes": 6240
|
||||
},
|
||||
{
|
||||
"_path": "lib/libbz2.a",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "4377dc3d8f7542568b6365cd6bb06970b53c20e9a71b7d54271874f7868be500",
|
||||
"sha256_in_prefix": "4377dc3d8f7542568b6365cd6bb06970b53c20e9a71b7d54271874f7868be500",
|
||||
"size_in_bytes": 264138
|
||||
},
|
||||
{
|
||||
"_path": "lib/libbz2.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "4979469ae49ac144f62202f75bbdd69b17197aedb879d633337c8cf7e4aba301",
|
||||
"size_in_bytes": 229016
|
||||
},
|
||||
{
|
||||
"_path": "lib/libbz2.so.1.0",
|
||||
"path_type": "softlink",
|
||||
"sha256": "4979469ae49ac144f62202f75bbdd69b17197aedb879d633337c8cf7e4aba301",
|
||||
"size_in_bytes": 229016
|
||||
},
|
||||
{
|
||||
"_path": "lib/libbz2.so.1.0.8",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "4979469ae49ac144f62202f75bbdd69b17197aedb879d633337c8cf7e4aba301",
|
||||
"sha256_in_prefix": "4979469ae49ac144f62202f75bbdd69b17197aedb879d633337c8cf7e4aba301",
|
||||
"size_in_bytes": 229016
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzcmp.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "172cde42c47a6d50c244e39d993097dcd3882427d57303078643849cf10a81c4",
|
||||
"sha256_in_prefix": "172cde42c47a6d50c244e39d993097dcd3882427d57303078643849cf10a81c4",
|
||||
"size_in_bytes": 18
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzdiff.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "32d1a7cd115430398e58537532584ef2ab76343c9f094dcd1253d9c4c0f705bf",
|
||||
"sha256_in_prefix": "32d1a7cd115430398e58537532584ef2ab76343c9f094dcd1253d9c4c0f705bf",
|
||||
"size_in_bytes": 897
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzegrep.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "cf1c98d3fa055506c8af2f8bba4da9c17d367c6409c6ad83a2bc67ccb6630182",
|
||||
"sha256_in_prefix": "cf1c98d3fa055506c8af2f8bba4da9c17d367c6409c6ad83a2bc67ccb6630182",
|
||||
"size_in_bytes": 18
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzfgrep.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "cf1c98d3fa055506c8af2f8bba4da9c17d367c6409c6ad83a2bc67ccb6630182",
|
||||
"sha256_in_prefix": "cf1c98d3fa055506c8af2f8bba4da9c17d367c6409c6ad83a2bc67ccb6630182",
|
||||
"size_in_bytes": 18
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzgrep.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "924aa4a7c7c1467400181e4c0ee1b527db142b6399a717171f2351b72b5899df",
|
||||
"sha256_in_prefix": "924aa4a7c7c1467400181e4c0ee1b527db142b6399a717171f2351b72b5899df",
|
||||
"size_in_bytes": 1297
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzip2.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "27b984bb2e8bbee2651d11cda87449cfc4138d2e479b9eaa77b8f60fa5d0bf5d",
|
||||
"sha256_in_prefix": "27b984bb2e8bbee2651d11cda87449cfc4138d2e479b9eaa77b8f60fa5d0bf5d",
|
||||
"size_in_bytes": 16266
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzless.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "216898f9b8acf61eeb471ecf23e47c1452dfd648f7f38d7d3bf48627072dc52c",
|
||||
"sha256_in_prefix": "216898f9b8acf61eeb471ecf23e47c1452dfd648f7f38d7d3bf48627072dc52c",
|
||||
"size_in_bytes": 18
|
||||
},
|
||||
{
|
||||
"_path": "man/man1/bzmore.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "ccfcf3f995e11adae3035e287252091bb72d165da21e0c385a4965d17c9051c7",
|
||||
"sha256_in_prefix": "ccfcf3f995e11adae3035e287252091bb72d165da21e0c385a4965d17c9051c7",
|
||||
"size_in_bytes": 4310
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "235f266d5f9c3c61748bb1af0eff21bc7ed2a2a356b97ff28d9c1135039b08b0",
|
||||
"size": 268384,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1714510571000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/bzip2-1.0.8-h5eee18b_6.conda",
|
||||
"version": "1.0.8"
|
||||
}
|
||||
@ -1,48 +0,0 @@
|
||||
{
|
||||
"build": "h06a4308_0",
|
||||
"build_number": 0,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [],
|
||||
"extracted_package_dir": "/mnt/beegfs/home/rastogi/.conda/pkgs/ca-certificates-2025.2.25-h06a4308_0",
|
||||
"features": "",
|
||||
"files": [
|
||||
"ssl/cacert.pem",
|
||||
"ssl/cert.pem"
|
||||
],
|
||||
"fn": "ca-certificates-2025.2.25-h06a4308_0.conda",
|
||||
"license": "MPL-2.0",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/home/rastogi/.conda/pkgs/ca-certificates-2025.2.25-h06a4308_0",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "495015d24da8ad929e3ae2d18571016d",
|
||||
"name": "ca-certificates",
|
||||
"package_tarball_full_path": "/mnt/beegfs/home/rastogi/.conda/pkgs/ca-certificates-2025.2.25-h06a4308_0.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "ssl/cacert.pem",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "50a6277ec69113f00c5fd45f09e8b97a4b3e32daa35d3a95ab30137a55386cef",
|
||||
"sha256_in_prefix": "50a6277ec69113f00c5fd45f09e8b97a4b3e32daa35d3a95ab30137a55386cef",
|
||||
"size_in_bytes": 233263
|
||||
},
|
||||
{
|
||||
"_path": "ssl/cert.pem",
|
||||
"path_type": "softlink",
|
||||
"sha256": "50a6277ec69113f00c5fd45f09e8b97a4b3e32daa35d3a95ab30137a55386cef",
|
||||
"size_in_bytes": 233263
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "a30302efb91584dd31e63e540c735bfe776e1832f163eadceae47f692ab7d4f3",
|
||||
"size": 132323,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1740582453000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/ca-certificates-2025.2.25-h06a4308_0.conda",
|
||||
"version": "2025.2.25"
|
||||
}
|
||||
@ -1,164 +0,0 @@
|
||||
{
|
||||
"build": "h6a678d5_0",
|
||||
"build_number": 0,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [
|
||||
"libgcc-ng >=11.2.0",
|
||||
"libstdcxx-ng >=11.2.0"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/home/rastogi/.conda/pkgs/expat-2.7.1-h6a678d5_0",
|
||||
"features": "",
|
||||
"files": [
|
||||
"bin/xmlwf",
|
||||
"include/expat.h",
|
||||
"include/expat_config.h",
|
||||
"include/expat_external.h",
|
||||
"lib/cmake/expat-2.7.1/expat-config-version.cmake",
|
||||
"lib/cmake/expat-2.7.1/expat-config.cmake",
|
||||
"lib/cmake/expat-2.7.1/expat-noconfig.cmake",
|
||||
"lib/cmake/expat-2.7.1/expat.cmake",
|
||||
"lib/libexpat.a",
|
||||
"lib/libexpat.so",
|
||||
"lib/libexpat.so.1",
|
||||
"lib/libexpat.so.1.10.2",
|
||||
"lib/pkgconfig/expat.pc",
|
||||
"share/doc/expat/AUTHORS",
|
||||
"share/doc/expat/changelog",
|
||||
"share/man/man1/xmlwf.1"
|
||||
],
|
||||
"fn": "expat-2.7.1-h6a678d5_0.conda",
|
||||
"license": "MIT",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/home/rastogi/.conda/pkgs/expat-2.7.1-h6a678d5_0",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "269942a9f3f943e2e5d8a2516a861f7c",
|
||||
"name": "expat",
|
||||
"package_tarball_full_path": "/mnt/beegfs/home/rastogi/.conda/pkgs/expat-2.7.1-h6a678d5_0.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "bin/xmlwf",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "318175499f0c3797e2f68809468e51f936b65e1d6af41e980d2bbffaeecae3a8",
|
||||
"sha256_in_prefix": "318175499f0c3797e2f68809468e51f936b65e1d6af41e980d2bbffaeecae3a8",
|
||||
"size_in_bytes": 41768
|
||||
},
|
||||
{
|
||||
"_path": "include/expat.h",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "7c16a5cf0eea844ae579db083b8d75f23a71859cac77e3c4cb7a8fa3b7621685",
|
||||
"sha256_in_prefix": "7c16a5cf0eea844ae579db083b8d75f23a71859cac77e3c4cb7a8fa3b7621685",
|
||||
"size_in_bytes": 44120
|
||||
},
|
||||
{
|
||||
"_path": "include/expat_config.h",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "1d9a4a9a137e7ca6375889aefab5254caa26841c9d13535dd4a64bb366472499",
|
||||
"sha256_in_prefix": "1d9a4a9a137e7ca6375889aefab5254caa26841c9d13535dd4a64bb366472499",
|
||||
"size_in_bytes": 4171
|
||||
},
|
||||
{
|
||||
"_path": "include/expat_external.h",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "7ca9ed28dd5e08eac425931894fabd4c876db8f4be26f9b9a33c2e4f70a0d6c3",
|
||||
"sha256_in_prefix": "7ca9ed28dd5e08eac425931894fabd4c876db8f4be26f9b9a33c2e4f70a0d6c3",
|
||||
"size_in_bytes": 6029
|
||||
},
|
||||
{
|
||||
"_path": "lib/cmake/expat-2.7.1/expat-config-version.cmake",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "5f42039a32496ebd9143f675bd8b3acc2136c2fc1efc585e9b12d338c2485342",
|
||||
"sha256_in_prefix": "5f42039a32496ebd9143f675bd8b3acc2136c2fc1efc585e9b12d338c2485342",
|
||||
"size_in_bytes": 2762
|
||||
},
|
||||
{
|
||||
"_path": "lib/cmake/expat-2.7.1/expat-config.cmake",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "33708544410c5b5fc7d1a25d1700804719deb4e4cb57358d4d9d2e7328418bcb",
|
||||
"sha256_in_prefix": "33708544410c5b5fc7d1a25d1700804719deb4e4cb57358d4d9d2e7328418bcb",
|
||||
"size_in_bytes": 3637
|
||||
},
|
||||
{
|
||||
"_path": "lib/cmake/expat-2.7.1/expat-noconfig.cmake",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "41752d5fb8bd74d765d2372fd65e98ab4ae558668a1415ef451806d2cf8d00da",
|
||||
"sha256_in_prefix": "41752d5fb8bd74d765d2372fd65e98ab4ae558668a1415ef451806d2cf8d00da",
|
||||
"size_in_bytes": 844
|
||||
},
|
||||
{
|
||||
"_path": "lib/cmake/expat-2.7.1/expat.cmake",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "861fd3e8d6ab95b5a4cfad1779367553b1275339d475b9089bc1e1e4a03a737d",
|
||||
"sha256_in_prefix": "861fd3e8d6ab95b5a4cfad1779367553b1275339d475b9089bc1e1e4a03a737d",
|
||||
"size_in_bytes": 4135
|
||||
},
|
||||
{
|
||||
"_path": "lib/libexpat.a",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "54f19e3399aeb9be52d51f5f5c00d660e12378570481b7b5adac31397315ad15",
|
||||
"sha256_in_prefix": "54f19e3399aeb9be52d51f5f5c00d660e12378570481b7b5adac31397315ad15",
|
||||
"size_in_bytes": 409486
|
||||
},
|
||||
{
|
||||
"_path": "lib/libexpat.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "36fe66177b5a28183bc5ca7ea2488b96989dea7b33a117294f3aa96ae737419f",
|
||||
"size_in_bytes": 211520
|
||||
},
|
||||
{
|
||||
"_path": "lib/libexpat.so.1",
|
||||
"path_type": "softlink",
|
||||
"sha256": "36fe66177b5a28183bc5ca7ea2488b96989dea7b33a117294f3aa96ae737419f",
|
||||
"size_in_bytes": 211520
|
||||
},
|
||||
{
|
||||
"_path": "lib/libexpat.so.1.10.2",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "36fe66177b5a28183bc5ca7ea2488b96989dea7b33a117294f3aa96ae737419f",
|
||||
"sha256_in_prefix": "36fe66177b5a28183bc5ca7ea2488b96989dea7b33a117294f3aa96ae737419f",
|
||||
"size_in_bytes": 211520
|
||||
},
|
||||
{
|
||||
"_path": "lib/pkgconfig/expat.pc",
|
||||
"file_mode": "text",
|
||||
"path_type": "hardlink",
|
||||
"prefix_placeholder": "/croot/expat_1744659816673/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p",
|
||||
"sha256": "c1fa0f1bebf1ba0734e4c3f74ea1c16171dcb4c0b554a98f943154f1f46d5fe9",
|
||||
"sha256_in_prefix": "23c7d57fb9142ffd7d8ad1c700b42c9d4fbc555e2987b9d448d294c86f59b7a3",
|
||||
"size_in_bytes": 528
|
||||
},
|
||||
{
|
||||
"_path": "share/doc/expat/AUTHORS",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "59f14371c6b75912cfebb46e6247ee5146766e803a0365b124e5d3011e7d0877",
|
||||
"sha256_in_prefix": "59f14371c6b75912cfebb46e6247ee5146766e803a0365b124e5d3011e7d0877",
|
||||
"size_in_bytes": 142
|
||||
},
|
||||
{
|
||||
"_path": "share/doc/expat/changelog",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "9d8bb6625d503b969882fa15178b450ac0ccffdfdac1c720f74d92de243e3580",
|
||||
"sha256_in_prefix": "9d8bb6625d503b969882fa15178b450ac0ccffdfdac1c720f74d92de243e3580",
|
||||
"size_in_bytes": 84961
|
||||
},
|
||||
{
|
||||
"_path": "share/man/man1/xmlwf.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "3d7a6e32305cb05a677cf7576ce6715f23cb613d542671509ea1f7eca81f7f25",
|
||||
"sha256_in_prefix": "3d7a6e32305cb05a677cf7576ce6715f23cb613d542671509ea1f7eca81f7f25",
|
||||
"size_in_bytes": 10944
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "583895800664771937e7fe3963bdd9e78b34689eb3fcf115d7be5a4d1c6d9f5f",
|
||||
"size": 185917,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1744659862000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/expat-2.7.1-h6a678d5_0.conda",
|
||||
"version": "2.7.1"
|
||||
}
|
||||
@ -1,33 +0,0 @@
|
||||
==> 2025-06-25 10:45:33 <==
|
||||
# cmd: /mnt/beegfs/apps/miniconda/bin/conda create -p ./.ai python=3.11
|
||||
# conda version: 24.5.0
|
||||
+defaults/linux-64::_libgcc_mutex-0.1-main
|
||||
+defaults/linux-64::_openmp_mutex-5.1-1_gnu
|
||||
+defaults/linux-64::bzip2-1.0.8-h5eee18b_6
|
||||
+defaults/linux-64::ca-certificates-2025.2.25-h06a4308_0
|
||||
+defaults/linux-64::expat-2.7.1-h6a678d5_0
|
||||
+defaults/linux-64::ld_impl_linux-64-2.40-h12ee557_0
|
||||
+defaults/linux-64::libffi-3.4.4-h6a678d5_1
|
||||
+defaults/linux-64::libgcc-ng-11.2.0-h1234567_1
|
||||
+defaults/linux-64::libgomp-11.2.0-h1234567_1
|
||||
+defaults/linux-64::libstdcxx-ng-11.2.0-h1234567_1
|
||||
+defaults/linux-64::libuuid-1.41.5-h5eee18b_0
|
||||
+defaults/linux-64::libxcb-1.17.0-h9b100fa_0
|
||||
+defaults/linux-64::ncurses-6.4-h6a678d5_0
|
||||
+defaults/linux-64::openssl-3.0.16-h5eee18b_0
|
||||
+defaults/linux-64::pthread-stubs-0.3-h0ce48e5_1
|
||||
+defaults/linux-64::python-3.11.13-h1a3bd86_0
|
||||
+defaults/linux-64::readline-8.2-h5eee18b_0
|
||||
+defaults/linux-64::setuptools-78.1.1-py311h06a4308_0
|
||||
+defaults/linux-64::sqlite-3.45.3-h5eee18b_0
|
||||
+defaults/linux-64::tk-8.6.14-h993c535_1
|
||||
+defaults/linux-64::wheel-0.45.1-py311h06a4308_0
|
||||
+defaults/linux-64::xorg-libx11-1.8.12-h9b100fa_1
|
||||
+defaults/linux-64::xorg-libxau-1.0.12-h9b100fa_0
|
||||
+defaults/linux-64::xorg-libxdmcp-1.1.5-h9b100fa_0
|
||||
+defaults/linux-64::xorg-xorgproto-2024.1-h5eee18b_1
|
||||
+defaults/linux-64::xz-5.6.4-h5eee18b_1
|
||||
+defaults/linux-64::zlib-1.2.13-h5eee18b_1
|
||||
+defaults/noarch::pip-25.1-pyhc872135_2
|
||||
+defaults/noarch::tzdata-2025b-h04d1e81_0
|
||||
# update specs: ['python=3.11']
|
||||
@ -1,64 +0,0 @@
|
||||
{
|
||||
"build": "h12ee557_0",
|
||||
"build_number": 0,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [
|
||||
"binutils_impl_linux-64 2.40"
|
||||
],
|
||||
"depends": [],
|
||||
"extracted_package_dir": "/mnt/beegfs/home/rastogi/.conda/pkgs/ld_impl_linux-64-2.40-h12ee557_0",
|
||||
"features": "",
|
||||
"files": [
|
||||
"bin/x86_64-conda-linux-gnu-ld",
|
||||
"bin/x86_64-conda_cos7-linux-gnu-ld",
|
||||
"x86_64-conda-linux-gnu/bin/ld",
|
||||
"x86_64-conda_cos7-linux-gnu/bin/ld"
|
||||
],
|
||||
"fn": "ld_impl_linux-64-2.40-h12ee557_0.conda",
|
||||
"license": "GPL-3.0-only",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/home/rastogi/.conda/pkgs/ld_impl_linux-64-2.40-h12ee557_0",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "ee672b5f635340734f58d618b7bca024",
|
||||
"name": "ld_impl_linux-64",
|
||||
"package_tarball_full_path": "/mnt/beegfs/home/rastogi/.conda/pkgs/ld_impl_linux-64-2.40-h12ee557_0.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "bin/x86_64-conda-linux-gnu-ld",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "aaaab6b3200c6f71e5f2970b01a074c958d5af546e5f43c011192307f69d9cac",
|
||||
"sha256_in_prefix": "aaaab6b3200c6f71e5f2970b01a074c958d5af546e5f43c011192307f69d9cac",
|
||||
"size_in_bytes": 2195376
|
||||
},
|
||||
{
|
||||
"_path": "bin/x86_64-conda_cos7-linux-gnu-ld",
|
||||
"path_type": "softlink",
|
||||
"sha256": "aaaab6b3200c6f71e5f2970b01a074c958d5af546e5f43c011192307f69d9cac",
|
||||
"size_in_bytes": 2195376
|
||||
},
|
||||
{
|
||||
"_path": "x86_64-conda-linux-gnu/bin/ld",
|
||||
"path_type": "softlink",
|
||||
"sha256": "aaaab6b3200c6f71e5f2970b01a074c958d5af546e5f43c011192307f69d9cac",
|
||||
"size_in_bytes": 2195376
|
||||
},
|
||||
{
|
||||
"_path": "x86_64-conda_cos7-linux-gnu/bin/ld",
|
||||
"path_type": "softlink",
|
||||
"sha256": "aaaab6b3200c6f71e5f2970b01a074c958d5af546e5f43c011192307f69d9cac",
|
||||
"size_in_bytes": 2195376
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "07137855558e3749fc88812644ab30fc543bc31bcf274403e1a23764bed78127",
|
||||
"size": 726762,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1727336193000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/ld_impl_linux-64-2.40-h12ee557_0.conda",
|
||||
"version": "2.40"
|
||||
}
|
||||
@ -1,153 +0,0 @@
|
||||
{
|
||||
"build": "h6a678d5_1",
|
||||
"build_number": 1,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [
|
||||
"libgcc-ng >=11.2.0",
|
||||
"libstdcxx-ng >=11.2.0"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/libffi-3.4.4-h6a678d5_1",
|
||||
"features": "",
|
||||
"files": [
|
||||
"include/ffi.h",
|
||||
"include/ffitarget.h",
|
||||
"lib/libffi.7.so",
|
||||
"lib/libffi.8.so",
|
||||
"lib/libffi.a",
|
||||
"lib/libffi.so",
|
||||
"lib/libffi.so.7",
|
||||
"lib/libffi.so.8",
|
||||
"lib/libffi.so.8.1.2",
|
||||
"lib/pkgconfig/libffi.pc",
|
||||
"share/info/libffi.info",
|
||||
"share/man/man3/ffi.3",
|
||||
"share/man/man3/ffi_call.3",
|
||||
"share/man/man3/ffi_prep_cif.3",
|
||||
"share/man/man3/ffi_prep_cif_var.3"
|
||||
],
|
||||
"fn": "libffi-3.4.4-h6a678d5_1.conda",
|
||||
"license": "MIT",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/libffi-3.4.4-h6a678d5_1",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "70646cc713f0c43926cfdcfe9b695fe0",
|
||||
"name": "libffi",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/libffi-3.4.4-h6a678d5_1.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "include/ffi.h",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "f49fc7045d930af653d73aa480b645b296399a6205002215894d90de4de8355a",
|
||||
"sha256_in_prefix": "f49fc7045d930af653d73aa480b645b296399a6205002215894d90de4de8355a",
|
||||
"size_in_bytes": 14287
|
||||
},
|
||||
{
|
||||
"_path": "include/ffitarget.h",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "45e4fd2585aaed711e4fa3d1377b70c8e54dcdc56bdf402fa23a8816d19cc58a",
|
||||
"sha256_in_prefix": "45e4fd2585aaed711e4fa3d1377b70c8e54dcdc56bdf402fa23a8816d19cc58a",
|
||||
"size_in_bytes": 4928
|
||||
},
|
||||
{
|
||||
"_path": "lib/libffi.7.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "a5d54aeb8ed2fd5e0ccf9d38b28cad6dec76517f69224a5d9687c1970b57b194",
|
||||
"size_in_bytes": 72144
|
||||
},
|
||||
{
|
||||
"_path": "lib/libffi.8.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "a5d54aeb8ed2fd5e0ccf9d38b28cad6dec76517f69224a5d9687c1970b57b194",
|
||||
"size_in_bytes": 72144
|
||||
},
|
||||
{
|
||||
"_path": "lib/libffi.a",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "66e22d52480d4a11234ee038fe8929c1fdeea490a344260ed10711dd900059d7",
|
||||
"sha256_in_prefix": "66e22d52480d4a11234ee038fe8929c1fdeea490a344260ed10711dd900059d7",
|
||||
"size_in_bytes": 97758
|
||||
},
|
||||
{
|
||||
"_path": "lib/libffi.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "a5d54aeb8ed2fd5e0ccf9d38b28cad6dec76517f69224a5d9687c1970b57b194",
|
||||
"size_in_bytes": 72144
|
||||
},
|
||||
{
|
||||
"_path": "lib/libffi.so.7",
|
||||
"path_type": "softlink",
|
||||
"sha256": "a5d54aeb8ed2fd5e0ccf9d38b28cad6dec76517f69224a5d9687c1970b57b194",
|
||||
"size_in_bytes": 72144
|
||||
},
|
||||
{
|
||||
"_path": "lib/libffi.so.8",
|
||||
"path_type": "softlink",
|
||||
"sha256": "a5d54aeb8ed2fd5e0ccf9d38b28cad6dec76517f69224a5d9687c1970b57b194",
|
||||
"size_in_bytes": 72144
|
||||
},
|
||||
{
|
||||
"_path": "lib/libffi.so.8.1.2",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "a5d54aeb8ed2fd5e0ccf9d38b28cad6dec76517f69224a5d9687c1970b57b194",
|
||||
"sha256_in_prefix": "a5d54aeb8ed2fd5e0ccf9d38b28cad6dec76517f69224a5d9687c1970b57b194",
|
||||
"size_in_bytes": 72144
|
||||
},
|
||||
{
|
||||
"_path": "lib/pkgconfig/libffi.pc",
|
||||
"file_mode": "text",
|
||||
"path_type": "hardlink",
|
||||
"prefix_placeholder": "/croot/libffi_1714483243560/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_",
|
||||
"sha256": "d42c74b8e17b72244a609b67b6f23d18da75e961f35ae11a8be0f205daee22b4",
|
||||
"sha256_in_prefix": "90eaf3f37cf292b712125483a64f77da8474c54cc076c1a0bb99b753de214c9f",
|
||||
"size_in_bytes": 756
|
||||
},
|
||||
{
|
||||
"_path": "share/info/libffi.info",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "f7481e5e3817a91d6c746b69f0b2708470b802bb2a6834b9a82e9f71b661fb62",
|
||||
"sha256_in_prefix": "f7481e5e3817a91d6c746b69f0b2708470b802bb2a6834b9a82e9f71b661fb62",
|
||||
"size_in_bytes": 38202
|
||||
},
|
||||
{
|
||||
"_path": "share/man/man3/ffi.3",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "aa4730e114c305943a2226a524ed8447dc6b66a184523999868e5433c2c9de74",
|
||||
"sha256_in_prefix": "aa4730e114c305943a2226a524ed8447dc6b66a184523999868e5433c2c9de74",
|
||||
"size_in_bytes": 850
|
||||
},
|
||||
{
|
||||
"_path": "share/man/man3/ffi_call.3",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "2817ce7b78cb737d7b85b18b45899470f5f565f990d056d3d8cfabf6d779477f",
|
||||
"sha256_in_prefix": "2817ce7b78cb737d7b85b18b45899470f5f565f990d056d3d8cfabf6d779477f",
|
||||
"size_in_bytes": 2333
|
||||
},
|
||||
{
|
||||
"_path": "share/man/man3/ffi_prep_cif.3",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "f60c5bb9d04b55988da13511a2c3edfa0f39fb6f51abfb8ac24d0b161c4169c0",
|
||||
"sha256_in_prefix": "f60c5bb9d04b55988da13511a2c3edfa0f39fb6f51abfb8ac24d0b161c4169c0",
|
||||
"size_in_bytes": 1158
|
||||
},
|
||||
{
|
||||
"_path": "share/man/man3/ffi_prep_cif_var.3",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "9365685252f33f13627c9303bc01883b764227132069260c19e94100ff442a51",
|
||||
"sha256_in_prefix": "9365685252f33f13627c9303bc01883b764227132069260c19e94100ff442a51",
|
||||
"size_in_bytes": 1321
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "b0e7fe2e5d498bc5a2c57cf942701bba8f22ec55de55e092ffbffc40b816df88",
|
||||
"size": 144691,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1714483282000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/libffi-3.4.4-h6a678d5_1.conda",
|
||||
"version": "3.4.4"
|
||||
}
|
||||
@ -1,236 +0,0 @@
|
||||
{
|
||||
"build": "h1234567_1",
|
||||
"build_number": 1,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [
|
||||
"_libgcc_mutex 0.1 main",
|
||||
"_openmp_mutex",
|
||||
"libgomp 11.2.0 h1234567_1"
|
||||
],
|
||||
"depends": [
|
||||
"_libgcc_mutex 0.1 main",
|
||||
"_openmp_mutex",
|
||||
"_libgcc_mutex * main",
|
||||
"__glibc >=2.17"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/libgcc-ng-11.2.0-h1234567_1",
|
||||
"features": "",
|
||||
"files": [
|
||||
"lib/libasan.so",
|
||||
"lib/libasan.so.6",
|
||||
"lib/libasan.so.6.0.0",
|
||||
"lib/libatomic.so",
|
||||
"lib/libatomic.so.1",
|
||||
"lib/libatomic.so.1.2.0",
|
||||
"lib/libgcc_s.so",
|
||||
"lib/libgcc_s.so.1",
|
||||
"lib/libitm.so",
|
||||
"lib/libitm.so.1",
|
||||
"lib/libitm.so.1.0.0",
|
||||
"lib/liblsan.so",
|
||||
"lib/liblsan.so.0",
|
||||
"lib/liblsan.so.0.0.0",
|
||||
"lib/libquadmath.so",
|
||||
"lib/libquadmath.so.0",
|
||||
"lib/libquadmath.so.0.0.0",
|
||||
"lib/libtsan.so",
|
||||
"lib/libtsan.so.0",
|
||||
"lib/libtsan.so.0.0.0",
|
||||
"lib/libubsan.so",
|
||||
"lib/libubsan.so.1",
|
||||
"lib/libubsan.so.1.0.0",
|
||||
"share/info/libgomp.info",
|
||||
"share/info/libquadmath.info",
|
||||
"share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION"
|
||||
],
|
||||
"fn": "libgcc-ng-11.2.0-h1234567_1.conda",
|
||||
"license": "GPL-3.0-only WITH GCC-exception-3.1",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/libgcc-ng-11.2.0-h1234567_1",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "a87728dabf3151fb9cfa990bd2eb0464",
|
||||
"name": "libgcc-ng",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/libgcc-ng-11.2.0-h1234567_1.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "lib/libasan.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "2a8a7995a4d84a8817af8d1604bef621e99d0622df4eda14f6fe5245735a952e",
|
||||
"size_in_bytes": 7575272
|
||||
},
|
||||
{
|
||||
"_path": "lib/libasan.so.6",
|
||||
"path_type": "softlink",
|
||||
"sha256": "2a8a7995a4d84a8817af8d1604bef621e99d0622df4eda14f6fe5245735a952e",
|
||||
"size_in_bytes": 7575272
|
||||
},
|
||||
{
|
||||
"_path": "lib/libasan.so.6.0.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "2a8a7995a4d84a8817af8d1604bef621e99d0622df4eda14f6fe5245735a952e",
|
||||
"sha256_in_prefix": "2a8a7995a4d84a8817af8d1604bef621e99d0622df4eda14f6fe5245735a952e",
|
||||
"size_in_bytes": 7575272
|
||||
},
|
||||
{
|
||||
"_path": "lib/libatomic.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "2f1a92c18f01c13c9a89908fb86a7309ae5b89a882db9914114957bc4b6fed92",
|
||||
"size_in_bytes": 143648
|
||||
},
|
||||
{
|
||||
"_path": "lib/libatomic.so.1",
|
||||
"path_type": "softlink",
|
||||
"sha256": "2f1a92c18f01c13c9a89908fb86a7309ae5b89a882db9914114957bc4b6fed92",
|
||||
"size_in_bytes": 143648
|
||||
},
|
||||
{
|
||||
"_path": "lib/libatomic.so.1.2.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "2f1a92c18f01c13c9a89908fb86a7309ae5b89a882db9914114957bc4b6fed92",
|
||||
"sha256_in_prefix": "2f1a92c18f01c13c9a89908fb86a7309ae5b89a882db9914114957bc4b6fed92",
|
||||
"size_in_bytes": 143648
|
||||
},
|
||||
{
|
||||
"_path": "lib/libgcc_s.so",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "69a56a9993b7729b29b274e65016031c81f2397f176ed5ad44d59bd50425e0bd",
|
||||
"sha256_in_prefix": "69a56a9993b7729b29b274e65016031c81f2397f176ed5ad44d59bd50425e0bd",
|
||||
"size_in_bytes": 132
|
||||
},
|
||||
{
|
||||
"_path": "lib/libgcc_s.so.1",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "d912bad5e511194c15b506fe7eafe4454bc2dc4073a0fdebc60e86af59a0f2bc",
|
||||
"sha256_in_prefix": "d912bad5e511194c15b506fe7eafe4454bc2dc4073a0fdebc60e86af59a0f2bc",
|
||||
"size_in_bytes": 475272
|
||||
},
|
||||
{
|
||||
"_path": "lib/libitm.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "70a7a1a8352b39da726e026874f1854096cdd1c60e80ea5cf97a4e38055ea7c1",
|
||||
"size_in_bytes": 1018904
|
||||
},
|
||||
{
|
||||
"_path": "lib/libitm.so.1",
|
||||
"path_type": "softlink",
|
||||
"sha256": "70a7a1a8352b39da726e026874f1854096cdd1c60e80ea5cf97a4e38055ea7c1",
|
||||
"size_in_bytes": 1018904
|
||||
},
|
||||
{
|
||||
"_path": "lib/libitm.so.1.0.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "70a7a1a8352b39da726e026874f1854096cdd1c60e80ea5cf97a4e38055ea7c1",
|
||||
"sha256_in_prefix": "70a7a1a8352b39da726e026874f1854096cdd1c60e80ea5cf97a4e38055ea7c1",
|
||||
"size_in_bytes": 1018904
|
||||
},
|
||||
{
|
||||
"_path": "lib/liblsan.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "3b898a178573c3ec5feb7246182ac8ebc2664197e35bf08040e6ca2ee4719757",
|
||||
"size_in_bytes": 2691440
|
||||
},
|
||||
{
|
||||
"_path": "lib/liblsan.so.0",
|
||||
"path_type": "softlink",
|
||||
"sha256": "3b898a178573c3ec5feb7246182ac8ebc2664197e35bf08040e6ca2ee4719757",
|
||||
"size_in_bytes": 2691440
|
||||
},
|
||||
{
|
||||
"_path": "lib/liblsan.so.0.0.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "3b898a178573c3ec5feb7246182ac8ebc2664197e35bf08040e6ca2ee4719757",
|
||||
"sha256_in_prefix": "3b898a178573c3ec5feb7246182ac8ebc2664197e35bf08040e6ca2ee4719757",
|
||||
"size_in_bytes": 2691440
|
||||
},
|
||||
{
|
||||
"_path": "lib/libquadmath.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "10c6fadba4c2f6d77e836a50aadbd92e95b137a85eb01b1ca183b50d8f39a2c6",
|
||||
"size_in_bytes": 1009408
|
||||
},
|
||||
{
|
||||
"_path": "lib/libquadmath.so.0",
|
||||
"path_type": "softlink",
|
||||
"sha256": "10c6fadba4c2f6d77e836a50aadbd92e95b137a85eb01b1ca183b50d8f39a2c6",
|
||||
"size_in_bytes": 1009408
|
||||
},
|
||||
{
|
||||
"_path": "lib/libquadmath.so.0.0.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "10c6fadba4c2f6d77e836a50aadbd92e95b137a85eb01b1ca183b50d8f39a2c6",
|
||||
"sha256_in_prefix": "10c6fadba4c2f6d77e836a50aadbd92e95b137a85eb01b1ca183b50d8f39a2c6",
|
||||
"size_in_bytes": 1009408
|
||||
},
|
||||
{
|
||||
"_path": "lib/libtsan.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "1b44b74e273d4eb90811b3d6da8b68cb05066d3d8b4e17e8ccf90ada3ecdfdeb",
|
||||
"size_in_bytes": 7298936
|
||||
},
|
||||
{
|
||||
"_path": "lib/libtsan.so.0",
|
||||
"path_type": "softlink",
|
||||
"sha256": "1b44b74e273d4eb90811b3d6da8b68cb05066d3d8b4e17e8ccf90ada3ecdfdeb",
|
||||
"size_in_bytes": 7298936
|
||||
},
|
||||
{
|
||||
"_path": "lib/libtsan.so.0.0.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "1b44b74e273d4eb90811b3d6da8b68cb05066d3d8b4e17e8ccf90ada3ecdfdeb",
|
||||
"sha256_in_prefix": "1b44b74e273d4eb90811b3d6da8b68cb05066d3d8b4e17e8ccf90ada3ecdfdeb",
|
||||
"size_in_bytes": 7298936
|
||||
},
|
||||
{
|
||||
"_path": "lib/libubsan.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "4de75afd77639cabf1c2c4d37b04b4cbbbd257c75aae184ae5e0ea92930cf4d9",
|
||||
"size_in_bytes": 2525984
|
||||
},
|
||||
{
|
||||
"_path": "lib/libubsan.so.1",
|
||||
"path_type": "softlink",
|
||||
"sha256": "4de75afd77639cabf1c2c4d37b04b4cbbbd257c75aae184ae5e0ea92930cf4d9",
|
||||
"size_in_bytes": 2525984
|
||||
},
|
||||
{
|
||||
"_path": "lib/libubsan.so.1.0.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "4de75afd77639cabf1c2c4d37b04b4cbbbd257c75aae184ae5e0ea92930cf4d9",
|
||||
"sha256_in_prefix": "4de75afd77639cabf1c2c4d37b04b4cbbbd257c75aae184ae5e0ea92930cf4d9",
|
||||
"size_in_bytes": 2525984
|
||||
},
|
||||
{
|
||||
"_path": "share/info/libgomp.info",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "73a2b15ea66725e333c5bf9106e90cdf33a85eaed78a0f178e50e02f7087c4c7",
|
||||
"sha256_in_prefix": "73a2b15ea66725e333c5bf9106e90cdf33a85eaed78a0f178e50e02f7087c4c7",
|
||||
"size_in_bytes": 216513
|
||||
},
|
||||
{
|
||||
"_path": "share/info/libquadmath.info",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "d9c38989bdaa543f02c7d0639d9869bb99056d35f56181a00c9d665977a9fa18",
|
||||
"sha256_in_prefix": "d9c38989bdaa543f02c7d0639d9869bb99056d35f56181a00c9d665977a9fa18",
|
||||
"size_in_bytes": 36614
|
||||
},
|
||||
{
|
||||
"_path": "share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "9d6b43ce4d8de0c878bf16b54d8e7a10d9bd42b75178153e3af6a815bdc90f74",
|
||||
"sha256_in_prefix": "9d6b43ce4d8de0c878bf16b54d8e7a10d9bd42b75178153e3af6a815bdc90f74",
|
||||
"size_in_bytes": 3324
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "cdcce11f1c6ca57ba686ab92f3a5c122efe1e0630e00c6ad275624ce79008aa7",
|
||||
"size": 5602184,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1654090827000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/libgcc-ng-11.2.0-h1234567_1.conda",
|
||||
"version": "11.2.0"
|
||||
}
|
||||
@ -1,58 +0,0 @@
|
||||
{
|
||||
"build": "h1234567_1",
|
||||
"build_number": 1,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [
|
||||
"_libgcc_mutex 0.1 main"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/libgomp-11.2.0-h1234567_1",
|
||||
"features": "",
|
||||
"files": [
|
||||
"lib/libgomp.so",
|
||||
"lib/libgomp.so.1.0.0",
|
||||
"share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION.gomp_copy"
|
||||
],
|
||||
"fn": "libgomp-11.2.0-h1234567_1.conda",
|
||||
"license": "GPL-3.0-only WITH GCC-exception-3.1",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/libgomp-11.2.0-h1234567_1",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "b372c0eea9b60732fdae4b817a63c8cd",
|
||||
"name": "libgomp",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/libgomp-11.2.0-h1234567_1.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "lib/libgomp.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "e3b68c5f37afb7b70bd12273b69706ab33a397714e8336910f0e47f8f1cf6854",
|
||||
"size_in_bytes": 1265616
|
||||
},
|
||||
{
|
||||
"_path": "lib/libgomp.so.1.0.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "e3b68c5f37afb7b70bd12273b69706ab33a397714e8336910f0e47f8f1cf6854",
|
||||
"sha256_in_prefix": "e3b68c5f37afb7b70bd12273b69706ab33a397714e8336910f0e47f8f1cf6854",
|
||||
"size_in_bytes": 1265616
|
||||
},
|
||||
{
|
||||
"_path": "share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION.gomp_copy",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "9d6b43ce4d8de0c878bf16b54d8e7a10d9bd42b75178153e3af6a815bdc90f74",
|
||||
"sha256_in_prefix": "9d6b43ce4d8de0c878bf16b54d8e7a10d9bd42b75178153e3af6a815bdc90f74",
|
||||
"size_in_bytes": 3324
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "a1c6e599df45e116af81c36ec4c9efb1793fa3a0b854dd90dd6c8813cd476e90",
|
||||
"size": 485145,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1654090775000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/libgomp-11.2.0-h1234567_1.conda",
|
||||
"version": "11.2.0"
|
||||
}
|
||||
@ -1,65 +0,0 @@
|
||||
{
|
||||
"build": "h1234567_1",
|
||||
"build_number": 1,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [
|
||||
"__glibc >=2.17"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/libstdcxx-ng-11.2.0-h1234567_1",
|
||||
"features": "",
|
||||
"files": [
|
||||
"lib/libstdc++.so",
|
||||
"lib/libstdc++.so.6",
|
||||
"lib/libstdc++.so.6.0.29",
|
||||
"share/licenses/libstdc++/RUNTIME.LIBRARY.EXCEPTION"
|
||||
],
|
||||
"fn": "libstdcxx-ng-11.2.0-h1234567_1.conda",
|
||||
"license": "GPL-3.0-only WITH GCC-exception-3.1",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/libstdcxx-ng-11.2.0-h1234567_1",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "57623d10a70e09e1d048c2b2b6f4e2dd",
|
||||
"name": "libstdcxx-ng",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/libstdcxx-ng-11.2.0-h1234567_1.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "lib/libstdc++.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "4f045231ff3a95c2fbfde450575f0ef45d23e95be15193c8729b521fc363ece4",
|
||||
"size_in_bytes": 17981480
|
||||
},
|
||||
{
|
||||
"_path": "lib/libstdc++.so.6",
|
||||
"path_type": "softlink",
|
||||
"sha256": "4f045231ff3a95c2fbfde450575f0ef45d23e95be15193c8729b521fc363ece4",
|
||||
"size_in_bytes": 17981480
|
||||
},
|
||||
{
|
||||
"_path": "lib/libstdc++.so.6.0.29",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "4f045231ff3a95c2fbfde450575f0ef45d23e95be15193c8729b521fc363ece4",
|
||||
"sha256_in_prefix": "4f045231ff3a95c2fbfde450575f0ef45d23e95be15193c8729b521fc363ece4",
|
||||
"size_in_bytes": 17981480
|
||||
},
|
||||
{
|
||||
"_path": "share/licenses/libstdc++/RUNTIME.LIBRARY.EXCEPTION",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "9d6b43ce4d8de0c878bf16b54d8e7a10d9bd42b75178153e3af6a815bdc90f74",
|
||||
"sha256_in_prefix": "9d6b43ce4d8de0c878bf16b54d8e7a10d9bd42b75178153e3af6a815bdc90f74",
|
||||
"size_in_bytes": 3324
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "4da22842de544990e623ed38dfd9b468cc26cc592a102e41bcf45c91bcce9aa2",
|
||||
"size": 4919942,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1654090800000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/libstdcxx-ng-11.2.0-h1234567_1.conda",
|
||||
"version": "11.2.0"
|
||||
}
|
||||
@ -1,83 +0,0 @@
|
||||
{
|
||||
"build": "h5eee18b_0",
|
||||
"build_number": 0,
|
||||
"channel": "https://repo.anaconda.com/pkgs/main/linux-64",
|
||||
"constrains": [],
|
||||
"depends": [
|
||||
"libgcc-ng >=11.2.0"
|
||||
],
|
||||
"extracted_package_dir": "/mnt/beegfs/apps/miniconda/pkgs/libuuid-1.41.5-h5eee18b_0",
|
||||
"features": "",
|
||||
"files": [
|
||||
"include/uuid/uuid.h",
|
||||
"lib/libuuid.a",
|
||||
"lib/libuuid.so",
|
||||
"lib/libuuid.so.1",
|
||||
"lib/libuuid.so.1.3.0",
|
||||
"lib/pkgconfig/uuid.pc"
|
||||
],
|
||||
"fn": "libuuid-1.41.5-h5eee18b_0.conda",
|
||||
"license": "BSD-3-Clause",
|
||||
"link": {
|
||||
"source": "/mnt/beegfs/apps/miniconda/pkgs/libuuid-1.41.5-h5eee18b_0",
|
||||
"type": 1
|
||||
},
|
||||
"md5": "4a6a2354414c9080327274aa514e5299",
|
||||
"name": "libuuid",
|
||||
"package_tarball_full_path": "/mnt/beegfs/apps/miniconda/pkgs/libuuid-1.41.5-h5eee18b_0.conda",
|
||||
"paths_data": {
|
||||
"paths": [
|
||||
{
|
||||
"_path": "include/uuid/uuid.h",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "926b9441cae3c113950827ef438cb0b07657f6ec1d2fe5f3ba557662ddbb526b",
|
||||
"sha256_in_prefix": "926b9441cae3c113950827ef438cb0b07657f6ec1d2fe5f3ba557662ddbb526b",
|
||||
"size_in_bytes": 3910
|
||||
},
|
||||
{
|
||||
"_path": "lib/libuuid.a",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "d16861859d7ad6a76c11296ef77000e95f64d75330ce6365f679c1c88c0ecabd",
|
||||
"sha256_in_prefix": "d16861859d7ad6a76c11296ef77000e95f64d75330ce6365f679c1c88c0ecabd",
|
||||
"size_in_bytes": 53390
|
||||
},
|
||||
{
|
||||
"_path": "lib/libuuid.so",
|
||||
"path_type": "softlink",
|
||||
"sha256": "b42fa6cf1dcaca6b84e8155c4649d6bad561eaca2e8fa9473db178dbaa4aec53",
|
||||
"size_in_bytes": 35944
|
||||
},
|
||||
{
|
||||
"_path": "lib/libuuid.so.1",
|
||||
"path_type": "softlink",
|
||||
"sha256": "b42fa6cf1dcaca6b84e8155c4649d6bad561eaca2e8fa9473db178dbaa4aec53",
|
||||
"size_in_bytes": 35944
|
||||
},
|
||||
{
|
||||
"_path": "lib/libuuid.so.1.3.0",
|
||||
"path_type": "hardlink",
|
||||
"sha256": "b42fa6cf1dcaca6b84e8155c4649d6bad561eaca2e8fa9473db178dbaa4aec53",
|
||||
"sha256_in_prefix": "b42fa6cf1dcaca6b84e8155c4649d6bad561eaca2e8fa9473db178dbaa4aec53",
|
||||
"size_in_bytes": 35944
|
||||
},
|
||||
{
|
||||
"_path": "lib/pkgconfig/uuid.pc",
|
||||
"file_mode": "text",
|
||||
"path_type": "hardlink",
|
||||
"prefix_placeholder": "/croot/libuuid_1668082679328/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold",
|
||||
"sha256": "ad771b4cb15ca6fcc526199ebbc1c4ff31e1cf96f01fb4710b14462327ebbef1",
|
||||
"sha256_in_prefix": "302404190430681fa9206e5836e1ac1b894b646da015625a3c1370083be5f23a",
|
||||
"size_in_bytes": 1208
|
||||
}
|
||||
],
|
||||
"paths_version": 1
|
||||
},
|
||||
"requested_spec": "None",
|
||||
"sha256": "2a401aafabac51b7736cfe12d2ab205d29052640ea8183253c9d0a8e7ed0d49a",
|
||||
"size": 28110,
|
||||
"subdir": "linux-64",
|
||||
"timestamp": 1668082729000,
|
||||
"track_features": "",
|
||||
"url": "https://repo.anaconda.com/pkgs/main/linux-64/libuuid-1.41.5-h5eee18b_0.conda",
|
||||
"version": "1.41.5"
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user