Coder Social home page Coder Social logo

lxtharia / minegrub-world-sel-theme Goto Github PK

View Code? Open in Web Editor NEW
125.0 5.0 5.0 18.09 MB

A grub theme in the style of the Minecraft singleplayer (sp) world selection screen!

License: MIT License

Haskell 20.07% Lua 17.70% Shell 25.86% Rust 36.37%
grub-theme minecraft

minegrub-world-sel-theme's Introduction

Minecraft World Selection Grub Theme

Wowie, another Minecraft grub theme! But this time it's in the style of the singleplayer world selection menu, which makes a little more sense than selecting your operating system from the main menu. There are also icons now! Isn't that great? And even better, they also include the descriptive text below each boot option!

Minegrub Preview Screenshot

Installation

  • Clone this repository
    git clone https://github.com/Lxtharia/minegrub-world-sel-theme.git
    
  • [Optional]: download the background matching your screen size from here
    • And copy it to minegrub-world-selection/background.png
  • Copy the folder to your boot partition
    cd ./minegrub-world-sel-theme
    sudo cp -ruv ./minegrub-world-selection /boot/grub/themes/
    
  • Change/add this line in your /etc/default/grub:
    GRUB_THEME=/boot/grub/themes/minegrub-world-selection/theme.txt
    
  • Update your live grub config by running
    sudo grub-mkconfig -o /boot/grub/grub.cfg
    

Also interesting

Icons

when a menuentry line in grub.cfg contains a --class <classname> option, grub will try to find THEME_DIR/icons/<classname>.png as the icon for that boot entry

Example:

# grub will try to use /boot/grub/themes/minegrub-world-selection/icons/arch.png as the icon and falls back on  gnu-linux.png,  gnu.png  and  os.png
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-somefunnyuuid' {
  ...
}

Setting icons for entries like Uefi Settings

If you want items like Uefi Settings to have an icon, you need to add --class uefi to the menuentry line in /boot/grub/grub.cfg:

menuentry "Uefi Settings" --class uefi ...

In this case you can even put it in /etc/grub.d/30_uefi-firmware so it doesn't get overwritten when you regenerate your grub.cfg :>

Generating icons

The icons should look like this:

wtf

icons/arch.png

Because python would've been too simple, i wrote a rust app to generate icons like that

Usage: cargo run <class name> <first line> <second line> [world icon filepath] [output_dir]
                |-> for default options use "-" or an empty string

and a bash script to generate multiple of them easily.

Creating and contributing icons!

I think it's fun to have the distro icons look like Minecraft world thumbnails!

If you want to make one, go for it! Create a world and build, take a screenshot, make it square and put it in icon-generator/world-icons/<classname>.png (You can also position yourself, exit the world, reset the icon, enter the world, don't move and wait for a minute, leave the world, open the worlds folder and use the icon.png for more authentic image quality) Then just add another line to gen_icons.sh, generate it (into minegrub-world-selection/icons/) and copy the theme folder into /boot/grub/themes/ again.

Feel free to share and contribute! If only screenshot, or even text and the generated product, all welcome! (only the generated .png would be a bit annoying tho if you want to adjust the text, but for colored text you can use the IconTemplate.afphoto (maybe I will export it as a psd as well sometime))

Great

  • I like writing Readme but at the same time, it takes too long and it's never perfect
  • Everything feels like chaos
  • I spent too much time on this
  • Tell your grandparents and pets about this cool theme!
  • Put it on your laptop, put it on your smartwatch put it on your schools PCs (i won't take responsibility if you get expelled)
  • Install it on your mouse-with-screen, copy it to your flash drives
  • Btw, have I mentioned that I use arch?
  • I have a grand secret project that I may reveal soon
  • Maybe it eats your food, maybe it doesn't
  • Thank you internet for wisdom and funny youtube clips that kept me motivated on my journey
  • Go check out the other Minegrub: Minegrub Theme

minegrub-world-sel-theme's People

Contributors

carlosburon avatar lxtharia avatar matthewmiles0 avatar meap02 avatar qingtian1927 avatar taksyon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

minegrub-world-sel-theme's Issues

Post your distro icons built in Minecraft here!

Where you can post screenshots of distro icons you built in Minecraft!
Best squared, also maybe comment ideas for minecrafty text to write as a world description, yknow.
And maybe when the distro was born so I don't have to google.
Ofc you can fork, add the image, add the texts in gen_icons.sh, the generated image and make a pull request as well.
I will react to both options two weeks late

2560x1600 screen size background

Would do this as a PR but your link to the background sizes is kind of funky so I'll stick it here. Made a 2560x1600 background image:

background-2560x1600

Disable console screen?

I disabled the console on grub but when I click on a world it still shows a window for a console, but it's empty. Is there a way to just go straight to the os once I click a world?

4K/ 1440p support? ๐Ÿฅน

PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEASE PLEA

Nix Flake support

It would be really nice to have the same kind of nix support here as in the other minegrub-theme.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.