ฉันจะใช้ LightDM สำหรับเซสชันที่ผู้ใช้กำหนดได้อย่างไร


22

หากฉันยกเลิกการแก้ไขอย่างถูกต้อง LightDM จะเปลี่ยน GDM ต่อค่าเริ่มต้น ฉันสงสัยว่าเป็นไปได้หรือไม่ที่จะทำให้มันทำงานในสิ่งที่ฉันใส่ในไฟล์. xinitrc ของฉัน ... สิ่งที่ฉันต้องการคือตัวเลือกด้านล่าง "Unity" และ "Unity 2D" ซึ่งระบุว่า "เรียกใช้เซสชันที่ผู้ใช้กำหนด"

เป็นไปได้ไหม ควรเป็นสิ่งที่ง่ายที่สุด แต่ฉันไม่ได้เบาะแสจนถึงตอนนี้ ฉันส่งออกและกำหนดและเรียกใช้สิ่งต่างๆมากมายในไฟล์นี้ดังนั้นจึงเป็นสิ่งสำคัญที่ฉันจะต้องควบคุมมัน

สิ่งที่ฉันไม่ต้องการคือเซสชันที่กำหนดเองใน / usr / บาง / ที่ไหนฉันเพียงต้องการให้เรียกใช้เนื้อหาจาก xinitrc ของผู้ใช้แต่ละคน (หรือคล้ายกัน)

คำตอบ:


21

สร้างไฟล์ใหม่/usr/share/xsessions/custom.desktopด้วย:

[Desktop Entry]
Name=Xsession
Exec=/etc/X11/Xsession

ตอนนี้คุณควรจะมีตัวเลือกในเซสชั่นใหม่ในระหว่างการเข้าสู่ระบบ Xsession ~/.xinitrcจะโหลดของผู้ใช้


2
Ubuntu พิจารณาเฉพาะ ~ / .xsession หรืออาจ ~ / .xsessionrc และ ~ / .Xsession ทันที (12.04)
guigouz

เราจำเป็นต้องรีสตาร์ท X หรือเพียงแค่ออกจากระบบเพื่อให้มีผลใช้งานหรือไม่
tshepang

1

วิธีใช้ olvwm:

1) พิมพ์sudo apt-get install olvwmในคอนโซล

2) สร้างเซสชันนี้:

/usr/share/xsessions/olvwm.desktop
[Desktop Entry]
Name=Open Look
Exec=olvwm
Type=Application

1

สร้างไฟล์ใหม่/user/share/xsessions/default.desktop(ชื่อขึ้นอยู่กับคุณ แต่ต้องมี.desktopคำต่อท้าย):

[Desktop Entry]
Name=Default
Comment=This runs user session and logs you into Ubuntu
Exec=default
Icon=

ตอนนี้เมื่อคุณเลือกเซสชั่นนี้lightdmและเข้าสู่ระบบ~/.xsessionไฟล์ของคุณถ้ามีจะถูกดำเนินการ

โปรดทราบว่าไฟล์ของผู้ใช้ที่ถูกประหารคือ~/.xsessionและไม่ใช่~/.xinitrcซึ่งถูกกล่าวถึงในคำถาม ( ~/.xinitrcใช้เมื่อเริ่มเซสชัน X โดยใช้startxสคริปต์จากบรรทัดคำสั่ง)

คำอธิบายบางอย่าง: Nameรายการเป็นสิ่งที่lightdmจะแสดงสำหรับเซสชั่นนี้ Execรายการเป็นสิ่งที่สำคัญและมันควรจะเป็นชื่อของโปรแกรมที่เริ่มต้นเซสชั่นที่เกิดขึ้นจริง เมื่อคุณเข้าสู่ระบบให้lightdmเรียกใช้/etc/X11/Xsessionสคริปต์ส่งผ่านค่าของExecอาร์กิวเมนต์เป็นและXsessionในที่สุดก็จะรันโปรแกรมนี้ (ตัวอย่างเช่นมันอาจเป็นการstartxfce4เริ่มxfce4เซสชัน) หากExecรายการเป็นสตริงพิเศษdefaultจากนั้นXsessionจะดำเนินการ~/.xsessionไฟล์ของผู้ใช้ ( Xsessionจะดำเนินการ~/.xsessionหากถูกเรียกโดยไม่มี Aruments)

ขออภัยฉันใหม่ที่นี่และด้วยเหตุนี้ไม่สามารถแสดงความคิดเห็นในคำตอบของคนอื่น แต่ฉันต้องการแสดงความคิดเห็นในคำตอบที่ยอมรับเพื่อให้สิ่งที่ชัดเจน ตามคำอธิบายของฉันข้างต้นสิ่งที่จะเกิดขึ้นกับวิธีการคำตอบที่ว่าXsessionจะเรียกว่าโดยlightdmที่มีการโต้แย้งซึ่งเป็น Xsession(เส้นทางที่เต็มไปด้วย) ดังนั้นXessionจะเรียกใช้แล้วเรียกตัวเองในครั้งนี้โดยไม่มีข้อโต้แย้ง ที่สองถูกเรียกว่ามีการขัดแย้งใดจะดำเนินการของผู้ใช้Xsession ~/.xsessionดังนั้นการกระทำที่ต้องการในที่สุดจะถูกนำมาใช้ แต่ในทางที่น่าอึดอัดใจเล็กน้อย

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