{"id":15103541,"url":"https://github.com/jantman/puppet-archlinux-macbookretina","last_synced_at":"2025-09-27T02:31:32.457Z","repository":{"id":8900402,"uuid":"10622891","full_name":"jantman/puppet-archlinux-macbookretina","owner":"jantman","description":"UNSUPPORTED - Puppet module and accompanying documentation to install/setup Arch linux on a MacBook Pro Retina 11,4","archived":true,"fork":false,"pushed_at":"2019-03-19T16:07:25.000Z","size":354,"stargazers_count":64,"open_issues_count":1,"forks_count":4,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-08-30T01:50:15.327Z","etag":null,"topics":["arch-linux","macbook","puppet","retina"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jantman.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-06-11T14:11:26.000Z","updated_at":"2025-08-15T15:23:38.000Z","dependencies_parsed_at":"2022-09-10T09:00:17.632Z","dependency_job_id":null,"html_url":"https://github.com/jantman/puppet-archlinux-macbookretina","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/jantman/puppet-archlinux-macbookretina","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jantman%2Fpuppet-archlinux-macbookretina","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jantman%2Fpuppet-archlinux-macbookretina/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jantman%2Fpuppet-archlinux-macbookretina/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jantman%2Fpuppet-archlinux-macbookretina/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jantman","download_url":"https://codeload.github.com/jantman/puppet-archlinux-macbookretina/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jantman%2Fpuppet-archlinux-macbookretina/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277171502,"owners_count":25773231,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-27T02:00:08.978Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arch-linux","macbook","puppet","retina"],"created_at":"2024-09-25T19:40:22.741Z","updated_at":"2025-09-27T02:31:32.126Z","avatar_url":"https://github.com/jantman.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"## UNSUPPORTED / ABANDONED PROJECT - MAINTAINER WANTED\n\nAs of March 2019, I no longer have access to any MacBook Pro hardware. As such, this module is now officially unsupported and abandoned. A new maintainer is wanted, if anyone would like to adopt it. Please see [Issue 16](https://github.com/jantman/puppet-archlinux-macbookretina/issues/16) for details and to comment.\n\n#### Table of Contents\n\n1. [Overview](#overview)\n2. [Requirements](#requirements)\n3. [Hardware Support Status](#hardware-support-status)\n4. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n5. [Limitations - OS compatibility, etc.](#limitations)\n6. [Development - Guide for contributing to the module](#development)\n7. [Other References - Information on Arch Linux](#other-references)\n\n## Overview\n\n[![TravisCI Build Status Badge](https://travis-ci.org/jantman/puppet-archlinux-macbookretina.svg)](https://travis-ci.org/jantman/puppet-archlinux-macbookretina.svg)\n[![PuppetForge version badge](https://img.shields.io/puppetforge/v/jantman/archlinux_macbookretina.svg)](https://forge.puppet.com/jantman/archlinux_macbookretina/)\n[![Project Status: Unsupported – The project has reached a stable, usable state but the author(s) have ceased all work on it. A new maintainer may be desired.](https://www.repostatus.org/badges/latest/unsupported.svg)](https://www.repostatus.org/#unsupported)\n\nPuppet module and accompanying documentation to install/setup Arch linux on a MacBook Pro Retina using Puppet (version 4 or 5).\n\nThis is the puppet module I use to manage my shiny new MacBook Pro Retina (mine is a ``MacBookPro11,4``).\n\n* __Generated Documentation:__ http://jantman.github.io/puppet-archlinux-macbookretina/\n\n__Important Notice:__ It is _highly_ recommended that you only run this module on a brand new system;\nit makes some opinionated choices that may cause problems on existing systems.\n\n## Requirements\n\n* A MacBook Pro Retina (currently tested with Mid-2015 \"11,4\" model) with a __brand new install__ of Arch Linux\n* Whatever version of Puppet ships with Arch Linux\n* A minimal install, ideally following the instructions in my [workstation-bootstrap](https://github.com/jantman/workstation-bootstrap) repository.\n* This module is only tested alongside my [archlinux_workstation](https://github.com/jantman/puppet-archlinux-workstation) module.\n* A pacman repo providing AUR packages: [macfanctld](https://aur.archlinux.org/packages/macfanctld), [bcwc-pcie-dkms](https://aur.archlinux.org/packages/bcwc-pcie-dkms/) and [bcwc-pcie-firmware](https://aur.archlinux.org/packages/bcwc-pcie-firmware/); you can use [jantman/archlinux_workstation archlinux_workstation::repos::jantman](https://github.com/jantman/puppet-archlinux-workstation/blob/master/manifests/repos/jantman.pp) for that.\n\n## Hardware Support Status\n\n### Mid-2015 MacBookPro11,4 as of 2018-02-02\n\n#### Working\n\nOr mostly-working:\n\n* __Touchpad__ using Kernel 4.2+ and [xf86-input-synaptics](https://www.archlinux.org/packages/?name=xf86-input-synaptics); works for tap-to-click, drag, two-finger scroll, and 2- or 3-finger taps (sometimes) for different mouse buttons.\n* __Networking__ on MacBookPro 11,4\n  * USB ethernet adapter A1277 works out-of-the-box\n  * BCM43602 AirPort Extreme (14e4:43ba) works with kernel built-in [brcmfmac](https://wireless.wiki.kernel.org/en/users/drivers/brcm80211) driver, autodetected, both 2.4GHz and 5GHz.\n* __Sound__ - Works. Under KDE/Phonon, needed to unmute/enable the \"Built-in Audio Analog Stereo\" (detected \"Built-in Audio Digital Stereo (HDMI)\" as default).\n* __Video__ - video works with the proprietary nvidia driver, the default in this module.\n  * __External Displays__ - Tested OK using both direct HDMI and Thunderbolt to HDMI (1 or 2 external monitors); works seamlessly.\n  * __Display/Desktop Scaling__ - This can be fixed within KDE:\n    * System Settings -\u003e Fonts: check off \"Force fonts DIP\" and set to 144\n    * System Settings -\u003e Icons -\u003e \"Advanced\" tab: set them all to 48\n    * Click the menu button on the far right edge of the Panel, then drag the \"Height\" box up until the scale/size looks good\n  * __Screen Backlight Adjustment__ - works using ``/sys/class/backlight/acpi_video0/brightness``, the sliders on 'KDE5 System Settings -\u003e Energy Saving' or the keyboard function keys.\n* __Hibernate / Suspend to Disk__ - doesn't wake up without long hold of power button \u0026 then turn back on. Session resumes once that's done.\n* __SD Card Reader__ - Working out of the box.\n* __Fans__ - [macfanctld (AUR)](https://aur.archlinux.org/packages/macfanctld)\n* __Webcam__ - This works properly in Linux using the [bcwc-pcie-dkms](https://aur.archlinux.org/packages/bcwc-pcie-dkms/) and [bcwc-pcie-firmware](https://aur.archlinux.org/packages/bcwc-pcie-firmware/) AUR packages.\n* __Bluetooth__ - Per [wiki](https://wiki.archlinux.org/index.php/MacBook#Bluetooth_2), fully supported as of kernel 4.4.0. Works with my bluetooth mouse.\n\n#### Broken\n\n* __Suspend to RAM__ - _(haven't tested in many months; I never use this)_ doesn't wake up; long hold of power button \u0026 then turn back on gives a fresh boot.\n* __Lid Close__ - suspends to ram and doesn't wake up, but this could be a configuration issue. I never use this functionality.\n\n#### Untested / To Do\n\n* __Partially-complete__ - __SSD optimizations__ via sysctl settings, mount /dev/sda* noatime and discard (TRIM), use deadline scheduler on non-rotational disks\n* __Power Saving__ - https://wiki.archlinux.org/index.php/MacBookPro11,x#Powersave and https://wiki.archlinux.org/index.php/Laptop_Mode_Tools\n* [Laptop Mode Tools - ArchWiki](https://wiki.archlinux.org/index.php/Laptop_Mode_Tools) and/or  [TLP - ArchWiki](https://wiki.archlinux.org/index.php/TLP) *(started looking into this, very involved configuration and I don't really need it right now)*\n* I'm left handed. Use udev/xorg to reverse buttons on USB mice but keep trackpad the same. See https://wiki.archlinux.org/index.php/All_Mouse_Buttons_Working http://www.smop.co.uk/blog/index.php/2010/02/15/udev-rules-for-logitech-g7-mouse/ or might be able to do this with udev triggering \"xinput set-button-map\"\n* the stuff in [Maximizing Performance - ArchWiki](https://wiki.archlinux.org/index.php/Maximizing_Performance)\n* implement the stuff in [Enhancing Arch Linux Stability - ArchWiki](https://wiki.archlinux.org/index.php/Enhancing_Arch_Linux_Stability)\n* SMART/other SSD health check, with warnings if problems are found\n* look into replacing macfanctld with mbpfan / fan-control-daemon are two options that are less abrupt\n\n## Reference\n\nFor full automatically-generated documentation see: [http://jantman.github.io/puppet-archlinux-workstation/](http://jantman.github.io/puppet-archlinux-workstation/)\n\n## Limitations\n\nThis module is only usable with Arch Linux on a MacBook Pro Retina.\n\nIt assumes that you have a relatively vanilla base install of Arch, such as the one I document in my [workstation-bootstrap module](https://github.com/jantman/workstation-bootstrap#arch-linux),\npretty much the same as the [Arch Linux Installation Guide](https://wiki.archlinux.org/index.php/Installation_guide) documents.\n\n## Development\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for information about development and contributing.\n\n## Other References\n\n* First, many thanks to [eli meister](https://twitter.com/elitmeister) for being the office linux-on-MBP retina guinea pig\n* [MacBookPro Retina - ArchWiki](https://wiki.archlinux.org/index.php/MacBookPro_Retina)\n* [MacBook - ArchWiki](https://wiki.archlinux.org/index.php/MacBook)\n* [Installation Guide - ArchWiki](https://wiki.archlinux.org/index.php/Installation_Guide)\n* [Beginners' Guide - ArchWiki](https://wiki.archlinux.org/index.php/Beginners%27_Guide)\n* [Solid State Drives - ArchWiki](https://wiki.archlinux.org/index.php/Solid_State_Drives)\n* [Laptop - ArchWiki](https://wiki.archlinux.org/index.php/Laptop)\n* [Enhancing Arch Linux Stability - ArchWiki](https://wiki.archlinux.org/index.php/Enhancing_Arch_Linux_Stability)\n* [Arch Linux System Maintenance - ArchWiki](https://wiki.archlinux.org/index.php/Arch_Linux_System_Maintenance)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjantman%2Fpuppet-archlinux-macbookretina","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjantman%2Fpuppet-archlinux-macbookretina","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjantman%2Fpuppet-archlinux-macbookretina/lists"}