লিনাক্সে কীভাবে সত্যই একটি tar.gz ফাইল ইনস্টল করা যায় - ম্যানুয়ালি ইনস্টল করা (বা স্বতন্ত্র) অ্যাপ্লিকেশনগুলি কীভাবে পরিচালনা করবেন?


12

আমি এই সমস্ত লিঙ্কগুলি প্যাকেজ এবং .debs ব্যাখ্যা করে দেখছি ... আমি জানি যে ... এবং ট্যার.gz ফাইলগুলি কাজ করার জন্য অনেকগুলি ক্লডেজ রয়েছে (যেমন: জাভার জন্য আপডেট-বিকল্পগুলি বা ম্যানুয়ালি ফাইলটি / ইউএসআর / স্থানীয় / এ ড্রপ করা যায়) বিন (বা অন্য কোথাও, যা সন্ধানের ঘন্টাগুলি থেকে আমি ব্যয় করেছি)) প্যাকেজগুলি যদি এত স্মার্ট হয় তবে প্যাকেজগুলিতে বা .debs / rpms এ কীভাবে খুব কম লিনাক্স অ্যাপ্লিকেশন পাওয়া যায়?

আমি নতুন ব্যবহারকারী হিসাবে কথা বলছি; আমি জানি বিশেষজ্ঞরা সম্ভবত এটি আরও ভাল জানেন (আমি মনে করি আমি গ্রহনের একটি সংকলনীয় সংস্করণ ডাউনলোড করতে পারি?)। নেটবিন এবং ক্রোমের মতো .sh, গ্রহপৃষ্ঠটি একটি সমতল, লঞ্চযোগ্য ডিরেক্টরি, জাভাতে এই update-alternativesব্যবসায়ের প্রয়োজন হয় তবে আমি মনে করি না যে এটি নিজেকে উবুন্টু / ডেবিয়ানের "প্রোগ্রামের তালিকায়" (কেবলমাত্র একটি কমান্ড হিসাবে নিবন্ধিত হয়) ইত্যাদিতে নিবন্ধিত হয় (আমি জানি এগুলি কখনও কখনও সংগ্রহস্থলগুলিতে উপলভ্য থাকে তবে ডাউনলোড পৃষ্ঠাগুলির যথাযথ ব্যাখ্যা না থাকায় আমি কেবল বিভ্রান্ত)।

দীর্ঘ গল্পের সংক্ষিপ্তসার: যদি কোনও tar.gz ফাইল ডাউনলোড বা সংকলন করা হয় তবে আমি কীভাবে এটি সিস্টেমে নিবন্ধভুক্ত করব? update-alternativesএটি কমান্ড হিসাবে নিবন্ধ হিসাবে মনে হচ্ছে, উবুন্টুতে, এটি অনুসন্ধান বারে প্রদর্শিত হবে না। ডেবিয়ানে, আমি ম্যানুয়ালি জিনোম 2 লঞ্চারে একটি শর্টকাট যুক্ত করতে পারি। তবে আমার আসলে কী করা উচিত?


সম্পাদনা:

তাই নতুন সমাধানগুলির সাথে আরও কিছুটা খেলার পরে আমি আমার "সমস্যা" বাছাই করতে পারি:

আমার ম্যানুয়ালি ইনস্টল করা প্রোগ্রামগুলি কীভাবে পরিচালনা করব? ফায়ারফক্স এবং Eclipse এখন পর্যন্ত আমার একমাত্র উদাহরণ (আমি প্রচুর স্টাফ ডাউনলোড করি না)। তারা উভয়ই বাক্সটি রান আউট করতে পারে যা আমার পছন্দ। ব্যতীত, আমি তাদের ইনস্টল করা উচিত কোথায়? আমি দেখছি যে গ্রহগ্রহের নিজস্ব নির্দেশাবলী রয়েছে তবে আমি আমার সমস্ত "ম্যানুয়াল প্যাকেজ" একইভাবে করব।

  1. কিছু গবেষণা করার পরে, আমি এই প্রোগ্রামগুলি .োকানোর সিদ্ধান্ত নিয়েছি /usr/local/bin
  2. থেকে কিভাবে অন্ধকার ইনস্টল করতে , আমি লঞ্চারে প্রদর্শিত করতে কিছু পেতে মূর্ত, আমি একটি রাখতে হবে xxx.desktopফাইল ~/.local/share/applications/। এই .ডেস্কটপ ফাইলটির নাম কি গুরুত্বপূর্ণ?
  3. অটোটুলগুলি সহ স্টাফ (আমি একটি configureবা unix/configureফাইলের সন্ধান করি ) ভাল কাজ করবে। কিছু গবেষণা পয়েন্ট যা আমার CheckInstallএই সমস্ত ট্র্যাক রাখতে ব্যবহার করা উচিত ।
  4. আমার update-alternativesপাথগুলি নিবন্ধ করার জন্য ব্যবহার করা উচিত । এই থেকে জাভা থ্রেড , এটা আমি থেকে একটি লিঙ্ক তৈরি দেখায় /usr/bin/javaকরতে /usr/lib/jvm/jdk...। যখন আমি এই "স্ট্যান্ডেলোন" অ্যাপ্লিকেশনগুলি ইক্লিপস বা ফায়ারফক্সের মতো ইনস্টল করি তখন আমার কি সবসময় লিঙ্ক করা উচিত /usr/bin/[app]? এবং যদি দৃ 1়ভাবে বলা 1 সত্য, আমি ভালো জিনিস করা হবেsudo update-alternatives --install "/usr/bin/[app]" "[app]" "/usr/local/bin/[app]" 1

এই নির্দেশাবলী কি সঠিক / ম্যানুয়াল ইনস্টলেশন পরিচালনা করার একটি ভাল উপায়? আমার কি অন্য কোন পদক্ষেপ অনুসরণ করা উচিত? অন্যান্য পরামর্শ?


1
*.debপরিবর্তে প্যাকেজটির সন্ধান করতে হবে না কেন ?
এম0 নাহক

@ m0nhawk সর্বদা একটি .deb ফাইল খুঁজে পাচ্ছেন না? এক্লিপসের ডাউনলোড পৃষ্ঠায় পছন্দ করুন এটি কেবল টার.gz। যতক্ষণ না আমি সম্পূর্ণরূপে এটি মিস করছি
রাইকি

1
Eclipse এর জন্য অবশ্যই ডেবিয়ান ( উবুন্টু ) এর জন্য একটি প্যাকেজ উপস্থিত রয়েছে । এবং আমি মনে করি সবচেয়ে ভালো উপায় হ্যান্ডেল করতে যে *.tar.gzসফ্টওয়্যার উপযুক্ত প্যাকেজ তৈরি করা: *.rpm, *.debইত্যাদি
m0nhawk

1
.desktopমেনুতে কিছু দেখানোর জন্য আপনার একটি ফাইল দরকার । update-alternativesশুধুমাত্র আপনার অগ্রাধিকার কাজ করে PATH
ট্রিপলি

1
আপনার প্রশ্নটি এখনও "______ এর সাথে নতুন সফ্টওয়্যারটি নিবন্ধ করার জন্য আমার কী করা উচিত" যেখানে _____ একটি নির্দিষ্ট ডেস্কটপ পরিবেশ, এবং "আমার ডাব্লুআরটি লিনাক্সটি কি সাধারণভাবে করা উচিত নয়" তা নয়। প্লাস, সম্ভবত, AT PATH পরিবেশের পরিবর্তনশীল সম্পর্কে একটি অন্তর্নিহিত অজ্ঞতা?
স্বর্ণলোকস

উত্তর:


15

প্যাকেজ ভান্ডারে প্রচুর অ্যাপ কেন পাওয়া যায় না?

অনেক কারণ থাকতে পারে:

এর একক কারণ নেই। আপনি যদি আপনার ডিস্ট্রোর প্যাকেজ ম্যানেজারে আপনার পছন্দসই অ্যাপটি দেখতে চান তবে আপনার প্রতিটি কেস আলাদাভাবে আচরণ করা উচিত। ডেভসের সাথে যোগাযোগের চেষ্টা করুন (উদাহরণস্বরূপ একটি আইআরসি চ্যানেল বা একটি মেলিং তালিকায়) এবং কীভাবে আপনি প্যাকেজিংয়ে সহায়তা করতে পারেন তা জিজ্ঞাসা করুন।

কিভাবে একটি টারবাল ইনস্টল করবেন?

একটি টারবাল (.tar.gz প্যাকেজ) কিছু থাকতে পারে। যতক্ষণ না আপনি এটি খোলেন ততক্ষণ আপনার কীভাবে এটি ইনস্টল করবেন তা ধরে নেওয়ার কোনও উপায় নেই। আবার, প্রতিটি প্যাকেজ আলাদাভাবে যোগাযোগ করা উচিত।

ডকুমেন্টেশন সন্ধান করুন! যে কোনও (আধা) শালীন প্যাকেজটি কীভাবে অ্যাপ্লিকেশনটি ইনস্টল করবেন সে সম্পর্কে নির্দেশাবলী সরবরাহ করবে। আপনার প্রথম প্রতিচ্ছবি হ'ল README, ইনস্টল করুন বা এর মতো অন্য কোনও পাঠ্য ফাইল সন্ধান করা উচিত। প্রকাশকের ওয়েবসাইট চেক করাও সহায়তা করতে পারে।

যেহেতু প্রতিটি প্যাকেজ আলাদা, তাই বিশ্বের প্রতিটি টার্বল প্রক্রিয়াজাত করার কোনও সর্বজনীন উপায় নেই। এটি এমন একটি রেসিপি জিজ্ঞাসার মতো যা বিশ্বের সমস্ত উপাদানগুলিতে কাজ করে। ঘটছে না.

আপনার সিস্টেম, আপনার ডিস্ট্রো এবং আপনার ডেস্কটপ পরিবেশ সম্পর্কে ভাল জ্ঞান সাহায্য করবে, সুতরাং এটি যদি আশ্বাস দেয় তবে লিনাক্স বিশ্বে সময় কাটানোর সাথে সাথে জিনিসগুলি আরও বেশি অনুমানযোগ্য দেখাবে।

একটি বিশেষ কেস: অটোটুলগুলি

প্রকল্পগুলি বড় হওয়ার সাথে সাথে তাদের সিস্টেমে সোর্স কোড থেকে বাইনারিতে সম্পূর্ণ ইনস্টল করার সরল উপায় সরবরাহ করা প্রয়োজন। এ কারণেই তারা একটি এম্বেডড বিল্ড সিস্টেম, প্রয়োজনীয় স্ক্রিপ্টগুলির সংগ্রহ সহ শিপ করে।

লিনাক্স / ওপেন সোর্স / ফ্রি সফটওয়্যার ওয়ার্ল্ডে একটি বিল্ড সিস্টেম ব্যাপকতর গ্রহণ করেছে: জিএনইউ অটোটুলস । যদি আপনি কখনও (এন ওপেন) উত্স প্যাকেজটি নিয়ে কাজ করেন তবে আপনার অটোটুলগুলি ব্যবহার করার যথেষ্ট সম্ভাবনা রয়েছে।

সবচেয়ে সহজ ক্ষেত্রে, অটোটুলগুলি সহ প্যাকেজযুক্ত অ্যাপটি কীভাবে ইনস্টল করবেন তা এখানে:

  • ./configure: এমন একটি স্ক্রিপ্ট যা আপনার সিস্টেমের সাথে সম্পর্কিত মেকফাইলগুলি উত্পন্ন করবে (এটি প্রায়শই নির্ভরতার উপলব্ধতার জন্যও পরীক্ষা করে থাকে)।
  • make: পূর্বে উত্পন্ন উত্পন্ন মেকফিলগুলি অনুসারে উত্স কোডটি সংকলন।
  • make install: বাইনারিগুলি উপযুক্ত স্থানে অনুলিপি করে, সিমলিংক তৈরি করে এবং বিকাশকারী কর্তৃক নির্ধারিত অন্য কোনও পদক্ষেপ।

মন্তব্য

  • configureস্ক্রিপ্টগুলিতে সাধারণত প্রচুর বিকল্প থাকে যেমন কোন সংকলকটি ব্যবহার করতে হয় বা কীভাবে লক্ষ্য ডিরেক্টরিটি সংজ্ঞায়িত করতে হয়। আপনার যদি নমনীয়তা প্রয়োজন, এটি দেখার মতো ./configure --help
  • এমনকি যদি আপনি নিশ্চিত হন যে এটি অটোটুলস এবং আপনি এটি সত্যই ভাল জানেন তবে সর্বদা ডক্স পড়ে শুরু করুন (পুনরায় পড়া, ইনস্টল করুন, ...)

প্রশ্নের আপডেটের উত্তর

আপনি যা জিজ্ঞাসা করছেন তার কোনও নির্দিষ্ট উত্তর নেই। "ভাল অনুশীলন" কে কী গঠন করে তা নিয়ে এখানে প্রত্যেকেরই মতামত থাকতে পারে তবে দিনের শেষে কেবল আপনার পক্ষে কী কাজ করে তা খুঁজে পেতে পারেন । যদি একটি সহজ উত্তর ছিল, আপনি প্রশ্ন জিজ্ঞাসা করা হবে না। আপনার ডিসট্রো আপনার জন্য এটি উত্তর দিতে হবে।

এটি বলা হচ্ছে, এখানে কয়েকটি ব্যক্তিগত মন্তব্য।

  • আমার সিস্টেমে, আমি /usr/local/binআমার প্যাকেজ পরিচালক দ্বারা ইনস্টল করা প্যাকেজগুলির জন্য সংরক্ষণ করি serve আমি হাত দিয়ে সংকলন / ইনস্টল করা সমস্ত কিছু ভিতরে যায় /opt। এটি একটি বিশদ তবে একই প্রোগ্রামটির বেশ কয়েকটি সংস্করণ নিয়ে কাজ করার সময় এটি প্রধান মাথাব্যথা এড়াতে সহায়তা করে।

  • xxx.desktop, এবং জিইউআই বিষয়গুলি সাধারণভাবে, আপনি যে ডেস্কটপ পরিবেশটি ব্যবহার করছেন তা সুনির্দিষ্ট। এটি যদি আপনার সিস্টেমে কাজ করে তবে দুর্দান্ত। তবে এটি ইউনিক্সে উপলব্ধ সমস্ত পরিবেশে সাধারণীকরণ করা যায় না।

  • /usr/local/binইতিমধ্যে আপনার পাথে থাকার সুবিধা রয়েছে । আপনি যদি অন্য কোনও ডিরেক্টরি ব্যবহার করতে চান ( /optযেমন আমি প্রস্তাব করি), এটি অবশ্যই আপনার রাস্তায় অন্তর্ভুক্ত করবেন। আপনি কীভাবে এটি করতে জানেন তা না হলে একটি টার্মিনাল খুলুন এবং একটি টার্মিনালে নিম্নলিখিতগুলি সম্পাদন করুন (এটি করার সর্বোপরি উপায় নয়, তবে আপনার সিস্টেম সম্পর্কে কিছু না জেনে আমি অন্য কিছু প্রস্তাব করতে পারি না):echo 'export PATH=$PATH:/opt' >> ~/.bashrc


বিস্তারিত প্রতিক্রিয়া জন্য ধন্যবাদ। আমি রেডমেসগুলিতে সন্ধান করেছি তবে আমি স্থির করেছি যে প্রতিবারই আমি আলাদা কিছু করতে চাই না। সুতরাং আরও অনেক গবেষণা, প্রচেষ্টা এবং হতাশার পরে, আমি আরও একটি সুনির্দিষ্ট প্রশ্ন / স্পেসিফিকেশন নিয়ে এসেছি - আপডেট পোস্টটি দেখুন।
রাইকি

আপনাকে স্বাগতম, আমি আশা করি এটি সাহায্য করবে :) আপনার আপডেটগুলি সম্বোধন করার জন্য আমি আমার উত্তর সম্পাদনা করেছি। মনে রাখবেন যে জিনিসগুলি করার কোনও "ওয়ান ট্রু ওয়ে" নেই (আপনি যদি emacsব্যবহারকারী হন তবে)। সময়ের সাথে সাথে বিভিন্ন পদ্ধতির প্রতিটিটির সুবিধা এবং ত্রুটিগুলি শিখতে আপনাকে পরীক্ষা এবং ত্রুটিগুলির মধ্য দিয়ে যেতে হবে।
রাহমু

আপডেটের জন্য ধন্যবাদ! অবশ্যই আছে। আমি অনুমান করছি xxx.desktopসাধারণত জিএনমের জন্য কাজ করে। update-alternativesপথ নির্ধারণের জন্য আপনি কী জানেন ?
রাইকি

1
আমি যতদূর জানি, এটি জেনেরিক সফ্টওয়্যার, যেমন একাধিক ব্রাউজার বা সম্পাদক থাকার মতো আচরণ করার একটি ডেবিয়ান-নির্দিষ্ট উপায়। (উবুন্টু এবং পুদিনা দেবিয়ান ভিত্তিক এবং এটি উত্তরাধিকার সূত্রে প্রাপ্ত হয়েছে)। আপনার আগ্রহ থাকলে এখানে আরও রয়েছে
রাহমু

দুর্দান্ত উত্তর। একটি জিনিস যা প্রায়শই প্রয়োজনীয় (বা কমপক্ষে পছন্দসই) হ'ল একটি সুডো মেক ইনস্টলটি শেষ ধাপ হিসাবে (আপনার বিশ্বাসের প্যাকেজের সাথে) করা। এটি প্রক্রিয়াটিকে আপনার ব্যবহারকারীর মালিকানাধীন নয় এমন সিস্টেম ডিরেক্টরিতে রাখার জন্য প্রয়োজনীয় অনুমতি দেয় (যেমন / usr / bin)।
জো

8

আমি মনে করি আপনি কী দিয়ে এটি "নিবন্ধভুক্ত" করতে চান তা আপনাকে নিজের সাথে পরিষ্কার করতে হবে ।

ব্যাখ্যা করার জন্য - এবং আমি স্মার্ট-অ্যালেকি হওয়ার চেষ্টা করছি না - "লিনাক্স" অবশ্যই কার্নেল, এবং কার্নেল না জানে এবং না আপনার সিস্টেমের ইউজারস্পেস সফ্টওয়্যার সম্পর্কে আরম্ভের পরেও আগ্রহী। সুতরাং আমরা এখানে কি সম্পর্কে কথা বলছি?

আপনি বিভিন্ন ডিস্ট্রো সংখ্যার উল্লেখ করেছেন। আমি কখনও কখনও উত্স থেকে সফ্টওয়্যার তৈরি করি যদিও এটি সংগ্রহস্থলটিতে পাওয়া যায় কারণ আমি কিছু কনফিগার অপশন সেট চাই যা ডিস্ট্রো বাইনারে সেট করা থাকে না। আমার একমাত্র সমস্যাটি হ'ল প্যাকেজটি যদি অন্য কোনও কিছুর জন্য পূর্বশর্ত হয় তবে আমি যেটি তৈরি করেছি তার উপরে দুর্ঘটনাক্রমে ডিস্ট্রো প্যাকেজটি ইনস্টল করতে এড়ানোর জন্য আমাকে অবশ্যই প্যাকেজিং সিস্টেমের সাথে এটি রেজিস্ট্রেশন করতে হবে। ফেডোরা / আরপিএম ভিত্তিক সিস্টেমে এটি সম্পন্ন হয় rpm -i --justdb <package>। আমি ডেবিয়ান / এপটি ভিত্তিক সিস্টেমে এটি করি না; পরিবর্তে আমি প্রয়োজন হিসাবে ইনস্টল করার জন্য কেবল জোর করি, যা সম্ভবত অলস - এটি করার একটি দুর্দান্ত উপায় বলে মনে হচ্ছে, একটি ডামি প্যাকেজ তৈরি করে যা পূর্বশর্ত যা পূর্ণ করার ভান করে। এটি এমটেনহাকের আসলে .tar.gz উত্স থেকে একটি প্যাকেজ তৈরি করার পরামর্শের পংক্তির সাথে সামঞ্জস্যপূর্ণ - কিছুটা সহজ সরল (আমি সত্যবাদী হব এবং বলব যে আমি এম0 নহকের পরামর্শের মতো নয়)।

দেখে মনে হচ্ছে আপনার প্যাকেজিং সিস্টেমটি ছাড়াও আরও কিছু সমস্যা রয়েছে। সেগুলি কী তা আমার কাছে পরিষ্কার নয়, যদিও আপনি ডেস্কটপ পরিবেশের (যেমন, জিনোম) উল্লেখ করেছেন। এগুলি ভিন্নধর্মী, সুতরাং "লিনাক্সগুলিতে আমি এটি কীভাবে করব" - এই প্রশ্নের কোনও উত্তর নেই, এটি "আমি উবুন্টুতে এটি কীভাবে করব" বা "আমি কীভাবে এটি করব" এমন প্রশ্নও নয় শিথিলু "- এটি" জিনোম ডেস্কটপের জন্য আমি এটি কীভাবে করব "বা" এক্সএফসিই ডেস্কটপে এটি কীভাবে করব "ইত্যাদি ইত্যাদির একটি প্রশ্ন আমার মনে আছে, আপনি যে উদ্বোধকগুলির উল্লেখ করেছেন তার মধ্যে একমাত্র বিষয়টি রয়েছে, যা আমি বিশ্বাস করতে চাই যে প্রতিটি ডিই এটি করার একটি সহজ উপায় সরবরাহ করে (তবে এটি ঠিক একই হবে না, কারণ তারা আলাদা are

এরপরে সার্ভিসগুলি রয়েছে, যা init সিস্টেম দ্বারা পরিচালিত হয় (যেমন, সিস্টেমড বা আপস্টার্ট)। সুতরাং এই প্রশ্নটি আসলে সম্পর্কিত সম্পর্কিত একটি সিরিজ, সম্ভাব্য:

  • প্যাকেজিং সিস্টেম, যেমন, উপযুক্ত বা ইয়ম
  • init সিস্টেম যেমন, সিস্টেমড বা আপস্টার্ট
  • ডেস্কটপ পরিবেশ, যেমন, কেডি বা unityক্য
  • ফাইলবারওয়ার, যেমন, নটিলাস বা কনকরার eror
  • ?????

একটি সহজ ইউনিফাইড সমাধান হতে পারে না তার কারণগুলির একটি অংশ (যদিও এক্সডিজি স্ট্যান্ডার্ড এর কিছু অংশ সরবরাহ করতে পারে ) এটি হ'ল "লিনাক্স" একটি সাধারণ ইউনিফাইড অপারেটিং সিস্টেম নয় এবং আমি কল্পনা করি এর ব্যবহারকারীর বেশিরভাগ অংশই সেটিকে পছন্দ করে। আমি প্রায়শই কোনও ডিই ব্যবহার করি না এবং তারা যে ফাইল ব্রাউজার নিয়ে আসে আমি কখনও ব্যবহার করি না etc.

আবার, আমি এটির জন্য সত্যই সাহায্য করার চেষ্টা করছি এবং কেবল প্যান্টিফিকেশন নয়: আপনি যদি এখানে সমস্যাগুলি সমাধান করতে চান তবে আপনাকে আরও স্পষ্টভাবে বিবেচনা করতে হবে যে সমস্যাগুলি কী এবং কোন সফ্টওয়্যার আসলে তাদের সাথে জড়িত (কেবল "লিনাক্সের বাইরে)" ") আপনি যদি তাদের সমাধান করতে চান।


"ডিস্ট্রো বাইনারিতে" <- / আমার উত্স-ভিত্তিক ডিস্ট্রো সম্পর্কে কিছুটা
বিস্ফোরণ ঘটায়

এছাড়াও, এক্সডিজি স্ট্যান্ডার্ডের সাথে একটি সমস্যা সম্ভবত কিছু আপস্রোমগুলি এগুলি যত্ন করে না এবং ডিস্ট্রো বিকাশকারীরা তাদের .desktopফাইল সরবরাহ করে , এই ধরণের কাজের জন্য এটি প্রয়োজনীয়।
এনজেএসজি

আমি জানি না যে উজানের বিকাশকারীদের এর সাথে উদ্বিগ্ন হওয়া উচিত কিনা। আমি কেবল এক্সডিজি উল্লেখ করেছি কারণ আপনি যদি এটি ব্যবহার করতে চান তবে এটি শেষ ব্যবহারকারীর জন্য উপলব্ধ । ভিন্ন ভিন্নতার একটি মূল্য হ'ল এটি অনিবার্যভাবে ব্যবহারকারীদের উপর দায়বদ্ধতার বোঝা চাপায় যা তারা রাখে না, যেমন, ওএসএক্স। কিছু লিনাক্স ডিগ্রো অন্যদের তুলনায় এটিকে আরও কমিয়ে আনার লক্ষ্য রাখে এবং আপনি চয়ন করতে পারেন তবে শেষ পর্যন্ত আমি মনে করি যে মডেলগুলির সাথে সত্যই অস্বস্তিকর লোকেরা কেবল লিনাক্সটি ব্যবহার করা উচিত নয় - তারা কেন চান তা আমি নিশ্চিত নই প্রথম স্থান, আসলে।
স্বর্ণলোক

আমি বাছাই করে একটি আরও ভাল প্রশ্ন তৈরি করেছি - আমার নিজের হাতে ইনস্টল থাকা অ্যাপ্লিকেশনগুলি কীভাবে পরিচালনা করব? ইক্লিপস এবং ফায়ারফক্সের মতো, যা সাধারণত জটিল নির্ভরতা ছাড়াই চলে (তাই আমি এটি নিজে সেট আপ করতে পারি এবং প্যাকেজটি ডাউনলোড করতে পারি)। তারা আপনার বা অন্য কারও হিসাবে উল্লিখিত হিসাবে এককভাবে কাজ করে, তবে আমার এই অ্যাপ্লিকেশনগুলিকে আমার ফাইল সিস্টেমের চারপাশে না রেখে, আমার কি এই অ্যাপগুলি ট্র্যাক করা উচিত? (আপডেট হওয়া প্রশ্নটি দেখুন)
রাইকি

Raekye: এটা আমার পয়েন্ট, যা আপনি, পরিচালনা করতে বা জিনিস আপনি, / usr / স্থানীয় উৎস থেকে ইনস্টল "এর সম্পর্কে অবগত থাকুন" কিছু করতে ততটাই যে ছাড়া হবে না কোনো পার্থক্য দেখা যায় না আপনি চান আপনার উদ্দেশ্য যাই হোক না কেন । $ PATH তে সংকলন এবং ইনস্টল করার বাইরে, কোনও সার্বজনীন লিনাক্স রেজিস্ট্রি নেই কারণ এই জাতীয় সার্বজনীন পদ্ধতির কোনও উদ্দেশ্য নেই। আমি ধরে নিচ্ছি আপনি কেবল চিন্তিত হয়ে পড়েছেন যে আপনি কিছু মিস করেছেন - আপনি করেননি। আপনি আন-টার, আপনি configure, আপনি make install। এটি হয়ে গেছে, হয়ে গেছে। এর পরে যে কোনও কিছুই ব্যক্তিগত পছন্দের বিষয়।
স্বর্ণলোকস

5

আমি মনে করি আপনার সামগ্রিক সমস্যার মূল কারণ হ'ল নিজস্ব লিনাক্স সিস্টেমে "রেজিস্ট্রি" নেই। কার্যকর করার যোগ্য ফাইল হ'ল কিছু চালানোর জন্য আপনার সত্যই প্রয়োজন। আপনি যদি এক্সিকিউটেবলের পুরো পথটি নির্দিষ্ট করতে না চান তবে বেশিরভাগ শেলগুলি আপনার পরিবেশে তালিকাভুক্ত ডিরেক্টরিগুলি $ PATH ভেরিয়েবলগুলিতে সেগুলি সন্ধান করবে। এটি লিঙ্কযুক্ত লাইব্রেরি ইত্যাদির সাথে আরও কিছুটা জটিল হয়ে উঠতে পারে তবে সাধারণত আপনাকে এতদূর বের করার দরকার নেই।

লিনাক্সের বিভিন্ন বিতরণ বিভিন্ন ফাইল সিস্টেম লেআউট এবং প্যাকেজ পরিচালনার সিস্টেমে মানক করা হয়েছে, এতে সমস্যাটি রয়েছে। রেডহ্যাটগুলি আরপিএম , ডেবিয়ানস / উবুন্টু ডিবে প্যাকেজ ব্যবহার করে। আর্কও নিজের মতো করে গেছে। একটি সফ্টওয়্যার প্রকল্পের দৃষ্টিকোণ থেকে, আপনি যদি কোনও বিতরণে অন্তর্ভুক্ত না করতে চান তবে আপনার ব্যবহারকারীর ভিত্তি সম্পূর্ণরূপে একটি ডিস্ট্রোতে থাকে বা প্রত্যেকের জন্য সহজেই ইনস্টল করার লক্ষ্যে যে বাণিজ্যিক পণ্য তৈরি হয়, সেগুলি সম্ভবত আপনি কেবলমাত্র পয়েন্ট যা আপনি বিল্ডিংয়ের দিকে চেয়ে দেখছেন বিভিন্ন প্যাকেজ।

প্রকৃতপক্ষে, একটি উত্স tar.gz যা এটি তৈরি করে gccতা সম্ভবত একটি সাধারণ "লিনাক্স প্যাকেজ" এর সর্বোত্তম সংজ্ঞা। লিনাক্স ভিত্তিক অপারেটিং সিস্টেমগুলির সমস্ত ভিন্ন স্বাদের মধ্যে সাধারণ জিনকে সম্পর্কে কিছু জিএনইউ ইউটিলিটিস এবং জিসিসি সহ একটি লিনাক্স কার্নেল।

প্যাকেজ হিসাবে "এতগুলি" জিনিস উপলব্ধ হিসাবে আমি যতদূর যেতে পারব না কারণ আপনি যে নির্দিষ্ট কিছু সন্ধান করছেন তা তা নয়। (বা সম্ভবত বিতরণকারী এই সমস্ত প্যাকেজটি নিয়ে ঝামেলা না করা বেছে নিয়েছে? ক্রোমের মতো এবং এটি নিজস্ব আপডেট প্রক্রিয়া)। সেখানে তাই হয় অনেক প্যাকেজ প্রায় তাই জন্য অনেক বিভিন্ন প্যাকেজ সিস্টেম জন্য এত আর্কিটেকচারের এত মুক্ত সফটওয়্যার তার না মজার

যদি আপনি এমন কিছু তৈরি করে থাকেন যা আপনার লিনাক্স বিতরণের জন্য প্যাকেজ হিসাবে সরবরাহ করা হয় না বা প্যাকেজ হিসাবে নির্মাণের বিকল্পকে সমর্থন করে তবে এটিকে সত্যিকারের প্যাকেজ হিসাবে "রেজিস্ট্রেশন" করার সর্বোত্তম উপায় হল এটির জন্য প্যাকেজ তৈরি করা, যেখানে সমস্ত সংজ্ঞায়িত করা হয় ফাইলগুলি আপনি যে প্যাকেজ সিস্টেমটি চয়ন করেছেন তার উপর ভিত্তি করে চলতে হবে এবং সেভাবে এটি ইনস্টল করা উচিত। আত্মার হয়ে উঠুন এবং আপনার প্যাকেজিংয়ের কাজে প্রকল্পের পিছনে অবদান রাখুন যাতে অন্যরা এতে উপকৃত হতে পারে।

আছে বিভিন্ন নির্দেশিকা সম্পর্কে ওয়েব প্যাকেজ নির্মাণের । দেবিয়ান তাদের মধ্যে অন্যতম

আপনি যা করতে চান তা যদি কোনও সঙ্কলিত প্যাকেজ চালানো হয় তবে বাইনারি পাথটি আপনার যুক্ত করতে পারেন $PATH?

আপনি যদি অন্য কিছু করছেন, এটি কি?


"আপনি যা করতে চান তা যদি একটি কম্পাইল প্যাকেজ চালানো হয় তবে সম্ভবত আপনার $ PATH তে বাইনারি পথ যুক্ত করুন?" <- আমি মনে করি যে কোনও বুদ্ধিমান ইনস্টলেশন প্রক্রিয়া (বলুন make installবা পছন্দ করুন) খুব কমপক্ষে একটি /usr/bin/সম্পূর্ণ /
সিমিলিংক

বেশিরভাগ ক্ষেত্রে, আমি অনুমান করি যে --prefix=/elsewhereকাস্টম বিল্ডগুলি সাধারণ গাছ থেকে দূরে রাখতে আমার প্রচুর কাজ করা হয়েছে ।
ম্যাট

1
সাধারণত, make install/usr/local/bin
টারবলগুলি

0

আমি যুক্ত করতে চাই যে আপনি এর ~/bin/পরিবর্তে সিলেমিংক করতে পারেন /usr/bin*.desktopফাইল স্থাপন করা যেতে পারে ~/.local/share/applications/বা /usr/share/applications/। কেবলমাত্র আমি আমার কম্পিউটার ব্যবহার করি এবং আমি যতটা সম্ভব নিজেরাই সিস্টেম ফাইলগুলি (আমার হোম ডিরেক্টরিের বাইরের যে কোনও কিছু) এড়ানো পছন্দ করি।

অবশ্যই, আপনি যখন "হোম ডিরেক্টরি" প্রতিপক্ষগুলিতে স্টাফ রাখবেন তখন তারা অন্য ব্যবহারকারীদের জন্য প্রদর্শিত হবে না।

~/.profileডেবিয়ান হুইজির জন্য এটি ডিফল্টের মধ্যে অন্তর্ভুক্ত :

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.