News        Teleology        ру

Denis Polevoy
Installation alpine-standard-3.19.0-x86_64.iso

# cfdisk /dev/nvme0n1Label: gpt /dev/nvme0n1p1 256M EFI System /dev/nvme0n1p2 32G Linux filesystem /dev/nvme0n1p3 128G Linux filesystem
# mkfs.vfat -v -F 32 /dev/nvme0n1p1 # mkfs.ext4 -m 4 /dev/nvme0n1p2 # tune2fs -o journal_data_writeback /dev/nvme0n1p2 # mkfs.ext4 -m 0 /dev/nvme0n1p3 # tune2fs -o journal_data_writeback /dev/nvme0n1p3 login: root # mount -t ext4 /dev/nvme0n1p2 /mnt # mkdir /mnt/boot # mount -t vfat /dev/nvme0n1p1 /mnt/boot # mkdir /mnt/boot/EFI # mkdir /mnt/home # mount -t ext4 /dev/nvme0n1p3 /mnt/home # setup-keymap us us # setup-hostname # /etc/init.d/hostname restart # /etc/hosts # setup-interfaces # setup-dns # setup-timezone # /etc/init.d/networking start # rc-update add networking boot # setup-ntp # setup-apkrepos # apk add mc # apk add lsblk # apk add e2fsprogs-extra # apk add cfdisk # apk add dosfstools
# USE_EFI=1 DISKLABEL=gpt BOOTFS=vfat ROOTFS=ext4 setup-disk -v -s 0 -m sys /mntalpine-base alpine-baselayout alpine-baselayout-data alpine-conf alpine-keys alpine-release alpine-tools busybox busybox-binsh busybox-mdev-openrc busybox-openrc busybox-suid ca-certificates-bundle dbus-libs ifupdown-ng ifupdown-ng-wifi iw libc-utils libcap2 libcrypto3 libnl3 libssl3 mdev-conf musl musl-utils openrc openssl pcsc-lite-libs scanelf ssl_client wpa_supplicant wpa-supplicant-openrc zlib
# wget https://github.com/acidanthera/OpenCorePkg/releases/download/0.9.7/OpenCore-0.9.4-RELEASE.zip # unzip -j OpenCore-0.9.7-RELEASE.zip X64/EFI/OC/Tools/OpenShell.efi -d /mnt/boot/EFI/ # mv /mnt/boot/EFI/OpenShell.efi /mnt/boot/EFI/shell.efi # passwd # umount -a # reboot

login:root
/etc/apk/repositoriesedge/main edge/community edge/testing
/etc/motdW E L C O M E T O A L P I N E
# apk update # apk upgrade
/etc/rc.confunicode="YES"
# apk add terminus-font
/etc/conf.d/consolefontconsolefont="ter-c32n.psf.gz"
# rc-update add consolefont boot # apk add amd-ucode # apk add refind
/etc/passwd/root:/bin/bash
# rm ~/.ash_history # refind-install # apk del grub grub-efi # rm -v -r /boot/grub /boot/EFI/alpine /boot/EFI/boot
/boot/EFI/refind/refind.conf# # # refind.conf # Configuration file for the rEFInd boot menu # # Timeout in seconds for the main menu screen. Setting the timeout to 0 # disables automatic booting (i.e., no timeout). Setting it to -1 causes # an immediate boot to the default OS *UNLESS* a keypress is in the buffer # when rEFInd launches, in which case that keypress is interpreted as a # shortcut key. If no matching shortcut is found, rEFInd displays its # menu with no timeout. # timeout 20 # Set the logging level. When set to 0, rEFInd does not log its actions. # When set to 1 or above, rEFInd creates a file called refind.log in # its home directory on the ESP and records information about what it's # doing. Higher values record more information, up to a maximum of 4. # This token should be left at the default of 0 except when debugging # problems. # Default value is 0 # #log_level 1 # Normally, when the timeout period has passed, rEFInd boots the # default_selection. If the following option is uncommented, though, # rEFInd will instead attempt to shut down the computer. # CAUTION: MANY COMPUTERS WILL INSTEAD HANG OR REBOOT! Macs and more # recent UEFI-based PCs are most likely to work with this feature. # Default value is true # #shutdown_after_timeout # Whether to store rEFInd's rEFInd-specific variables in NVRAM (1, true, # or on) or in files in the "vars" subdirectory of rEFInd's directory on # disk (0, false, or off). Using NVRAM works well with most computers; # however, it increases wear on the motherboard's NVRAM, and if the EFI # is buggy or the NVRAM is old and worn out, it may not work at all. # Storing variables on disk is a viable alternative in such cases, or # if you want to minimize wear and tear on the NVRAM; however, it won't # work if rEFInd is stored on a filesystem that's read-only to the EFI # (such as an HFS+ volume), and it increases the risk of filesystem # damage. Note that this option affects ONLY rEFInd's own variables, # such as the PreviousBoot, HiddenTags, HiddenTools, and HiddenLegacy # variables. It does NOT affect Secure Boot or other non-rEFInd # variables. # Default is true # use_nvram false # Screen saver timeout; the screen blanks after the specified number of # seconds with no keyboard input. The screen returns after most keypresses # (unfortunately, not including modifier keys such as Shift, Control, Alt, # or Option). Setting a value of "-1" causes rEFInd to start up with its # screen saver active. The default is 0, which disables the screen saver. # #screensaver 300 # Hide user interface elements for personal preference or to increase # security: # banner - the rEFInd title banner (built-in or loaded via "banner") # label - boot option text label in the menu # singleuser - remove the submenu options to boot macOS in single-user # or verbose modes; affects ONLY macOS # safemode - remove the submenu option to boot macOS in "safe mode" # hwtest - the submenu option to run Apple's hardware test # arrows - scroll arrows on the OS selection tag line # hints - brief command summary in the menu # editor - the options editor (+, F2, or Insert on boot options menu) # badges - device-type badges for boot options # all - all of the above # Default is none of these (all elements active) # #hideui singleuser #hideui all hideui banner # Set the name of a subdirectory in which icons are stored. Icons must # have the same names they have in the standard directory. The directory # name is specified relative to the main rEFInd binary's directory. If # an icon can't be found in the specified directory, an attempt is made # to load it from the default directory; thus, you can replace just some # icons in your own directory and rely on the default for others. # Icon files may be in any supported format -- ICNS (*.icns), BMP (*.bmp), # PNG (*.png), or JPEG (*.jpg or *.jpeg); however, rEFInd's BMP and JPEG # implementations do not support transparency, which is highly desirable # in icons. # Default is "icons". # #icons_dir myicons #icons_dir icons/snowy # Use a custom title banner instead of the rEFInd icon and name. The file # path is relative to the directory where refind.efi is located. The color # in the top left corner of the image is used as the background color # for the menu screens. Currently uncompressed BMP images with color # depths of 24, 8, 4 or 1 bits are supported, as well as PNG and JPEG # images. (ICNS images can also be used, but ICNS has limitations that # make it a poor choice for this purpose.) PNG and JPEG support is # limited by the underlying libraries; some files, like progressive JPEGs, # will not work. # #banner hostname.bmp #banner mybanner.jpg #banner icons/snowy/banner-snowy.png # Specify how to handle banners that aren't exactly the same as the screen # size: # noscale - Crop if too big, show with border if too small # fillscreen - Fill the screen # Default is noscale # #banner_scale fillscreen # Icon sizes. All icons are square, so just one value is specified. The # big icons are used for OS selectors in the first row and the small # icons are used for tools on the second row. Drive-type badges are 1/4 # the size of the big icons. Legal values are 32 and above. If the icon # files do not hold icons of the proper size, the icons are scaled to # the specified size. The default values are 48 and 128 for small and # big icons, respectively. # #small_icon_size 96 #big_icon_size 256 # Custom images for the selection background. There is a big one (144 x 144) # for the OS icons, and a small one (64 x 64) for the function icons in the # second row. If only a small image is given, that one is also used for # the big icons by stretching it in the middle. If only a big one is given, # the built-in default will be used for the small icons. If an image other # than the optimal size is specified, it will be scaled in a way that may # be ugly. # # Like the banner option above, these options take a filename of an # uncompressed BMP, PNG, JPEG, or ICNS image file with a color depth of # 24, 8, 4, or 1 bits. The PNG or ICNS format is required if you need # transparency support (to let you "see through" to a full-screen banner). # #selection_big selection-big.bmp #selection_small selection-small.bmp # Set the font to be used for all textual displays in graphics mode. # For best results, the font must be a PNG file with alpha channel # transparency. It must contain ASCII characters 32-126 (space through # tilde), inclusive, plus a glyph to be displayed in place of characters # outside of this range, for a total of 96 glyphs. Only monospaced fonts # are supported. Fonts may be of any size, although large fonts can # produce display irregularities. # The default is rEFInd's built-in font, Luxi Mono Regular 12 point. # #font myfont.png # Use text mode only. When enabled, this option forces rEFInd into text mode. # Passing this option a "0" value causes graphics mode to be used. Pasing # it no value or any non-0 value causes text mode to be used. # Default is to use graphics mode. # #textonly # Set the EFI text mode to be used for textual displays. This option # takes a single digit that refers to a mode number. Mode 0 is normally # 80x25, 1 is sometimes 80x50, and higher numbers are system-specific # modes. Mode 1024 is a special code that tells rEFInd to not set the # text mode; it uses whatever was in use when the program was launched. # If you specify an invalid mode, rEFInd pauses during boot to inform # you of valid modes. # CAUTION: On VirtualBox, and perhaps on some real computers, specifying # a text mode and uncommenting the "textonly" option while NOT specifying # a resolution can result in an unusable display in the booted OS. # Default is 1024 (no change) # #textmode 2 # Set the screen's video resolution. Pass this option one of the following: # * two integer values, corresponding to the X and Y resolutions # * one integer value, corresponding to a GOP (UEFI) video mode # * the string "max", which sets the maximum available resolution # Note that not all resolutions are supported. On UEFI systems, passing # an incorrect value results in a message being shown on the screen to # that effect, along with a list of supported modes. On EFI 1.x systems # (e.g., Macintoshes), setting an incorrect mode silently fails. On both # types of systems, setting an incorrect resolution results in the default # resolution being used. A resolution of 1024x768 usually works, but higher # values often don't. # Default is "0 0" (use the system default resolution, usually 800x600). # #resolution 1024 768 #resolution 1440 900 #resolution 3 #resolution max resolution 2880 1800 # Enable touch screen support. If active, this feature enables use of # touch screen controls (as on tablets). Note, however, that not all # tablets' EFIs provide the necessary underlying support, so this # feature may not work for you. If it does work, you should be able # to launch an OS or tool by touching it. In a submenu, touching # anywhere launches the currently-selection item; there is, at present, # no way to select a specific submenu item. This feature is mutually # exclusive with the enable_mouse feature. If both are uncommented, # the one read most recently takes precedence. # #enable_touch # Enable mouse support. If active, this feature enables use of the # computer's mouse. Note, however, that not all computers' EFIs # provide the necessary underlying support, so this feature may not # work for you. If it does work, you should be able to launch an # OS or tool by clicking it with the mouse pointer. This feature # is mutually exclusive with the enable_touch feature. If both # are uncommented, the one read most recently takes precedence. # #enable_mouse # Size of the mouse pointer, in pixels, per side. # Default is 16 # #mouse_size 16 # Speed of mouse tracking. Higher numbers equate to faster # mouse movement. This option requires that enable_mouse be # uncommented. # Legal values are between 1 and 32. Default is 4. # #mouse_speed 4 # Launch specified OSes in graphics mode. By default, rEFInd switches # to text mode and displays basic pre-launch information when launching # all OSes except macOS. Using graphics mode can produce a more seamless # transition, but displays no information, which can make matters # difficult if you must debug a problem. Also, on at least one known # computer, using graphics mode prevents a crash when using the Linux # kernel's EFI stub loader. You can specify an empty list to boot all # OSes in text mode. # Valid options: # osx - macOS # linux - A Linux kernel with EFI stub loader # elilo - The ELILO boot loader # grub - The GRUB (Legacy or 2) boot loader # windows - Microsoft Windows # Default value: osx # #use_graphics_for osx,linux # Which non-bootloader tools to show on the tools line, and in what # order to display them: # shell - the EFI shell (requires external program; see rEFInd # documentation for details) # memtest - the memtest86 program, in EFI/tools, EFI/memtest86, # EFI/memtest, EFI/tools/memtest86, or EFI/tools/memtest # gptsync - the (dangerous) gptsync.efi utility (requires external # program; see rEFInd documentation for details) # gdisk - the gdisk partitioning program # apple_recovery - boots the Apple Recovery HD partition, if present # windows_recovery - boots an OEM Windows recovery tool, if present # (see also the windows_recovery_files option) # mok_tool - makes available the Machine Owner Key (MOK) maintenance # tool, MokManager.efi, used on Secure Boot systems # csr_rotate - adjusts Apple System Integrity Protection (SIP) # policy. Requires "csr_values" to be set. # install - an option to install rEFInd from the current location # to another ESP # bootorder - adjust the EFI's (NOT rEFInd's) boot order # about - an "about this program" option # hidden_tags - manage hidden tags # exit - a tag to exit from rEFInd # shutdown - shuts down the computer (a bug causes this to reboot # many UEFI systems) # reboot - a tag to reboot the computer # firmware - a tag to reboot the computer into the firmware's # user interface (ignored on older computers) # fwupdate - a tag to update the firmware; launches the fwupx64.efi # (or similar) program # netboot - launch the ipxe.efi tool for network (PXE) booting # Default is shell,memtest,gdisk,apple_recovery,windows_recovery,mok_tool,about,hidden_tags,shutdown,reboot,firmware,fwupdate # To completely disable scanning for all tools, provide a showtools line # with no options. # #showtools shell, bootorder, gdisk, memtest, mok_tool, apple_recovery, windows_recovery, about, hidden_tags, reboot, exit, firmware, fwupdate showtools about, reboot, shutdown, firmware # Tool binaries to be excluded from the tools line, even if the # general class is specified in showtools. This enables trimming an # overabundance of tools, as when you see multiple mok_tool entries # after installing multiple Linux distributions. # Just as with dont_scan_files, you can specify a filename alone, a # full pathname, or a volume identifier (filesystem label, partition # name, or partition GUID) and a full pathname. # Default is an empty list (nothing is excluded) # #dont_scan_tools ESP2:/EFI/ubuntu/mmx64.efi,gptsync_x64.efi # Boot loaders that can launch a Windows restore or emergency system. # These tend to be OEM-specific. # Default is LRS_ESP:/EFI/Microsoft/Boot/LrsBootmgr.efi # #windows_recovery_files LRS_ESP:/EFI/Microsoft/Boot/LrsBootmgr.efi # Directories in which to search for EFI drivers. These drivers can # provide filesystem support, give access to hard disks on plug-in # controllers, etc. In most cases none are needed, but if you add # EFI drivers and you want rEFInd to automatically load them, you # should specify one or more paths here. rEFInd always scans the # "drivers" and "drivers_{arch}" subdirectories of its own installation # directory (where "{arch}" is your architecture code); this option # specifies ADDITIONAL directories to scan. # Default is to scan no additional directories for EFI drivers # #scan_driver_dirs EFI/tools/drivers,drivers # Which types of boot loaders to search, and in what order to display them: # internal - internal EFI disk-based boot loaders # external - external EFI disk-based boot loaders # optical - EFI optical discs (CD, DVD, etc.) # netboot - EFI network (PXE) boot options # hdbios - BIOS disk-based boot loaders # biosexternal - BIOS external boot loaders (USB, eSATA, etc.) # cd - BIOS optical-disc boot loaders # manual - use stanzas later in this configuration file # firmware - boot EFI programs set in the firmware's NVRAM # Note that the legacy BIOS options require firmware support, which is # not present on all computers. # The netboot option is experimental and relies on the ipxe.efi and # ipxe_discover.efi program files. # On UEFI PCs, default is internal,external,optical,manual # On Macs, default is internal,hdbios,external,biosexternal,optical,cd,manual # #scanfor internal,external,optical,manual,firmware scanfor manual # By default, rEFInd relies on the UEFI firmware to detect BIOS-mode boot # devices. This sometimes doesn't detect all the available devices, though. # For these cases, uefi_deep_legacy_scan results in a forced scan and # modification of NVRAM variables on each boot. Adding "0", "off", or # "false" resets to the default value. This token has no effect on Macs or # when no BIOS-mode options are set via scanfor. # Default is unset (or "uefi_deep_legacy_scan false") # #uefi_deep_legacy_scan # Delay for the specified number of seconds before scanning disks. # This can help some users who find that some of their disks # (usually external or optical discs) aren't detected initially, # but are detected after pressing Esc. # The default is 0. # #scan_delay 5 # When scanning volumes for EFI boot loaders, rEFInd always looks for # macOS's and Microsoft Windows' boot loaders in their normal locations, # and scans the root directory and every subdirectory of the /EFI directory # for additional boot loaders, but it doesn't recurse into these directories. # The also_scan_dirs token adds more directories to the scan list. # Directories are specified relative to the volume's root directory. This # option applies to ALL the volumes that rEFInd scans UNLESS you include # a volume name and colon before the directory name, as in "myvol:/somedir" # to scan the somedir directory only on the filesystem named myvol. If a # specified directory doesn't exist, it's ignored (no error condition # results). The "+" symbol denotes appending to the list of scanned # directories rather than overwriting that list. # The default is to scan the "boot" and "@/boot" directories in addition # to various hard-coded directories. # #also_scan_dirs boot,ESP2:EFI/linux/kernels #also_scan_dirs boot,@/boot #also_scan_dirs +,@/kernels # Partitions (or whole disks, for legacy-mode boots) to omit from scans. # For EFI-mode scans, you normally specify a volume by its label, which you # can obtain in an EFI shell by typing "vol", from Linux by typing # "blkid /dev/{devicename}", or by examining the disk's label in various # OSes' file browsers. It's also possible to identify a partition by its # unique GUID (aka its "PARTUUID" in Linux parlance). (Note that this is # NOT the partition TYPE CODE GUID.) This identifier can be obtained via # "blkid" in Linux or "diskutil info {partition-id}" in macOS. # For legacy-mode scans, you can specify any subset of the boot loader # description shown when you highlight the option in rEFInd. # The default is "LRS_ESP". # #dont_scan_volumes "Recovery HD" # Directories that should NOT be scanned for boot loaders. By default, # rEFInd doesn't scan its own directory, the EFI/tools directory, the # EFI/memtest directory, the EFI/memtest86 directory, or the # com.apple.recovery.boot directory. Using the dont_scan_dirs option # enables you to "blacklist" other directories; but be sure to use "+" # as the first element if you want to continue blacklisting existing # directories. You might use this token to keep EFI/boot/bootx64.efi out # of the menu if that's a duplicate of another boot loader or to exclude # a directory that holds drivers or non-bootloader utilities provided by # a hardware manufacturer. If a directory is listed both here and in # also_scan_dirs, dont_scan_dirs takes precedence. Note that this # blacklist applies to ALL the filesystems that rEFInd scans, not just # the ESP, unless you precede the directory name by a filesystem name or # partition unique GUID, as in "myvol:EFI/somedir" to exclude EFI/somedir # from the scan on the myvol volume but not on other volumes. # #dont_scan_dirs ESP:/EFI/boot,EFI/Dell,EFI/memtest86 # Files that should NOT be included as EFI boot loaders (on the # first line of the display). If you're using a boot loader that # relies on support programs or drivers that are installed alongside # the main binary or if you want to "blacklist" certain loaders by # name rather than location, use this option. Note that this will # NOT prevent certain binaries from showing up in the second-row # set of tools. Most notably, various Secure Boot and recovery # tools are present in this list, but may appear as second-row # items. # The file may be specified as a bare name (e.g., "notme.efi"), as # a complete pathname (e.g., "/EFI/somedir/notme.efi"), or as a # complete pathname with volume (e.g., "SOMEDISK:/EFI/somedir/notme.efi" # or 2C17D5ED-850D-4F76-BA31-47A561740082:/EFI/somedir/notme.efi"). # OS tags hidden via the Delete or '-' key in the rEFInd menu are # added to this list, but stored in NVRAM. # The default is shim.efi,shim-fedora.efi,shimx64.efi,PreLoader.efi, # TextMode.efi,ebounce.efi,GraphicsConsole.efi,MokManager.efi,HashTool.efi, # HashTool-signed.efi,bootmgr.efi,fb{arch}.efi # (where "{arch}" is the architecture code, like "x64"). # If you want to keep these defaults but add to them, be sure to # specify "+" as the first item in the new list; if you don't, then # items from the default list are likely to appear. # #dont_scan_files shim.efi,MokManager.efi # EFI NVRAM Boot#### variables that should NOT be presented as loaders # when "firmware" is an option to "scanfor". The comma-separated list # presented here contains strings that are matched against the # description field -- if a value here is a case-insensitive substring # of the boot option description, then it will be excluded from the # boot list. To specify a string that includes a space, enclose it # in quotes. Specifying "shell" will counteract the automatic # inclusion of built-in EFI shells. # #dont_scan_firmware HARDDISK,shell,"Removable Device" # Scan for Linux kernels that lack a ".efi" filename extension. This is # useful for better integration with Linux distributions that provide # kernels with EFI stub loaders but that don't give those kernels filenames # that end in ".efi", particularly if the kernels are stored on a # filesystem that the EFI can read. When set to "1", "true", or "on", this # option causes all files in scanned directories with names that begin with # "vmlinuz", "bzImage", or "kernel" to be included as loaders, even if they # lack ".efi" extensions. Passing this option a "0", "false", or "off" value # causes kernels without ".efi" extensions to NOT be scanned. # Default is "true" -- to scan for kernels without ".efi" extensions. # #scan_all_linux_kernels false # Support loaders that have been compressed with gzip. # On x86 and x86-64 platforms, Linux kernels are self-decompressing. # On ARM64, Linux kernel files are typically compressed with gzip, # including the EFI stub loader. This makes them unloadable in rEFInd # unless rEFInd itself uncompresses them. This option enables rEFInd # to do this. This feature is unnecessary on x86 and x86-64 systems. # Default is "false" on x86 and x86-64; "true" on ARM64. # #support_gzipped_loaders true # Combine all Linux kernels in a given directory into a single entry. # When so set, the kernel with the most recent time stamp will be launched # by default, and its filename will appear in the entry's description. # To launch other kernels, the user must press F2 or Insert; alternate # kernels then appear as options on the sub-menu. # Default is "true" -- kernels are "folded" into a single menu entry. # #fold_linux_kernels false # Comma-delimited list of strings to treat as if they were numbers for the # purpose of kernel version number detection. These strings are matched on a # first-found basis; that is, if you want to treat both "linux-lts" and # "linux" as version strings, they MUST be specified as "linux-lts,linux", # since if you specify it the other way, both vmlinuz-linux and # vmlinuz-linux-lts will return with "linux" as the "version string," which # is not what you'd want. Also, if the kernel or initrd file includes both a # specified string and digits, the "version string" includes both. For # instance, "vmlinuz-linux-4.8" would yield a version string of "linux-4.8". # This option is intended for Arch and other distributions that don't include # version numbers in their kernel filenames, but may provide other uniquely # identifying strings for multiple kernels. If this feature causes problems # (say, if your kernel filename includes "linux" but the initrd filename # doesn't), be sure this is set to an empty string # (extra_kernel_version_strings "") or comment out the option to disable it. # Default is no extra version strings # #extra_kernel_version_strings linux-lts,linux # Write to systemd EFI variables (currently only LoaderDevicePartUUID) when # launching Linux via an EFI stub loader, ELILO, or GRUB. This variable, # when present, causes systemd to mount the ESP at /boot or /efi *IF* either # directory is empty and nothing else is mounted there. # Default is "false" # #write_systemd_vars true # Symlinked loaders will be processed when this setting is set to true. # These are ignored by default as they may result in undesirable outcomes. # This token may, however, be useful on Linux setups that provide symbolic # links in scanned locations that point to kernels in unscanned locations, # such as some openSUSE installations. # #follow_symlinks true # Set the maximum number of tags that can be displayed on the screen at # any time. If more loaders are discovered than this value, rEFInd shows # a subset in a scrolling list. If this value is set too high for the # screen to handle, it's reduced to the value that the screen can manage. # If this value is set to 0 (the default), it's adjusted to the number # that the screen can handle. # #max_tags 0 # Set the default menu selection. The available arguments match the # keyboard accelerators available within rEFInd. You may select the # default loader using: # - A digit between 1 and 9, in which case the Nth loader in the menu # will be the default. # - A "+" symbol at the start of the string, which refers to the most # recently booted loader. # - Any substring that corresponds to a portion of the loader's title # (usually the OS's name, boot loader's path, or a volume or # filesystem title). # You may also specify multiple selectors by separating them with commas # and enclosing the list in quotes. (The "+" option is only meaningful in # this context.) # If you follow the selector(s) with two times, in 24-hour format, the # default will apply only between those times. The times are in the # motherboard's time standard, whether that's UTC or local time, so if # you use UTC, you'll need to adjust this from local time manually. # Times may span midnight as in "23:30 00:30", which applies to 11:30 PM # to 12:30 AM. You may specify multiple default_selection lines, in which # case the last one to match takes precedence. Thus, you can set a main # option without a time followed by one or more that include times to # set different defaults for different times of day. # The default behavior is to boot the previously-booted OS. # #default_selection 1 #default_selection Microsoft #default_selection "+,bzImage,vmlinuz" #default_selection Maintenance 23:30 2:00 #default_selection "Maintenance,macOS" 1:00 2:30 # Enable VMX bit and lock the CPU MSR if unlocked. # On some Intel Apple computers, the firmware does not lock the MSR 0x3A. # The symptom on Windows is Hyper-V not working even if the CPU # meets the minimum requirements (HW assisted virtualization and SLAT) # DO NOT SET THIS EXCEPT ON INTEL CPUs THAT SUPPORT VMX! See # http://www.thomas-krenn.com/en/wiki/Activating_the_Intel_VT_Virtualization_Feature # for more on this subject. # The default is false: Don't try to enable and lock the MSR. # #enable_and_lock_vmx false # Tell a Mac's EFI that macOS is about to be launched, even when it's not. # This option causes some Macs to initialize their hardware differently than # when a third-party OS is launched normally. In some cases (particularly on # Macs with multiple video cards), using this option can cause hardware to # work that would not otherwise work. On the other hand, using this option # when it is not necessary can cause hardware (such as keyboards and mice) to # become inaccessible. Therefore, you should not enable this option if your # non-Apple OSes work correctly; enable it only if you have problems with # some hardware devices. When needed, a value of "10.9" usually works, but # you can experiment with other values. This feature has no effect on # non-Apple computers. # The default is inactive (no macOS spoofing is done). # #spoof_osx_version 10.9 # Set the CSR values for Apple's System Integrity Protection (SIP) feature. # Values are two-byte (four-character) hexadecimal numbers. These values # define which specific security features are enabled. Below are the codes # for what the values mean. Add them up (in hexadecimal!) to set new values. # Apple's "csrutil enable" and "csrutil disable" commands set values of 10 # and 877, respectively. (Prior to OS 11, 77 was used rather than 877; 877 # is required for OS 11, and should work for OS X 10.x, too.) # CSR_ALLOW_UNTRUSTED_KEXTS 0x0001 # CSR_ALLOW_UNRESTRICTED_FS 0x0002 # CSR_ALLOW_TASK_FOR_PID 0x0004 # CSR_ALLOW_KERNEL_DEBUGGER 0x0008 # CSR_ALLOW_APPLE_INTERNAL 0x0010 # CSR_ALLOW_UNRESTRICTED_DTRACE 0x0020 # CSR_ALLOW_UNRESTRICTED_NVRAM 0x0040 # CSR_ALLOW_DEVICE_CONFIGURATION 0x0080 # CSR_ALLOW_ANY_RECOVERY_OS 0x0100 # CSR_ALLOW_UNAPPROVED_KEXTS 0x0200 # CSR_ALLOW_EXECUTABLE_POLICY_OVERRIDE 0x0400 # CSR_ALLOW_UNAUTHENTICATED_ROOT 0x0800 #csr_values 10,877 # Include a secondary configuration file within this one. This secondary # file is loaded as if its options appeared at the point of the "include" # token itself, so if you want to override a setting in the main file, # the secondary file must be referenced AFTER the setting you want to # override. Note that the secondary file may NOT load a tertiary file. # #include manual.conf # Sample manual configuration stanzas. Each begins with the "menuentry" # keyword followed by a name that's to appear in the menu (use quotes # if you want the name to contain a space) and an open curly brace # ("{"). Each entry ends with a close curly brace ("}"). Common # keywords within each stanza include: # # volume - identifies the filesystem from which subsequent files # are loaded. You can specify the volume by filesystem # label, by partition label, or by partition GUID number # (but NOT yet by filesystem UUID number). # loader - identifies the boot loader file # initrd - Specifies an initial RAM disk file # icon - specifies a custom boot loader icon # ostype - OS type code to determine boot options available by # pressing Insert. Valid values are "MacOS", "Linux", # "Windows", and "XOM". Case-sensitive. # graphics - set to "on" to enable graphics-mode boot (useful # mainly for MacOS) or "off" for text-mode boot. # Default is auto-detected from loader filename. # options - sets options to be passed to the boot loader; use # quotes if more than one option should be passed or # if any options use characters that might be changed # by rEFInd parsing procedures (=, /, #, or tab). # disabled - use alone or set to "yes" to disable this entry. # # Note that you can use either DOS/Windows/EFI-style backslashes (\) # or Unix-style forward slashes (/) as directory separators. Either # way, all file references are on the ESP from which rEFInd was # launched. # Use of quotes around parameters causes them to be interpreted as # one keyword, and for parsing of special characters (spaces, =, /, # and #) to be disabled. This is useful mainly with the "options" # keyword. Use of quotes around parameters that specify filenames is # permissible, but you must then use backslashes instead of slashes, # except when you must pass a forward slash to the loader, as when # passing a root= option to a Linux kernel. # Below are several sample boot stanzas. All are disabled by default. # Find one similar to what you need, copy it, remove the "disabled" line, # and adjust the entries to suit your needs. # A sample entry for a Linux 3.13 kernel with EFI boot stub support # on a partition with a GUID of 904404F8-B481-440C-A1E3-11A5A954E601. # This entry includes Linux-specific boot options and specification # of an initial RAM disk. Note uses of Linux-style forward slashes. # Also note that a leading slash is optional in file specifications. menuentry Linux { icon EFI/refind/icons/os_linux.png volume 904404F8-B481-440C-A1E3-11A5A954E601 loader bzImage-3.3.0-rc7 initrd initrd-3.3.0.img options "ro root=UUID=5f96cafa-e0a7-4057-b18f-fa709db5b837" disabled } # Below is a more complex Linux example, specifically for Arch Linux. # This example MUST be modified for your specific installation; if nothing # else, the PARTUUID code must be changed for your disk. Because Arch Linux # does not include version numbers in its kernel and initrd filenames, you # may need to use manual boot stanzas when using fallback initrds or # multiple kernels with Arch. This example is modified from one in the Arch # wiki page on rEFInd (https://wiki.archlinux.org/index.php/rEFInd). menuentry "Arch Linux" { icon /EFI/refind/icons/os_arch.png volume "Arch Linux" loader /boot/vmlinuz-linux initrd /boot/initramfs-linux.img options "root=PARTUUID=5028fa50-0079-4c40-b240-abfaf28693ea rw add_efi_memmap" submenuentry "Boot using fallback initramfs" { initrd /boot/initramfs-linux-fallback.img } submenuentry "Boot to terminal" { add_options "systemd.unit=multi-user.target" } disabled } # A sample entry for loading Ubuntu using its standard name for # its GRUB 2 boot loader. Note uses of Linux-style forward slashes menuentry Ubuntu { loader /EFI/ubuntu/grubx64.efi icon /EFI/refind/icons/os_linux.png disabled } # A minimal ELILO entry, which probably offers nothing that # auto-detection can't accomplish. menuentry "ELILO" { loader \EFI\elilo\elilo.efi disabled } # Like the ELILO entry, this one offers nothing that auto-detection # can't do; but you might use it if you want to disable auto-detection # but still boot Windows.... menuentry "Windows 7" { loader \EFI\Microsoft\Boot\bootmgfw.efi disabled } # EFI shells are programs just like boot loaders, and can be # launched in the same way. You can pass a shell the name of a # script that it's to run on the "options" line. The script # could initialize hardware and then launch an OS, or it could # do something entirely different. menuentry "Windows via shell script" { icon \EFI\refind\icons\os_win.png loader \EFI\tools\shell.efi options "fs0:\EFI\tools\launch_windows.nsh" disabled } # MacOS is normally detected and run automatically; however, # if you want to do something unusual, a manual boot stanza may # be the way to do it. This one does nothing very unusual, but # it may serve as a starting point. Note that you'll almost # certainly need to change the "volume" line for this example # to work. menuentry "My macOS" { icon \EFI\refind\icons\os_mac.png volume "macOS boot" loader \System\Library\CoreServices\boot.efi disabled } # The firmware_bootnum token takes a HEXADECIMAL value as an option # and sets that value using the EFI's BootNext variable and then # reboots the computer. This then causes a one-time boot of the # computer using this EFI boot option. It can be used for various # purposes, but one that's likely to interest some rEFInd users is # that some Macs with HiDPI displays produce lower-resolution # desktops when booted through rEFInd than when booted via Apple's # own boot manager. Booting using the firmware_bootnum option # produces the better resolution. Note that no loader option is # used in this type of configuration. menuentry "macOS via BootNext" { icon /EFI/refind/icons/os_mac.png firmware_bootnum 80 disabled } menuentry "ALPINE" { icon /EFI/refind/icons/os_linux.png loader /vmlinuz-lts initrd /amd-ucode.img initrd /initramfs-lts options "root=/dev/nvme0n1p2 nowatchdog modprobe.blacklist=sp5100_tco,amd64_edac_mod rootfstype=ext4" # i915.alpha_support=1 i915.fastboot=1 modprobe.blacklist=iTCO_wdt intel_iommu=on iommu=pt submenuentry "SINGLE USER MODE" { options "root=/dev/nvme0n1p2 rw rootfstype=ext4 single" } } menuentry "ALPINE FALLBACK" { icon /EFI/refind/icons/boot_linux.png loader /vmlinuz-lts initrd /amd-ucode.img initrd /initramfs-lts-fallback options "root=/dev/nvme0n1p2 rw rootfstype=ext4" } menuentry "SHELLX64V2" { icon /EFI/refind/icons/os_hwtest.png loader /EFI/shell.efi }
# rm -v /boot/refind_linux.conf # efibootmgr --create --disk /dev/nvme0n1 --part 1 --loader /EFI/shell.efi --label "SHELLX64V2" --verbose # reboot

UEFI Interactive Shell v2.1help -b FS0: bcfg boot dump -v -b bcfg boot add 00 FS0:\EFI\refind\refind_x64.efi "rEFInd" exit
login:root # apk add linux-firmware-amdgpu # echo fbcon >> /etc/modules # echo amdgpu >> /etc/modules
/etc/mkinitfs/mkinitfs.conf#features="ata base cdrom ext4 intel_agp i915 keymap kms mmc nvme scsi usb virtio" features="base ext4 kms nvme scsi usb"
# mkinitfs
/etc/profile.d/color_prompt.sh# If not running interactively, don't do anything [[ $- != *i* ]] && return alias diff='diff --color=auto' alias grep='grep --color=auto' alias ls='ls --color=auto' alias more='less' alias df='df -h' alias du='du -c -h' alias mkdir='mkdir -p -v' alias ping='ping -c 2' alias dmesg='dmesg -H' alias diff='diff --color=auto' # Setup a red prompt for root and a green one for users. _normal=$'\e[0m' if [ "$USER" = root ]; then _color=$'\e[1;31m' _symbol='#' else _color=$'\e[1;32m' _symbol='$' fi if [ -n "$ZSH_VERSION" ]; then PS1="%{$_color%}%m [%{$_normal%}%~%{$_color%}]$_symbol %{$_normal%}" else # PS1="\[$_color\]\h [\[$_normal\]\w\[$_color\]]$_symbol \[$_normal\]" PS1="\[$_normal\]\w\[$_color\]$_symbol \[$_normal\]" fi unset _normal _color _symbol export XDG_DATA_DIRS=/usr/local/share:/usr/share export XDG_CONFIG_DIRS=/etc/xdg export QT_QPA_PLATFORMTHEME=qt5ct # export QT_WAYLAND_DISABLE_WINDOWDECORATION=1 # export QT_SCALE_FACTOR=1.6 # export QT_SCALE_FACTOR_ROUNDING_POLICY=PassThrough export MOZ_ENABLE_WAYLAND=1 # export QEMU_AUDIO_DRV=alsa # export QEMU_AUDIO_DAC_FIXED_FREQ=48000 # export QEMU_AUDIO_DAC_TRY_POLL=0 # export QEMU_AUDIO_ADC_FIXED_FREQ=48000 # export QEMU_AUDIO_ADC_TRY_POLL=0 # export QEMU_AUDIO_TIMER_PERIOD=1000 # export QEMU_ALSA_DAC_BUFFER_SIZE=2048 # export QEMU_ALSA_DAC_PERIOD_SIZE=1024
# addgroup -S user # adduser -S -s /bin/bash user # chmod o-rx /home/user # adduser user users # adduser user wheel # apk add xdg-user-dirs
~/.config/user-dirs.dirs# This file is written by xdg-user-dirs-update # If you want to change or add directories, just edit the line you're # interested in. All local changes will be retained on the next run # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an # absolute path. No other format is supported. # XDG_DESKTOP_DIR="$HOME/name01" XDG_DOWNLOAD_DIR="$HOME/name01" XDG_TEMPLATES_DIR="$HOME/name01" XDG_PUBLICSHARE_DIR="$HOME/name01" XDG_MUSIC_DIR="$HOME/name01" XDG_PICTURES_DIR="$HOME/name01" XDG_VIDEOS_DIR="$HOME/name01" XDG_DOCUMENTS_DIR="$HOME/name02"
~/.config/user-dirs.localeen_US
# apk add doas
/etc/doas.confpermit persist :wheel
# apk add eudev # setup-devd udev # apk add dbus # rc-update add dbus # adduser user input # adduser user video # apk add alsa-utils alsaconf # addgroup user audio # addgroup root audio # alsamixer
/usr/share/alsa/alsa.confdefaults.ctl.card x defaults.pcm.card x
# rc-service alsa start # rc-update add alsa # apk add pulseaudio pulseaudio-alsa # apk add alsa-plugins-pulse # apk add pavucontrol # apk add font-jetbrains-mono-nl # apk add font-awesome-free # apk add bluez # adduser user lp # rc-service bluetooth start # rc-update add bluetooth default # rf-kill list bluetooth # rf-kill unblock bluetooth # apk add hidapi
/etc/modulesuhid
# modprobe uhid # apk add blueman # apk add onboard # apk add telegram-desktop # apk add element-desktop # apk add lxqt-archiver # apk add lximage-qt # apk add inkscape inkscape-doc inkscape-tutorials # apk add qpdfview # apk add libreoffice-writer libreoffice-calc # apk add seatd # apk add cmd:seatd-launch # apk add seatd-openrc # rc-update add seatd # rc-service seatd start # adduser user seat # apk add sway # apk add swaybg
/etc/profile.d/xdg_runtime_dir.shif test -z "${XDG_RUNTIME_DIR}"; then export XDG_RUNTIME_DIR=/tmp/$(id -u)-runtime-dir if ! test -d "${XDG_RUNTIME_DIR}"; then mkdir "${XDG_RUNTIME_DIR}" chmod 0700 "${XDG_RUNTIME_DIR}" fi fi
~/.config/sway/config# Default config for sway # # Copy this to ~/.config/sway/config and edit it to your liking. # # Read `man 5 sway` for a complete reference. # xwayland disable ### Variables # Logo key. Use Mod1 for Alt. set $mod Mod4 # Home row direction keys, like vim ## set $left h ## set $down j ## set $up k ## set $right l # Your preferred terminal emulator set $term foot # Your preferred application launcher # Note: pass the final command to swaymsg so that the resulting window can be opened on the original workspace that the command was run on. # set $menu dmenu_path | dmenu | xargs swaymsg exec -- set $menu wofi --show drun -I font pango: JetBrains Mono Thin 12 ### Output configuration # Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/) # output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill # # Example configuration: # # output HDMI-A-1 resolution 1920x1080 position 1920,0 # # You can get the names of your outputs by running: swaymsg -t get_outputs output eDP-1 { # disable # background #444444 solid_color background ~/.local/share/dream.png tile resolution 2880x1800@90.001Hz position 0,0 transform normal scale 2.0 scale_filter nearest adaptive_sync off dpms on } #output DP-2 #{ ## background #444444 solid_color # background ~/.local/share/dream.png tile # resolution 1920x1200@59.95Hz position 1440,0 transform normal scale 0.0 scale_filter nearest adaptive_sync off dpms on #} bindswitch --reload --locked lid:on output eDP-1 disable bindswitch --reload --locked lid:off output eDP-1 enable bindsym $mod+Shift+m exec swaymsg 'output eDP-1 toggle' bindsym $mod+Shift+n exec swaymsg 'output DP-2 toggle' # bindsym $mod+Shift+r exec "swaymsg 'output eDP-1 pos 0 0' ; swaymsg 'output DP-2 pos 1440 0'" # bindsym $mod+Shift+o exec "swaymsg 'output eDP-1 pos 1440 0' ; swaymsg 'output DP-2 pos 0 0'" # Screenshots: bindsym Mod4+p exec grimshot save active ~/gate/"$(date +%d.%m.%y-%H:%M:%S)".png bindsym Mod4+Shift+p exec grimshot save area ~/gate/"$(date +%d.%m.%y-%H:%M:%S)".png bindsym Mod4+Mod1+p exec grimshot save output ~/gate/"$(date +%d.%m.%y-%H:%M:%S)".png bindsym Mod4+Ctrl+p exec grimshot save window ~/gate/"$(date +%d.%m.%y-%H:%M:%S)".png #default_border none default_border pixel smart_borders on ### Idle configuration # # Example configuration: # # exec swayidle -w \ # timeout 300 'swaylock -f -c 000000' \ # timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \ # before-sleep 'swaylock -f -c 000000' # # This will lock your screen after 300 seconds of inactivity, then turn off # your displays after another 300 seconds, and turn your screens back on when # resumed. It will also lock your screen before your computer goes to sleep. ### Input configuration # # Example configuration: # # input "2:14:SynPS/2_Synaptics_TouchPad" { # dwt enabled # tap enabled # natural_scroll enabled # middle_emulation enabled # } # # You can get the names of your inputs by running: swaymsg -t get_inputs # Read `man 5 sway-input` for more information about this section. input * { xkb_layout us,ru xkb_options grp:caps_toggle,grp_led:caps } ### Key bindings # # Basics: # # Start a terminal bindsym $mod+Return exec $term # Kill focused window bindsym $mod+Shift+q kill # Start your launcher bindsym $mod+d exec $menu # Drag floating windows by holding down $mod and left mouse button. # Resize them with right mouse button + $mod. # Despite the name, also works for non-floating windows. # Change normal to inverse to use left mouse button for resizing and right # mouse button for dragging. floating_modifier $mod normal # Reload the configuration file bindsym $mod+Shift+c reload # Exit sway (logs you out of your Wayland session) bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' # # Moving around: # # Move your focus around bindsym $mod+$left focus left bindsym $mod+$down focus down bindsym $mod+$up focus up bindsym $mod+$right focus right # Or use $mod+[up|down|left|right] bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right # Move the focused window with the same, but add Shift bindsym $mod+Shift+$left move left bindsym $mod+Shift+$down move down bindsym $mod+Shift+$up move up bindsym $mod+Shift+$right move right # Ditto, with arrow keys bindsym $mod+Shift+Left move left bindsym $mod+Shift+Down move down bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right # # Workspaces: # # Switch to workspace bindsym $mod+1 workspace number 1 bindsym $mod+2 workspace number 2 bindsym $mod+3 workspace number 3 bindsym $mod+4 workspace number 4 bindsym $mod+5 workspace number 5 bindsym $mod+6 workspace number 6 bindsym $mod+7 workspace number 7 bindsym $mod+8 workspace number 8 bindsym $mod+9 workspace number 9 bindsym $mod+0 workspace number 10 # Move focused container to workspace bindsym $mod+Shift+1 move container to workspace number 1 bindsym $mod+Shift+2 move container to workspace number 2 bindsym $mod+Shift+3 move container to workspace number 3 bindsym $mod+Shift+4 move container to workspace number 4 bindsym $mod+Shift+5 move container to workspace number 5 bindsym $mod+Shift+6 move container to workspace number 6 bindsym $mod+Shift+7 move container to workspace number 7 bindsym $mod+Shift+8 move container to workspace number 8 bindsym $mod+Shift+9 move container to workspace number 9 bindsym $mod+Shift+0 move container to workspace number 10 # Note: workspaces can have any name you want, not just numbers. # We just use 1-10 as the default. # # Layout stuff: # # You can "split" the current object of your focus with # $mod+b or $mod+v, for horizontal and vertical splits # respectively. bindsym $mod+b splith bindsym $mod+v splitv # gaps outer 10 gaps inner 8 smart_gaps on # Switch the current container between different layout styles bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split # Make the current focus fullscreen bindsym $mod+f fullscreen # Toggle the current focus between tiling and floating mode bindsym $mod+Shift+space floating toggle # Swap focus between the tiling area and the floating area bindsym $mod+space focus mode_toggle # Move focus to the parent container bindsym $mod+a focus parent # # Scratchpad: # # Sway has a "scratchpad", which is a bag of holding for windows. # You can send windows there and get them back later. # Move the currently focused window to the scratchpad bindsym $mod+Shift+minus move scratchpad # Show the next scratchpad window or hide the focused scratchpad window. # If there are multiple scratchpad windows, this command cycles through them. bindsym $mod+minus scratchpad show # # Resizing containers: # mode "resize" { # left will shrink the containers width # right will grow the containers width # up will shrink the containers height # down will grow the containers height bindsym $left resize shrink width 10px bindsym $down resize grow height 10px bindsym $up resize shrink height 10px bindsym $right resize grow width 10px # Ditto, with arrow keys bindsym Left resize shrink width 10px bindsym Down resize grow height 10px bindsym Up resize shrink height 10px bindsym Right resize grow width 10px # Return to default mode bindsym Return mode "default" bindsym Escape mode "default" } bindsym $mod+r mode "resize" # # Status Bar: # # Read `man 5 sway-bar` for more information about this section. bar { # position top # When the status_command prints a new line to stdout, swaybar updates. # The default just shows the current date and time. # status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done # colors { # statusline #ffffff # background #323232 # inactive_workspace #32323200 #32323200 #5c5c5c #} swaybar_command waybar } include /etc/sway/config.d/*
# apk add xwayland
# setup-xorg-basellvm15-libs musl-fts libelf mesa-dri-gallium xf86-input-libinput encodings font-alias util-macros font-cursor-misc font-misc-misc libice libsm libxt libxmu xauth mcookie xmodmap xrdb xinit xorg-server
# apk add foot
~/.config/wfoot/foot.ini# -*- conf -*- # shell=$SHELL (if set, otherwise user's default shell from /etc/passwd) # term=foot (or xterm-256color if built with -Dterminfo=disabled) # login-shell=no # app-id=foot # title=foot # locked-title=no # font=monospace:size=8 font=JetBrains Mono Thin:size=16 # font-bold= # font-italic= # font-bold-italic= # line-height= # letter-spacing=0 # horizontal-letter-offset=0 # vertical-letter-offset=0 # underline-offset= # box-drawings-uses-font-glyphs=no # dpi-aware=auto # initial-window-size-pixels=700x500 # Or, # initial-window-size-chars= # initial-window-mode=windowed # pad=2x2 # optionally append 'center' # resize-delay-ms=100 # notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body} # bold-text-in-bright=no # word-delimiters=,│`|:"'()[]{}<> # selection-target=primary # workers= [bell] # urgent=no # notify=no # command= # command-focused=no [scrollback] # lines=1000 # multiplier=3.0 # indicator-position=relative # indicator-format= [url] # launch=xdg-open ${url} # label-letters=sadfjklewcmpgh # osc8-underline=url-mode # protocols=http, https, ftp, ftps, file, gemini, gopher # uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[] [cursor] # style=block # color= # blink=no # beam-thickness=1.5 # underline-thickness= [mouse] # hide-when-typing=no # alternate-scroll-mode=yes [colors] # alpha=1.0 # foreground=dcdccc # background=111111 ## Normal/regular colors (color palette 0-7) # regular0=222222 # black # regular1=cc9393 # red # regular2=7f9f7f # green # regular3=d0bf8f # yellow # regular4=6ca0a3 # blue # regular5=dc8cc3 # magenta # regular6=93e0e3 # cyan # regular7=dcdccc # white ## Bright colors (color palette 8-15) # bright0=666666 # bright black # bright1=dca3a3 # bright red # bright2=bfebbf # bright green # bright3=f0dfaf # bright yellow # bright4=8cd0d3 # bright blue # bright5=fcace3 # bright magenta # bright6=b3ffff # bright cyan # bright7=ffffff # bright white ## dimmed colors (see foot.ini(5) man page) # dim0= # ... # dim7= ## The remaining 256-color palette # 16 = <256-color palette #16> # ... # 255 = <256-color palette #255> ## Misc colors # selection-foreground= # selection-background= # jump-labels= # urls= # scrollback-indicator= [csd] # preferred=server # size=26 # font= # color= # hide-when-typing=no # border-width=0 # border-color= # button-width=26 # button-color= # button-minimize-color= # button-maximize-color= # button-close-color= [key-bindings] # scrollback-up-page=Shift+Page_Up # scrollback-up-half-page=none # scrollback-up-line=none # scrollback-down-page=Shift+Page_Down # scrollback-down-half-page=none # scrollback-down-line=none # clipboard-copy=Control+Shift+c XF86Copy # clipboard-paste=Control+Shift+v XF86Paste # primary-paste=Shift+Insert # search-start=Control+Shift+r # font-increase=Control+plus Control+equal Control+KP_Add # font-decrease=Control+minus Control+KP_Subtract # font-reset=Control+0 Control+KP_0 # spawn-terminal=Control+Shift+n # minimize=none # maximize=none # fullscreen=none # pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none # pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none # pipe-selected=[xargs -r firefox] none # show-urls-launch=Control+Shift+u # show-urls-copy=none # show-urls-persistent=none # noop=none [search-bindings] # cancel=Control+g Control+c Escape # commit=Return # find-prev=Control+r # find-next=Control+s # cursor-left=Left Control+b # cursor-left-word=Control+Left Mod1+b # cursor-right=Right Control+f # cursor-right-word=Control+Right Mod1+f # cursor-home=Home Control+a # cursor-end=End Control+e # delete-prev=BackSpace # delete-prev-word=Mod1+BackSpace Control+BackSpace # delete-next=Delete # delete-next-word=Mod1+d Control+Delete # extend-to-word-boundary=Control+w # extend-to-next-whitespace=Control+Shift+w # clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste # primary-paste=Shift+Insert [url-bindings] # cancel=Control+g Control+c Control+d Escape # toggle-url-visible=t [text-bindings] # \x03=Mod4+c # Map Super+c -> Ctrl+c [mouse-bindings] # selection-override-modifiers=Shift # primary-paste=BTN_MIDDLE # select-begin=BTN_LEFT # select-begin-block=Control+BTN_LEFT # select-extend=BTN_RIGHT # select-extend-character-wise=Control+BTN_RIGHT # select-word=BTN_LEFT-2 # select-word-whitespace=Control+BTN_LEFT-2 # select-row=BTN_LEFT-3 # vim: ft=dosini
# apk add wofi
~/.config/wofi/style.css/*window {border:0px solid #ff0000; background-color:#fff; margin:none;} #text {color:#000;} #scroll {margin:0px; border:none;}*/ #input {background-color:#bbb; color:#000;} #outer-box {border:1px solid #888; background-color:#bbb;} #inner-box {background-color:#bbb;} #entry:selected {background-color:#888;}
# apk add waybar
~/.config/waybar/config{ "name":"topbar", "layer":"top", "position":"top", /*"height":32,*/ "modules-left":["sway/workspaces", "custom/launcher", "custom/wireshark", "custom/etherape", "custom/gnome-connections", "custom/mc-root", "custom/mc", "custom/blueman-manager", "custom/onboard", "custom/keepassxc", "custom/telegram", "custom/element", "custom/tor-browser", "custom/pcmanfm", "custom/lxqt-archiver", "custom/qtcreator", "custom/libreoffice", "custom/inkscape", "custom/librewolf", "custom/foot", "sway/mode"], "modules-center":["wlr/taskbar", "wlr/workspaces"], "modules-right":["tray", "network#disconnected", "network#wifi", "pulseaudio", "clock", "sway/language", "backlight", "battery", "idle_inhibitor", "custom/manage"], "sway/workspaces":{"disable-scroll":true, "disable-markup":false, "all-outputs":true, "format":"{icon}", "format-icons":{"focused":"", "default":""}}, // "sway/workspaces":{"disable-scroll":true, "all-outputs":true, "format":"{name}:{icon}", "format-icons":{"1":"", "2":"", "3":"", "4":"", "5":"", "urgent":"", "focused":"", "default":""}}, "custom/launcher":{"format":"  ", "on-click":"wofi --show dmenu --style ~/.config/wofi/style-waybar.css", "on-click-right":"killall wofi", "tooltip":false}, "custom/wireshark":{"format":"", "on-click":"/usr/bin/wireshark"}, "custom/etherape":{"format":"", "on-click":"/usr/bin/etherape"}, "custom/gnome-connections":{"format":"", "on-click":"/usr/bin/gnome-connections"}, "custom/mc-root":{"format":"", "on-click":"foot $HOME/.config/.mc.sh"}, "custom/mc":{"format":"", "on-click":"foot /usr/bin/mc"}, "custom/blueman-manager":{"format":"B", "on-click":"/usr/bin/blueman-manager"}, "custom/onboard":{"format":"⌨", "on-click":"/usr/bin/onboard"}, "custom/keepassxc":{"format":"", "on-click":"/usr/bin/keepassxc"}, "custom/telegram":{"format":"", "on-click":"/usr/bin/telegram-desktop"}, "custom/element":{"format":"", "on-click":"/usr/bin/element-desktop"}, "custom/tor-browser":{"format":"", "on-click":"/usr/bin/tor-browser"}, "custom/pcmanfm":{"format":"🖿", "on-click":"/usr/bin/pcmanfm-qt"}, "custom/lxqt-archiver":{"format":"", "on-click":"/usr/bin/lxqt-archiver"}, "custom/qtcreator":{"format":"", "on-click":"QT_SCALE_FACTOR=1.6 /usr/bin/qtcreator"}, "custom/libreoffice":{"format":"", "on-click":"/usr/bin/libreoffice"}, "custom/inkscape":{"format":"", "on-click":"/usr/bin/inkscape"}, "custom/firefox":{"format":"🌐", "on-click":"/usr/bin/firefox"}, "custom/foot":{"format":"", "on-click":"/usr/bin/foot"}, "sway/mode":{"format":" {}", "tooltip":false}, "wlr/taskbar":{"all-outputs":false, "format":"{icon}", "icon-size":32, "on-click":"activate", "on-click-middle":"close", "on-click-right":"minimize"}, "clock":{"interval":1,"format":"{:%H:%M}", "format-alt":"{:%d.%m.%Y}", "tooltip-format":"{:%A %e %B/%m %Y}\n{calendar}"}, "tray":{"icon-size":32,"spacing":4}, "sway/language": {"format":"{}", "min-length":2, "tooltip":false, "on-click":"swaymsg input $(swaymsg -t get_inputs --raw | jq '[.[] | select(.type == \"keyboard\")][0] | .identifier') xkb_switch_layout next"}, // "custom/clipboard":{"format": "", "interval":"once", "return-type":"json", "on-click": "swaymsg -q exec '$clipboard'; pkill -RTMIN+9 waybar", "on-click-right":"swaymsg -q exec 'cliphist list | wofi -dmenu -m -1 primaty -p "SELECT ITEM TO DELETE" -lines 10 -width 35 | cliphist delete'; pkill -RTMIN+9 waybar", "on-click-middle":"rm -f ~/.cache/cliphist/db; pkill -RTMIN+9 waybar", "exec": "printf '{\"tooltip\":\"%s\"}' $(cliphist list | wc -l)' ITEMS IN THE CLIPBOARD\r(MID CLICK TO CLEAR)'", "exec-if":"[ -x \"$(command -v cliphist)\" ] && [ $(cliphist list | wc -l) -gt 0 ]", "signal":9}, "network#disconnected":{"format-ethernet":"", "format-wifi":"", "format-linked":"{ifname} NO IP ", "format-disconnected":"", "tooltip-format":"NO CONNECTION", "on-click": "nm-connection-editor"}, // "network#vpn":{"interface":"tun0", "format":"","format-disconnected":"","tooltip-format":"{ifname} {ipaddr}/{cidr}", "on-click":"nm-connection-editor"}, // "network#ethernet":{"interface":"enp*", "format-ethernet":"", "format-wifi":"", "format-linked":"", "format-disconnected":"", "tooltip-format":"{ifname} {ipaddr}/{cidr}", "on-click":"nm-connection-editor"}, "network#wifi":{"interface":"wlan*", "format-ethernet":"", "format-wifi":"{signalStrength}", "format-disconnected":"", "format-linked":"", "tooltip-format":"{ifname}:{ipaddr}/{cidr}", "on-click":"nm-connection-editor"}, // {bandwidthUpBits}/{bandwidthDownBits} {frequency} {essid} "pulseaudio":{"tooltip":false, "scroll-step":5, "format":"{volume:3}", "format-muted":" 000", "format-bluetooth":"{volume:3}", "on-click":"pavucontrol"}, "backlight":{"device":"amdgpu_bl0", "interval":60, "format-icons":[""], "tooltip-format":"{percent}", "on-scroll-down": "brightnessctl -c backlight set 5%", "on-scroll-up": "brightnessctl -c backlight set +1%", "format":"{icon}", "on-click":"nwg-displays"}, "battery":{"interval":10, "format":"{capacity:2}{icon}", "format-plugged":"{capacity:2}", "format-icons":["", "", "", "", ""], "tooltip":true}, "idle_inhibitor":{"tooltip":false,"format":"{icon}", "format-icons":{"activated":"", "deactivated":""}}, "custom/manage": {"format":"", "on-click": "wlogout -p layer-shell"}, }
~/.config/waybar/style.css@keyframes blink-warning {70% {color:#fff;} to {color:#fff; background-color:orange;}} @keyframes blink-critical {70% {color:#fff;} to {color:#fff; background-color:red;}} * {border:none; border-radius:0; min-height:0; margin:0; padding:0;} #waybar {background:#333; color:#ff0000; font-family:JetBrains Mono Thin, sans-serif; font-size:24px;} #battery, #clock, #custom-keyboard-layout, #mode, #network, #pulseaudio, #tray {color:#888; padding-left:4px; padding-right:4px;} #battery {color:#888; animation-timing-function:linear; animation-iteration-count:infinite; animation-direction:alternate;} #battery.warning {color:orange;} #battery.critical {color:red;} #battery.warning.discharging {animation-name:blink-warning; animation-duration: 3s;} #battery.critical.discharging {animation-name:blink-critical; animation-duration:2s;} #mode {background:#64727D; border-top:2px solid white; /* To compensate for the top border and still have vertical centering */ padding-bottom:2px;} #network.disconnected {color:orange;} #pulseaudio {/* No styles */} #pulseaudio.muted {/* No styles */} #tray {/* No styles */} /* #window {font-weight:bold;} */ #workspaces button {border-top: 2px solid transparent; /* To compensate for the top border and still have vertical centering */ padding-bottom:2px; padding-left:10px; padding-right:10px; color:#888;} #workspaces button.focused {border-color:#4c7899; color:white; background-color:#285577;} #workspaces button.urgent {border-color:#c9545d; color:#c9545d;} #custom-launcher, #custom-wireshark, #custom-etherape, #custom-gnome-connections, #custom-mc, #custom-mc-root, #custom-blueman-manager, #custom-onboard, #custom-keepassxc, #custom-telegram, #custom-element, #custom-tor-browser, #custom-pcmanfm, #custom-lxqt-archiver, #custom-qtcreator, #custom-libreoffice, #custom-inkscape, #custom-firefox, #custom-foot {color:#aaa; padding:0 2px;} #language, #backlight, #idle_inhibitor, #custom-manage {color:#888; padding:0 2px;}
# apk add mesa-utils
# apk add firefoxabout:preferences#general Startup + Open previous windows and tabs Tabs + Open links in tabs instead of new windows + Confirm before quitting with Ctrl+Q Fonts JetBrains Mono NL 14 Digital Rights Management (DRM) Content - Play DRM-controlled content Browsing - Use autoscrolling + Use smooth scrolling - Always show scrollbars + Always use the cursor keys to navigate within pages - Search for text when you start typing - Enable picture-in-picture video controls + Control media via keyboard, headset, or virtual interface - Recommend extensions as you browse - Recommend features as you browse Search Suggestions - Provide search suggestions Address Bar - Browsing history - Bookmarks - Open tabs - Shortcuts - Search engines HTTPS-Only Mode - Enable HTTPS-Only Mode in all windows - Enable HTTPS-Only Mode in private windows only + Don’t enable HTTPS-Only Mode DNS over HTTPS + Increased Protection > Custom Extensions ClearURls Multi-Account Containers Read Aloud: A Text to Speech Voice Reader TransOver uBlock Origin Zoom Page WE KeePassXS-Browser about:config browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar > false
# apk add dconf-editor # apk add gvfs # apk add pcmanfm # apk add faenza-icon-theme
# dconf-editor/org/gnome/desktop/interface/icon-theme > Custom value Faenza-Radiance /org/gnome/desktop/interface/font-name > JetBrains Mono NL 14 /org/gnome/desktop/interface/document-font-name > JetBrains Mono NL 14 /org/gnome/desktop/interface/monospace-font-name > JetBrains Mono NL 14 /org/gtk/exampleapp/font > JetBrains Mono NL 14 /org/gnome/desktop/wm/preferences/titlebar-font > JetBrains Mono NL 14
# apk add qt-creator # apk add qt5ct qt6ct # apk add keepassxc # apk add wireshark # adduser user wireshark # apk add openssh # rc-update add sshd # rc-status /etc/init.d/sshd start
/etc/ssh/sshd_config UseDNS no PasswordAuthentication no
# apk add gnome-connections # apk add alpine-sdk cmake extra-cmake-modules ccache

# apk add qemu-system-x86_64 libvirt qemu-ui-gtk # apk add pciutils # adduser user qemu # adduser user kvm # adduser user libvirt # modprobe kvm-intel # mkdir arch # dd if=/dev/zero of=./arch/arch.raw bs=1M count=10000
qarch.sh #!/bin/bash exec qemu-system-x86_64 -global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1 \ -machine type=q35,accel=kvm,kernel_irqchip=on,mem-merge=off,vmport=off -boot menu=off,strict=on \ -drive file=$(pwd)/arch/OVMF_CODE.fd,format=raw,if=pflash,unit=0,readonly=on \ -drive file=$(pwd)/arch/OVMF_VARS.fd,format=raw,if=pflash,unit=1 \ -cpu host,kvm=off -accel kvm -smp cpus=1 -m 4G -name arch -realtime mlock=off -nodefaults \ -msg timestamp=on -rtc base=utc,clock=host \ -device nvme,bus=pcie.0,addr=02.0,drive=nvme-disk-0,serial=foo,bootindex=1,logical_block_size=4096,physical_block_size=4096,opt_io_size=4096,min_io_size=4096,write-cache=off,id=nvme \ -drive file=$(pwd)/arch/arch.raw,format=raw,if=none,media=disk,id=nvme-disk-0,cache=none,aio=native,discard=unmap \ -device ich9-usb-ehci1,bus=pcie.0,addr=03.0,id=ich9-usb-ehci1 -device usb-tablet,id=mouse -device usb-kbd,id=keyboard \ -device ich9-intel-hda,bus=pcie.0,addr=04.0,id=ich9-intel-hda \ -device hda-output,bus=ich9-intel-hda.0,id=hda-output,cad=0 \ -device qxl-vga,bus=pcie.0,addr=01.0,yres=1200,xres=1920,ram_size_mb=128,vgamem_mb=128,vram_size_mb=128,id=qxl-vga \ -netdev user,id=hostnet-0,hostfwd=tcp::2222-:22 -device virtio-net-pci,bus=pcie.0,addr=05.0,netdev=hostnet-0,id=nic-0 #-nodefconfig \ #-nographic \ #nc -U /tmp/monitor.sock \ #-device qxl-vga,bus=pcie.0,addr=01.0,yres=1536,xres=2048,ram_size_mb=128,vgamem_mb=128,vram_size_mb=128,id=qxl-vga \ #-netdev tap,id=hostnet-0,ifname=tap0,script=no,downscript=no -device virtio-net-pci,bus=pcie.0,addr=05.0,netdev=hostnet-0,id=nic-0 \ #-monitor unix:/tmp/monitor.sock,server,nowait #-chardev stdio,mux=on,id=monitor-0 -mon chardev=monitor-0 \ #-device ide-cd,drive=ide-cd-0,id=ide-cd,bootindex=1 \ #-drive file=$(pwd)/archlinux-2024.01.01-x86_64.iso,format=raw,if=none,media=cdrom,id=ide-cd-0,readonly=on \
2001-2024 License CC BY-NC-ND Denis Polevoy