จะรับรุ่น GNOME ได้อย่างไร?


39

มีวิธีใช้อย่างเป็นทางการเพื่อรับรุ่น GNOMEตราบใดที่ฉันมีเดสก์ท็อป GNOME ที่ใช้งานได้ (ทุกรุ่น) กำลังใช้งานอยู่ คำแนะนำเหล่านี้หลายข้อใช้ไม่ได้กับระบบของฉันไม่ว่าจะเป็นเพราะไฟล์ปฏิบัติการและ / หรือแพ็คเกจไม่อยู่หรือไม่มีรายการเมนู

คำตอบ:


49

GNOME 3 รุ่นถูกเก็บไว้ในไฟล์นี้:

/usr/share/gnome/gnome-version.xml

เนื้อหา (ในระบบของฉัน):

<?xml version="1.0" encoding="UTF-8"?>
<gnome-version>
 <platform>3</platform>
 <minor>6</minor>
 <micro>2</micro>
 <distributor>Arch Linux</distributor>
 <date>2012-11-13</date>
</gnome-version>

ไฟล์ดังกล่าวเป็นส่วนหนึ่งของแพ็คเกจอัพสตรีมที่เรียกว่าgnome-desktop(โปรดทราบว่า distros บางตัวแยกเป็นแพ็กเกจต่าง ๆ ดังนั้นใน distro ของคุณไฟล์อาจสิ้นสุดในแพ็คเกจด้วยชื่ออื่น ... )

GNOMEนักพัฒนาใช้ไฟล์นี้เพื่อรับหมายเลขเวอร์ชัน DE และแสดงในSystem Settings(aka gnome-control-center) เพื่อรับGNOMEรุ่น"วิธีอย่างเป็นทางการ"หมายถึงการแยกไฟล์และการสกัดกล่าวว่าplatform, minorและmicroค่า

หากคุณเล่นกับไฟล์นั้นคุณจะเห็นผลทันที :)

ป้อนคำอธิบายรูปภาพที่นี่

ในGNOME 2ไฟล์ที่เป็นปัญหาคือ:

/usr/share/gnome-about/gnome-version.xml

(แม้ว่าไฟล์นี้อาจหายไปในGnome 2รุ่นเก่าIIRC บางรุ่น)


และไม่มีคุณไม่ควรใช้คำสั่งเช่นgnome-session --version, gnome-shell --version, gdm --versionฯลฯ เหล่านี้คือ GNOME เดสก์ทอปส่วนประกอบพวกเขาจะแยกแพคเกจ (มีรหัสที่แตกต่างกันประวัติศาสตร์ / การเปลี่ยนแปลงและดูแล) และเป็นเช่นรุ่นของพวกเขาอาจจะแตกต่างกัน พวกเขาจะแจ้งสิทธิGNOMEรุ่นเฉพาะในกรณีที่พวกเขามีรุ่นเดียวกันเป็นgnome-desktop(ซึ่งเป็นไปไม่ได้เสมอกรณี)


1
การปรับปรุงที่เป็นมิตร: จากการเขียนนี้ Debian Stretch (การทดสอบ) ดูเหมือนว่าจะให้ไฟล์ /usr/share/gnome/gnome-version.xml ในแพ็คเกจ gnome-desktop3-data หากต้องการดูประวัติการติดตั้งบน Debian: zgrep "installed" /var/log/dpkg.log* | grep "gnome-desktop3-data" | cut -d ':' -f2- | จัดเรียง -r
iokevins

1
@iokevins - เป็นไปได้ ... แต่ฉันไม่ได้ใช้เดเบียน / อูบุนตู / อนุพันธ์และโพสต์ของฉันไม่ได้เฉพาะเจาะจง distro: upstream มีเพียงแพ็คเกจเดียวและนั่นคือgnome-desktop; distros บางคนอาจเลือกที่จะแยกบรรจุภัณฑ์และเรียกส่วนใดก็ตาม ฉันจะแก้ไขโพสต์ของฉันให้เฉพาะเจาะจงมากขึ้น
don_crissti

ฉันเห็นมันตอนนี้ - ชื่นชมการชี้แจง; ขอขอบคุณ!
iokevins

นี่คือbashตัวอย่างการใช้xmlstarletเพื่อสืบค้น XML ในไฟล์ที่ @don_crissti points
TomRoche

1
ขอบคุณ @don_crissti นี่คือสคริปต์ Python 3 เพื่อดึงข้อมูลจาก XML นั้น: gnome-version.py
Luciano Ramalho

3

ถ้าคุณเปิดgnome-system-monitorมันแสดงให้เห็นในรุ่นโต้ตอบ:

% gnome-system-monitor

กล่อง Fedora อายุ 14 ของฉัน

            เอสเอสของกล่องโต้ตอบการตรวจสอบ fedora

Ubuntu 12.04

             เอสเอสของกล่องโต้ตอบการตรวจสอบ Ubuntu


2

ลองgnome-session --versionดู มี man page สำหรับมันใน Debian ของฉัน (เช่นGNOME-SESSION(1)) แต่--versionตัวเลือกไม่ได้อยู่ในรายการ gnome-session 3.4.2.1ดีสำหรับผมมันบอกว่า

คุณสามารถเรียกใช้มันในคอนโซล

DISPLAY=":0" gnome-session --version

(อาจต้องเปลี่ยนการแสดงผล)


รายงานนี้ 3.2.1 และgnome-system-monitorรายงาน 3.4.2 ดังนั้นมันจึงดูไม่ถูกต้อง และดิชงของฉันก็ทันสมัยอยู่เสมอ
l0b0

ดูคำตอบของ don_crissti ในระบบของฉัน /usr/share/gnome/gnome-version.xml มี 3.4.2 อยู่ในนั้น gnome-session --version รายงาน 3.4.2 รายงาน gnome-system-monitor 3.4.1 ตามนั้นและในเช้าวันที่คร่าวๆฉันจะบอกว่า gnome-system-monitor เป็นขยะ การสำรวจเพิ่มเติมแสดงให้เห็นว่ารุ่น gnome-system-monitor (ไม่ใช่รุ่น gnome) คือ 3.4.1 .... นั่นคือสิ่งที่กำลังรายงาน การสำรวจเพิ่มเติมในเครื่องมือจัดการบรรจุภัณฑ์ของฉันแสดงให้เห็นว่าฉันมีแม้กระทั่งระบบที่ทันสมัยมีส่วนผสมของ 3.4.0 (คำพังเพยทั่วไป) 3.4.1 (gnome-shell) และ 3.4.2 (gnome-desktop3) ส่วนประกอบ gnome-session ฯลฯ )
SuperMagic

@ SuperMagic: ตัวเลขเหล่านั้นค่อนข้างคงที่แม้ว่ามันจะน่ารำคาญที่จะไม่ได้รับคำตอบที่ชัดเจน My /usr/share/gnome/gnome-version.xmlsays 3.4.2แต่gnome-session --versionบอก3.4.2.1ว่ามันถูกต้อง (?) อาจจะเป็นกำลังใจในการทำงานทั้งหมดนี้คือเวอร์ชั่นนั้นไม่ศักดิ์สิทธิ์ มันเป็นเพียงตัวเลข.
Emanuel Berg

2
$ apt-cache show gnome-shell | grep Version

(สดใสหรือเขี้ยวลากดิน)


3
อย่างที่ฉันบอกไว้ในโพสต์ของฉันgnome-shellเป็นเพียงgnome ส่วนประกอบดังนั้นวิธีนี้ไม่น่าเชื่อถือ ใช้สิ่งที่ devs gnome ใช้
don_crissti
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.