.ডেস্কটপ ফাইলটিতে পরিবর্তনশীল সেট করুন


75

.ডেস্কটপ ফাইলটিতে পরিবেশগত পরিবর্তনশীল সেট করার কোনও উপায় আছে কি? আমি কাস্টম gtk শৈলীতে অ্যাপ্লিকেশন (গ্রহন) চালানোর চেষ্টা করছি, তাই মূলত আমি .ডেস্কটপ ফাইল চালিয়ে নিম্নলিখিত ফলাফলটি পেতে চাই:

GTK2_RC_FILES=gtkrc.custom /path/to/eclipse

আমি এটিকে ব্যাশ স্ক্রিপ্টে রাখার চেষ্টা করেছি এবং এটি .ডেস্কটপ ফাইল থেকে চালানোর জন্য চেষ্টা করেছি, তবে এটি ইউনিটি লঞ্চারের সাথে ভালভাবে সংহত হয় না।

উত্তর:


111

আপনি কোনও অ্যাপ্লিকেশনটির .desktopফাইল সম্পাদনা করে একটি পরিবেশের পরিবর্তনশীল যুক্ত করতে পারেন । উদাহরণস্বরূপ, এনভায়রনমেন্ট ভেরিয়েবলের সাথে "ডিজিক্যাম" চালানোর APPMENU_DISPLAY_BOTH=1জন্য, সংশ্লিষ্ট digikam.desktopফাইলটি সন্ধান করুন এবং envকমান্ডের মাধ্যমে ভেরিয়েবলের সেটিংটি "এক্সিকিউটিভ" এ প্রবেশ করুন:

Exec=env APPMENU_DISPLAY_BOTH=1 digikam -caption "%c" %i

আপনার ক্ষেত্রে:

Exec=env GTK2_RC_FILES=gtkrc.custom /path/to/eclipse

1
আমি কীভাবে ব্যবহারকারীর সমন্বিত এনভির ভেরিয়েবল সেট করতে পারি $HOME? না Exec=env MYVAR="$HOME/foo"বা Exec=env MYVAR="~/foo"প্রসারিত হয় না। পরিবর্তে, তারা আক্ষরিক পাস করা হয়।
400 বিড়াল

মনে হয় বর্ণনা অনুযায়ী আপনি এটা করতে পারেন stackoverflow.com/a/8980518/1446479
peedee

9

সংশোধন করার একটি বিকল্প .desktopফাইল যেমন একটি মোড়কের স্ক্রিপ্ট করা হয় ~/bin

$ cat ~/bin/eclipse
#!/bin/sh
export GTK2_RC_FILES=gtkrc.custom
exec /usr/bin/eclipse "$@"

পরের বার অ্যাপ্লিকেশন প্যাকেজ আপডেট হওয়ার পরে কাস্টমাইজেশনটি ওভাররাইট করা হবে না।

সম্পাদনা:

কেন এটি কাজ করে সে সম্পর্কে একটি ইঙ্গিতটি PATHভেরিয়েবলের মধ্যে কী রয়েছে তা পরীক্ষা করে আপনি দেখতে পারেন । আমার ক্ষেত্রে:

$ echo $PATH
/home/gunnar/bin:/home/gunnar/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

~/binতালিকার প্রথম ফোল্ডার, এবং এভাবে আগে দেখা হবে /usr/bin


আপনি যদি আপনার স্থানীয় সেটিংসে আপনার .ডেস্কটপ ফাইলটি রেখে দেন তবে তা কোনওভাবেই ওভাররাইড হবে না won't
অস্পেক্স

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

আমি কীভাবে একটি মোড়ক লাগাতে দেখছি তা কীভাবে ~/binসহায়তা করবে। প্যাকেজের মালিকানাধীন .desktopফাইলটি কখনই সেই র‍্যাপার দেখতে পাবে না! আপনার এটিও ব্যবহার করতে হবেupdate-alternatives
অ্যাসপেক্স

@ অ্যাসপেক্স: .desktopফাইলটির মোড়কটি "দেখার" দরকার নেই। এটি কেবল কার্যকর করে eclipse, এবং PATHমোড়কের বদলে বেছে নেওয়া হয় /usr/bin/eclipse। আমি স্পষ্ট করে উত্তর সম্পাদনা করেছি।
গুনার হেজালমারসন

হ্যাঁ।। ডেস্কটপ ফাইলটির মোড়কটি দেখার দরকার নেই । আমি ভাবছিলাম যে গড় .desktop ফাইল সম্পূর্ণ পথ নির্দিষ্ট করে, কিন্তু আরো পরিদর্শন উপর আমি মনে করি সিস্টেম বেশী অধিকাংশ মাত্র একটি কমান্ড নাম-এবং উল্লেখ না তাই হবে আপনার মোড়কের দেখুন। যাইহোক, আমার কাছে থাকা একমাত্র ক্লিপ ডেস্কটপ ফাইলগুলি প্রশ্নের নির্দিষ্ট ফরম্যাটে রয়েছে Eএক্লিপস বাইনারিটিকে পুরো পথ প্রদান করে।
অস্পেক্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.