Skip to content

Instantly share code, notes, and snippets.

View how2homebrew.md

how2homebrew

Toolchain setup

Build process

View toolchain.md

Use latest prebuilt toolchain: https://goo.gl/QpX5zM (the one at the top)

New build step has been added, after vita-elf-create you need to run: vita-make-fself homebrew.velf eboot.bin You need to run vita-make-fself on the .velf, not .elf The resulting eboot.bin can then be put into a .vpk archive, read below

Homebrew installer uses a .vpk format which is just a ZIP file, start from this template: https://github.com/xyzz/Vita_Doom/releases/download/1.0/vitadoom.vpk (try installing it from the shell)

  • replace eboot.bin with your eboot.bin
  • you can also add template.xml and stuff like icon/background/etc that will be displayed in livearea, check out how it's done in molecular shell (launch it and go to app0)
  • make sure to run pngquant on all your png images https://pngquant.org/
  • to make param.sfo, use vita-mksfoex -s TITLE_ID=XXXX00001 "homebrew name" output/param.sfo
View 00.readme.txt
Bushwhackers Exploit/RE 9447 CTF writeups
View gist:4241043
xyz@xyz-pc ~/minetest.net $ find -name "*.py" | xargs pep8
./minetest/urls.py:13:1: W191 indentation contains tabs
./minetest/urls.py:13:1: E101 indentation contains mixed spaces and tabs
./minetest/urls.py:14:1: W191 indentation contains tabs
./minetest/urls.py:14:1: E101 indentation contains mixed spaces and tabs
./minetest/urls.py:15:1: W191 indentation contains tabs
./minetest/urls.py:15:1: E101 indentation contains mixed spaces and tabs
./minetest/urls.py:16:1: W191 indentation contains tabs
./minetest/urls.py:16:1: E101 indentation contains mixed spaces and tabs
./minetest/urls.py:18:1: W191 indentation contains tabs
View gist:4188724
+//! 64 bit unsigned variable.
+/** This is a typedef for unsigned long long, it ensures portability of the engine. */
+#if defined(_MSC_VER) || ((__BORLANDC__ >= 0x530) && !defined(__STRICT_ANSI__))
+typedef unsigned __int64 u64;
+#elif defined(__GNUC__) && defined(__UINT64_TYPE__)
+typedef __UINT64_TYPE__ u64;
+#elif ULONG_MAX == 18446744073709551615u // 2**64 - 1
+typedef unsigned long u64;
+#else // Fallback
+// Works even without C++11 with any compiler known to me.
View gist:4165052
set(CMAKE_LEGACY_CYGWIN_WIN32 0)
cmake_minimum_required(VERSION 2.8)
PROJECT(leveldb)
# version
set(LIB_MAJOR 0)
set(LIB_MINOR 0)
set(LIB_RELEASE 1)
set(CMAKE_INSTALL_SO_NO_EXE "0")
View gist:4163048
diff --cc src/client.cpp
index e47bce1,e47bce1..b2861ed
@@@ -2411,6 -2411,6 +2411,11 @@@ void Client::afterContentReceived(
// remove the information about which checksum each texture
// ought to have
++ for (core::map<std::string, std::string>::Iterator i = m_media_name_sha1_map.getIterator();
++ !i.atEnd();
++ i++) {
++ m_media_name_set.insert(i.getNode()->getKey());
View gist:4147549
xyz@xyz-pc ~/minetest/minetest $ ./bin/minetest --server --worldname models
14:24:22: ACTION[main]: .__ __ __
14:24:22: ACTION[main]: _____ |__| ____ _____/ |_ ____ _______/ |_
14:24:22: ACTION[main]: / \| |/ \_/ __ \ __\/ __ \ / ___/\ __\
14:24:22: ACTION[main]: | Y Y \ | | \ ___/| | \ ___/ \___ \ | |
14:24:22: ACTION[main]: |__|_| /__|___| /\___ >__| \___ >____ > |__|
14:24:22: ACTION[main]: \/ \/ \/ \/ \/
14:24:22: ACTION[main]: World at [/home/xyz/minetest/minetest/bin/../worlds/models]
14:24:22: ACTION[main]: Server for gameid="minetest" listening on port 55555.
creative inventory size: 111
View gist:4147519
xyz@xyz-pc ~/minetest/minetest $ ./bin/minetestserver --worldname minimal
14:10:55: ERROR[main]: ERROR: An unhandled exception occurred: Unknown inventory identifier
In thread 7f002bb3c740:
/home/xyz/minetest/minetest/src/main.cpp:1741: int main(int, char**): Assertion '0' failed.
Debug stacks:
DEBUG STACK FOR THREAD 7f002bb3c740:
#0 int main(int, char**)
(Leftover data: #1 Dedicated server branch)
(Leftover data: #2 void ServerMap::loadMapMeta())
View gist:3999617
minetest.register_entity("entitytest:test", {
sticky = true,
on_activate = function(self, staticdata, dtime_s)
print("on_activate")
self.object:setvelocity({x = 5, y = 0, z = 0})
end,
on_step = function(self, dtime)
print("imma at "..dump(self.object:getpos()))
end,
get_staticdata = function(self)
You can’t perform that action at this time.