hannah-eee/arch-wiki-docs huggingface dataset:
Groff

Related articles
Man page
According to
Wikipedia
:
Groff (GNU troff)
is a typesetting system that reads plain text mixed with formatting commands and produces formatted output.
Output may be
PostScript
or PDF, html, or ASCII/UTF8 for display at the terminal. Formatting commands may be either low-level typesetting requests (“primitives”) or macros from a supplied set. Users may also write their own macros. All three may be combined. Using groff may be a solid alternative to
TeX Live
due to small size and native language.
Installation
You may find
groff
already installed on your system as it is a dependency of the
base-devel
package.
Otherwise
install
it as usual.
Package documentation
Detailed documentation and usage examples are available in
groff(1)
or its
Info
document
groff
.
You can also access the documentation at
https://www.gnu.org/software/groff/groff.html#documentation
.
Usage
Groff is a powerful and yet lightweight easy to use system.
You can see
an example
of document created with
-me
macros, however, groff has several built-in macros as well.
You may be interested in using
ms
for not complicated tasks or
mom
to produce scientific papers. See
groff_ms(7)
and
groff_mom(7)
.
See the following resources for feature information:
The Groff and Friends HOWTO
Creating Documents in Groff or LaTeX
Mom macros examples
Tips and tricks
Adding support for cyrillic fonts
If you see inappropriate symbols when outputting documents with cyrillic fonts to ps or pdf, take the following steps:
Download type1 fonts with cyrillic support (for example from
gs-type1_koi8_fonts.tgz
Arial, Times, Courier)
Place your cyrillic type1 fonts into
/usr/share/fonts/gsfonts
— this is default folder for ghostscript to find fonts
Create a copy of the original file before changing it:
cd
/usr/share/ghostscript/
YOUR_VERSION
/Resource/Init/
cp Fontmap.GS Fontmap.GS.backup
Change ghostscript fontmap file to associate default fonts with cyrillic ones, using '%' to comment lines with default associations.
Add
new aliases, as follows:
/usr/share/ghostscript/
YOUR_VERSION
/Resource/Init/Fontmap.GS
%/Times-Roman /NimbusRoman-Regular ;
 /Times-Roman  /TimesNRCyrMT ;
 /TimesNRCyrMT (times8.pfb) ;
Where '(times8.pfb)' is a name of your copied type1 font.
From now on you can prepend your default groff command with
iconv
prefix to print cyrillic symbols in ps files:
$ iconv -f utf-8 -t koi8-r test.ms | groff -ms -Tps > test.ps && ps2pdf test.ps test.pdf
Correctly display Polish diacritics
To display Polish diacritics:
$ groff -Kutf8 -Tdvi -mec -ms test.ms > test.dvi
$ dvipdfm -cz 9 test.dvi
See also
Groff parser and template engines for Rails
Mom macros
Mom macros full manual
Groovebasin

Groovebasin
is a music player server with a web-based user interface.
Run it on a server connected to some speakers in your home or office. Guests can control the music player by connecting with a laptop, tablet, or smart phone. Further, you can stream your music library remotely.
Groove Basin works with your personal music library; not an external music service. Groove Basin will never support DRM content.
Installation
Install
the
nodejs-groovebasin
AUR
package from the
Arch User Repository
.
Configuration
A configuration file is located in
/etc/groovebasin.json
you need to provide groovebasin with a configuration file or it will create a new one in the current directory named
config.json
.
Start the Server
To start groovebasin as a regular user run
$ groovebasin --start
A unit file is also available to
start
groovebasin.service
.
Web Interface
Open on your browser
https://localhost:16242/
.
NGINX Proxy
NGINX can be used to redirect traffic from port 16242 to 80 with the following configuration.
/etc/nginx/nginx.conf
location /groove/ {
        proxy_set_header    X-Real-IP  $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    Host $http_host;
        proxy_redirect      off;
        proxy_http_version  1.1;
        proxy_set_header    Upgrade $http_upgrade;
        proxy_set_header    Connection "upgrade";
        proxy_pass
http://127.0.0.1:16242/
;
}
H2

From the
project home page
:
H2 is a small Java based relation database, featuring:
Very fast, open source, JDBC API
Embedded and server modes; in-memory databases
Browser based Console application
Small footprint: around 2 MB jar file size
Installation
Install
the
h2
AUR
package.
Web Console / DB Management
This will launch a web based interface on port 8082.
$ h2-console
TCP / PG Server
This will launch a web based interface on port 8082, TCP server on port 9092, and PG server (a server that follows the PostgreSQL protocol) on port 5435
$ java -cp /usr/share/java/h2/h2.jar org.h2.tools.Server
One can connect using a JDBC url such as
jdbc:h2:tcp://192.168.103.128:9092/~/test
.
Note
The
-ifNotExists
flag can be used to generate an empty database.
Hamachi

Hamachi
is a proprietary, commercial VPN software by LogMeIn, Inc. With Hamachi you can organize two or more computers with an Internet connection into their own virtual network for direct secure communication.
Installation
Install
the
logmein-hamachi
AUR
package.
The following GUI frontends for Hamachi are available:
haguichi
AUR
(Gtk4, Vala)
quamachi
AUR
(Qt5, Python)
Configuration
Hamachi is configured in
/var/lib/logmein-hamachi/h2-engine-override.cfg
(create that file if it does not exist).
Unfortunately, it is not easy to find a comprehensive list of possible configuration options, so here are a few that you can use.
Using the hamachi command line tool as a regular user
In order to use the
hamachi
command line tool as a regular user, add the following line to the configuration file:
/var/lib/logmein-hamachi/h2-engine-override.cfg
Ipc.User
username
Automatically setting a custom nickname
Normally, Hamachi uses your system's hostname as the nickname that other Hamachi users will see. If you want to automatically set a custom nickname every time Hamachi starts, add the following line to the configuration file:
Setup.AutoNick YourNicknameHere
You can also manually set a nickname using the
hamachi
command line tool:
# hamachi set-nick YourNicknameHere
However, this needs to be done every time Hamachi is (re-)started, so if you always want to use the same nickname, setting it automatically (as explained above) is probably easier.
Usage
Start
logmein-hamachi.service
.
To get a list of all the commands, run:
$ hamachi --help
Note
Make sure you change the status of the channel(s) you are in to "online" if you want to perform any network actions on computers in there.
You can set Hamachi to start at every boot by
enabling
logmein-hamachi.service
.
Hardware probe

Related articles
List of applications/Utilities#System information viewers
hw-probe
(hardware probe)
is a
Perl
program which is able to:
collect output from a number of utilities—such as
lspci(8)
and
hwinfo(8)
—and some other logs,
analyze collected data:
check if drivers were loaded,
check for driver or hardware operability status (partially),
benchmark (quick and simple)—by using several tools such as
7-Zip
and
hdparm
,
contribute this information to the
Linux Hardware Database
.
Statistics that is based on the database data—both current and historical one—can be viewed at
Trends
.
Installation
Install
the
hw-probe
AUR
package. Additional packages that might be useful:
7zip
— benchmarking (with
--check-7z
or
--check-extended
option),
hdparm
— probing and benchmarking storage devices,
memtester
— memory testing during benchmarking,
mesa-utils
— probing and benchmarking
OpenGL
on
X
,
perl-json-xs
— JSON-formatted
devices.json
output file
.
Usage
Tip
hw-probe
does not have a
man page
. See the output of
hw-probe --help
, the project
README
and the
source code
.
Make a probe:
# hw-probe --all --upload
Decode ACPI tables (requires
acpica
package):
# hw-probe --all --upload --decode-acpi
Benchmarking
Specific benchmarking options:
--check-7z
— test CPU and RAM with
7z b
,
--check-cpu
— test CPU by applying
md5sum(1)
to 512 MB of zeroes from
dd(1)
,
--check-graphics
— test GPU with
glxgears
,
--check-hdd
— test storage devices with
hdparm(8) § t
,
--limit-check-hdd=
number
— limit
number
of drives to be tested—i.e. test only the first
number
of them,
--check-memory
— test 8
megabytes
of RAM with
memtester(8)
.
Note
These specific benchmarking options are not listed in the output of
hw-probe --help
, but most of them are mentioned in the
Operability
section of README.
If some testing tool—e.g.
memtester
or
glxgears
—is not present on your system,
hw-probe
silently skips its usage with no notice displayed, even if
--list
option was used.
Perform all benchmarking tests mentioned above, including 7-Zip one:
# hw-probe --check-extended
See also
lspci, lsusb, hwinfo, lshw
Hardware raytracing

This article or section needs expansion.
Reason:
This article needs feedback from users with compatible Intel & AMD hardware to expand its scope and accuracy (Discuss in
Talk:Hardware raytracing
)
This page will serve as a guide to the current state of Hardware raytracing support on Linux as well as provide information on how to set everything up.
In all cases it is assumed you will be running the game through Proton, VKD3D is required, DXVK will not work.
Note
Using raytracing requires that you set some
environment variables
, these can be set
globally
or
per user
.
AMD
AMD RDNA2 GPUs offer hardware raytracing support through onboard compute units, current performance is mixed. Since mesa 23, raytracing is enabled on a per game basis, and from
mesa
23.2 raytracing will be enabled by default for all applications.
GPU
- AMD RDNA2 series or newer
Driver
-
mesa
23 or newer,
vulkan-radeon
Usage
For mesa versions below 23.2, use the following
environment variables
:
RADV_PERFTEST='rt'
Intel
Intel ARC GPUs offer hardware raytracing support through onboard TSUs, current performance is mixed.
GPU
- Intel ARC GD/2 series or newer
Driver
-
mesa
22.3 or newer,
vulkan-intel
Kernel
-
linux-firmware-intel
(firmware is needed for
GuC support
)
Usage
Use the following
environment variables
:
VKD3D_CONFIG=dxr11,dxr
NVIDIA
NVIDIA's raytracing implementation for Linux is pretty much on par with Windows, that is to say, with supported hardware and the correct drivers RTX works well on Linux.
GPU
- Any card with the RTX moniker (RTX 2060+, RTX 3050+, RTX 4050+)
Driver
-
nvidia
or
nvidia-open
with
nvidia-utils
and
nvidia-settings
(with their lib32 variants). Driver version 510.60.02 or newer.
Note
Some outdated guides still recommend setting the following
environment variables
manually:
VKD3D_CONFIG=dxr11,dxr
PROTON_ENABLE_NVAPI=1
PROTON_ENABLE_NGX_UPDATER=1
Starting with Proton 8/9 and vkd3d-proton ≥ 2.11, these flags are no longer required: everything is now enabled by default.
Testing
Install
the package
raytracinginvulkan-git
AUR
then from a terminal run:
$ cd /opt/raytracinginvulkan/bin/
$ ./RayTracer
HASEE K650D i7 D3

This article or section does not follow the
Laptop page guidelines
.
Reason:
Needs a hardware table and a function keys section (Discuss in
Talk:HASEE K650D i7 D3
)
The HASEE K650D-i7-D3 is a powerful laptop, on which Arch Linux runs fine. For a lightweight window manager, some additional configuration should be setup.
Touchpad synaptics
xf86-input-synaptics
should be installed for a lightweight window manager (but not Gnome or KDE). In some cases, addition configuration is necessary for single-click, double-click and middle-click:
/etc/X11/xorg.conf.d/70-synaptics.conf
Section "InputClass"
    Identifier "touchpad"
    Driver "synaptics"
    MatchIsTouchpad "on"
        Option "TapButton1" "1"
        Option "TapButton2" "3"
        Option "TapButton3" "2"
EndSection
For details, see
Touchpad Synaptics
.
Backlight
Hot keys for backlight might not work after installation of Arch Linux, so
xorg-xbacklight
is necessary for backlight configuration. See
Backlight#xbacklight
[
broken link
: invalid section]
.
Video cards
Install
bumblebee along with Nvidia and Intel drivers
.
nvidia-open-dkms
is recommended for auto configuration after kernel updates.
Acceleration mode of the Intel video card should be changed to "uxa", according to
Intel graphics#AccelMethod
, so that firefox will not fail to scroll smoothly, and 3D games will run normally.
Audio
After
regular sound check
, additional configuration should be conducted. Run
aplay -l
to find default build-in Audio Analog Stereo. In current machine, you can find the card ID with 1 and the device ID with 0. Then following configuration file can be created as following:
~/.asoundrc
defaults.pcm.card 1
defaults.pcm.device 0
defaults.ctl.card 1
After that, run
alsamixer
to unmute.
Webcam
The webcam works out of the box. In order to test the device, see
Webcam setup#Applications
.
Software access point
A Wi-Fi access point can be created in this computer following
Software access point
. However, WPA/WPA2 will not work properly in
channel
1 ~ 9, so
channel
must be set at 10 or more in the configuration:
/etc/hostapd/hostapd.conf
channel=10
See also
Laptop
Microcode
should be installed for cpu.
UEFI/GPT mode is recommended for a rapid boot process; the default boot logo can be hidden under UEFI.
Micphone should be set to 0, and webcam should be covered for potential risk.
Hauppauge Nova-T Stick

The Hauppauge Nova-T Stick is an USB2.0 DVB-T tuner with an additional antenna port. It features:
Microtune MT2060 tuner
Dibcom DVB-T demodulator
USB 2.0 controller
Remote control
Installation
Plug in your Nova-T Stick. You should see the following:
# dmesg
usb 2-3: new high speed USB device using ehci_hcd and address 5
usb 2-3: configuration #1 chosen from 1 choice
dvb-usb: found a 'Hauppauge Nova-T Stick' in cold state, will try to load a firmware
dvb-usb: did not find the firmware file. (dvb-usb-dib0700-01.fw) Please see linux/Documentation/dvb/ for more details on firmware-problems. (-2)
The stick has been recognized, but it is not working yet because the firmware was missing. Download the
firmware file
and copy it to
/lib/firmware
.
Depending on your box number (e.g. 293) or device number (e.g. 70009), the kernel may require the firmware version to be
dvb-usb-dib0700-01.fw
. Either rename the firmware linked above or use a link.
Plug in the USB stick again, the result should look like this:
# dmesg
usb 2-3: new high speed USB device using ehci_hcd and address 7
usb 2-3: configuration #1 chosen from 1 choice
dvb-usb: found a 'Hauppauge Nova-T Stick' in cold state, will try to load a firmware
dvb-usb: downloading firmware from file 'dvb-usb-dib0700-01.fw'
dib0700: firmware started successfully.
dvb-usb: found a 'Hauppauge Nova-T Stick' in warm state.
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (Hauppauge Nova-T Stick).
DVB: registering frontend 0 (DiBcom 7000PC)...
MT2060: successfully identified (IF1 = 1220)
dvb-usb: Hauppauge Nova-T Stick successfully initialized and connected.
Configuration
User permissions
In order to have access to the USB stick, you will have to add yourself to the
video
user group
.
Getting channels
Install
linuxtv-dvb-apps
AUR
.
We need a
initial scan file
. This file is needed for
scan
to work properly. It provides a frequency that
scan
is going to use as a starting point from which it will proceed with its scan. These files are specific to your geographic location and have the form of
cc
-
Location
, where cc is a two-letter country code. You will find scan files in the official
dvb-apps repository
[
dead link
2024-07-30—HTTP 404]
.
If you cannot find a suitable initial scan file, then you can build your own with
w_scan_cpp
AUR
:
$ w_scan -x >
cc
-
Location
For example in Leipzig, Germany; you would look for a file called
de-Leipzig
:
$ scan de-Leipzig > leipzig.conf
After a few seconds, the scan should finish and all found channels will been written into
leipzig.conf
.
Usage
Various players such as
kaffeine
,
xine-ui
,
MPlayer
or
VLC media player
should be able to open the previously created
leipzig.conf
to watch TV.
External Links
Official LinuxTV site
Hauppauge Germany product page
[
dead link
2025-01-19—HTTP 404]
Haveged

Related articles
Rng-tools
This article or section is out of date.
Reason:
Using the Haveged service is obsolete since kernel v5.6, see
haveged's README
and
[1]
[2]
. This page needs a rewrite to focus on the library and user space usage. (Discuss in
Talk:Haveged
)
The
haveged project
is an attempt to provide an easy-to-use, unpredictable
random number generator
based upon an adaptation of the HAVEGE algorithm. Haveged was created to remedy low-entropy conditions in the Linux random device that can occur under some workloads, especially on headless servers.
Warning
The quality of the generated entropy is not guaranteed and sometimes contested (see
LCE: Do not play dice with random numbers
and
Is it appropriate to use haveged as a source of entropy on virtual machines?
). Use it at your own risk or use it with a hardware based random number generator with the
rng-tools
(see
#Alternative
section)
Installation
Install
the
haveged
package.
Start
and
enable
haveged.service
.
List available entropy
This article or section is out of date.
Reason:
The random pool is 256 now, always. See
Random number generation#Kernel built-in RNG
(Discuss in
Talk:Haveged
)
If you are not sure, whether you need haveged, run:
# cat /proc/sys/kernel/random/entropy_avail
This command shows you how much entropy your server has collected. If it is rather low (<1000), you should probably install haveged. Otherwise cryptographic applications will
block
until there is enough entropy available, which eg. could result in slow wlan speed, if your server is a
Software access point
.
You should use this command again to verify how much haveged boosted your entropy pool after the installation.
Alternative
Unless you have a specific reason to not trust any hardware random number generator on your system, you should try to use them with the
rng-tools
first and if it turns out not to be enough (or if you do not have a hardware random number generator available), then use Haveged.
Virtual machines
As discussed at
Is it appropriate to use haveged as a source of entropy on virtual machines?
, it can be contested whether haveged provides quality entropy within a virtual environment. Haveged relies on the rdtsc instruction, which may be virtualized within a virtual machine resulting in lower quantity entropy. On some hypervisors, it is possible to disable the virtualization of rdtsc, which would in theory allow haveged to provide higher quality entropy.
See also
Official website
DigitalOcean's article on haveged
Hddtemp

Related articles
lm_sensors
Conky
Hddtemp
is a small utility (with daemon) that gives the hard-drive temperature via
S.M.A.R.T.
(for drives supporting this feature).
Tip
A more versatile option to access drives temperatures is
lm_sensors
, as it also handles other data.
Installation
Install
the
hddtemp
package.
Usage
Hddtemp requires
root user
privileges. The command
hddtemp
must be followed by at least one drive's location. You can list several drives separated by spaces:
# hddtemp /dev/disk/by-id/wwn-0x60015ee0000b237f /dev/sd
X2
... /dev/sd
Xn
Note
Block device naming under
/dev/
, like
/dev/sd
X
, is inconsistent. See
Persistent block device naming
for more information.
Further usage information is available in
hddtemp(8)
.
Daemon
Running the daemon allows access to the temperature information via TCP/IP as a regular user. This is useful for scripts and system monitors.
The daemon is
controlled
by
hddtemp.service
.
To get the temperature, connect to the daemon which listens on port 7634.
With
inetutils
:
$ telnet localhost 7634
With
openbsd-netcat
:
$ nc localhost 7634
Both outputs are similar to:
|/dev/sda|ST3500413AS|32|C||/dev/sdb|ST2000DM001-1CH164|36|C|
For a better looking statistic:
$ nc localhost 7634 |sed 's/|//m' | sed 's/||/ \n/g' | awk -F'|' '{print $1 " " $3 " " $4}'
/dev/sda 32 C 
/dev/sdb 36 C
Override default disk
The default Hddtemp daemon only monitors
/dev/sda
. If you have multiple disks, you need to
override
the default configuration to monitor them.
If you will need to know which hard drives support monitoring, you can check with
smartmontools
.
Edit
hddtemp.service
:
[Service]
ExecStart=
ExecStart=/usr/bin/hddtemp --daemon --foreground /dev/disk/by-id/wwn-0x60015ee0000b237f /dev/sdb --listen=127.0.0.1
Change the device names to the ones you want to monitor.
After editing, save the file and exit from editor.
systemd
will apply changes and reload
hddtemp
service automatically.
You can also use the
auto-generate
script will detect supported hard drives using
smartmontools
and print to the stdout.
Monitors
Hddtemp can be integrated with
system monitors
.
Conky
has built in support for Hddtemp in daemon mode. Just
enable
hddtemp.service
and add
$hddtemp °C
to your Conky configuration file.
Solid State Drives
Hddtemp usually reads field
194
from the smart data of the drive. In SSDs temperature information is usually stored in field
190
. To obtain these information, one can run:
# smartctl --all /dev/sd
x
or
# hddtemp --debug /dev/sd
x
where
/dev/sd
x
is the drive (use
lsblk
to check this).
Alternatively, add a new entry in
/etc/hddtemp.db
. For example:
# echo '"Samsung SSD 840 EVO 250GB" 190 C "Samsung SSD 840 EVO 250GB"' >> /etc/hddtemp.db
Helix

Related articles
Kakoune
Neovim
List of applications/Documents#Vi-style text editors
Helix
is a modal text editor written in Rust and inspired by
Neovim
and
Kakoune
. It implements changes to the traditional Vim workflow similar to Kakoune's, like selection-based editing and multi-cursor support. Helix bundles and enables many features out of the box. It does have adding
custom language support
and
#Plugins
support.
Installation
Install
the
helix
package.
Configuration
Note
The launcher binary is renamed as 'helix', due to conflicts with the package
hex
. Users wishing to use hx instead of helix need to make an
alias
Helix reads an optional
~/.config/helix/config.toml
configuration file. See
this
page of the official documentation for a list of available options.
Usage
For a basic overview on how to use
helix
, follow the
helix tutorial
by running either
helix --tutor
or
:tutor
.
Syntax highlighting
To enable
syntax highlighting
for many programming languages:
install an
lsp
then edit
~/.config/helix/languages.toml
to include it
Indentation
Helix will detect the indentation used in the file, or otherwise defaults to the language indentation configured in languages.toml, with a fallback to tabs if it is not specified.
example:
name = "javascript"
indent = { tab-width = 4, unit = "    " }
Using the mouse
helix
has the ability to make use of the mouse already set to true by default,
To disable this feature, add this line into
~/.config/helix/config.toml
:
mouse = false
Tips and tricks
Line numbers
By default absolute line numbers are shown, relative numbers can be enabled with
:line-number
or in the config
~/.config/helix/config.toml
.
Jumping to a specific line is possible with
:
line number
or
line number
gg
.
Spell checking
Helix
has the ability to do spell checking, enable by installing a tree-sitter package
True color support
True color support is enabled by default
Language Server Protocol
Helix contains a built-in
Language Server Protocol
client.
To enable it, follow the
wiki
See
Language Server Protocol
for a list of Arch packages.
Plugins
As of march 2026, the plugin system hasn't been merged into mainline, you can try this fork at
helix-steel-git
AUR
.
Adding plugins to
Helix
can increase your productivity by extending
Helix
features. Plugins can alter
Helix
UI, add new commands, enable code completion support, integrate other programs and utilities with
Helix
, add support for additional languages and more.
Tip
For a list of popular plugins, see
helix-plugins
.
See also
Github repository
Official documentation
Migrating from Vim
Help:Category

Every article must be categorized: categories are displayed at the bottom of each article (or in a sidebar in the
Timeless
skin). This page will explain how to set page category, how to create missing categories pages and how to move a page to a different category. For the related style rules, see
Help:Style
.
Articles and categories used as examples in this article are not real. If you want to practice moving while reading this page, find a
real
page you want to move.
Note
Everything that is discussed in this article applies to categories themselves in quite the same way (i.e. categories can also be categorized).
Set page category
Click
Edit
at the top of the page. Add the following to the beginning of the text:
[[Category:Some Category]]
Use existing categories when possible: you can find the whole category tree at
Table of contents
. Only if there is no suitable category for your new article, do save the page with the non-existent category name, but then follow
#Create new category page
.
Create new category page
After you have saved the page, you will see a "Category: Some Category" link at the bottom of the article. If this category does not exist it will be highlighted in red. Click the red link to go to the newly created category.
Set it to be a sub-category of an existing parent category:
[[Category:Parent Category]]
Finally save the category page.
If you think the new category needs a parent that does not exist yet either, please open a discussion in the new category's talk page instead of creating a whole new tree of categories by yourself.
Move a page into a different category
To move a page into a category, edit the page's
[[Category:Some category]]
line.
For example, let us move a fictional page "ArchWiki Tutorial (Magyar)" to an appropriate fictional category. (Moving to existing categories is basically the same as moving to non-existing categories.)
Click
Edit
at the top of the page. Find the following line at the beginning of the text:
[[Category:Help]]
change it to:
[[Category:Help (Magyar)]]
Save the page by clicking the
Save changes
button just below the edit box.
i18n category name
Category titles follow the same rules described in
Help:i18n#Page titles
, but note that they cannot take advantage of
Help:i18n#Localized redirects
simply because MediaWiki does not support them.
Category list
To find out more about ArchWiki categories:
Examine the
Table of contents
.
A full list of categories:
Special:Categories
A list of uncategorized categories:
Special:Uncategorizedcategories
A list of uncategorized articles:
Special:Uncategorizedpages
A list of empty categories:
Special:Unusedcategories
HexChat

Note
Upstream's git repository has been
archived since February 2024
, it is no longer maintained.
HexChat
is a multi-platform IRC client for
GTK
.
Installation
Install
hexchat
AUR
. The development version is
hexchat-git
AUR
.
For spell checking install
enchant
, see
Language checking
for available dictionaries. Restart HexChat for changes to take an effect.
Configuration
HexChat stores configuration files in
~/.config/hexchat
, XChat does so in
~/.xchat2
.
SSL and SASL
Enable SSL and SASL in Network List (
Ctrl+S
) > Network name > Edit. See also
Configuring SASL for Hexchat
.
GNOME integration
To use the new Notifications and messaging tray, activate the following options in Settings > Preferences > Chatting > Alerts:
Show tray balloons
Blink tray icon (optional)
Enable system tray icon: unchecked (the icon appears automatically if you have pending notifications)
Troubleshooting
Missing tray icon
See
bug report
If HexChat was loaded
before
the panel containing its icon, for example when the panel is forcibly reloaded, the icon may be invisible.
[1]
To restore the icon, run:
$ hexchat --existing --command="set gui_tray 0"
$ hexchat --existing --command="gui apply"
$ hexchat --existing --command="set gui_tray 1"
$ hexchat --existing --command="gui apply"
Or restore the main window with:
$ hexchat --existing --command="gui show"
See also
HexChat documentation
HexChat Themes
Himitsu

Himitsu
is a secure secret storage system for Unix-like systems.
It is extensible and suitable for storing passwords, private keys, logins, etc.
Himitsu secrets are stored in a arbitrary key/value store, accessible via a
daemon
.
Himitsu also provides a command-line interface and query language for the store.
Himitsu is designed for various integrations and frontends, including the graphical
himitsu-keyring
application.
Installation
Install
the
himitsu
AUR
package.
You will also need a Himitsu prompter:
hiprompt-gtk-py
AUR
.
Configuration
The
himitsu(7)
man page is worth reading.
The following is a guide specific to an Arch Linux installation of
himitsu
AUR
.
Firstly, you will need a himitsu secstore (secrets store) and some basic configuration.
Initialize these with
himitsu-store(1)
.
$ himitsu-store -i
You will then need to configure Himitsu to use your prompter of choice.
Edit the
himitsu.ini(5)
config file. For example, for
hiprompt-gtk-py
AUR
:
~/.config/himitsu/config.ini
[himitsud]
prompter=hiprompt-gtk
The Himitsu
daemon
himitsud(1)
can now be run.
The Himitsu package comes with a systemd
user unit
,
himitsud.service
.
Starting/enabling
it runs
himitsud
in the background.
Usage
Use the
hiq(1)
command to query and manage the keystore.
You can manage the keystore graphically using
himitsu-keyring
AUR
.
Integrations
Himitsu has integrations for various software.
SSH
The
himitsu-ssh
AUR
package provides an
SSH agent
and utilities for using and storing
SSH keys
in the Himitsu keystore.
For
ssh
to use the Himitsu SSH agent, it is required that:
The agent is running (
enable/start
the included
hissh-agent.service
user unit
).
The
$SSH_AUTH_SOCK
environment variable
is set to the Himitsu SSH agent's socket (i.e.
$XDG_RUNTIME_DIR/hissh-agent
).
See
hissh-agent(1)
.
With that,
ssh
will consult the Himitsu keystore for SSH key data.
Firefox
The
himitsu-firefox
AUR
package provides the backend (a native messaging component) for the official
Firefox Himitsu Add-on
.
Once both installed, Firefox can consult the Himitsu keystore for logins/passwords, from keystore entries with the
proto=web
key-value pair.
The add-on implements the "web" protocol.
Home Assistant Supervised

Related articles
Home Assistant
AppArmor
Home Assistant
is an open source home automation software that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Supervised is a type of installation that provides the ability to use more features, like Addons installation from UI.
Install
Install
the
homeassistant-supervised
AUR
package.
And guarantee that
AppArmor
is correctly installed and configured.
Note
CGroup v1 is not mandatory anymore since release 3.0.0. So remove the required
kernel parameter
systemd.unified_cgroup_hierarchy=false
for earlier releases.
The supervised flavor of Home Assistant has been deprecated and will no longer be supported by upstream. See
[1]
Configuration
Supervised configuration files are stored at
/var/lib/homeassistant/
. If no configuration exists, a default configuration will be written at startup.
To access just Home Assistant's configuration files go to
/var/lib/homeassistant/homeassistant/
.
If installed before v3.0.0
Supervised configuration files were changed from
/usr/lib/hassio/
to
/var/lib/homeassistant/
. You can keep the old configuration. You can change the location by setting the
data
value in the config file
/etc/hassio.json
.
Usage
To start Home Assistant,
start/enable
hassio-apparmor.service
and
hassio-supervisor.service
.
The first start may take up to 20 minutes because the required packages will be downloaded and installed.
[2]
.
By default, the web interface is available at
http://localhost:8123
.
Troubleshooting
Before doing anything, check if supervisor is Connected and the installation Healthy. You can do that by accessing the
Observable Plugin
, which can be accessed at
http://localhost:4357
.
Supervisor not connected
Check if
hassio-supervisor.service
is
started/enabled
.
Check if your supervisor container is up and running.
# docker ps | grep hassio_supervisor
Supervisor connected but installation Unhealth
Check if your
AppArmor#Display current status
is correctly installed and configured.
Check if you
start/enable
hassio-apparmor.service
service.
Look at Supervisor logs for additional information:
# docker logs -f hassio_supervisor
file /etc/hassio.json does not exist
Make sure you have the
/etc/hassio.json
configuration file.
If not, create it and fill it with sample data:
{
    "supervisor": "ghcr.io/home-assistant/amd64-hassio-supervisor",
    "machine": "generic-x86-64",
    "data": "/var/lib/homeassistant"
}
hpfall

Related articles
Hard Drive Active Protection System
hpfall
is a simple daemon providing HDD shock protection for HP laptops supporting the feature officially called "HP Mobile Data Protection System 3D" or "HP 3D DriveGuard".
Installation
Install
hpfall-git
AUR
.
Configuration
You need to set your hard drive in the configuration file:
/etc/conf.d/hpfall
#
# Parameters to be passed to hpfall
#
DEVICE=/dev/sd
X
Start
and
enable
hpfall.service
Testing
After rebooting with new kernel, check if
hp_accel
was initialized correctly through the
journal
.
Testing Shock protection
Warning
Be careful while performing this test and keep your laptop above something soft. Simulating free fall over the desk is bad idea.
Find your HDD's unload_heads file:
# find /sys -name unload_heads
Go to its directory and run:
# watch --difference=permanent cat unload_heads
Lift your laptop into free space and simulate a free fall while holding it firmly with your hands (~10 cm should be enough).
If the disk protection works, you should hear your HDD making "click" sound and see one of your laptop's LEDs flashing. The watch value's background should also permanently turn black.
HP EliteBook 745 G4

This article or section does not follow the
Laptop page guidelines
.
Reason:
Stub (Discuss in
Talk:HP EliteBook 745 G4
)
Hardware
PCI/USB ID
Working?
Bluetooth
Yes
Webcam
Yes
Ethernet
Untested
Wi-Fi
Yes
GPU (AMD)
Yes
Touchpad
Yes
Pointing stick
Yes
Keyboard
Yes
TPM
Yes
Fingerprint reader
No
SD-card reader
Yes
Speakers
Yes
Microphone
Yes
Smartcard Reader
Yes
4G modem
Yes
Dock
Yes
Function keys
Key
Visible?
1
Marked?
2
Effect
Fn+ESC
Yes
No
XF86AudioMicMute
Fn+F1
Yes
3
Yes
XF86Sleep
Fn+F3
No
Yes
Adjust keyboard backlight (HIGH->LOW->OFF)
Fn+F4
Yes
Yes
XF86Display
Fn+F5
Yes
Yes
XF86MonBrightnessDown
Fn+F6
Yes
Yes
XF86MonBrightnessUp
Fn+F8
Yes
Yes
XF86AudioLowerVolume
Fn+F9
Yes
Yes
XF86AudioRaiseVolume
Fn+F10
Yes
Yes
XF86AudioMicMute
Fn+F12
Yes
Yes
Num_Lock
The key is visible to
xev
and similar tools
The physical key has a symbol on it, which describes its function
systemd-logind handles this by default
Smartcard Reader
Works perfectly with
opensc
. Read
Smartcards
for more info.
4G modem
Works fine, can be controlled via
nmcli / nmtui
or
GNOME
settings.
Tested with HP lt4132, but lt4120 and hs3210 should be supported too. (Check
manual
for more information)
See also
Specifications:
https://web.archive.org/web/20231008181526/https://support.hp.com/us-en/document/c05350207
Product support page:
https://support.hp.com/us-en/product/setup-user-guides/hp-elitebook-745-g4-notebook-pc/model/11084776
Official service manual:
https://web.archive.org/web/20250723094402/https://h10032.www1.hp.com/ctg/Manual/c05366628.pdf
Linux-hardware probes:
https://linux-hardware.org/?probe=8a9290f8a1
HP EliteBook 745 G5

This article or section does not follow the
Laptop page guidelines
.
Reason:
Stub (Discuss in
Talk:HP EliteBook 745 G5
)
Hardware
PCI/USB ID
Working?
AMD graphics
Yes
VGA
Yes
HDMI
Yes
Ethernet
Yes
Wireless
Yes
Bluetooth
Yes
Audio
Yes
Touchpad
Yes
Pointing stick
Yes
Camera
Yes
Fingerprint reader
No
Smart card Reader
Yes
4G modem
Yes
Dock
Yes
Firmware
The last firmware is mandatory to modify the BIOS parameters. At the moment of writing this entry: 01.09.01 Rev.A.
In upgraded BIOS, disable the secure boot to be able to load any
boot loader
.
From Windows, it is easy to force the UEFI priority:
https://www.rodsbooks.com/refind/installing.html#windows
Be careful with rEFInd:
https://www.reddit.com/r/archlinux/comments/cgkhop/help_refind_boot_manager_hangs_seconds_after/
In this specific case, avoid option scanfor internal.
Kernel options
The factual accuracy of this article or section is disputed.
Reason:
The five year old reddit post offers no explanation on the "recommended" parameters. (Discuss in
Talk:HP EliteBook 745 G5
)
System freezes randomly when the proper parameters are not loaded
https://www.reddit.com/r/linuxhardware/comments/afktfv/linux_freezes_and_amd_2500u_chipset/
Recommended
kernel parameters
:
idle=nomwait amdgpu.gpu_recovery=1 amd_iommu=pt audit_enabled=0
AMD graphics
Use
AMDGPU
.
To avoid any problem, make sure
amdgpu
has been set as the first module in the
mkinitcpio#MODULES
array, e.g.
MODULES=(amdgpu radeon)
. Take care as the original
EFI system partition
could have not enough space for amdgpu and radeon modules.
SmartCard reader
Works perfectly with
ccid
&
opensc
. Read
Smartcards
for more info.
Function keys
Usual function keys work out of the box. Keyboard Backlight controls work out of the system, so it is perfectly working in Linux.
However, rare keys as telephone or calendar are not assigned to anything.
You can
remap using udev
.
For example, the call key can be remapped as an insert key by creating
/etc/udev/hwdb.d/90-custom-keyboard.hwdb
that contains this:
/etc/udev/hwdb.d/90-custom-keyboard.hwdb
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn*:pn*:pvr*
 KEYBOARD_KEY_66=insert
Audio
If you have trouble to get audio properly working (e.g. no audio input or no audio output after adjusting volume) and you see errors in the
journal
:
pulseaudio[2299]: Failed to create sink input: sink is suspended.
Comment out the following line like this:
/etc/pulse/default.pa
#load-module module-suspend-on-idle
HP EliteBook 840 G2

This article or section does not follow the
Laptop page guidelines
.
Reason:
Still missing a firmware section and some IDs in the hardware table. (Discuss in
Talk:HP EliteBook 840 G2
)
Hardware
PCI/USB ID
Working?
Touchpad
Yes
GPU
8086:1616
Yes
Ethernet
8086:15a2
Yes
Wi-Fi
8086:095a
Yes
Bluetooth
8087:0a2a
Yes
Audio
8086:160c
Yes
8086:9ca0
Yes
Webcam
04ca:704d
Yes
Fingerprint reader
138a:003f
Untested
Memory Card Reader
10ec:5227
Yes
Smart Card Reader
Yes
Accessibility
The BIOS is not text-only: there is some menu composed of a list of blocks like in a graphical interface. Some parts are playing with mixes of white/blue color, but main parts are black-on-white and interface is mainly clean, so it might work well with OCR software. It does provide mouse support.
Note
Blind users should request the help of a sighted person to change BIOS settings.
Selecting the boot medium and changing settings may be accessed by pressing
F9
during POST.
Function keys
Key
Visible?
1
Marked?
2
Effect
Fn+Esc
Yes
No
XF86AudioMicMute
Fn+F3
Yes
3
Yes
XF86Sleep
Fn+F4
Yes
Yes
XF86Display
Fn+F6
Yes
Yes
XF86AudioLowerVolume
Fn+F7
Yes
Yes
XF86AudioRaiseVolume
Fn+F8
Yes
Yes
XF86AudioMicMute
Fn+F9
Yes
Yes
XF86MonBrightnessDown
Fn+F10
Yes
Yes
XF86MonBrightnessUp
Fn+F11
No
Yes
Configure keyboard backlight
Fn+ScrollLock
Yes
Yes
NumLock
Fn+Pause
Yes
Yes
Ctrl+Break
Fn+Ins
Yes
Yes
PrintScreen
Fn+Del
Yes
Yes
Marked “syst”, but sends
PrintScreen
like
Fn+Ins
The key is visible to xev and similar tools.
The physical key has a symbol on it, which describes its function.
systemd-logind handles this by default.
See also
User Guide
Maintenance and Service Guide
Linux-hardware probes
HP EliteBook x360 1030 G8

Hardware
PCI/USB ID
Working?
GPU
8086:9a49
Yes
Audio
8086:a0c8
Yes
Bluetooth
8087:0026
Yes
Wi-Fi
8086:a0f0
Yes
WWAN
8086:7360
No
Webcam
04f2:b6c6
Yes
Fingerprint reader
06cb:00e9
Yes
NFC
I2C via
8086:a0e8
No
Accessibility
HP T93 firmware has a bright white background and black/blue font. All settings can be accessed using the keyboard. System LED is integrated into the power button on the backlit keyboard.
Firmware
Only the main system firmware (HP T93) is currently supported by fwupd.
Touchpad
Touchpad behaves weird sometimes (ghost clicks, locked in scroll mode). Doesn't seem to be a hardware or software issue, but rather a very sensitive lower area that also recognizes a finger if you only place it on the front edge of the case (not the touchpad itself). Be very careful where you place your "unused" fingers when using the touchpad.
WWAN
Device (Intel XMM7360) is being detected by recent kernels, but they only contain support for devices in USB mode. On the x360 G8 it is only connected via PCI, so it is missing a stable, working driver. There is an alpha-stage driver with no recent development (
Xmm7360-pci
) with which several people got the same module to work (including ModemManager) and establish a connection, see
upstream
for the latest instructions.
Fingerprint reader
This article or section is being considered for removal.
Reason:
1.94.10 is still recent, but this will be redundant with the hardware table once enough time has passed. (Discuss in
Talk:HP EliteBook x360 1030 G8
)
Device (Synaptics FS7600) is being detected by the kernel and supported by
libfprint
>= v1.94.10.
NFC
Device (NXP NPC300) is being detected by the kernel, but not recognized by userspace tools. See
here
for some discussion.
Function keys
Key
Visible?
Marked?
Effect
Fn+Shift
No
Yes
toggles Fn lock
Fn+F1
Yes
Yes
XF86Display
Fn+F2
No
No
unused
Fn+F3
Yes
Yes
XF86MonBrightnessDown
Fn+F4
Yes
Yes
XF86MonBrightnessUp
Fn+F5
Yes
Yes
XF86AudioMute
Fn+F6
Yes
Yes
XF86AudioLowerVolume
Fn+F7
Yes
Yes
XF86AudioRaiseVolume
Fn+F8
Yes
Yes
XF86AudioMicMute
Fn+F9
No
Yes
keyboard backlight bright/dim/off
Fn+F10
Yes
Yes
regular
Insert
key
Fn+F11
Yes
Yes
XF86RFKill
Fn+F12
No
Yes
unknown purpose
See also
hw-probe:
https://linux-hardware.org/?probe=5ba1e3e8e1
Product Page
on HP Website
HP Envy 15t-j000 Quad Edition

This article or section does not follow the
Laptop page guidelines
.
Reason:
Stub: needs IDs in the hardware table, an accessibility, firmware and function keys section. (Discuss in
Talk:HP Envy 15t-j000 Quad Edition
)
Device
PCI/USB ID
Working?
GPU
Yes
Ethernet
Yes
Wireless
Yes
Audio
Yes
Touchpad
Yes
Camera
Yes
Card Reader
Yes
Fingerprint Reader
No
The HP Envy 15t-j000 Quad Edition is a laptop released in 2013.
Installation
This laptop has secure boot enabled by default. In order to install Arch this should be disabled. UEFI should be set to legacy mode.
Battery and Power Management
The rated battery life for this laptop is 9hrs and with configuration
5.5 hrs is usually possible
.
Install
acpi
,
thermald
,
tlp
,
iw
,
smartmontools
,
intel-ucode
and
cpupower
.
Start/enable
thermald.service
and
cpupower.service
See
TLP
for details on its configuration and the page dedicated to the
microcode
for explanation on loading it.
Trackpad
The trackpad for this laptop supports a virtual scroll wheel. To enable it, comment out the following:
/etc/X11/xorg.conf.d/10-evdev.conf
Section "InputClass"
       Identifier "evdev touchpad catchall"
       MatchIsTouchpad "on"
       MatchDevicePath "/dev/input/event*"
       Driver "evdev"
EndSection
GPU
If you have the version of this laptop with an NVIDIA card, see
NVIDIA Optimus
.
Fingerprint Reader
This laptop comes with a fingerprint reader but there is no Linux driver for it.
mSATA SSD
This laptop has a mSATA bay that can be used as a cache for a hard drive. See
Bcache
or
LVM#Cache
for details.
HP ENVY TouchSmart 17-j113tx

This article or section does not follow the
Laptop page guidelines
.
Reason:
Misses an Accessibility and Firmware section, the "Function keys" table needs a rework. (Discuss in
Talk:HP ENVY TouchSmart 17-j113tx
)
Hardware
PCI/USB ID
Working?
GPU (Intel)
8086:0416
Yes
GPU (NVIDIA)
10de:1292
Yes
Audio
8086:8c20
Yes
Touchscreen
0eef:a802
Yes
Ethernet
10ec:8168
Yes
Wi-Fi
8086:08b1
Yes
Bluetooth
8087:07dc
Yes
Card Reader
10ec:5227
Untested
Webcam
0bda:5775
Yes
Fingerprint Sensor
138a:0050
Untested
This page applies to the
HP ENVY TouchSmart 17-j113tx
.
Touchscreen
The integrated display includes a
Touchscreen
.
Note
When working with the laptop lid closed, the touchscreen sends spurious touch events. It is recommended to disable touchscreen input when the lid is closed and re-enable it when the lid is opened (using e.g.
xinput --disable
and
xinput --enable
respectively). Touchscreen calibration has not (yet) been tested.
Audio
The laptop has integrated 4.1 speakers. Stereo sound works successfully from the front two speakers without intervention under
ALSA
.
The other speakers are not recognised or used by default; they can be mapped using the
hdajackretask
utility from the
alsa-tools
package, and it appears the correct combination is the same as for other contemporary HP ENVY models:
Pin ID
Override Mapping
0x0d
Internal speaker
0x0f
Internal speaker (Back)
0x10
Internal speaker (LFE)
Function keys
The integrated numeric keypad is dual-function, and defaults to scrolling actions unless
NumLock
is enabled. There is no
ScrollLock
key and there is no indicator light for
NumLock
.
The integrated Function keys are also dual-function, and default to either system control actions or assigned Functions depending on what is configured in the Firmware Setup Utility (reversible at runtime by using the
Fn
key in combination). The system control actions are:
Key(s)
Control Action
Status (assuming appropriate software)
F1
Super+F1
No hardware action by default, but may trigger a software action (meant to be a 'Help' key under Windows).
F2
,
F3
Monitor Brightness Down/Up
Works for integrated display.
F4
Super+P
No hardware action by default, but may trigger a software action (meant to switch video output under Windows).
F5
Not captured (activates and deactivates the keyboard backlight, which appears to be hardware controlled).
F6
,
F7
,
F8
Volume Mute/Down/Up
Works, including the LED that shows when volume is muted.
F9
,
F10
,
F11
Media Previous/Play/Next
Works.
F12
Not captured (activates and deactivates Wi-Fi and Bluetooth transceivers, with a LED that changes depending on this state).
Fingerprint sensor
Currently not supported by
Fprint
, according to the project website. The
libfprint-git
AUR
package may offer some hope, but this has not (yet) been tested on this model.