Mengapa "Airplane Mode" terus menghidupkan laptop HP saya di Ubuntu 18.04?

15

Saya memiliki laptop konversi HP Specter x360 dan saya menjalankan Ubuntu 18.04. Setiap kali saya memutar layar ke samping atau dalam mode tablet dan kembali, 'Mode Pesawat' diaktifkan. Bahkan, ketika saya boot dan login, saya harus mematikan 'Mode Pesawat' secara manual dan mengaktifkan wifi kembali. Saya tidak ingin menonaktifkan plugin gnome rfkill seperti: 'gsettings atur org.gnome.settings-daemon.plugins.rfkill active false' karena saya tidak bisa lagi menggunakan bluetooth. Juga, untuk beberapa alasan terkutuk, bahkan ketika saya DO menonaktifkan plugin, shell gnome tetap mengaktifkan 'Mode Pesawat', yang berarti bahwa saya harus mengaktifkan wifi kembali SETIAP kali saya masuk. Ini sangat menjengkelkan, saya sangat suka tempat 18.04 pergi tetapi ini benar-benar menghancurkan seluruh pengalaman gnome shell.

Nicholas Stommel
sumber
1
Apakah masalah muncul dengan 17.10? Saya memiliki laptop yang sama, dan saya memiliki masalah yang sama dengan Ubuntu 17.04. Yang membuatnya lebih buruk di 17.10 adalah bahwa tombol "mode pesawat / F12" tidak berfungsi lagi, jadi saya harus pergi ke menu kanan atas untuk mengaktifkannya lagi. Apakah Anda memiliki masalah yang sama?
Pierre-Antoine
Sejauh yang saya tahu, pengaturan kode kunci dengan benar pada startup juga memperbaiki masalah dengan tombol f12 mode pesawat tidak bekerja. Saat ini saya beralih tombol mode pesawat dengan sukacita karena akhirnya bekerja. Itu menjadi jelas bagi saya setelah saya mulai benar-benar menggunakan cangkang gnome di 17.10, karena saya tidak pernah menggunakan putaran Gnome.
Nicholas Stommel

Jawaban:

23

Dalam gnome shell, "Airplane Mode" secara otomatis diaktifkan saat boot untuk banyak laptop HP, ketika layar dimiringkan ke samping, atau ketika tutupnya dibuka / ditutup. Berikut ini adalah perbaikan untuk laptop HP yang menjalankan Linux dan menggunakan shell gnome. Keycode 240 didefinisikan sebagai KEY_UNKNOWN (semacam kunci tidak-op) di /usr/include/linux/input-event-codes.h. Juga syslog Anda tidak akan lagi meminta Anda menentukan kode HP e057 dan e058, yang bisa sangat menyebalkan.

Pertama adalah perbaikan menggunakan skrip init SysV klasik, ditempatkan di direktori init.d dan disinkronkan sesuai (Pada dasarnya, kami ingin menjalankan terlepas dari runlevel pada apa pun kecuali berhenti (0) atau reboot (6)). Kedua adalah layanan systemd yang jauh lebih dapat diandalkan dan mungkin hadir dengan perubahan systemd baru-baru ini, yang juga bekerja pada Fedora 28 dan platform distribusi lainnya. Khususnya pada Fedora, Anda akan menemukan hampir tidak adanya skrip di direktori /etc/init.d, bersama dengan sedikit README yang merinci transisi dari SysV ke systemd. Metode pertama akan bekerja, tetapi metode kedua jauh lebih "ramah masa depan" terutama mengingat ke mana Ubuntu menuju, dan juga akan bekerja dengan cara yang sedikit kurang ... menjengkelkan. Skrip init Systemd sebenarnya sangat berguna, dan sepenuhnya diimplementasikan dan digunakan di Ubuntu 18.04.

Metode SysV lama:

$ sudo sh -c 'printf "#! / bin / sh \ n / usr / bin / setkeycodes e057 240 e058 240 \ n"> /etc/init.d/hp-keycodes'
$ sudo chmod + x /etc/init.d/hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc1.d/K01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc2.d/S01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc3.d/S01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc4.d/S01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc5.d/S01hp-keycodes
$ sudo reboot

Metode Systemd Baru yang Direkomendasikan:

$ sudo nano /etc/systemd/system/hp-keycodes.service

Rekatkan baris berikut atau ketik ke dalam file:

[Satuan]
Deskripsi = Perbaikan kode setkey HP

[Layanan]
Ketik = oneshot
Mulai ulang = tidak
RemainAfterExit = tidak
ExecStart = / usr / bin / setkeycodes e057 240 e058 240

[Install]
WantedBy = rescue.target
WantedBy = multi-user.target
WantedBy = graphical.target

Simpan dan konfirmasikan nama file dengan ctrl-x, y.

$ sudo systemctl daemon-reload
$ sudo systemctl mengaktifkan hp-keycodes.service
$ sudo reboot

Dan itu saja, tidak ada lagi hal-hal aneh yang mengganggu ketika Anda memiringkan layar Anda atau menutup / membuka tutup laptop!

Nicholas Stommel
sumber
Ini berfungsi untuk Notebook HP 15-ac14ne saya
Tooniis
1
ini tidak berfungsi di ubuntu 17.10
nikhilweee
2
TERIMA KASIH. Ini berfungsi pada Spectre x360 saya ketika banyak solusi lain tidak.
Matt West
1
Bekerja untuk mode pesawat masuk dan rotasi layar pada 2015 HP 13 "Spectre x360 saya.
wakers01
1
Berfungsi sempurna untuk HP Spectre 13-4110nd x360
Hugo
1

Saya menghadapi masalah yang sama dengan 17.10 pada HP Specter x360 saya. Sebenarnya, saya menghadapi masalah Nicholas dan Pierre-Antoine:

  • Mode pesawat diaktifkan setiap kali saya masuk atau beralih ke mode tablet;
  • Fn + F12 (tombol Toggle Airplane Mode) tidak lagi berfungsi.

Untuk mengaktifkan wifi dengan cepat, saya membuat skrip kecil:

## Content of ~/scripts/wifi_toggle : ##
    #!/bin/bash
    str=`export LANGUAGE=en_GB ; nmcli r wifi`
    [ "$str" == "enabled" ] && nmcli r wifi off
    [ "$str" == "disabled" ] && nmcli r wifi on

Saya jarang menggunakan bluetooth, jadi hanya menangani wifi, tetapi Anda dapat memodifikasinya dengan mudah untuk menangani bluetooth dan wifi.

Semua ini adalah regresi yang jelas dari 17,04 di mana semuanya bekerja dengan sempurna. Saya mencoba beta 18,04 tetapi situasinya sama dengan 17,10.

Nicholas, Pierre-Antoine, saya mengisi seperti mengisi dua laporan bug tentang masalah ini (pada laporan per masalah). Apakah Anda pikir Anda dapat memiliki komentar dalam laporan ini setiap kali saya selesai melaporkan? Ini akan membantu mengonfirmasi status bug (lebih dari satu pengguna yang terpengaruh).

Bersulang

Antoine
sumber
Untuk menandai laporan bug yang memengaruhi seseorang, mereka harus mengklik Does this bug affect you?tautan tepat di bawah judul bug.
Chai T. Rex
Jika Anda mengajukan bug, bisakah Anda memposting tautan di sini sehingga orang lain yang memiliki masalah ini (termasuk saya) dapat berlangganan?
ec2011
Sayangnya, sejauh yang saya ketahui, ini benar-benar masalah perangkat keras notebook konversi HP yang mungkin tidak ada sama sekali di sebagian besar mesin, jadi menambahkan klausa khusus atau skrip init dalam paket repo resmi mungkin bukan solusi di semua. Ini tampaknya menjadi masalah kernel dan gnome-shell agak menjadi satu. Saya bisa mencoba untuk mengajukan laporan bug terhadap gnome-shell tetapi mereka baru saja beralih ke mimpi buruk gitlab beberapa waktu lalu. Kunci mode pesawat diperbaiki dengan jawaban yang direvisi (skrip systemd init).
Nicholas Stommel
Antoine saya sudah mencoba tetapi tidak berhasil untuk saya, bisakah Anda membantu saya di askubuntu.com/q/1146524
ARIF MAHMUD RANA