আমি নিশ্চিত নই যে এটি আরও একটি সুপার ইউজার বা ইউনিক্সলিনাক্স প্রশ্ন বেশি, তবে আমি এখানে চেষ্টা করব ...
সম্প্রতি, আমি এটি পেয়েছি:
# 710689 - প্রবণতা: গাছগুলিতে ইউনিকোড চরিত্রটি ব্যবহার করুন - ডেবিয়ান বাগ রিপোর্ট লগ করুন
দক্ষতা যখন নির্ভরতা তালিকার গাছগুলির জন্য ইউনিকোড অক্ষর ব্যবহার করে, তখন এটি দুর্দান্ত হবে: পরিবর্তে:
--\ Depends (3) --- libc-dev-bin (= 2.17-3) --- libc6 (= 2.17-3) --- linux-libc-dev --\ Suggests (2) --- glibc-doc (UNSATISFIED) --\ manpages-dev
...
... এবং আমি ভেবেছিলাম - বাহ, আমি সত্যই যে ASCII- শিল্প গাছের আউটপুট পছন্দ করি, সচেতন ছিল না যে এটি aptitude
করতে পারে! সুতরাং, আমি aptitude
কমান্ড লাইন সুইচগুলির সাথে এক ঘন্টা জগাখিচুড়ি শুরু করি - এবং আমি কেবল সেই আউটপুটটি পেতে পারি না? সুতরাং আমার প্রাথমিক প্রশ্নটি ছিল - সেই আউটপুটটি প্রথম স্থান থেকে আসে কোথায় ?!
কিছুক্ষণ পরে, আমি বুঝতে পারি যে আমার সিস্টেমে, aptitude
শেষ পর্যন্ত প্রতিলিঙ্ক হয় /usr/bin/aptitude-curses
; এবং আমি অবশেষে বুঝতে পারি যে aptitude
একটি curses
ইন্টারফেস আছে!:/
সুতরাং, আমি অবশেষে aptitude
কোনও যুক্তি ছাড়াই চলি - এবং তাই curses
ইন্টারফেস শুরু হয় এবং আমি এর মতো কিছু দেখতে পাচ্ছি:
... সুতরাং স্পষ্টতই, সেই ASCII গাছের অক্ষরগুলি অভিশাপ ইন্টারফেস থেকে আসে।
তাই আমি ভাবছিলাম - এমন কোনও ডেবিয়ান / এপটি সরঞ্জাম রয়েছে, যা এমন "ভিজ্যুয়াল" এএসসিআইআই ট্রি আউটপুট দেবে - তবে প্যাকেজের প্রকৃত নির্ভরতার সাথে?
আমি ডোনারি সম্পর্কে জানি - প্যাকেজ নির্ভরতা গ্রাফ (এছাড়াও সফ্টওয়্যার প্রস্তাবনা - কীভাবে কোনও প্যাকেজের দৃষ্টিভঙ্গি প্রদর্শন করতে পারেন? - উবুন্টুকে জিজ্ঞাসা করুন ); কিন্তু আমি বরং একটি ডিরেক্টরি ট্রি প্রতিম, টার্মিনাল কিছু আছে চাই (বদলে "unordered" থেকে গ্রাফ [নোড অবস্থানের পরিপ্রেক্ষিতে] debtree
, দ্বারা উত্পন্ন graphviz
এর dot
)।
আমি আরও দেখেছি এমন কি এমন কিছু আছে যা গাছের মতো চাক্ষুষভাবে নির্ভরতা দেখাবে? , যা সুপারিশ করে:
$ apt-rdepends aptitude
Reading package lists... Done
Building dependency tree
Reading state information... Done
aptitude
Depends: libapt-pkg4.10
Depends: libboost-iostreams1.42.0 (>= 1.42.0-1)
Depends: libc6 (>= 2.4)
Depends: libcwidget3
Depends: libept1
Depends: libgcc1 (>= 1:4.1.1)
Depends: libncursesw5 (>= 5.7+20100313)
Depends: libsigc++-2.0-0c2a (>= 2.0.2)
Depends: libsqlite3-0 (>= 3.7.3)
Depends: libstdc++6 (>= 4.5)
Depends: libxapian22
libapt-pkg4.10
libboost-iostreams1.42.0
Depends: libbz2-1.0
Depends: libc6 (>= 2.3.6-6~)
Depends: libgcc1 (>= 1:4.1.1)
Depends: libstdc++6 (>= 4.2.1)
Depends: zlib1g (>= 1:1.1.4)
...
... যা ভাল, কারণ এটি প্রয়োজনীয় প্যাকেজের তাত্ক্ষণিক নির্ভরতা তালিকাভুক্ত করে; এবং তারপরে প্রথম স্তরের নির্ভরতা প্যাকেজগুলির নির্ভরতা এবং আরও অনেক কিছু - তবে এটি গাছ হিসাবে দৃশ্যমান নয় (এবং আসলে, aptitude
এরcurses
ইন্টারফেস কেবল শো ইনস্টল তথ্য যখন আপনি নির্ভরতা নোড প্রসারিত এটা আরও নির্ভরতা প্রসারিত করে না)।
সুতরাং, প্রশ্নটি হল - এমন কোনও সরঞ্জাম রয়েছে যা টার্মিনাল অক্ষরগুলির সাথে নির্ভরতা গাছের গ্রাফ তৈরি করতে পারে - যেমন নীচের সিউডোকোডে বলে:
$ pseudo-deb-graph --show-package="aptitude"
aptitude
--- Depends: libapt-pkg4.10
--\ Depends: libboost-iostreams1.42.0 (>= 1.42.0-1)
--- Depends: libbz2-1.0
--- Depends: libc6 (>= 2.4)
--\ Depends: libc6 (>= 2.3.6-6~)
--\ Depends: libc-bin (= 2.13-0ubuntu13)
--- ...
--\ Depends: libgcc1
--- ...
--\ Depends: tzdata
--- ...
...