View previous topic :: View next topic |
Author |
Message |
bobr[x3] Tux's lil' helper
Joined: 28 Nov 2003 Posts: 141 Location: Vladivostok, Russia
|
Posted: Sun May 15, 2005 9:34 am Post subject: Новые утилиты для чистки distfil'ов ! |
|
|
Вот, от нефиг делать набросал утилитки для чистки дистфайлов от ненужного мусора.
Писаны они на питоне, соответственно он требуется. Больше не надо ничего.
Пока что код выложить некуда, поэтому просто прикрепляю. Помогите потестить это дело. Предложения и пожелания приветствуются.
Пакет состоит из друх скриптов:
distfiles-gendigest.py:
Генерит дайджест для всех пакетов из дерева портежей.
Code: | usage: distfiles-gendigest.py [options]
options:
-h, --help show this help message and exit
-dOUT, --digest=OUT Generated digest file name
-pDIRS, --portdirs=DIRS
Colon separated list of portage directories
-s, --silent Produce no output
-v, --verbose Produce more output
|
- OUT по умолчанию равен /var/db/distfiles/digest .
- DIRS по умолчанию равер /usr/portage:/usr/local/portage .
distfiles-clean.py:
Ищет (и удалает) ненужные или неправильные дистфайлы.
Code: | usage: distfiles-clean.py [options]
options:
-h, --help show this help message and exit
-dIN, --digest=IN Digest file name
-pDIR, --distdir=DIR Distfiles directory
--delete Remove files
-s, --silent Produce no output
--size Perform size checking
--sum Perform ckecksum checking (slow)
-v, --verbose Produce more output
|
- IN по умолчанию равен /var/db/distfiles/digest .
- DIR по умолчанию равер /usr/portage/distfiles .
distfiles-gendigest.py:
Code: |
#!/usr/bin/python
from glob import glob
from string import split
from sys import *
from optparse import OptionParser
parser = OptionParser()
parser.add_option("-d", "--digest",
action = "store", dest = "out_file_name",
default = "/var/db/distfiles/digest",
metavar = "OUT", help = "Generated digest file name")
parser.add_option("-p", "--portdirs",
action = "store", dest = "portage_dirs",
default = "/usr/portage:/usr/local/portage",
metavar = "DIRS", help = "Colon separated list of portage directories")
parser.add_option("-s", "--silent",
action = "store_true", dest = "silent",
default=False,
help = "Produce no output")
parser.add_option("-v", "--verbose",
action = "store_true", dest = "verbose",
default = False,
help = "Produce more output")
ops, args = parser.parse_args(argv[1:])
def get_columns():
from commands import getoutput
size = getoutput("stty size").split()
columns = size[1]
return int(columns)
red_bullet = "\033[01;31m * \033[00m"
yellow_bullet = "\033[01;33m * \033[00m"
green_bullet = "\033[01;32m * \033[00m"
good = "\033[A\033[" + str(get_columns()-7) + "G\033[01;34m[\033[01;32m ok \033[01;34m]\033[00m\n"
warning = "\033[A\033[" + str(get_columns()-7) + "G\033[01;34m[\033[01;33m !! \033[01;34m]\033[00m\n"
error = "\033[A\033[" + str(get_columns()-7) + "G\033[01;34m[\033[01;31m !! \033[01;34m]\033[00m\n"
fine = True
distfile_names = []
distfile_sizes = []
distfile_sums = []
distfile_sum_algs = []
out_file = open(ops.out_file_name, "w")
if not ops.silent and not ops.verbose:
stdout.write(green_bullet + "Generating distfiles digest (this may take few minutes)\n")
stdout.flush()
for portage_dir in split(ops.portage_dirs, ':'):
for package_dir in glob(portage_dir + "/*-*/*"):
if ops.verbose and not ops.silent:
fine = True
stdout.write(green_bullet + "Processing package \033[01;01m")
stdout.write(split(package_dir, "/")[-2] + '/')
stdout.write(split(package_dir, "/")[-1] + "\033[00m\n")
for digest_file_name in glob(package_dir + "/files/digest-*"):
in_file = open(digest_file_name, 'r')
for digest in in_file.readlines():
distfile = digest.split()
if len(distfile) != 4:
continue
distfile_name = distfile[2]
distfile_size = int(distfile[3])
distfile_sum = distfile[1]
distfile_sum_alg = distfile[0]
for i in range(len(distfile_names)):
if distfile_name == distfile_names[i]:
if (distfile_size != distfile_sizes[i]) or (distfile_size != distfile_sizes[i]):
if not ops.silent:
fine = False
stdout.write(yellow_bullet + "File \033[01;01m" + distfile_name + "\033[00m ")
stdout.write("has \033[00;33mconflicting digests\033[00m\n")
stdout.write(warning)
continue
else:
break
else:
distfile_names.append(distfile_name)
distfile_sizes.append(distfile_size)
distfile_sums.append(distfile_sum)
distfile_sum_algs.append(distfile_sum_alg)
out_file.write(distfile_sum_alg + " ")
out_file.write(distfile_sum + " ")
out_file.write(distfile_name + " ")
out_file.write(str(distfile_size) + "\n")
in_file.close()
if ops.verbose and not ops.silent and fine:
stdout.write(good)
if not ops.silent and not ops.verbose and fine:
stdout.write(good)
out_file.close()
|
distfiles-clean.py
Code: |
#!/usr/bin/python
from glob import glob
from optparse import OptionParser
from os import listdir
from os import remove
from os import stat
from string import split
from sys import *
from time import sleep
parser = OptionParser()
parser.add_option("-d", "--digest",
action = "store", dest = "in_file_name",
default = "/var/db/distfiles/digest",
metavar = "IN", help = "Digest file name")
parser.add_option("-p", "--distdir",
action = "store", dest = "distfiles_dir",
default = "/usr/portage/distfiles",
metavar = "DIR", help = "Distfiles directory")
parser.add_option("", "--delete",
action = "store_true", dest = "delete",
default = False,
help = "Remove files")
parser.add_option("-s", "--silent",
action = "store_true", dest = "silent",
default=False,
help = "Produce no output")
parser.add_option("", "--size",
action = "store_true", dest = "checksize",
default=False,
help = "Perform size checking")
parser.add_option("", "--sum",
action = "store_true", dest = "checksum",
default=False,
help = "Perform ckecksum checking (slow)")
parser.add_option("-v", "--verbose",
action = "store_true", dest = "verbose",
default = False,
help = "Produce more output")
ops, args = parser.parse_args(argv[1:])
def get_columns():
from commands import getoutput
size = getoutput("stty size").split()
columns = size[1]
return int(columns)
red_bullet = "\033[01;31m * \033[00m"
yellow_bullet = "\033[01;33m * \033[00m"
green_bullet = "\033[01;32m * \033[00m"
good = "\033[" + str(get_columns()-7) + "G\033[01;34m[\033[01;32m ok \033[01;34m]\033[00m\n"
error = "\033[" + str(get_columns()-7) + "G\033[01;34m[\033[01;31m !! \033[01;34m]\033[00m\n"
warning = "\033[" + str(get_columns()-7) + "G\033[01;34m[\033[01;33m !! \033[01;34m]\033[00m\n"
distfile_names = []
distfile_sizes = []
distfile_sums = []
distfile_sum_algs = []
distfile_delete_names = []
distfiles_delete_size = 0
if not ops.silent:
stdout.write(green_bullet + "Reading distfiles digest")
in_file = open(ops.in_file_name, 'r')
for line in in_file.readlines():
line = line.split()
if len(line) == 0:
break
distfile_names.append(line[2])
if ops.checksize:
distfile_sizes.append(int(line[3]))
if ops.checksum:
distfile_sums.append(line[1])
distfile_sum_algs.append(line[0])
in_file.close()
if not ops.silent:
stdout.write(good)
stdout.write(green_bullet + "Looking for extra files\n")
for distfile_name in listdir(ops.distfiles_dir):
if distfile_name in (".locks", "cvs-src"):
continue
distfile_size = stat(ops.distfiles_dir + "/" + distfile_name).st_size
distfile_unknown = True
distfile_wrong_size = ops.checksize
distfile_wrong_sum = ops.checksum
if ops.verbose and not ops.silent:
stdout.write(yellow_bullet + "File\033[01;01m " + distfile_name + "\033[00m ")
for i in range(len(distfile_names)):
if distfile_name == distfile_names[i]:
distfile_unknown = False
if distfile_wrong_size:
distfile_size = stat(ops.distfiles_dir + "/" + distfile_name).st_size
if distfile_size == distfile_sizes[i]:
distfile_wrong_size = False
else:
continue
if distfile_wrong_sum:
if distfile_sum_algs[i] == "MD5":
import md5
distfile_sum = md5.new()
distfile = open(ops.distfiles_dir + "/" + distfile_name, 'r')
for line in distfile.readlines():
distfile_sum.update(line)
distfile.close()
if distfile_sum.hexdigest() == distfile_sums[i]:
distfile_wrong_sum = False
else:
continue
else:
exit(1)
break
else:
continue
distfile_delete = distfile_unknown or distfile_wrong_size or distfile_wrong_sum
if distfile_delete:
distfile_delete_names.append(distfile_name)
distfiles_delete_size += distfile_size
if not ops.silent:
if not ops.verbose:
stdout.write(yellow_bullet + "File\033[01;01m " + distfile_name + "\033[00m ")
if distfile_unknown:
stdout.write("is \033[00;33munknown\033[00m ")
if distfile_wrong_size:
stdout.write("has \033[00;31mwrong size\033[00m ")
if distfile_wrong_sum:
stdout.write("has \033[00;31mwrong ckecksum\033[00m ")
stdout.write(warning)
else:
if ops.verbose:
stdout.write("\033[00;32mmatches\033[00m ")
stdout.write(good)
if not ops.silent:
if len(distfile_delete_names) == 0:
stdout.write(yellow_bullet + "No files to be deleted\n")
else:
stdout.write(yellow_bullet + "Total size of files to be deleted: \033[01;34m")
stdout.write(str(distfiles_delete_size / 1024**2) + " Mb\033[00m in \033[01;34m")
stdout.write(str(len(distfile_delete_names)) + "\033[00m files\n")
if ops.delete:
if not ops.silent:
stdout.write(green_bullet + "preparing to remove distfiles")
stdout.write("\n")
stdout.write("\033[01;31m*** WARNING ***\033[00m : ")
stdout.write("IMPOTRANT FILES CAN BE REMOVED DURING DISTFILES CLEANUP\n")
stdout.write("\033[01;31m*** WARNING ***\033[00m : ")
stdout.write("DUE TO WRONG DIGESTS IN PORTAGE TREE\n")
stdout.write("\n")
stdout.write(">>> Waiting 10 seconds before starting...\n")
stdout.write(">>> (Control-C) to abort...\n")
stdout.write(">>> Removing distfiles in ")
stdout.flush()
for i in range(10, 0, -1):
stdout.write("\033[01;31m" + str(i) + "\033[00m ")
stdout.flush()
sleep(1)
stdout.write("\n\n")
for distfile_delete_name in distfile_delete_names:
try:
if ops.verbose and not ops.silent:
stdout.write(green_bullet + "Removing file\033[01;01m " + distfile_delete_name)
remove(ops.distfiles_dir + "/" + distfile_delete_name)
if ops.verbose and not ops.silent:
stdout.write(good)
except:
if not ops.silent:
if not ops.verbose:
stdout.write(green_bullet + "Removing file \033[01;01m " + distfile_delete_name)
stdout.write(error)
|
|
|
Back to top |
|
|
dish Apprentice
Joined: 19 Dec 2004 Posts: 266 Location: Moscow, Russia
|
Posted: Tue May 24, 2005 2:02 pm Post subject: |
|
|
Тестил на домашнем роутере. (2.6.11-gentoo-r3)
distfiles-gendigest.py ругается на
Code: | * Generating distfiles digest (this may take few minutes)
* File lmgrd.Z has conflicting digests [ !! ]
* File lmutil.Z has conflicting digests [ !! ]
* File enduser.pdf has conflicting digests [ !! ]
* File sunbird-i686-linux-gtk2+xft.tar.gz has conflicting digests [ !! ]
* File docbkx412.zip has conflicting digests [ !! ]
* File mssqlserver.tar has conflicting digests [ !! ]
* File p4d has conflicting digests [ !! ]
* File p4web has conflicting digests [ !! ]
* File p4ftpd has conflicting digests [ !! ]
* File p4d.1 has conflicting digests [ !! ]
* File p4d has conflicting digests [ !! ]
* File p4web has conflicting digests [ !! ]
* File p4ftpd has conflicting digests [ !! ]
* File p4d.1 has conflicting digests [ !! ]
* File p4 has conflicting digests [ !! ]
* File p4 has conflicting digests [ !! ]
* File p4 has conflicting digests [ !! ]
* File p4p has conflicting digests [ !! ]
* File p4p has conflicting digests [ !! ]
* File p4p has conflicting digests [ !! ]
* File p4d has conflicting digests [ !! ]
* File p4web has conflicting digests [ !! ]
* File p4ftpd has conflicting digests [ !! ]
* File p4d.1 has conflicting digests [ !! ]
* File qmail-maildir++.patch has conflicting digests [ !! ]
* File nxserver-1.3.0-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.2-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.2-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.0-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.0-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.2-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.2-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.2-25.i386.rpm has conflicting digests [ !! ]
* File nxserver-1.3.2-25.i386.rpm has conflicting digests [ !! ]
* File GMT_share.tar.bz2 has conflicting digests [ !! ]
* File GMT_full.tar.bz2 has conflicting digests [ !! ]
* File GMT_high.tar.bz2 has conflicting digests [ !! ]
* File triangle.tar.bz2 has conflicting digests [ !! ]
* File PurpleGalaxy.tar.gz has conflicting digests [ !! ]
* File visor.tar.gz has conflicting digests [ !! ]
* File PurpleGalaxy.tar.gz has conflicting digests [ !! ]
* File visor.tar.gz has conflicting digests [ !! ]
* File PurpleGalaxy.tar.gz has conflicting digests [ !! ]
* File visor.tar.gz has conflicting digests [ !! ]
* File PurpleGalaxy.tar.gz has conflicting digests [ !! ]
* File visor.tar.gz has conflicting digests |
Практически все из этого нормально стоит и работает.
Части этого хозяйства конечно нет портежах (pdf-файл и mssqlserver, например), но у меня для них есть ebuild (лежит в PORTDIR_OVERLAY). И чем провинилась тема PurpleGalaxy?
Роутер также выполняет функцию gentoo-mirror, поэтому запускать второй файл я боюсь... Неохота заново дисты выкачивать, т.к. скорость не более 200 кбит/сек... Насколько я понял, второй файл сотрет все эти конфликтные дисты? _________________ Contrary to popular belief, UNIX is user-friendly. It just happens to be very selective about who it decides to make friends with. A. Haiut.
Last edited by dish on Tue May 24, 2005 2:32 pm; edited 1 time in total |
|
Back to top |
|
|
dish Apprentice
Joined: 19 Dec 2004 Posts: 266 Location: Moscow, Russia
|
Posted: Tue May 24, 2005 2:04 pm Post subject: |
|
|
Пожелания:
добавь в первый скрипт "mkdir /var/db/distfiles"
Ну и можно проверку на то, есть он (каталог) или нет.
При первом запуске удобнее сразу скриптом создавать. _________________ Contrary to popular belief, UNIX is user-friendly. It just happens to be very selective about who it decides to make friends with. A. Haiut. |
|
Back to top |
|
|
bobr[x3] Tux's lil' helper
Joined: 28 Nov 2003 Posts: 141 Location: Vladivostok, Russia
|
Posted: Tue May 24, 2005 11:00 pm Post subject: |
|
|
С пожеланиями согласен, реализую.
Ругается (а точнее warning'и делает) он на то, что один и тот же дистфайл (имя файла) указан в двух и более дайджестах но с разной контрольной суммой и/или размером файла. Это происходит, если версия файла не отражена в имени (как в p4d) или отражена неправильно. На самом деле он сохраняет все дайджесты, так что файл, контрольная сумма или размер которого софпадут хотя бы с одним дайджестом удален не будет.
Вопрос на засыпку: Где бы разместить эту чудные утилиты? А то ведь распространять программы copy-past'ом большой глюк. Своего сайта у меня щас нету, а с sourceforg'ем связываться ломает. |
|
Back to top |
|
|
dish Apprentice
Joined: 19 Dec 2004 Posts: 266 Location: Moscow, Russia
|
Posted: Tue May 24, 2005 11:11 pm Post subject: |
|
|
Насчет разместить... Попробую договориться с gentoo.ru.
Если напишешь ebuild для тулзы -- вообще молоток.
А из личных пожеланий -- классная идея! Продолжай в том же духе! _________________ Contrary to popular belief, UNIX is user-friendly. It just happens to be very selective about who it decides to make friends with. A. Haiut. |
|
Back to top |
|
|
dish Apprentice
Joined: 19 Dec 2004 Posts: 266 Location: Moscow, Russia
|
Posted: Tue May 24, 2005 11:14 pm Post subject: |
|
|
Судя по твоему ответу, можно считать, что у меня на роутере тулза работает правильно.
Попробую завтра на нескольких рабочих станциях запустить. _________________ Contrary to popular belief, UNIX is user-friendly. It just happens to be very selective about who it decides to make friends with. A. Haiut. |
|
Back to top |
|
|
bobr[x3] Tux's lil' helper
Joined: 28 Nov 2003 Posts: 141 Location: Vladivostok, Russia
|
Posted: Tue May 24, 2005 11:28 pm Post subject: |
|
|
Вообще-то эти тулзы только первыя часть работы над пакетом distfiles-utils. Пакет этот будет предназначен для распространения сборников distfil'ов (а может и скомпиленых пакетов) на сменных носителях (CD, DVD, HDD). Будут в нем утилиты не только для чистки дистфайлов, но и для составления этих самых сборников, а также для получения дистфайлов с этих носителей (типа "вставте Gentoo Distfiles 2005.0.1 диск 1") во время emerge'а. Это здорово должно помочь тем, у кого нет жирного канала, но есть друзья друзей с таким жирным каналом. |
|
Back to top |
|
|
ManJak Guru
Joined: 18 Dec 2004 Posts: 561 Location: St. Petersburg, Russia
|
Posted: Wed May 25, 2005 4:25 am Post subject: |
|
|
bobr[x3] wrote: | Вообще-то эти тулзы только первыя часть работы над пакетом distfiles-utils. Пакет этот будет предназначен для распространения сборников distfil'ов (а может и скомпиленых пакетов) на сменных носителях (CD, DVD, HDD). Будут в нем утилиты не только для чистки дистфайлов, но и для составления этих самых сборников, а также для получения дистфайлов с этих носителей (типа "вставте Gentoo Distfiles 2005.0.1 диск 1") во время emerge'а. Это здорово должно помочь тем, у кого нет жирного канала, но есть друзья друзей с таким жирным каналом. |
Респект, только трабла одна есть, репозиторий-то меняется каждый божий день, а то и несколько раз неа дню
Это-ж надо следить неустанно и исошки делать, а там вроде просьба была, что не чаще раза в день
Плюс, есть случаи глюков при обновлении, когда приходится ждать их исправлений и синкаться вновь.
Похоже, что проект не легкий, но Удачи, ибо будет ОЧЕНЬ полезен многим. |
|
Back to top |
|
|
kon Apprentice
Joined: 05 Mar 2004 Posts: 156 Location: Russia. Saint-Petersburg
|
Posted: Wed May 25, 2005 7:25 am Post subject: |
|
|
2 bobr[x3]
Кинь мне на почту assi at assi dot ru и я выложу с адресом типа www.assi.ru/bobr |
|
Back to top |
|
|
bobr[x3] Tux's lil' helper
Joined: 28 Nov 2003 Posts: 141 Location: Vladivostok, Russia
|
Posted: Wed May 25, 2005 11:29 pm Post subject: |
|
|
2 kon: Ага, вечерком закину.
2 ManJak: Не каждый день, а каждый месяц-два. |
|
Back to top |
|
|
bobr[x3] Tux's lil' helper
Joined: 28 Nov 2003 Posts: 141 Location: Vladivostok, Russia
|
Posted: Thu May 26, 2005 11:16 pm Post subject: |
|
|
Товарищи господа, если вы считаете проект distfiles-utils действительно полезным для многих, то я заведу его на sourceforg'e и прошу всех заинтересованных лиц принять в нем посильное участие. |
|
Back to top |
|
|
mobILL Tux's lil' helper
Joined: 02 Feb 2005 Posts: 129 Location: Одинцово
|
Posted: Fri May 27, 2005 7:47 pm Post subject: |
|
|
bobr[x3] wrote: | Товарищи господа, если вы считаете проект distfiles-utils действительно полезным для многих, то я заведу его на sourceforg'e и прошу всех заинтересованных лиц принять в нем посильное участие. |
Полезен однозначно, особенно для тех у кого нету инета и он берёт дистр у друзей. У меня уж накопилось около 30 гигов и больше половины нафиг не нужно. |
|
Back to top |
|
|
dish Apprentice
Joined: 19 Dec 2004 Posts: 266 Location: Moscow, Russia
|
Posted: Fri May 27, 2005 9:52 pm Post subject: |
|
|
Однозначно полезен!
Как заведешь -- кидай ссылку _________________ Contrary to popular belief, UNIX is user-friendly. It just happens to be very selective about who it decides to make friends with. A. Haiut. |
|
Back to top |
|
|
dish Apprentice
Joined: 19 Dec 2004 Posts: 266 Location: Moscow, Russia
|
Posted: Fri May 27, 2005 10:28 pm Post subject: |
|
|
Дальнейшее тестирование:
Запустил все на том же сервере distfiles-clean.py
Code: | * Reading distfiles digest [ ok ]
* Looking for extra files
* File capi4linux-2004.4.5-0.i586.rpm is unknown [ !! ]
* File genpatches-2.6-11.03-base.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-11.03-extras.tar.bz2 is unknown [ !! ]
* File linux-2.6.11.2.tar.bz2 is unknown [ !! ]
* File usb.ids-20030906.gz is unknown [ !! ]
* File gnuconfig-20050223.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-11.09-extras.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-11.09-base.tar.bz2 is unknown [ !! ]
* File DB_File-1.807.tar.gz is unknown [ !! ]
* File MPlayer-1.0pre5try2.tar.bz2 is unknown [ !! ]
* File X11R6.8.0-src1.tar.gz is unknown [ !! ]
* File X11R6.8.0-src2.tar.gz is unknown [ !! ]
* File X11R6.8.0-src3.tar.gz is unknown [ !! ]
* File X11R6.8.0-src4.tar.gz is unknown [ !! ]
* File X11R6.8.0-src5.tar.gz is unknown [ !! ]
* File acpi4asus-0.27.tar.bz2 is unknown [ !! ]
* File all-20050115.tar.bz2 is unknown [ !! ]
* File alsa-driver-1.0.6a.tar.bz2 is unknown [ !! ]
* File alsa-driver-1.0.8rc1.tar.bz2 is unknown [ !! ]
* File alsa-lib-1.0.6.tar.bz2 is unknown [ !! ]
* File arson-0.9.8beta2.tar.bz2 is unknown [ !! ]
* File arts-1.3.1.tar.bz2 is unknown [ !! ]
* File bin86-0.16.13.tar.gz is unknown [ !! ]
* File binutils-2.15-uclibc-patches-1.0.tar.bz2 is unknown [ !! ]
* File binutils-2.15.90.0.1-patches-1.3.tar.bz2 is unknown [ !! ]
* File binutils-2.15.92.0.2-patches-1.2.tar.bz2 is unknown [ !! ]
* File clamav-0.82.tar.gz is unknown [ !! ]
* File coreutils-5.2.1-patches-0.9.tar.bz2 is unknown [ !! ]
* File enigmail-0.89.6.tar.gz is unknown [ !! ]
* File ffmpeg-0.4.7.tar.gz is unknown [ !! ]
* File file-4.10.tar.gz is unknown [ !! ]
* File gail-1.8.0.tar.bz2 is unknown [ !! ]
* File gdb-6.0.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-11.04-base.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-11.04-extras.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-11.05-base.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-11.05-extras.tar.bz2 is unknown [ !! ]
* File genpatches-2.6-7.46-base.tar.bz2 is unknown [ !! ]
* File glext.h-20040830.bz2 is unknown [ !! ]
* File glib-2.4.7.tar.bz2 is unknown [ !! ]
* File gnome-panel-2.8.0.1.tar.bz2 is unknown [ !! ]
* File gtkhtml-3.2.3.tar.bz2 is unknown [ !! ]
* File gzip_1.3.5.orig.tar.gz is unknown [ !! ]
* File hardened-patches-2.6-10.3.tar.bz2 is unknown [ !! ]
* File ipw2200-0.18.tgz is unknown [ !! ]
* File ipw2200-1.0.1.tgz is unknown [ !! ]
* File ipw2200-1.0.2.tgz is unknown [ !! ]
* File ipw2200-fw-2.1.tgz is unknown [ !! ]
* File k3b-0.11.18.tar.bz2 is unknown [ !! ]
* File klamav-0.09.4.tar.bz2 is unknown [ !! ]
* File libgnomecups-0.1.8.tar.bz2 is unknown [ !! ]
* File libpng-1.2.7.tar.bz2 is unknown [ !! ]
* File libtool-1.5.10.tar.gz is unknown [ !! ]
* File libtool-1.5.2.tar.gz is unknown [ !! ]
* File libwnck-2.8.0.1.tar.bz2 is unknown [ !! ]
* File libxml2-2.6.15.tar.bz2 is unknown [ !! ]
* File man-pages-1.70.tar.bz2 is unknown [ !! ]
* File mozilla-launcher-1.22.bz2 is unknown [ !! ]
* File mozilla-launcher-1.23.bz2 is unknown [ !! ]
* File mozilla-source-1.7.6.tar.bz2 is unknown [ !! ]
* File mplayer-1.0_pre5-alsa-gui.patch.tar.bz2 is unknown [ !! ]
* File nasm-0.98.38.tar.bz2 is unknown [ !! ]
* File portage-2.0.51-r15.tar.bz2 is unknown [ !! ]
* File portage-2.0.51-r3.tar.bz2 is unknown [ !! ]
* File putty-0.56.tar.gz is unknown [ !! ]
* File slocate-2.7-uclibc-sl_fts.patch is unknown [ !! ]
* File squid-2.5.STABLE9-patches-20050326.tar.gz is unknown [ !! ]
* File taglib-1.2.tar.gz is unknown [ !! ]
* File tiff-3.7.0.tar.gz is unknown [ !! ]
* File urw-fonts-1.0.7pre40-src.tar.bz2 is unknown [ !! ]
* File vmware-any-any-update89.tar.gz is unknown [ !! ]
* File wine-20040716-fake_windows.tar.bz2 is unknown [ !! ]
* File wine-20040716-misc.tar.bz2 is unknown [ !! ]
* File xmms-1.2.10-gentoo-patches-1.0.tar.bz2 is unknown [ !! ]
* File xmms-mad-0.7.tar.gz is unknown [ !! ]
* File xorg-x11-6.8.0-files-0.4.tar.bz2 is unknown [ !! ]
* File xorg-x11-6.8.0-files-0.7.tar.bz2 is unknown [ !! ]
* File xorg-x11-6.8.0-patches-0.2.11.3.tar.bz2 is unknown [ !! ]
* File xorg-x11-6.8.0-patches-0.2.2.1.tar.bz2 is unknown [ !! ]
* File xterm-196.tgz is unknown [ !! ]
* File xterm-201.tgz is unknown [ !! ]
* File XWine-0.3.2_en.tar.gz is unknown [ !! ]
* File avidemux-2.0.38_rc2-r1-patches.tar.bz2 is unknown [ !! ]
* File avidemux-2.0.38rc2b.tar.gz is unknown [ !! ]
* File matplotlib-0.64.tar.gz is unknown [ !! ]
* File patch-2.6.12-rc1.bz2 is unknown [ !! ]
* File patch-2.6.12-rc2-nitro1.bz2 is unknown [ !! ]
* File software-suspend-2.1.8.7-for-2.6.12-rc1.tar.bz2 is unknown [ !! ]
* File fbsplash-0.9.2-2.6.12-rc1.patch is unknown [ !! ]
* File civ2rus.zip is unknown
* Total size of files to be deleted: 233 Mb in 90 files
|
Из "левых" файлов закинул в дисты civ2rus.zip. Предварительно запускал distfiles-gendigest.py.
Судя по размеру, скрипт удалит только "левый" файл, т.е. все пройдет, как задумано. Вопрос: почему ругается на остальные? _________________ Contrary to popular belief, UNIX is user-friendly. It just happens to be very selective about who it decides to make friends with. A. Haiut. |
|
Back to top |
|
|
dish Apprentice
Joined: 19 Dec 2004 Posts: 266 Location: Moscow, Russia
|
Posted: Fri May 27, 2005 11:03 pm Post subject: |
|
|
Запустил тулзы на своем буке. distfiles-gendigest.py ругалась очень много, т.к. на харде гига 3-4 дистов.
distfiles-clean.py выдал:
Code: | * Reading distfiles digest [ ok ]
* Looking for extra files
* File matplotlib-0.64.tar.gz is unknown [ !! ]
* Total size of files to be deleted: 1 Mb in 1 files
|
distfiles-gendigest.py | grep matplotlib не выдает ничего. _________________ Contrary to popular belief, UNIX is user-friendly. It just happens to be very selective about who it decides to make friends with. A. Haiut. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|