https://wiki.archlinux.org/api.php?action=feedcontributions&user=Tmrod&feedformat=atomArchWiki - User contributions [en]2024-03-28T17:12:13ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Telegram&diff=575200Telegram2019-06-11T20:55:31Z<p>Tmrod: Original link was to Wikipedia page for the telegram in the communications, rather than the instant messaging, sense</p>
<hr />
<div>[[Category:Instant messaging]]<br />
[[fa:Telegram]]<br />
[[ja:Telegram]]<br />
[[pt:Telegram]]<br />
[[zh-hans:Telegram]]<br />
[[ru:Telegram]]<br />
[[wikipedia:Telegram (software)|Telegram]] is a cloud-based cross-platform instant messaging service with optional end-to-end encryption. Account creation requires a phone number.<br />
<br />
The official clients are open-source but the code for recent versions is not always immediately published. The server-side code is proprietary.<br />
<br />
== Installation ==<br />
<br />
You can use one of following methods in order to use Telegram in Arch:<br />
<br />
=== Chat client plugins ===<br />
<br />
* By using {{AUR|telegram-purple}} or {{AUR|telegram-purple-git}} packages, connection to Telegram through (graphical or command-line) messenger softwares based on {{Pkg|libpurple}} such as [[Pidgin]] is provided.<br />
* Messaging apps that are using [[wikipedia:Telepathy_(software)|Telepathy]] such as {{Pkg|empathy}} (the default messenger for [[GNOME]]) can make use of {{Pkg|telepathy-haze}} package, which provides possibility of using {{Pkg|libpurple}} and thus {{AUR|telegram-purple}} to connect Telegram.<br />
* In the [[KDE]] desktop environment using {{Pkg|telepathy-morse}} provides capability of connecting the default messenger to Telegram.<br />
<br />
=== Graphical clients ===<br />
<br />
The [https://desktop.telegram.org/ official app]:<br />
<br />
* {{Pkg|telegram-desktop}}, built by Arch Linux<br />
* {{AUR|telegram-desktop-bin}}, built by upstream<br />
* {{AUR|telegram-desktop-systemqt-notoemoji}} Experimental build of Telegram Desktop using system Qt and emojis replaced with those from [https://github.com/googlei18n/noto-emoji Noto Color Emoji].<br />
<br />
Third-party clients:<br />
<br />
* {{AUR|bettergram}}<br />
* {{AUR|kepka-git}}<br />
* {{AUR|cutegram-git}} (current maintenance status unknown)<br />
* {{AUR|telegreat-git}}<br />
<br />
=== Command-line clients ===<br />
<br />
* {{AUR|telegram-cli-git}} provides command-line interface to connect and use Telegram. For more information about the program, visit the program page on [https://github.com/vysheng/tg Github].<br />
* {{AUR|nctelegram-git}} is a command-line interface for Telegram based on [[wikipedia:Ncurses|Ncurses]] and needs {{AUR|telegram-cli-git}} to run. For more information about the program, visit the program page on [https://github.com/Nanoseb/ncTelegram Github].<br />
* {{AUR|python-telegram-send}}, not a full client but a command-line tool to directly send messages or files via Telegram.<br />
<br />
=== Web-based clients ===<br />
<br />
* The official [https://web.telegram.org Telegram Web].<br />
* {{AUR|franz}} is an [https://github.com/meetfranz/franz open-source] web-based application that can be used for web-based interface of various instant messaging software such as [[wikipedia:Telegram (service)|Telegram]], [[wikipedia:WhatsApp|WhatsApp]], [[wikipedia:Facebook|Facebook]], and more.<br />
* {{AUR|rambox-bin}} is an alternative to Franz, also open source. It offers all features of its counterpart.<br />
* Use [https://addons.mozilla.org/en-US/firefox/addon/telegram-desktop/ Telegram Desktop] addons for [[Firefox]], to connect to Telegram in your browser via web interface.<br />
* Use [https://telegram.org/dl/webogram/chromeapp Telegram Chrome app] for [[Chromium]], to connect to Telegram in your browser via web interface.<br />
<br />
== Tips and tricks ==<br />
<br />
=== Telegram resources about Arch Linux ===<br />
<br />
* [https://t.me/archlinuxgroup Arch Linux] - Unofficial group for discussing everything about Arch Linux.<br />
* [https://t.me/archewikibot ArchWikiBot] - Inline bot for searching through ArchWiki pages.<br />
* [https://t.me/planetarch Planet Arch Linux & News] - Channel with recent Planet Arch updates and Latest News in one place.<br />
* [https://t.me/archlinux_updates Arch Linux: Recent package updates] - Channel with recent package updates in Arch Linux repositories.<br />
* [https://t.me/archlinuxnews Arch Linux News] - Channel with latest news from Arch web site ''(not updated)''.<br />
* [https://t.me/archplanet Planet Arch] - Channel with latest posts from Planet Arch web site ''(not updated)''.<br />
* [https://t.me/archlinuxfr Archlinux.fr News] - Channel with latest posts from Archlinux.fr forums and other stuff about Arch Linux.<br />
* [https://t.me/archlinux_FR Archlinux.fr Chat] - Unofficial group for discussing everything about Arch Linux for french users.<br />
<br />
=== Unread messages counter for Telegram Desktop ===<br />
<br />
By default, only the icon in the system tray will show the number of unread messages.<br />
If you want to have the actual app icon to show the unread message counter as well, you can use the Unity badge integration, which can be handled by KDE and Gnome as well.<br />
To enable the Unity integration, you will have to install {{AUR|libunity}} and start Telegram Desktop with the {{ic|XDG_CURRENT_DESKTOP}} environment variable set to {{ic|Unity}}, e.g. copy the {{ic|.desktop}} file to {{ic|~/.local/share/applications/}} and change the {{ic|Exec}} line to start Telegram Desktop with the environment variable set instead.</div>Tmrodhttps://wiki.archlinux.org/index.php?title=MacBookPro7,1&diff=571154MacBookPro7,12019-04-14T16:40:06Z<p>Tmrod: Fixed command for enabling mbpfan.service</p>
<hr />
<div>[[Category:Apple]]<br />
{{Related articles start}}<br />
{{Related|Mac}}<br />
{{Related|MacBookPro7,1}}<br />
{{Related|MacBookPro8,1/8,2/8,3 (2011)}}<br />
{{Related|MacBookPro9,2 (Mid-2012)}}<br />
{{Related articles end}}<br />
{{Style|Multiple [[Help:Style]] violations, wall of text duplicating other articles}}<br />
This page contains tips on installing Arch Linux on a Mid 2010 13" MacBook Pro alongside a pre-existing OSX operating system. For general help on the installation procedure see the [[Installation guide]].<br />
<br />
==Preparation==<br />
===Install Boot Manager===<br />
'''Optional.''' The easiest way to begin is by [http://www.rodsbooks.com/refind/ installing rEFInd] on Mac OSX before moving on to Arch. This will place a boot menu on startup. The config will be in your OSX partition - if this is not desirable it is possible to install it later in Arch. Keep in mind that since Apple's OS X 10.11 (El Capitan), the feature System Integrity Protection (SIP) doesn't allow for rEFInd installation in the way described on the Installing rEFInd page. See [https://www.rodsbooks.com/refind/sip.html this site] for more information and installation instructions.<br />
<br />
===Shrinking Macintosh HD===<br />
Using Mac OSX's disk utility, create a new partition, calculate the amount of free space required for all new partitions and shrink Macintosh HD to accommodate for this amount. Leave the new partition as free space for now.<br />
<br />
===EFI vs CSM mode===<br />
It's probably good to consider on forehand what the differences are and which will work best for you, especially considering the drawback EFI mode has on the NVIDIA driver.<br />
<br />
== Installation ==<br />
To install an x86_64 system, follow the [[Mac]] EFI installation instructions.<br />
It is recommended to read the [[UEFI]], [[GPT]] and [[Arch boot process#Boot loader]] pages before trying any of this on your machine.<br />
Also of note, [https://gist.github.com/Apsu/4108795 GIST].<br />
<br />
See notes on '''video support''' before attempting installation!<br />
<br />
''The following assumes that you have somehow managed to install archlinux to a single partition on your drive, and that you still have your osx installation on a different partition.''<br />
=== Dual Boot ===<br />
If you want to dualboot osx and linux, the easiest way to do so is to use [[rEFInd]].<br />
rEFInd is a updated and maintained fork of [http://refit.sourceforge.net/ rEFIt] and should be used in its place.<br />
<br />
I've found it easiest to install rEFInd from osx. Depending on your setup, you'll either install it to your osx partition, or to the ESP partition (install.sh --esp). See [http://www.rodsbooks.com/refind/installing.html#installsh here] for instructions.<br />
Installing to the ESP partition can cause some '''startup delay''', which can be overcome by simply renaming rEFInd's installation folder to "BOOT" and the executable to "bootx64.efi"[http://www.rodsbooks.com/refind/installing.html#sluggish]<br />
<br />
Assuming that rEFInd was installed to the ESP, I've found it convenient to later mount the ESP as my "/boot" directory.<br />
That way, by setting<br />
scan_all_linux_kernels<br />
in your refind.conf, rEFInd will automatically pickup the kernel. All you need to add is a "refind_linux.conf" file to the root of the ESP, containing your boot args. I use:<br />
"Boot with defaults" "root=/dev/sda3 rootfstype=xfs ro add_efi_memmap"<br />
Note that my root partion is sda3 and that I use the xfs filesystem on it, yours may differ!<br />
So my ESP partition looks like this when mounted under "/boot":<br />
EFI/<br />
APPLE/<br />
BOOT/<br />
bootx64.efi<br />
drivers/<br />
icons/<br />
keys/<br />
refind.conf<br />
initramfs-linux-fallback.img<br />
initramfs-linux.img<br />
refind_linux.conf<br />
syslinux/ *** My bootloader of choice, see below ***<br />
vmlinuz-linux<br />
Note that the EFI/BOOT directory is normally named EFI/REFIND and that the bootx64.efi is normally named refind_x64.efi.<br />
==== EFI-Mode ====<br />
You should now be able to boot your mac in efi-mode via the kernel's efistub feature. rEFInd should present you with an option to do so.<br />
See [http://www.rodsbooks.com/refind/linux.html here] for more general information on the topic.<br />
This however has some drawbacks, as mentioned in the '''Video''' section below. <br />
==== CSM-Mode ====<br />
Booting your mac in csm- or legacy-mode provides a solution. To do so, we need a '''hybrid mbr''', with at least one 'active/bootable' partition. See [http://www.rodsbooks.com/gdisk/hybrid.html here] for more general information on how to setup a hybrid mbr.<br />
Simply boot in '''efi-mode''', then assuming you have three partitions, the ESP partition, an osx and a linux partition you'll need to use gdisk to set things up.<br />
# gdisk /dev/sda<br />
Press 'p' to print your partition table, which should look somewhat like mine:<br />
Number Start (sector) End (sector) Size Code Name<br />
1 40 409639 200.0 MiB 0700 EFI System Partition<br />
2 409640 393186215 187.3 GiB AF00 OSX<br />
3 393186216 625142414 110.6 GiB 8300 Linux filesystem<br />
Press 'r' to enter recovery and transformation mode.<br />
<br />
Now press 'o' to print your mbr. It should only list a single partition covering the entire disk. Or depending on with which tools you used to partition your disk maybe some other entries.<br />
<br />
Press 'h' to create a new hybrid mbr. You'll be prompted for some input:<br />
Type from one to three GPT partition numbers, separated by spaces, to be<br />
added to the hybrid MBR, in sequence:<br />
I chose to mirror my gpt, so I entered '1 2 3', but it should be enough to just use one partition here. In my example, this would need to be the ESP partition, so '1', but in case you don't want to use the ESP to store your kernels, this could also be the linux partition, so '3'. You decide :) <br />
<br />
Another and maybe more secure way to mirror the gpt is only to enter '1' for the first and only partition, the EFI or boot partition. This prevents the strange behaviour of MacOS. It can happen that MacOS or its bootsystem can't find his partition and will end up in a rather long loop. Then proceed as written below.<br />
<br />
Make sure to say 'Yes' to the next promt:<br />
Place EFI GPT (0xEE) partition first in MBR (good for GRUB)? (Y/N): y<br />
Then set at least one partition as active/bootable:<br />
Creating entry for GPT partition #1 (MBR partition #2)<br />
Enter an MBR hex code (default 07): <br />
Set the bootable flag? (Y/N): y<br />
Note the MBR hex code depends on the partition type, press 'l' in gdisk's main menu to list them.<br />
<br />
Press 'o' ('''make sure you're still in the recovery menu!!!''') again to see your new hybrid mbr, in my case:<br />
Number Boot Start Sector End Sector Status Code<br />
1 1 39 primary 0xEE<br />
2 * 40 409639 primary 0x07<br />
3 409640 393186215 primary 0xAF<br />
4 393186216 625142414 primary 0x83<br />
<br />
Or if you choose to only mirror the first one, it can also look like this:<br />
Number Boot Start Sector End Sector Status Code<br />
1 1 39 primary 0xEE<br />
2 * 40 409639 primary 0xEF<br />
<br />
Even if the mbr table looks like this (''note that in the second table only the last two lines are missing''), the bootloader will know what to boot.<br />
You can compare start and end sectors between the two tables if you wish.<br />
<br />
Press 'w' to write the table to disk and reboot.<br />
=== Bootloader ===<br />
The next important thing is the bootloader, which acts as the bridge from refind to your kernel.<br />
Based on the Mode you use to install arch, either '''EFI''' or '''CSM''', you can choose a bootloader of your choice.<br />
But for now, We provide you with information about '''Syslinux''' and '''Gummiboot''', because these are the two we tested successfully for now.<br />
<br />
In both cases I assume that you managed to mount the EFI partition mentioned above to ''/boot/'' already.<br />
<br />
Grub is the one bootloader, which can handle both the EFI and the CSM mode. But because it's mighty, it also can be complex and the configuration are far-reaching. I recommending you, unless you want to configure the smallest detail in the bootloader for an '''un'''forgetting adventure during a booting, to use gummiboot (EFI-only) or syslinux (CSM-only), because both are really easy to setup.<br />
<br />
==== EFI-Mode ====<br />
If you do not need the power and its powersaving feature of the nvidia driver, then you should install [[gummiboot]] or [[GRUB]], because these bootloaders are the one which actually works fine with EFI.<br />
<br />
Here, let's do it with gummiboot:<br />
# pacman -S gummiboot<br />
After installing the package, it needs to be configured, so run the installer of gummiboot:<br />
# gummiboot install<br />
<br />
Then you need to create a config file for gummiboot and add an entry for the arch booting. The '''sdaX''' means that you have to replace it with your root partition, in this case it may be '''/dev/sda3'''.<br />
<br />
{{hc|# nano /boot/loader/entries/arch.conf|2=<br />
title Arch Linux<br />
linux /vmlinuz-linux<br />
initrd /initramfs-linux.img<br />
options root='''/dev/sdaX''' rw<br />
}}<br />
As usual, for more information on configuring and using gummiboot, see [[gummiboot]].<br />
<br />
==== CSM-Mode or BIOS-compatibility ====<br />
Otherwise, if you don't want to miss out the advantages of the nvidia driver, I suggest you to install [[syslinux]] or also [[GRUB]] for the CSM-Mode.<br />
We'll use syslinux because it's the simplest to setup, but others should also work. Install it via pacman, and then just execute<br />
# syslinux-install_update -i -a -m<br />
It should detect your hybrid mbr and install itself automatically. Refer to [[Syslinux]] for more details.<br />
<br />
Make sure to configure the bootloader's menu entries correctly: (syslinux)<br />
LABEL arch<br />
MENU LABEL Arch Linux<br />
LINUX ../vmlinuz-linux<br />
APPEND root=/dev/sda3 ro vga=865<br />
INITRD ../initramfs-linux.img<br />
Note that 'sda3' refers to the '''gpt mapping''', 'vga=865' means 1280x800 framebuffer resolution, nicer when using the nvidia driver.<br />
<br />
===== Can't find root device =====<br />
If booting fails, first try to use the initramfs-linux-fallback.img, as it includes more modules than your 'auto-detected' initramfs, and should allow the kernel to actually find your root partition.<br />
You'll then need to rebuild your regular initramfs. Rebuild it with<br />
# mkinitcpio -p linux<br />
If you're lucky, the whole booting process with the regular initramfs-linux will end up successfully, if not, then try to add the following configuration and rebuild the initramfs again.<br />
I needed to include modules in the initramfs file. In /etc/mkinitcpio.conf:<br />
MODULES="ata_generic libata xfs"<br />
Note, that you'll only need xfs if your root partition is actually formatted with it, exchange it with the appropriate module for the file-system you use.<br />
<br />
<br />
Once you reboot, rEFInd should now present you with three options, two linux entries and one for osx. One linux entry will boot the kernel via efistub in '''efi-mode''', the other will call syslinux(or your chosen bootloader) which then should boot the system in '''csm-mode'''. Do the latter from now on!<br />
<br />
The easiest way to see if you were successful, is to install the [[NVIDIA]] driver and start X.<br />
<br />
== Network ==<br />
[[Wireless Setup]] provides instructions on how to identify your card, but if your MacBook Pro 7,1 is like mine then you'll head to [[Broadcom_wireless|Broadcom Wireless]] and use this command.<br />
<br />
# lspci -vnn -d 14e4:<br />
<br />
If from this you discover that your full PCI-ID is {{ic|[14e4:432b]}}, then the following advice applies to you: Don't waste time on the {{ic|b43}} driver. I've been fiddling with it for weeks, and switching to {{ic|broadcom-wl}} made all the problems go away. {{ic|broadcom-wl}} might make your device names funky, but that's easily fixed with the udev rule documented on [[Broadcom_wireless|Broadcom Wireless]].<br />
<br />
I also recommend {{ic|netctl}}.<br />
<br />
<br />
{{Note| Alternative solution for using b43:<br />
As of kernel version 3.17.1-2, Broadcom Wireless driver most likely won't work (ERROR @wl_cfg80211_scan :WLC_SCAN error (-22)). The only option seems to be loading the b43 driver in [[wikipedia:Programmed_input/output|PIO]] mode. To enable PIO mode, install driver by following the guide at [http://wireless.kernel.org/en/users/Drivers/b43 wireless.kernel.org], then load the b43 kernel module with <nowiki>pio=1 and qos=0</nowiki> parameters. To make this happen at boot, create {{ic|b43-firmware.conf}} file in {{ic|/etc/modprobe.d/}} and add the following lines:<br />
<br />
{{hc|b43-firmware.conf|<br />
<nowiki>options b43 pio=1 qos=0</nowiki><br />
<br />
blacklist wl<br />
blacklist brcmsmac<br />
blacklist brcmfmac<br />
blacklist b43legacy<br />
blacklist bcm43xx<br />
blacklist brcm80211<br />
}} <br />
<del>Although using PIO should be much slower than using [[wikipedia:Direct_memory_access|DMA]], I haven't noticed any performance drop.</del> Further testing showed repetitive occurrences of noticable performance drops. Mostly expressed as rapid decrease of transfer speed, sometimes even dropped connections. It also seems that b43 driver has issues operating at 5Ghz.<br />
<br />
Some later kernels are giving me more success (without PIO), but still some wifi drops have occurred.<br />
<br />
}}<br />
<br />
== Video ==<br />
According to the [http://wiki.debian.org/MacBookPro Debian Wiki] the MacBook Pro 7,1 has an [http://www.geforce.com/hardware/desktop-gpus/geforce-GT-320-OEM NVIDIA GeForce GT 320M] in it.<br />
=== Nouveau ===<br />
Works out of the box, performance however is not that great and your system will get quite ''hot'' when running nouveau.<br />
=== Nvidia === <br />
The drivers work out of the box when booting the mac in csm- or legacy-mode.<br />
See [https://bbs.archlinux.org/viewtopic.php?id=162289 here] for some discussion on the topic.<br />
<br />
Running the drivers in '''efi-mode''' requires setting some PCI registers before the kernel modules get loaded, preferably using a udev hook or GRUB script. Otherwise, the screen just remains black when X starts. Follow these [http://askubuntu.com/questions/264247/proprietary-nvidia-drivers-with-efi-on-mac-to-prevent-overheating/613573#613573 instructions] in order to find the appropriate PCI device IDs for which to set the registers. This approach has been confirmed to work and is still being actively discussed inside the above mentioned [https://bbs.archlinux.org/viewtopic.php?pid=1522950#p1522950 thread].<br />
<br />
== Fan Control ==<br />
For controlling the fans I recommend using mbpfan from the AUR ({{AUR|mbpfan-git}}), reasons being is that from my experience fan control isn't very great on Arch Linux by default and fans always run really loud without this package! Once you install that from the AUR add it to startup!<br />
# systemctl enable mbpfan.service<br />
<br />
'''To be continued..'''</div>Tmrod