Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add path for EEPROM #57

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Add path for EEPROM #57

wants to merge 1 commit into from

Conversation

Libbers
Copy link
Contributor

@Libbers Libbers commented Oct 16, 2019

This PR adds a path to your EEPROM in settings. Currently this design forces a user to choose their own EEPROM and will not launch without it. It was discussed on discord that maybe XQEMU should ship with a dummy EEPROM in the future.

Below is a screenshot of the added option, please discuss if something does not look suitable.

This closes #43

image

settings.ui Outdated Show resolved Hide resolved
settings.ui Outdated
@@ -205,6 +205,39 @@
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_11">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be nice if we could name these widgets as well (even if it's just a context prefix). For example, this one could be eepromGroupBox.

Copy link
Contributor Author

@Libbers Libbers Oct 16, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, I'll fix it for the EEPROM settings here and maybe fix the others in another PR? There's a lot of poorly named objects in the project

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. Whether you updated them here or in a future pr, we should create an issue for this to help with visibility.

Copy link
Contributor Author

@Libbers Libbers Oct 17, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed the EEPROM object names based on what we'd talk about on discord. I'll probably mention that in another issue/PR, assuming this naming convention is fine with others.

main.py Outdated Show resolved Hide resolved
@Libbers Libbers force-pushed the eeprom-path branch 2 times, most recently from 276ddfe to 86bd445 Compare October 17, 2019 19:41
settings.ui Outdated
<widget class="QLineEdit" name="eepromPath"/>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="setEepromPath">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This name is weird.

It implies it must be pressed in order for the eepom path become active.
Something like chooseEepromPath or browseEepromPath is probably more suitable.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, however, I was just following the previous naming scheme of the other buttons, before I was made aware that there really isn't one =)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed to browseEepromPath

settings.ui Outdated
</property>
<layout class="QGridLayout" name="eepromGridLayout">
<item row="0" column="0">
<widget class="QLabel" name="eepromImageLabel">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: For consistency, this should be eepromPathLabel or the below names should be eepromImage or eepromImagePath

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed to eepromPathLabel

Copy link
Member

@JayFoxRox JayFoxRox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's fine to make an external EEPROM mandatory for users. I'd like to remove the EEPROM from XQEMU code in the future.

However, we must provide an EEPROM image before this is merged, so that existing users can still run XQEMU. I feel like we should rename https://github.com/xqemu/xqemu-hdd-image and bundle the EEPROM and the HDD together (alternatively, keep them separate and create xqemu-eeprom-image, then link it from our website).

Also, ideally we should refactor the settings handling first, or XQEMU-Manager will crash for people with an old config (on top of the lack of EEPROM).

I'm aware that this will delay this PR quite a bit (and potentially require some minor changes to this code), but I don't think that's an issue (as EEPROM isn't too useful until we support writeback).

@GXTX
Copy link
Contributor

GXTX commented Apr 7, 2020

@JayFoxRox

However, we must provide an EEPROM image before this is merged

I disagree, users are already required to provide kernel images, MCPX images and to actually use "the xbox" a valid HDD image. This seems very bikeshey on an already useful patch.

@JayFoxRox
Copy link
Member

Agreed. I'll probably fixup the remaining issues (if @kl0wn doesn't do it) and merge it soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add option to set EEPROM path
4 participants